Agent Cabinet

repo: ~/Projects/agent-cabinet · 103 commits · 0 in last 24h, 24 in last 7d · ▃ █▇ ▄

Search the build

103 commits indexed

  1. c7d1036 2026-09-25 auto-data-snapshot: 2026-09-25T01:04:41 (1 data files) — front-page-audit/proof/requery-ABC-2026-09-25T07-19-12-871Z.json
  2. ae0b12d 2026-09-25 auto-data-snapshot: 2026-09-25T00:34:03 (3 data files) — front-page-audit/proof/pilot-activation-2026-09-25T07-02-36-236Z.json front-page-audit/proof/pilot-activation-2026-09-25T07-09-21-243Z.json front-page-audit/proof/pilot-activation-2026-09-25T07-15-04-827Z.json
  3. faab65a 2026-09-25 auto-data-snapshot: 2026-09-25T00:03:17 (3 data files) — front-page-audit/proof/requery-ABC-2026-09-25T06-34-39-255Z.json front-page-audit/proof/requery-AC-2026-09-25T06-54-46-927Z.json front-page-audit/proof/requery-AC-2026-09-25T06-58-57-402Z.json
  4. 840b826 2026-09-24 auto-data-snapshot: 2026-09-24T23:32:41 (2 data files) — front-page-audit/proof/requery-ABC-2026-09-25T06-18-57-161Z.json front-page-audit/proof/requery-AC-2026-09-25T06-17-09-104Z.json
  5. 715ce58 2026-09-23 auto-data-snapshot: 2026-09-23T15:21:10 (1 data files) — front-page-audit/proof/live-canary-delta-webkit.json
  6. 5b74e92 2026-09-23 proof(prove-activation): kill every spawned server on any throw/interrupt so the next run can't test a stale one
  7. 56486bd 2026-09-23 proof(live-ux-canary): gate marker against the bundle hash computed at startup, not a literal
  8. 65c6777 2026-09-23 proof(front-page): harden ux-primitives activation gate + dedupe
  9. f4b8079 2026-09-23 auto-data-snapshot: 2026-09-23T13:13:50 (1 data files) — showroom-audit/runs/2026-09-23T20-12-52Z-TK-11860-all-others-showroom-enum.jsonl
  10. acece16 2026-09-23 auto-data-snapshot: 2026-09-23T12:42:16 (1 data files) — front-page-audit/proof/live-canary-delta-chromium.json
  11. 424746b 2026-09-23 auto-data-snapshot: 2026-09-23T12:09:58 (3 data files) — front-page-audit/proof/live-canary-2026-09-23-chromium.json front-page-audit/proof/pilot-activation-2026-09-23T18-55-09-823Z.json front-page-audit/proof/pilot-activation-2026-09-23T19-08-42-765Z.json
  12. e13482b 2026-09-23 auto-data-snapshot: 2026-09-23T07:25:20 (1 data files) — front-page-audit/proof/pilot-activation-2026-09-23T14-13-04-393Z.json
  13. 31ca1cf 2026-09-22 auto-data-snapshot: 2026-09-22T17:15:32 (1 data files) — front-page-audit/proof/pilot-activation-GREEN-1800s.json
  14. bca6c2b 2026-09-22 auto-data-snapshot: 2026-09-22T16:42:26 (2 data files) — front-page-audit/proof/pilot-activation-GREEN-v1.1.1.json front-page-audit/proof/pilot-activation-RED-oldbundle.json
  15. 1e85c63 2026-09-22 Fix code review findings: security + proof-validity issues
  16. 46b9a82 2026-09-22 auto-data-snapshot: 2026-09-22T16:09:18 (1 data files) — front-page-audit/proof/pilot-activation-2026-09-22T23-01-53-753Z.json
  17. 169f714 2026-09-22 auto-data-snapshot: 2026-09-22T15:36:13 (3 data files) — front-page-audit/proof/pilot-negctl-2026-09-22T22-07-37-004Z.json front-page-audit/proof/pilot-negctl-2026-09-22T22-12-13-608Z.json front-page-audit/proof/pilot-negctl-2026-09-22T22-15-31-527Z.json
  18. 0d41932 2026-09-22 auto-data-snapshot: 2026-09-22T14:27:31 (1 data files) — front-page-audit/proof/pilot-proof-2026-09-22T21-10-42-273Z.json
  19. 86cfdef 2026-09-22 cabinet: flatten vp-consulting into consulting-agent (TK-12015)
  20. f6eb951 2026-09-22 auto-data-snapshot: 2026-09-22T12:15:47 (1 data files) — cabinet.yaml
  21. 2a3106a 2026-09-22 cabinet: fold prompt-engineer into ai-engineer (TK-12015)
  22. a61854e 2026-09-20 cabinet: ungate both — merge dw-linkedin into linkedin-agent; keep consulting trio
  23. b47bb5a 2026-09-20 cabinet: chief-of-staff consolidation — merge 5 dev-pack pairs, wire 17 orphans, log it
  24. 7cf676b 2026-09-20 auto-data-snapshot: 2026-09-20T11:06:41 (1 data files) — cabinet.yaml
  25. 3c74978 2026-09-11 Add terminal wait supervisor agent
  26. 644063b 2026-09-08 showroom audit: TK-11307 MDC baseline (Google channel + main-store browse grid leaks)
  27. e2154a7 2026-09-03 showroom-line-steward: TK-11186 read-only verification run (PASS)
  28. 806fb7e 2026-09-03 auto-data-snapshot: 2026-09-03T11:49:57 (2 data files) — showroom-audit/runs/2026-09-03T18-53-18Z.jsonl showroom-audit/runs/2026-09-03T18:49:08Z.jsonl
  29. 10c871d 2026-09-03 showroom-line-steward: first baseline canary pass (PJ) — FAIL, Google feed leak now active (131 PJ)
  30. a06046b 2026-09-03 cabinet: register showroom-line-steward under vp-dw-commerce
  31. 39b87c2 2026-08-28 auto-data-snapshot: 2026-08-28T08:24:14 (1 data files) — cabinet.yaml
  32. b017d70 2026-08-28 repair cabinet agent routing
  33. a43101a 2026-08-28 fold Claude-only skills into four Codex agents
  34. 6e2d272 2026-08-26 auto-data-snapshot: 2026-08-26T12:08:58 (6 data files) — front-page-audit/screens/crcp/verify-live/header-1280.png front-page-audit/screens/crcp/verify-live/header-390.png front-page-audit/screens/crcp/verify-live/list-1000.png front-page-audit/screens/crcp/verify-live/list-1280.png front-page-audit/screens/crcp/verify-live/list-390.png
  35. 9e33911 2026-08-26 auto-data-snapshot: 2026-08-26T11:30:17 (12 data files) — front-page-audit/screens/crcp/2026-08-26T18-12-34Z/after/grid-1000.png front-page-audit/screens/crcp/2026-08-26T18-12-34Z/after/grid-1280.png front-page-audit/screens/crcp/2026-08-26T18-12-34Z/after/grid-390.png front-page-audit/screens/crcp/2026-08-26T18-12-34Z/after/list-1000.png front-page-audit/screens/crcp/2026-08-26T18-12-34Z/after/list-1280.png
  36. 1d90690 2026-08-26 auto-data-snapshot: 2026-08-26T10:15:42 (25 data files) — front-page-audit/runs/20260826T171525Z.jsonl front-page-audit/screens/crcp/2026-08-26T17-19-33-013Z/full-1000.png front-page-audit/screens/crcp/2026-08-26T17-19-33-013Z/full-1280.png front-page-audit/screens/crcp/2026-08-26T17-19-33-013Z/full-390.png front-page-audit/screens/crcp/2026-08-26T17-19-33-013Z/pill-1000.png
  37. f387fdc 2026-08-05 Register app-store-agent as vp-engineering director (5-gate submission-readiness graph)
  38. c58af7f 2026-07-23 cabinet: click any node → inline expandable modal (description, tools, source, open/run)
  39. 8058934 2026-07-22 cabinet.aa vhost: IP-bind :80 too (agentabrams default_server outranks wildcard)
  40. a8f270e 2026-07-22 Add cabinet.agentabrams.com nginx vhost draft (gated go-live)
  41. 9ba0bd6 2026-07-17 Add Officer Consulting (vp-consulting) to the cabinet
  42. 6b0673e 2026-07-07 auto-save: 2026-07-07T08:56:34 (1 files) — package-lock.json
  43. aea1f3a 2026-07-07 Add vp-cncp (CNCP Officer) — cross-cutting flow officer that orchestrates all officers, clears approvals/tasks/parking-lot via CNCP
  44. 5c4f586 2026-07-03 chore: macstudio3 migration — reconcile from mac2 + repoint paths (stevestudio2→macstudio3, node/npm/npx→/opt/homebrew)
  45. b6a5bb2 2026-07-02 Register internal-line-viewer skill under vp-dw-commerce (standing spec for internal basic-auth line viewers; reference astek-landing :9944)
  46. c799e8a 2026-07-02 cabinet: retire abramsego-orchestrator, fold Ultron orchestration into vp-abramsego (dtd 3/3 — honor 'fewer agents' principle the Contrarian flagged)
  47. 9781d45 2026-07-02 cabinet: register design-trend-scout under vp-abramsego — standing market-research strategist (scout top-sellers → gap-check WPB → brief originals for the licensing engine)
  48. 4d4a7ee 2026-07-02 cabinet: register abramsego-orchestrator (Ultron) + web-extract + ollama-model-eval under vp-abramsego (from 7-post research fan-out)
  49. 1538413 2026-07-01 cabinet: add vp-abramsego officer + abramsego-agent steward + design-research/golive skills (AbramsEgo was unowned; Steve-directed monetization build-out)
  50. d41633a 2026-06-24 Point fleet-lifecycle-steward at real registry path + DARK/ZOMBIE invariants
  51. 96d3e46 2026-06-24 Add fleet-lifecycle-steward officer under vp-operations
  52. 3638f33 2026-06-23 Rename wallco-agent director to wallpapersback-agent (wallco.ai retired; brand=Wallpaper's Back)
  53. 3d37973 2026-06-23 Split WallpapersBack marketing out of DW Marketing: new wallpapersback-marketing director under vp-special-projects; fence vp-dw-marketing to DW-only
  54. 27e75ef 2026-06-22 Register commercial-quote skill for B2B Koroseal quote requests under vp-dw-commerce
  55. 625bc69 2026-06-22 auto-save: 2026-06-22T12:05:49 (1 files) — cabinet.yaml
  56. d367a44 2026-06-22 auto-save: 2026-06-22T08:34:43 (1 files) — front-page-audit/runs/drift-followup-20260622T0830Z.jsonl
  57. 14c21b1 2026-06-21 auto-save: 2026-06-21T19:01:26 (1 files) — front-page-audit/runs/drift-20260622T015513Z.jsonl
  58. 75715aa 2026-06-19 cabinet: register dw-promo-banner director under vp-dw-marketing (+ 2026-06-19 consolidation_log)
  59. 6fb7695 2026-06-18 enlarge gap/suggestion handles to 30px with hover/focus labels, make ghost officer node read as actionable, focus primary drawer action on open
  60. 183cbbf 2026-06-18 calmer overlay defaults (Shared+Suggested off) with localStorage persistence + UI smoke harness
  61. 6f9f1ff 2026-06-18 redirect /pyramid.html and /pyramid/ to canonical /pyramid (301)
  62. 281dc4a 2026-06-18 pyramid: fix P0 UI/UX (a11y + drawer focus + double-write guard)
  63. 372ea93 2026-06-18 pyramid: add Gaps dotted-line overlay (stand up officers / adopt orphans)
  64. 7ac1761 2026-06-17 Add dw-yolo-loop skill to cabinet (vp-operations) + pyramid: codifies the DTD-decider + officer-signoff autonomous catalog-health loop as a reusable skill/command
  65. 566f3c9 2026-06-16 cabinet: approve cross-officer skill pairs-well-with under vp-dw-commerce (from vp-dw-marketing) via pyramid
  66. 5eba332 2026-06-16 cabinet: approve cross-officer skill new-arrivals-rotator under vp-dw-commerce (from vp-dw-marketing) via pyramid
  67. 7894cf0 2026-06-16 cabinet: approve cross-officer skill collection-creator under vp-dw-commerce (from vp-dw-marketing) via pyramid
  68. 3e21128 2026-06-16 cabinet: approve cross-officer subagent analytics-agent under vp-research-content (from vp-operations) via pyramid
  69. a203330 2026-06-16 cabinet: approve cross-officer subagent la-research-agent under vp-research-content (from vp-directories) via pyramid
  70. c705aea 2026-06-16 cabinet: approve cross-officer subagent security-auditor under vp-compliance-policy (from vp-engineering) via pyramid
  71. 7656ca5 2026-06-16 cabinet: approve cross-officer skill dw-legal-compliance under vp-compliance-policy (from vp-dw-commerce) via pyramid
  72. 5b3ec47 2026-06-16 activity /api/schedule: read real launchd state (loaded+disabled+lastExit), flag jobs that won't fire (disabled/unloaded) + nonzero-exit — stops the stdout-age false-stale crying wolf in both directions
  73. d170113 2026-06-16 Activity viewer: FIX day-grouping used UTC date while times render local → evening-PT events grouped under wrong/duplicate day headers; dayKey now uses local date (verified 0 mismatches, unique headers). Plus: export filtered view to CSV (respects search+type+date filters; timestamp/local/type/verdict/title/detail/ref columns, RFC-escaped)
  74. c18a8e8 2026-06-16 Activity viewer: date-range filter — from/to date pickers + Today/7d/30d/All presets scope the feed by timestamp; composes with search + type chips; 'in range' count + active-preset highlight
  75. c791b73 2026-06-16 Activity viewer: live search box — filters the feed AND scheduled/continuous jobs by title/detail/type/label/cadence; chip counts track the query; clear button + 'no matches' state; persists across auto-refresh
  76. 9727194 2026-06-16 Activity viewer: click any process/event for details — detail drawer + /api/job (plist schedule, launchctl status, command, log tail), /api/commit (git show), /api/canary (full verdict); jobs, continuous chips, commits, canaries, wins/cost/ticks all drillable; injection-guarded
  77. be0315f 2026-06-16 Activity viewer: draggable middle splitter to resize the two columns (clamped 260–720px, persisted to localStorage, double-click resets to 380px)
  78. 0dfcebe 2026-06-16 Activity viewer: side-by-side two columns — sticky Upcoming/scheduled lane (left) + Recent activity feed (right); stacks on narrow screens
  79. 5b4da1d 2026-06-16 Activity viewer: add Upcoming/scheduled lane — /api/schedule parses 64 launchd plists (plutil→json), computes next fire for calendar jobs (daily/weekly/monthly/one-time) + lists continuous interval jobs; page shows countdown + absolute time + cadence, auto-refresh
  80. 101c9bc 2026-06-16 Add /activity viewer — live date/time timeline aggregating git commits, canary runs, watch ticks, CNCP wins, and paid API calls; /api/activity endpoint (epoch-sorted, mtime-dated ticks); type filter chips + 30s auto-refresh; linked from pyramid toolbar
  81. 9634ba2 2026-06-16 Build out both proposals LIVE: 🩺 Health Overlay (reads 6 DW canary latest.json, maps verdicts→officers, tints nodes + status dots) + 💸 Cost Heatmap (reads cost-ledger.jsonl, app→officer spend, ranks top spenders, node badges); /api/health + /api/cost; clear-overlay control
  82. 52c593f 2026-06-16 Pyramid: 💡 Ideas modals — 5 upgrade ideas as modals (Task Router live, Consolidation Advisor live, Org Export live JSON/MD; Health Overlay + Cost Heatmap as proposals); /api/queue-idea posts to CNCP parking-lot
  83. e46f975 2026-06-16 Suggestion lines truly clickable: amber ◆ handle at each line midpoint (z-index above nodes, real hit-test verified) + fatter 16px line hit-band; toggles with Suggested layer
  84. 2f295b3 2026-06-16 Approve auto-commits cabinet.yaml (path-limited, local, Steve+Claude co-author); commit hash surfaced in toast
  85. d87e58a 2026-06-16 Pyramid: clickable suggestion lines — click a dotted arrow to see the relationship + Approve (writes into cabinet.yaml under target VP, idempotent/git-reversible) / Remove / Reset; state persisted server-side; per-row controls in the analysis list too
  86. eb43caf 2026-06-16 Pyramid: cross-officer lines — 18 'shared now' (computed from cabinet duplicates) + 12 curated 'suggested moves' arrows, toggleable + analysis list drawer
  87. 29b288a 2026-06-16 Make pyramid nodes runnable + openable: /api/source|open|run endpoints + click-drawer (source view, Run in new claude session, Open in editor); 39 scrapers individually runnable; injection-guarded
  88. 655d59b 2026-06-16 Add cabinet pyramid visual: President→Officers→Agents→Skills→Workflows with connector lines + 24h timeline
  89. 70ad0c8 2026-06-12 cabinet: add vp-dw-marketing (DW Marketing Officer) + 7 per-platform social agents (IG/TikTok/LinkedIn/FB/Pinterest/YouTube/X)
  90. e0540bc 2026-06-11 Cabinet: add plain-English owns descriptions for 5 plugin/MCP skills (dw-agent-builder, claude-api, simplify, review, prism) — no on-disk SKILL.md, so cabinet is their description home
  91. 805da5e 2026-06-03 gitignore: exclude *.bak per standing code-health rule
  92. 1c95831 2026-05-19 snapshot — gitify backup 2026-05-19
  93. b59c209 2026-05-18 server: wrap /cabinet.yaml route in try/catch so a read error returns 500 instead of crashing
  94. 6fbc7d5 2026-05-18 server: drop dead 'cabinet' param from renderGame (function re-reads file itself)
  95. d1350b1 2026-05-13 cabinet: register aichat (Big Red) under vp-dw-commerce
  96. 9a92eb7 2026-05-13 snapshot: 1 file(s) changed, +1 new
  97. 00a0d8a 2026-05-07 tighten .gitignore: add missing standing-rule patterns (dist/ build/ .next/)
  98. eca07f1 2026-05-06 Game Mode: /game route — 6 dept HQs + 134 cards w/ avatars, stats, synergies
  99. 157848f 2026-05-06 Viewer: switch from Mermaid mindmap to flowchart TD with class styling
  100. 73d8421 2026-05-06 Cabinet: restore plugin-loaded skills (claude-api, simplify, review, prism, gamify) + add claude-control-center
  101. 1f972c5 2026-05-06 Cabinet drift: remove orphan dw-site-build subagent ref + prism skill ref
  102. 95784df 2026-05-06 Cabinet drift fix: reclassify subagents, add 9 orphans, remove 4 phantoms
  103. 34a0472 2026-05-06 Initial Cabinet scaffold: agent-architect + 6 VPs + Mermaid viewer on :9766

Authors

Agents used

  • vp-dw-commerce8
  • prompt-engineer3
  • vp-engineering3
  • vp-operations3
  • ai-engineer2
  • vp-research-content2
  • vp-compliance-policy2
  • vp-directories1
  • security-auditor1

Skills used

  • /proof25
  • /screens14
  • /crcp14
  • /claude8
  • /code8
  • /pilot-activation-2026-09-7
  • /requery-6
  • /runs6
  • /verify-live5
  • /after5
  • /pilot-activation-3
  • /pilot-negctl-2026-09-3
  • /pyramid3
  • /list-10002
  • /list-12802
  • /schedule2
  • /type2
  • /detail2
  • /cost2
  • /scheduled2
  • /activity2
  • /live-canary-delta-webkit1
  • /interrupt1
  • /static1
  • /context1
  • /page1
  • /finally1
  • /live-canary-delta-chromium1
  • /live-canary-2026-09-23-chromium1
  • /probe1

Creative ideas + design notes

Commits with substantial prose (≥120 chars) — the rationale behind each move.

5b74e92 · 2026-09-23 · proof(prove-activation): kill every spawned server on any throw/interrupt so the next run can't test a stale one
Register each spawned server/static handle in a module-level list and add a cleanup() wired to process exit and SIGINT (exit 130); move the browser launch/context/page setup inside run()'s try with a finally that always closes the browser, so a per-engine launch failure is caught instead of aborting the process and orphaning a bound port. Refuse to start when a pilot port is already in use rather than silently attaching to an orphan.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UzbjT22E2Q7Q64Wy8xMeH5
56486bd · 2026-09-23 · proof(live-ux-canary): gate marker against the bundle hash computed at startup, not a literal
Compute the expected marker the way redeploy-ux-delta.sh does (sha256[:12] of the canonical bundle) so a routine rebuild no longer reds the whole fleet, while a site left on a stale bundle is still caught. Unreadable bundle -> markerCanonical false with a surfaced reason, never a silent pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UzbjT22E2Q7Q64Wy8xMeH5
65c6777 · 2026-09-23 · proof(front-page): harden ux-primitives activation gate + dedupe
Addresses the 5 review findings on the pending front-page-audit/proof change set:
- Fold SITE env filter into prove-activation.mjs and drop the byte-identical
  prove-activation-one.mjs — one gate, no silent drift between two copies.
- Tear the site server down in try/finally (+ boot-error catch) so a slow boot
  or a mid-loop throw no longer orphans a node server / leaves a stuck port.
- slowRun: bounded waitForFunction for real product children instead of the
  fixed delay+2s clock the deferred bundle could outrun (kills the false-FAIL).
- Page errors: baseline-subtract against the bundle-absent runs + BUNDLE_RX
  filter, so a site's own uncaught exception can't red the gate as a "bundle"
  failure; also record slowRun page errors in presentPageErr.
- live-ux-canary: expect marker via UX_MARKER (mirrors deploy $CANON) or a
  well-formed v<semver>#<hash> shape, not a pinned content hash that would
  red the whole fleet on the next healthy rebuild.

Smoke-tested: SITE=flockedwallpaper -> 1/1 all-engine PASS.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AWMadYahw5wRTf7KcwBLr1
1e85c63 · 2026-09-22 · Fix code review findings: security + proof-validity issues
1. Hardcoded CRCP session cookie: read SID from process.env instead
   (serve-fb.cjs, serve-probe.cjs, serve-real.cjs:1-2)

2. All-interfaces bind (.listen(0) with no host): add '127.0.0.1' to all
   four repro/proof servers (serve-fb/probe/real/repro.cjs/.js)

3. Path traversal in serve-repro.js: add containment guard
   (resolved.startsWith(dir) check before fs.readFile)

4. prove-negctl.mjs false-green on flocked static pilot: mock /api/products
   so flocked renders actual product grid data when bundle absent

All findings verified against actual code; fixes applied and tested.
86cfdef · 2026-09-22 · cabinet: flatten vp-consulting into consulting-agent (TK-12015)
DECISION (Steve, 2026-09-22): remove the single-steward vp-consulting officer
layer; consulting-agent is now the single owner of the Consulting business and
reports directly to Steve. Supersedes the 2026-09-20 KEEP-three-layers ruling.
vp-abramsego and all other officers untouched.

Reference-safety (Cody: repoint callers BEFORE archiving the officer): cabinet.yaml
branch re-rooted at consulting-agent (dropped the redundant consulting-agent
director); consulting-agent.md absorbed the officer triggers + APPROVE/REVISE/BLOCK
posture + HARD RAILS; consulting/SKILL.md + ticketmaster/SKILL.md ownership/routing
lines repointed; a2a-lab card + evals repointed; vp-consulting.md archived to
~/.claude/agents/_archived/. server.js + pyramid.html are data-driven from this
YAML. Zero dangling vp-consulting node on the :9766 org-chart.

The cabinet.yaml content landed via auto-data-snapshot f6eb951; this commit is the
semantic record with attribution trailers.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_38a23781-1663-4f8e-807d-e37d704feaad
2a3106a · 2026-09-22 · cabinet: fold prompt-engineer into ai-engineer (TK-12015)
Absorb prompt-optimization scope into ai-engineer and remove the deleted
prompt-engineer agent from every live router surface: the vp-engineering
director list (cabinet.yaml), the RELATED-agents map incl. the dangling
'prompt-engineer' key (server.js), and the pyramid viz node list
(pyramid.html). No dangling director remains on the :9766 org-chart.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01D2KFGQK7p7ahEzug7HBMZF
a61854e · 2026-09-20 · cabinet: ungate both — merge dw-linkedin into linkedin-agent; keep consulting trio
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E1LJQ2s1FW7mBAJtLCZ5Un
b47bb5a · 2026-09-20 · cabinet: chief-of-staff consolidation — merge 5 dev-pack pairs, wire 17 orphans, log it
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E1LJQ2s1FW7mBAJtLCZ5Un
a06046b · 2026-09-03 · cabinet: register showroom-line-steward under vp-dw-commerce
Enforces the showroom-only vendor rule (addressable but not discoverable,
codified 2026-09-03): keeps showroom lines off all push/browse surfaces +
the Google feed while keeping direct URL/search reachable; keys off
showroom-vendors.json; read-only audits + leak canary run free, all
enforcement edits gate to pending-approval.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BgCcr9t5zNGdb43pS4f1ks
96d3e46 · 2026-06-24 · Add fleet-lifecycle-steward officer under vp-operations
Owns 'no DW agent sleeps silently; stale ones retire only with Steve sign-off'.
Reconciles live fleet vs the centralized service-registry contract (DTD verdict A).
Job 1 keep-alive = autonomous resurrect; Job 2 retirement = auto-flag to pending-approval (gated).
281dc4a · 2026-06-18 · pyramid: fix P0 UI/UX (a11y + drawer focus + double-write guard)
Codex UI/UX review P0s:
1. Drawer focus management — focus the primary action on open, restore
   focus to the trigger on close, trap Tab inside the drawer (central
   MutationObserver on #drawer, so every opener inherits it).
2. Keyboard-accessible nodes — every clickable div ([data-kind]/[data-gap])
   gets tabindex+role=button+aria-label via makeAccessible(), and Enter/Space
   activates them (mirrors the click handlers). Visible :focus-visible rings
   on all interactive surfaces.
3. Double-write guard — decideGap()/decide() disable both drawer buttons and
   show Approving…/Dismissing… while the cabinet.yaml write is in flight;
   re-render (or close) re-enables.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
372ea93 · 2026-06-18 · pyramid: add Gaps dotted-line overlay (stand up officers / adopt orphans)
Surfaces the org-structure gaps as red dotted lines on the cabinet pyramid,
reusing the approve→write-to-cabinet.yaml mechanism from cross-officer
suggestions. new-vp gaps (vp-security, vp-special-projects) render as ghost
officer columns hanging off the President; adopt-orphan gaps render as dashed
chips under their target officer. Clicking a line/+ handle opens a drawer;
Approve inserts the VP block or director into cabinet.yaml and auto-commits.

Commits are serialized in-process (a click never races another click for the
git index) and retried with backoff against external committers' index.lock,
so an approval never silently leaves an uncommitted change. /api/gaps + /api/gap,
GAPS arrays mirrored server/client, gap-state file gitignored.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

File tree

116 files tracked. Click any to browse the source at HEAD.

Other build journals

← Agent Ad Network  ·  all 4 projects  ·  Agentabrams Viewer →

Export

commits.csv · feed.atom · project.json · commits.json

rendered in 3ms