Skip to content

v12.0.0

Choose a tag to compare

@vscarpenter vscarpenter released this 15 Aug 21:53
· 112 commits to main since this release
9768f7e

What's Changed

  • fix: drive react-doctor to a 100 score (0 diagnostics) by @vscarpenter in #407
  • test: cover sync retry and mailto edge cases by @cursor[bot] in #406
  • test(matrix): cover edit drawer draft edge cases by @cursor[bot] in #388
  • fix(security): resolve security-review findings 1, 2, 5 (MCP CLI URL, @claude workflow, Caddy admin API) by @vscarpenter in #408
  • feat(social): Phase 1 X publishing for GitHub Releases (approval-gated) by @vscarpenter in #409
  • Debug/social x auth probe by @vscarpenter in #410
  • feat(matrix): capture and task-card motion delight by @vscarpenter in #411
  • chore(social): remove Phase 1 X publishing feature by @vscarpenter in #412
  • chore(brand): adopt refreshed brand kit icons and favicons by @vscarpenter in #413
  • chore(brand): remove orphaned AboutNav and legacy about-logo.png by @vscarpenter in #414
  • ci(openwiki): export OPENROUTER_API_KEY required by the CLI by @vscarpenter in #415
  • feat(matrix): restore dependency linking (Depends on field) in v9 edit drawer by @vscarpenter in #416
  • docs(openwiki): reconcile ARCHITECTURE.md and add freshness check by @vscarpenter in #418
  • fix(lint): treat .cjs files as CommonJS (unbreak main lint) by @vscarpenter in #422
  • feat(pipeline): The Contract — enforced issue templates + risk labels (cycle A) by @vscarpenter in #421
  • fix(sync): forward Zod validation errors to Sentry via allowlisted key by @vscarpenter in #420
  • test(openwiki): cover freshness check regressions by @cursor[bot] in #419
  • test(security): cover workflow and Caddy hardening by @cursor[bot] in #417
  • feat(pipeline): Builder + Gate 1 — local autonomous builder (cycle B) by @vscarpenter in #424
  • feat(pipeline): Review + Gate 2 — release-ready + evidence (cycle C) by @vscarpenter in #426
  • feat(pipeline): The Night Shift — nightly triage of failing agent PRs (cycle D) by @vscarpenter in #427
  • test(pipeline): cover release workflow invariants by @cursor[bot] in #428
  • feat(pipeline): Telemetry + standards loop (cycle E) by @vscarpenter in #429
  • docs(agents): add index README for operating docs by @vscarpenter in #433
  • fix(pipeline): give the launchd wrappers a working PATH by @vscarpenter in #434
  • test(pipeline): cover launchd wrapper PATH setup by @cursor[bot] in #435
  • fix(archive): prevent duplicate-archive race in archiveOldTasks by @vscarpenter in #436
  • fix(build): keep typescript on JS-based 6.x and pin turbopack root by @vscarpenter in #437
  • chore(hooks): run Stop-hook checks async, narrow lint to changed files by @vscarpenter in #438
  • test(build): guard TypeScript compiler config by @cursor[bot] in #439
  • Fix all 2026-07-10 application audit findings by @vscarpenter in #440
  • test(sync): cover legacy pending queue status by @cursor[bot] in #441
  • ci: allow Cursor bot Claude reviews by @vscarpenter in #442
  • chore(deps): update patch/minor dependencies across workspaces by @vscarpenter in #443
  • fix(navigation): handle view transition rejections by @vscarpenter in #444
  • test(navigation): cover rejecting ready promise in view transition by @vscarpenter in #445
  • fix(sync): clamp far-future client_updated_at to prevent LWW poisoning by @vscarpenter in #446
  • chore(deps): update dependencies and resolve all audit findings by @vscarpenter in #447
  • fix(security): harden PocketBase admin surface and night-shift PR trust by @vscarpenter in #448
  • chore: retire low-value GitHub Actions by @vscarpenter in #449
  • chore: remove OpenWiki integration by @vscarpenter in #450
  • chore: trim CLAUDE.md and extract reference docs into skills by @vscarpenter in #451
  • chore: remove Entire CLI integration by @vscarpenter in #452
  • docs(pipeline): refresh the visual pipeline map to current state by @vscarpenter in #453
  • docs(agents): link the visual pipeline map from the agents README by @vscarpenter in #455
  • fix(security): require capture confirmation and redact telemetry by @vscarpenter in #456
  • test(security): follow the brace-expansion override bump to >=5.0.8 by @vscarpenter in #458
  • fix(archive): stop sync resurrecting archived tasks and breaking auto-archive by @vscarpenter in #457
  • fix(archive): make restore and its Undo atomic by @vscarpenter in #459
  • fix(build): stop the dev build-date fallback reading the clock by @vscarpenter in #461
  • fix(archive): make the delete-Undo idempotent and error-safe by @vscarpenter in #460
  • docs(archive): record the archivedTasks tombstone invariant by @vscarpenter in #462
  • feat(matrix): add loading state, fix WCAG AA, reskin quadrant language by @vscarpenter in #463
  • feat(theme): re-skin to Tidewater and bump to 11.0.0 by @vscarpenter in #464
  • feat(theme): apply Violet Frost across the app by @vscarpenter in #465
  • feat: explore and ship the Refined Evolution hybrid by @vscarpenter in #466
  • fix(matrix): make quadrant shortcut focus visible by @vscarpenter in #467
  • feat(matrix): replace static intro hero with date-anchored briefing by @vscarpenter in #468
  • fix: resolve pre-rescan issues and prepare 11.2.1 by @vscarpenter in #469
  • Resolve remaining codebase audit findings by @vscarpenter in #470
  • feat: stagehand AI verification layer and live smoke tests by @vscarpenter in #471
  • Fix MCP diagnostics and strengthen PWA smoke gates by @vscarpenter in #472
  • fix(deps): count only open dependents in the blocking badge by @vscarpenter in #473
  • fix(settings): count archived tasks in the storage figure by @vscarpenter in #474
  • fix(about): stop advertising features that have no way in by @vscarpenter in #475
  • fix(dnd): resolve drop targets to quadrants instead of casting by @vscarpenter in #476
  • docs(tasks): record Waves A and B and the Wave C handoff by @vscarpenter in #477
  • feat(backup): export and restore every user-owned store by @vscarpenter in #478
  • docs(tasks): record Wave C and the Wave D handoff by @vscarpenter in #479
  • feat(matrix): offer an undo when a task is completed by @vscarpenter in #480
  • fix(logging): put the message in the console string, not only the object by @vscarpenter in #481
  • feat(matrix): tell the user a filter matched nothing by @vscarpenter in #482
  • fix(edit-drawer): free the dependency popup from the scroll container by @vscarpenter in #483
  • feat(trash): make deletion recoverable for 30 days by @vscarpenter in #484
  • docs(tasks): record Waves D and E and the Wave F handoff by @vscarpenter in #485
  • fix(palette): name quadrants properly and make the data actions act by @vscarpenter in #486
  • feat(matrix): collapse completed tasks behind a per-quadrant disclosure by @vscarpenter in #487
  • fix(task-card): stop the drag grip covering the title's first character by @vscarpenter in #488
  • refactor(edit-drawer): split the form into field groups by @vscarpenter in #489
  • feat(edit-drawer): let users set a task's recurrence by @vscarpenter in #490
  • feat(edit-drawer): let users author a task's subtasks by @vscarpenter in #491
  • feat(edit-drawer): add the estimate input the Review page was missing by @vscarpenter in #492
  • feat: restore the surfaces withheld while recurrence had no UI by @vscarpenter in #493
  • docs(tasks): record Waves F and G and close the review remediation by @vscarpenter in #494
  • chore(release): 11.11.0 by @vscarpenter in #495
  • fix: resolve the console errors surfaced after the 11.11.0 deploy by @vscarpenter in #496
  • test(e2e): repair the four specs that have been red on main by @vscarpenter in #497
  • fix(security): remediate comprehensive audit findings by @vscarpenter in #498
  • fix: remediate the design-audit findings (P1, P2, P3) by @vscarpenter in #499
  • fix(task-card): keep the drag grip inside its lane by @vscarpenter in #500
  • fix: remediate the Sentry review findings (telemetry signal + hydration) by @vscarpenter in #501
  • feat(theme): restore the gsd editorial design system by @vscarpenter in #502

Full Changelog: v10.0.0...v12.0.0