Changelog 320 releases across 5 months
Every PAPI release, cycle by cycle. Each one pushes back against project drift.
Get started free March 202614 releases
Address PR review — card navigation, health status, duplicate fetch
Add multi-project portfolio page with health metrics
Wire sprint_metrics_snapshots, cost_snapshots, sprints into data-provider
Release marks sprint complete, build_execute backfills sprint on tasks
Dashboard data integrity audit — fix all stale/broken page data
Add architecture health check to strategy review prompt
Onboarding CLAUDE.md should lead with pg adapter setup, not .papi/ files
Papi init CLI command — one-command MCP setup for new users
Add infrastructure connection health checks
Context utilisation metric — measure wasted tokens per tool call
Entity reference tracking — which decisions actually get used
Dead input audit — find all adapter read calls that silently accept empty results
Add product_briefs table to Supabase, remove sync footgun from release
Add sprint cycle stress test, fix SPRINT_LOG_TEMPLATE heading
Brain page defaults to papi-ui instead of papi-framework
Brain reviews query uses correct column name, add debug logging
Brain handler picks source by max sprint number, not count
Compute brain sprint intelligence from build_reports table
Wire reports and handoffs to DB-backed data on Vercel
Stringify jsonb build_handoff from DB before UI consumption
Add Supabase connectivity check to debug endpoint
Add Supabase URL format validation to catch .com vs .co typos
Correct Supabase URL on Vercel (.co not .com), remove debug logging
Debug: add temporary logging to getHealth DB path
Dashboard data integrity — env validation, sprint statuses, remove War Room
Make getHealth() DB-first to show current sprint on Vercel
Exclude packages/ from root tsconfig to unblock Vercel builds
DB-first architecture — remove dual-write, update CLAUDE.md for pg-only reads
Auto-update task status in build_execute and review_submit — fix chronic board drift
Disable review_submit Slack notification to stop per-review spam
Update 83 failing tests to match two-phase prepare/apply refactor
Make adapter-factory pg path resilient to unreachable DB
Fix sync script tsx → npx tsx, remove stale known issues
Add mobile layout support for screens below 768px
Resume dogfood logging and wire into strategy review context
Add Windows/WSL compatibility docs and platform guard
Add auto-registration for new projects in adapter-factory
Add project_id filtering to dashboard queries and fix import-layer types
Add user_id scoping to all Supabase imports
Add onboarding empty states to dashboard sections
Skip BUILD HANDOFF regeneration for tasks that already have one
Strategy review due check uses title ILIKE instead of content LIKE
Add Sprint Performance Analytics tab to reports
Add NorthStar supersede indicator to dashboard
Add scope accuracy trend chart to reports
Add compact metrics summary panel to main dashboard
Define CLAUDE.md vs prompts.ts vs server guard boundary
Add derived metrics — throughput trend, backlog health, estimation bias
Track plan context size as a metric
Implement markdown persistence for decision events and scores
Add board_reconcile MCP tool for backlog cleanup
Add ad_hoc MCP tool for out-of-cycle work tracking
Redesign health output for glanceable orientation
Add notify param to review_submit to prevent Slack spam
Plan performance — instrumentation, parallelization, SQL function
Add connection timeouts to prevent MCP tool hangs
Standalone alpha setup with DB isolation
Audit alpha install path, evaluate npm publish
Add Deferred task status for backlog management
Suppress DB sync messaging in release for adapter-md users
Decision scoring & event telemetry layer (AD-10)
Context-aware markdown rendering for task notes
Exclude Backlog tasks from sprint view filters
Auto-sync DB after release via dashboard import API
Add DB vs markdown sprint drift detection to housekeeping
Read SPRINT_LOG.md in import layer to close sprint history gap
Re-apply jsonb serialization fixes after merge
Adapter-pg table name bugs + decision guardrails
v0.33.0-alpha March 11, 2026
Expand brief cap to include proven/unproven sections
v0.32.0-alpha March 11, 2026
Address PR review findings — null safety and clarity comment
Plan context via SQL queries — aggregated intelligence instead of raw markdown
Lean plan formatter — strip handoffs and cap brief in plan context assembly
Add lean SQL plan context path for adapter-pg
Strip heavy fields and cap product brief in plan context
Idea: — Plan context via SQL queries — aggregated intelligence instead of raw markdown
Idea: — Lean plan formatter — strip handoffs and cap brief in plan context assembly
Idea: — Track plan context size as a metric over time — log bytes per plan call, surface trend on dashboard, detect regressions
Mark Sprint 31 tasks as Done — fix orphaned board statuses
Convert plan tool to prepare/apply only — remove API call
Create ALPHA_TESTER_CLAUDE.md for alpha testers
Dashboard DB-first reads expansion — all entity types (cherry-picked)
Resolve merge conflict in BUILD_REPORTS.md — merge branch
Resolve merge conflicts in BUILD_REPORTS.md and REVIEWS.md — keep both and entries
Add explicit task status checks to prevent duplicate rebuilds after context compression
Alpha readiness review — audit gaps, blindspots, and UX parity for external users
Optimise plan context assembly — filter Done/Cancelled tasks from queryBoard() calls in plan.ts
Trim user guide, fix setup script path, remove stale alpha docs
Idea: — Define CLAUDE.md vs prompts boundary — which behaviour rules belong in user-facing CLAUDE.md vs server-side guards vs MCP prompts
Map out external user journey — what does a friend need to do step-by-step to get PAPI running on their project?
Remove .mcp.json from tracking, update audit + task reference convention
Idea: — Board reconciliation tool — holistic backlog review to group, merge, remove, or adjust stale tasks
Add action reminder to strategy review output
Idea: — Alpha readiness review — audit gaps, blindspots, and UX parity for external users
Audit and update prompts.ts for API-to-local transition
Audit prompts.ts and API call sites for API-to-local transition
Remove stale dependency on cancelled from
Idea: — BUG: Vercel dashboard shows tasks with status Backlog assigned to sprints — should only show In Progress/In Review/Done tasks in sprint view
Resolve Vercel build errors — corrupted char and regex flag
Remove corrupted UTF-8 character from KanbanBoard.tsx
BUG-3: Complexity normalisation — adapter-pg writes S/M/L, DB expects Small/Medium/Large
Normalise complexity and effort values at adapter-pg write boundary
Idea: — BUG: review_submit Slack notification fires per-review individually — spamming channel with duplicate PAPI Review messages instead of batching or sending once
Idea tool fails on feature branches — can't checkout main
Idea tool writes to current branch instead of switching to main
Board_view output too large (95.9KB) — needs pagination or filtering
Add pagination, status filtering, and summary mode to board_view
Change default base branch from develop to main
Idea: — Health command output should be more readable — cleaner formatting and visual hierarchy
Idea: — Add command to log bugs to task backlog — bug tasks can be grouped together into a single sprint task
Convert MCP server to prepare/apply pattern (API-to-local)
Consolidate MCP server source into papi-v1 repo
Idea: — Audit and update prompts.ts for API-to-local transition
Idea: — idea tool fails on feature branches — can't checkout main
Idea: — board_view output too large (95.9KB) — needs pagination or filtering
Idea: — Research: v2 retrospective learnings applicable to v1 — upstream learning, living documents, validation gates
Idea: — Research: Streams vs Sprints — evaluate v2 stream-based work model for v1
Idea: — Research: API-to-local (prepare/apply) — evaluate removing Anthropic API calls from MCP server
Idea: — Map out external user journey — what does a friend need to do step-by-step to get PAPI running on their project?
Idea: — Cross-project contract enforcement — shared CLAUDE.md context for collaborating Claudes. Two developers using Claude Code on separate repos have zero shared context. Each Claude has different memory about field formats, column constraints, parser expectations, and implementation conventions. This causes data mismatches (e.g. complexity S/M/L vs Small/Medium/Large, AD regex attribute order, displayId vs id). Current AD conflict detection catches decision-level contradictions but misses implementation-level incompatibilities. PAPI should solve this — either via a shared context layer that both Claudes read (cross-repo CLAUDE.md section, shared contract file), or via schema validation at the write boundary (reject non-conforming data before it enters Supabase). This is the same institutional memory gap identified in the memory guide — the product should be the bridge, not the humans.
MCP adapter-pg architecture docs and test plan for Kieran
Repair .papi/ data for Supabase migration
Add alpha testing docs and setup script
Commit brain.json API handler changes
Add PAPI Brain analytics dashboard
AD: Write path architecture — Go API vs MCP-only vs hybrid
Recommendation acceptance tracking — feedback loop for strategy recommendations
Decision outcome tracking — validated/revised/abandoned lifecycle
LLM model metadata — track which model generates each output
Sync script — .papi/ to Supabase import layer
Idea: — War room acknowledgement UI — accept/reject SharedDecisions per project
Idea: — Heuristic conflict detection — flag AD contradictions between projects on import
Idea: — Activate papi-brain shared layer — sync ADs and NorthStar to shared Supabase tables on import
Idea: — Import layer input sanitization — validate and sanitize parsed markdown before Supabase insertion
Idea: — Add user_id scoping to all Supabase imports and table writes
Home page complete redesign — PAPI cycle header, sprint task rows with phase/effort/status columns, contextual handoff vs build report, backlog section, needs attention alerts
Bug: PAPI Framework project showing dummy/placeholder data in dashboard
Remove mock data fallback — show empty state when project files unavailable
Fix Sync DB — "Project not found in Supabase: papi-ui" error when clicking Sync DB on dashboard
Sync DB auto-creates project if missing + fix papi-framework slug
Idea: — Cost chart — add sprint-over-sprint % change delta and cost split by tool type (plan vs build vs review)
Idea: — Task notes markdown rendering — render notes as markdown, show build handoff if task is active/in-sprint, show build report if task is Done
Idea: — Fix Sync DB — "Project not found in Supabase: papi-ui" error when clicking Sync DB on dashboard
Idea: — Home page complete redesign — PAPI cycle header, sprint task rows with phase/effort/status columns, contextual handoff vs build report, backlog section, needs attention alerts
Correct SPRINT_BOARD YAML parser regex + remove .claude/ from gitignore
Rewrite CostChart as time-series line chart + fix NavDropdown hydration
LLM cost tracking chart — visualise per-tool-call costs from METRICS.md
LLM cost tracking chart with auto-detected framework updates
Dashboard visual revamp — make it screenshot-worthy
Align PapiUI types with domain model — UUID PK + display_id
Align types with domain model — uuid + display_id
Idea: — Real-time dashboard updates via Supabase Realtime
Correct import summary type in sync handler
Visual revamp — dashboard and landing page
Audit findings — payload validation, UPPER_SNAKE_CASE constants, Readonly objects, catch comments
Phase detail page — drill down from roadmap
Phase detail page — drill down from roadmap into phase sprints/tasks
Idea: — Bug: PAPI Framework project showing dummy/placeholder data in dashboard
Idea: — Combined dashboard view with project selector — show one project, the other, or combined metrics
Per-user auth with project scoping
External login — per-user credentials with project scoping
Idea: — Planning guard: surface simpler implementation routes before committing to architectural targets
Import layer — .papi/ to database sync on refresh
Idea: — Strategic session capture — auto-structure key decisions into .papi/ artifacts
Separate tasks by sprint/phase on the board
Cost and effort metrics — track effort investment per sprint/phase
Build insights on dashboard — learnings from build reports
War room v1 — shared decisions + conflict alerts from Supabase
Sprint summary section — latest sprint log on dashboard
Supabase client setup for shared layer
Idea: — Add cross-project AD fetch instruction to PAPI Framework CLAUDE.md
Update build report parser for scopeAccuracy and typed effort
Add cross-project AD fetch instruction to CLAUDE.md
Align supabase-types.ts enums with domain model + fix BUILD_REPORTS.md header
Database schema spike — validate PAPI schema for PapiUI
Idea: — Scope accuracy trend chart — track estimation accuracy over time
Idea: — Combined dashboard metrics panel — surface key effort/velocity/cost stats on main dashboard
Idea: — LLM cost tracking chart — visualise per-tool-call costs from METRICS.md
Typed effort/scope parsers, dashboard cards, Supabase setup, effort charts
Idea: — Safe-pull guard for cross-project repo syncing
North Star panel, sprint detail card, reviews pipeline, XAD-1 resolved
Strategy review, cross-project alignment, new .papi files
Dashboard revamp, domain model, 16 new backlog tasks
Cross-project bridge — multi-project config, public /api/ads endpoint, papi-brain architecture
Commercial prep — landing page, setup guide, orchestration architecture
Interactivity polish — animations, hover states, dashboard redesign, EmptyState
Design polish — Command Center identity, Badge component, elevation tokens, typography
Update dogfood log and planning log
Fix 6 dashboard bugs + add MCP health check + remark-gfm
Tailwind design system foundation + migrate 19 components
Update DOGFOOD_LOG.md and .papi/ board for Sprint 10 completion
Add priority and complexity filters to board view
Add alerts system — blocked tasks, strategy review, stale items
Merge metrics into master dashboard as default landing page
Add PapiUI as self-managed project with own .papi/ directory
Add Cancelled status support, fix test paths, add project docs
Initial commit: standalone PapiUI from packages/web