From 40be3b055f655bcc03d9b14b686c51315f468e83 Mon Sep 17 00:00:00 2001 From: Lex Christopherson Date: Tue, 3 Mar 2026 09:51:49 -0600 Subject: [PATCH] feat(verify-work): auto-inject cold-start smoke test for server/db phases MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a phase modifies server, database, seed, or startup files, verify-work now prepends a "Cold Start Smoke Test" that asks the user to kill, wipe state, and restart from scratch — catching warm-state blind spots. Closes #904 Co-Authored-By: Claude Opus 4.6 --- get-shit-done/workflows/verify-work.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/get-shit-done/workflows/verify-work.md b/get-shit-done/workflows/verify-work.md index 466a80c4f..a78af0b8c 100644 --- a/get-shit-done/workflows/verify-work.md +++ b/get-shit-done/workflows/verify-work.md @@ -108,6 +108,19 @@ Examples: → Expected: "Clicking Reply opens inline composer below comment. Submitting shows reply nested under parent with visual indentation." Skip internal/non-observable items (refactors, type changes, etc.). + +**Cold-start smoke test injection:** + +After extracting tests from SUMMARYs, scan the SUMMARY files for modified/created file paths. If ANY path matches these patterns: + +`server.ts`, `server.js`, `app.ts`, `app.js`, `index.ts`, `index.js`, `main.ts`, `main.js`, `database/*`, `db/*`, `seed/*`, `seeds/*`, `migrations/*`, `startup*`, `docker-compose*`, `Dockerfile*` + +Then **prepend** this test to the test list: + +- name: "Cold Start Smoke Test" +- expected: "Kill any running server/service. Clear ephemeral state (temp DBs, caches, lock files). Start the application from scratch. Server boots without errors, any seed/migration completes, and a primary query (health check, homepage load, or basic API call) returns live data." + +This catches bugs that only manifest on fresh start — race conditions in startup sequences, silent seed failures, missing environment setup — which pass against warm state but break in production.