| security-gitleaks-secret-shipwright-2026-W40 |
Security fix: gitleaks secret detectedWaiting: HITL |
pending |
— |
— |
app-vitals/shipwright |
security-fix |
— |
Sep 27, 2026, 11:39 PM |
| RRC-1.1 |
Repo-root conversion fix: README star ask, proof block, dead video tag, section order |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
repo-root-conversion |
app-vitals/shipwright |
— |
#3678 |
Sep 25, 2026, 2:05 AM |
| docfresh-20260925-verification-check-conventions |
Document verification-check conventions |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
docs-freshness-cron |
app-vitals/shipwright |
research-docs |
#3681 |
Sep 25, 2026, 12:16 AM |
| LVBS-1.3 |
Wire patch.md's 3 validate sites to budget script + API-based skip-locally |
deploying |
cmqgfe7ov00425f01n8gugall |
lvb-simplify |
app-vitals/shipwright |
planning/lvb-simplify/PLAN.md |
#3702 |
Sep 24, 2026, 7:41 PM |
| LVBS-1.2 |
Wire dev-task.md Step 8 to budget script + API-based skip-locally; delete learned-facts doc write |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
lvb-simplify |
app-vitals/shipwright |
planning/lvb-simplify/PLAN.md |
#3701 |
Sep 24, 2026, 7:41 PM |
| LVBS-1.1 |
Add shared run-with-budget.ts script |
deploying |
cmr34uvbj004w5a01jp8mj9wv |
lvb-simplify |
app-vitals/shipwright |
planning/lvb-simplify/PLAN.md |
#3682 |
Sep 24, 2026, 7:41 PM |
| CPP-2.1 |
Retire legacy JSONL-based /metrics command |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
commits-per-pr |
app-vitals/shipwright |
planning/commits-per-pr/PLAN.md |
#3680 |
Sep 24, 2026, 5:30 PM |
| CPP-1.4 |
Add Commits/PR column to the metrics dashboardWaiting: HITLBlocked: spec_contradiction_ci_pass_column_not_in_merged_prs_panel |
blocked |
cmqgfe7ov00425f01n8gugall |
commits-per-pr |
app-vitals/shipwright |
planning/commits-per-pr/PLAN.md |
— |
Sep 24, 2026, 5:30 PM |
| CPP-1.3 |
Surface commits-per-PR in /metrics/merged-prs |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
commits-per-pr |
app-vitals/shipwright |
planning/commits-per-pr/PLAN.md |
#3688 |
Sep 24, 2026, 5:30 PM |
| CPP-1.2 |
Stamp commit count + source breakdown in the census sweep |
deployed |
cmqgfe7ov00425f01n8gugall |
commits-per-pr |
app-vitals/shipwright |
planning/commits-per-pr/PLAN.md |
#3687 |
Sep 24, 2026, 5:30 PM |
| CPP-1.1 |
Add commit-count columns to PullRequest schema + census API |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
commits-per-pr |
app-vitals/shipwright |
planning/commits-per-pr/PLAN.md |
#3679 |
Sep 24, 2026, 5:30 PM |
| CF-2.1 |
Add scripts/competitive-refresh-runbook.md (repo-local, not a plugin command) |
deployed |
cmqgfe7ov00425f01n8gugall |
competitive-freshness |
app-vitals/shipwright |
planning/competitive-freshness/PLAN.md |
#3675 |
Sep 24, 2026, 3:18 PM |
| CF-1.1 |
Add verifiedDate to compare.astro + scripts/check-competitive-freshness.ts precheck |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
competitive-freshness |
app-vitals/shipwright |
planning/competitive-freshness/PLAN.md |
#3674 |
Sep 24, 2026, 3:18 PM |
| ATE-3.1 |
Add trial-expiry lockdown: disable crons + block Slack messages (no deprovisioning) |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
agent-trial-expiry |
app-vitals/shipwright |
planning/agent-trial-expiry/PLAN.md |
#3670 |
Sep 24, 2026, 10:03 AM |
| ATE-2.1 |
Add pre-expiry Slack warning checkBlocked: Blocked |
blocked |
cmqgfe7ov00425f01n8gugall |
agent-trial-expiry |
app-vitals/shipwright |
planning/agent-trial-expiry/PLAN.md |
#3668 |
Sep 24, 2026, 10:03 AM |
| ATE-1.1 |
Add trialExpiresAt + trialExpiryWarnedAt fields to Agent + admin API |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
agent-trial-expiry |
app-vitals/shipwright |
planning/agent-trial-expiry/PLAN.md |
#3656 |
Sep 24, 2026, 10:03 AM |
| APA-2.1 |
Add POST /agents admin-API route |
deployed |
cmqgfe7ov00425f01n8gugall |
agent-provisioning-api |
app-vitals/shipwright |
planning/agent-provisioning-api/PLAN.md |
#3661 |
Sep 24, 2026, 10:01 AM |
| APA-1.1 |
Extract atomic createAgent() service function from admin UI form handler |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
agent-provisioning-api |
app-vitals/shipwright |
planning/agent-provisioning-api/PLAN.md |
#3653 |
Sep 24, 2026, 10:01 AM |
| ASC-4.1 |
Document spend cap fields and fail-open behavior |
cancelled |
— |
agent-spend-caps |
app-vitals/shipwright |
planning/agent-spend-caps/PLAN.md |
— |
Sep 24, 2026, 9:56 AM |
| ASC-3.1 |
Enforce spend caps in the shipwright-loop dispatcher (fail-open) |
cancelled |
— |
agent-spend-caps |
app-vitals/shipwright |
planning/agent-spend-caps/PLAN.md |
— |
Sep 24, 2026, 9:56 AM |
| ASC-2.1 |
Add per-agent daily/monthly spend cap fields to schema + admin API |
cancelled |
— |
agent-spend-caps |
app-vitals/shipwright |
planning/agent-spend-caps/PLAN.md |
— |
Sep 24, 2026, 9:56 AM |
| ASC-1.1 |
Add unified per-agent spend aggregation (getAgentSpend + read API) |
cancelled |
— |
agent-spend-caps |
app-vitals/shipwright |
planning/agent-spend-caps/PLAN.md |
— |
Sep 24, 2026, 9:56 AM |
| STAR-1.1 |
Star conversion path on shipwrightharness.com — hero CTA, build-time star count, docs CTA, UTM tagging |
deployed |
cmqgfe7ov00425f01n8gugall |
— |
app-vitals/shipwright |
saul-daily-ops-2026-09-24 |
#3643 |
Sep 24, 2026, 2:06 AM |
| LVB-5.3 |
Surface verification outcomes in admin UI |
merged |
cmr34uvbj004w5a01jp8mj9wv |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3642 |
Sep 23, 2026, 9:28 PM |
| LVB-5.2 |
Wire dev-task/patch to record verification outcomes |
deploying |
cmqgfe7ov00425f01n8gugall |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3641 |
Sep 23, 2026, 9:28 PM |
| LVB-5.1 |
Task-store model for structured per-check verification outcomes |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3637 |
Sep 23, 2026, 9:28 PM |
| LVB-4.4 |
Wire skip-locally classification into dev-task/patch behavior |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3660 |
Sep 23, 2026, 9:28 PM |
| LVB-4.3 |
Relocation-on-staleness for a broken toolchain-doc pointer |
pr_open |
cmqgfe7ov00425f01n8gugall |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3654 |
Sep 23, 2026, 9:28 PM |
| LVB-4.2 |
Append learned facts to the pointer doc (or default docs/toolchain.md) |
merged |
cmqgfe7ov00425f01n8gugall |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3651 |
Sep 23, 2026, 9:28 PM |
| LVB-4.1 |
Toolchain doc: pointer-to-existing-docs + scoped fingerprint |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3635 |
Sep 23, 2026, 9:28 PM |
| LVB-3.1 |
Generalize scoped install/check detection across ecosystems |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3633 |
Sep 23, 2026, 9:28 PM |
| LVB-2.2 |
patch.md: same enforced, non-blocking budgets |
deployed |
cmqgfe7ov00425f01n8gugall |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3621 |
Sep 23, 2026, 9:28 PM |
| LVB-2.1 |
dev-task.md: enforced, non-blocking per-check verification budgets |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3621 |
Sep 23, 2026, 9:28 PM |
| LVB-1.1 |
Kill the full process tree on session timeout/abort |
deploying |
cmr34uvbj004w5a01jp8mj9wv |
local-verification-budget |
app-vitals/shipwright |
planning/local-verification-budget/PLAN.md |
#3617 |
Sep 23, 2026, 9:28 PM |
| UNB-1.2 |
Refresh unblock docs and skill |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
blocked-task-reopen |
app-vitals/shipwright |
planning/blocked-task-reopen/PLAN.md |
#3624 |
Sep 23, 2026, 8:22 PM |
| UNB-1.1 |
Add tasks unblock endpoint |
deploying |
cmqgfe7ov00425f01n8gugall |
blocked-task-reopen |
app-vitals/shipwright |
planning/blocked-task-reopen/PLAN.md |
#3613 |
Sep 23, 2026, 8:22 PM |
| TCF-1.1 |
Unify toolchain-cache detection behind one shared full-schema procedure |
cancelled |
— |
toolchain-cache-merge |
app-vitals/shipwright |
planning/toolchain-cache-merge/PLAN.md |
— |
Sep 23, 2026, 8:20 PM |
| VM-3.1 |
Mic input + audio playback in the admin chat UI |
deployed |
cmqgfe7ov00425f01n8gugall |
voice-memo-admin-chat |
app-vitals/shipwright |
planning/voice-memo-admin-chat/PLAN.md |
#3634 |
Sep 23, 2026, 6:42 PM |
| VM-2.1 |
Wire STT/TTS into the admin chat poll loop |
deploying |
cmqgfe7ov00425f01n8gugall |
voice-memo-admin-chat |
app-vitals/shipwright |
planning/voice-memo-admin-chat/PLAN.md |
#3620 |
Sep 23, 2026, 6:42 PM |
| VM-1.2 |
Stop dropping attachment bytes for assistant-authored replies |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
voice-memo-admin-chat |
app-vitals/shipwright |
planning/voice-memo-admin-chat/PLAN.md |
#3619 |
Sep 23, 2026, 6:42 PM |
| VM-1.1 |
Accept an optional attachment on chat-service replies |
deployed |
cmqgfe7ov00425f01n8gugall |
voice-memo-admin-chat |
app-vitals/shipwright |
planning/voice-memo-admin-chat/PLAN.md |
#3612 |
Sep 23, 2026, 6:42 PM |
| CES-1.2 |
Push early session id for the loop's plan phase |
deployed |
cmqgfe7ov00425f01n8gugall |
cron-run-early-session-id |
app-vitals/shipwright |
planning/cron-run-early-session-id/PLAN.md |
#3609 |
Sep 23, 2026, 4:57 PM |
| CES-1.1 |
Add early-session-id push to the generic cron-handler path |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
cron-run-early-session-id |
app-vitals/shipwright |
planning/cron-run-early-session-id/PLAN.md |
#3608 |
Sep 23, 2026, 4:57 PM |
| LSC-1.3 |
Wire patch.md's lint sites to use scoped lint |
deployed |
cmqgfe7ov00425f01n8gugall |
step8-lint-scope |
app-vitals/shipwright |
planning/step8-lint-scope/PLAN.md |
#3594 |
Sep 22, 2026, 11:17 PM |
| LSC-1.2 |
Wire dev-task.md Step 8 to use scoped lint |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
step8-lint-scope |
app-vitals/shipwright |
planning/step8-lint-scope/PLAN.md |
#3595 |
Sep 22, 2026, 11:17 PM |
| LSC-1.1 |
Add scoped-lint detection to toolchain-patterns.md |
deployed |
cmqgfe7ov00425f01n8gugall |
step8-lint-scope |
app-vitals/shipwright |
planning/step8-lint-scope/PLAN.md |
#3591 |
Sep 22, 2026, 11:17 PM |
| CRT-1.3 |
Generalize DTW-1.3's same-session resume loop to patch/review/deploy |
deployed |
cmr34uvbj004w5a01jp8mj9wv |
claim-retry-unification |
app-vitals/shipwright |
planning/claim-retry-unification/PLAN.md |
#3602 |
Sep 22, 2026, 9:29 PM |
| CRT-1.2 |
Add getPr()/heartbeatPr() task-store client wrappers |
deploying |
cmqgfe7ov00425f01n8gugall |
claim-retry-unification |
app-vitals/shipwright |
planning/claim-retry-unification/PLAN.md |
#3589 |
Sep 22, 2026, 9:29 PM |
| CRT-1.1 |
Add terminal-state guard to Task release() |
deployed |
cmqgfe7ov00425f01n8gugall |
claim-retry-unification |
app-vitals/shipwright |
planning/claim-retry-unification/PLAN.md |
#3592 |
Sep 22, 2026, 9:29 PM |
| DTR-1.1 |
Persist dev-task's Claude session across separate dispatches, not just intra-dispatch ceiling retries |
merged |
cmr34uvbj004w5a01jp8mj9wv |
dev-task-cross-dispatch-resume |
app-vitals/shipwright |
planning/dev-task-cross-dispatch-resume/PLAN.md |
#3584 |
Sep 22, 2026, 9:17 PM |