April 202618 releases
- CRM priority field, source filters, design brain assets, and data-proxy display_id fix
- Guard onboard redirect with window.location check — avoid SSR/hydration issues
- Skip project redirect on public pages — /landing was redirecting to /onboard
- Cycle explainer — interactive Plan/Build/Review/Learn walkthrough
- Pre-auth interactive intake — situation/tool/project stored in localStorage
- Add validation warnings to setup apply — surface phase/AD seeding failures
- Remove setCycleHealth write path — boardHealth/strategicDirection are computed, not stored
- EnsureProject creates new project when name is provided — fixes multi-project creation
- Validate cycle_number on plan apply — reject mismatch with prepare instruction
- Null-safe date sort in board_view — handle Date objects from postgres.js
- Setup experience audit — external user FTUE findings
- Add isNewProject detection + conditional dashboard rendering
- Add 'What You Get' deliverables section to landing page
- Update empty state to remove deprecated .papi/ path reference
- Mine dogfood data for quantified value claim (landing page copy prerequisite)
- Replace deprecated .papi/ references in empty state copy
- Strategy review write-back sentinel bug + npm publish permissions
- Strengthen post-write verification — verify task count matches expected handoffs
- Add GitHub Actions CD for Edge Function deployment
- Fix Duration metric — fall back to created_at when start_date is null
- Add cycle integrity checks — multi-active, ghost, orphaned
- Strengthen bug handoff template with reproduce/root-cause/fix/regression sections
- Add
spike task type with planner instructions for time-boxed investigation
- Add spike task type with time-boxed investigation template
- Make bootstrap prompt project-agnostic
- Correct stage position reporting — case-insensitive status, prefer lowest sort_order
- Add explicit type param (task/bug/research/spike)
- Hero copy refresh, dark login page, UI polish
- 3 bugs blocking external users — plan apply, AD upsert, createCycle
- Hub UI density pass — hero, carry forward, board cards
- Ad_hoc transitions In Progress tasks to In Review, add submitBugReport to proxy
- Convert landing screenshots to WebP + use next/image
- Extend API cache TTLs to reduce Vercel bandwidth
- Add support-debug skill for external user issue diagnosis
- Handle double-encoded JSONB in proxy adapter and build-handoff serializer
- Fail-closed on Supabase unavailable + harden middleware public paths
- Fix 28 data-proxy bugs + add automated parity test
- Null-safe totalCycles in plan context assembly
- Harden multi-user data isolation across all API routes
- Prevent cross-user data leak on dashboard
- Complete planWriteBack rewrite to match pg adapter
- PlanWriteBack health updates wrote to wrong columns
- GetContextHashes queried non-existent table
- Human_reviews table doesn't exist — correct to reviews
- Add deploy:edge script with --no-verify-jwt baked in
- Deploy Edge Function with --no-verify-jwt
- Unblock external users from running /setup
- Handle re-onboarding when API key is lost
- Apply responsiveness fixes to main
- Apply semantic colours to stat values per .impeccable.md
- Enforce 4-role typography system from .impeccable.md spec
- Enforce 4-role type system per .impeccable.md spec
- Replace hardcoded hex colours with CSS variable tokens
- Mobile landing page has horizontal scroll and misaligned header buttons
- Add overflow-hidden to hero section to prevent glow div horizontal scroll on mobile
- Defensive optional chaining + status string fixes, add frontend polish audit doc
- Move Edit beside status badge, tighten spacing
- Fetch structured build report from build_reports table
- Semantic build report colors, scrollbar styling, overflow fix
- Discovery table + panel quality fixes
- Click discovery row to open build report in side panel
- Right side task detail panel — design overhaul: fix triple scroll bars, spacing, information hierarchy
- Design overhaul — single scroll, collapsible sections, de-emphasized edit
- Time Machine: layout and UX polish — full width, velocity label, SR overlay, responsive resize
- Layout polish — taller velocity strip, Cycles label, active SR highlight
- Hub: "What We Discovered" section — restructure as table with Type / Cycle / Task / Detail columns
- Restructure "What We Discovered" as 4-column table
- Skip rate limiter in dev to unblock Playwright testing
- Add project management to settings — list, copy IDs, delete
- Redirect email sign-in users to onboard if no projects exist
- Validate proxy API key + project at MCP startup
- Prevent duplicate project creation in onboarding
- Fix all data-proxy field mismatches blocking external users
- Rename sprint_number → cycle_number in data-proxy
- Add GitHub repo URL picker to onboarding wizard
- Update landing page screenshots to dark mode with correct feature sections
- Update landing page carousel to dark mode with correct feature sections
- Sweep orphaned pending strategy recommendations on review prepare
- Filter ghost AD recommendations before writing to strategy_recommendations
- Surface error when strategy_review apply receives malformed JSON
- Fix all data-proxy field mismatches blocking external users
- Rename sprint_number → cycle_number in data-proxy
- Update landing page screenshots to dark mode with correct feature sections
- Update landing page carousel to dark mode with correct feature sections
- Sweep orphaned pending strategy recommendations on review prepare
- Filter ghost AD recommendations before writing to strategy_recommendations
- Surface error when strategy_review apply receives malformed JSON
- Resolve merge conflict with (identical cwd fallback change)
- Replace papi.ai with current landing page URL
- Orient detects unrecorded commits and prompts ad_hoc capture
- Npm README with 30-second value prop and install-to-first-cycle path
- Auto-detect PAPI_PROJECT_DIR from cwd in init tool
- Fix duplicate key error when creating task via UI — display_id generation race condition
- In-terminal welcome message when server starts with no project
- NPM-first landing page, 2-step onboard wizard, claude mcp add support
- Fix setup blocking new proxy users + remove misleading GitHub guidance
- Time Machine — interactive cycle archaeology visualization
- Add depth limit and symlink guard to scanDir in build.ts
- Add confirmed/resolved to ActiveDecision outcome type union
- Auto-register docs in build_execute pipeline
- Scope cycle badge to Backlog tasks only
- Fix AD outcome field — set confirmed/revised/resolved/superseded on strategy review
- Update landing page screenshots with Cycle 188 data
- Planner already-built check with codebase cross-referencing
- Planner respects pre-assigned cycle tasks
- Admin: Per-user drill-down
- Admin churn signals, CRM contact on signup + auth hardening
- Correct null-email dedup in syncNewUsersToCRM, drop redundant ownerProfileId alias
- Trim OWNER_USER_ID in all API route UUID comparisons
- Trim OWNER_USER_ID in middleware UUID comparison
- Debug: expose ownerUserId and trim whitespace in /api/auth/me
- Debug: expose userId in /api/auth/me to verify OWNER_USER_ID
- Derive isOwner from Supabase session in /api/auth/me
- Admin: New user alert badge on sidebar nav
- Update briefs page — fix NaN and full width
- UUID-based owner verification, block ops routes server-side
- Add missing description column and per-user slug uniqueness on projects table
- Add reproducible live demo script
- Add Project Overview tab to Briefs page
- Resolve admin Forbidden for Google OAuth users
- Update Get Started CTAs to link to /onboard instead of /setup
- Reduce plan context size via conditional instructions + extended hash-diffing
- CRM contact & outreach tracker
- Operator task submission form at /requests
- Docs page — side panel with path copy, sortable table, no inline expand
- Docs page — dense sortable table view with sort by name/type/status/cycle/date
- Docs page — remove expand toggle and inline expanded detail from rows
- Hub UI fixes — carry-forward tooltip, hours in cycle metric, new task form requires priority+complexity
- Fix strategy review rendering bugs — recs object array, confirm action badge, gaps string items
- Transfer universal CLAUDE.md rules into CLAUDE_MD_TEMPLATE
- Compute actual MAE and bias from build_reports effort fields
- Analytics hero uses actual cycle/task counts from DB
- Show deferred task count badge on board filter
- Link cycle learnings to tasks via action_ref
- Doc_scan false unregistered — query all statuses not just active
- Parse // prefixes in idea tool
- Handle object array in strategicRecommendations parsing
- Convert overlay sidebar to inline panel, add nav collapse
- Reduce sidebar width, expand build report details by default
- Show priority dot on narrow viewports, text label on wide
- Show cycle-assigned Backlog tasks in 'In Cycle' column
- Guard strategicRecommendations against array/non-string values