diff --git a/.planning/phases/19.8-console-commands-overhaul/19.8-REVIEW-DISPOSITION.md b/.planning/phases/19.8-console-commands-overhaul/19.8-REVIEW-DISPOSITION.md index d063815b..6175e4d2 100644 --- a/.planning/phases/19.8-console-commands-overhaul/19.8-REVIEW-DISPOSITION.md +++ b/.planning/phases/19.8-console-commands-overhaul/19.8-REVIEW-DISPOSITION.md @@ -29,19 +29,19 @@ findings: title: "Process's plain path prints item names without Sanitize" - id: IN-10 severity: info - disposition: deferred + disposition: fixed title: "console.Error during a live view writes straight to the terminal and tears the view" - id: IN-11 severity: info - disposition: deferred + disposition: fixed title: "A blank line printed during a live view is dropped" - id: IN-12 severity: info - disposition: deferred + disposition: fixed title: "Signal relay edge cases: a signal during view start-up, and Windows" - id: IN-13 severity: info - disposition: deferred + disposition: fixed title: "A delegate's stderr always goes to os.Stderr, bypassing the root's error writer" - id: IN-14 severity: info @@ -97,39 +97,39 @@ findings: title: "The wrong-directory hint repeats every argument, including a --password value, on stderr" - id: IN-01 severity: info - disposition: deferred + disposition: fixed title: "A forced-color console drops HideOnTTY records even when stderr is not a terminal" - id: IN-02 severity: info - disposition: deferred + disposition: fixed title: "PeekGlobals and cobra disagree on some argument forms" - id: IN-03 severity: info - disposition: deferred + disposition: fixed title: "isUsage recognises cobra's unknown-command error by its text" - id: IN-04 severity: info - disposition: deferred + disposition: fixed title: "The --json flag is read two different ways" - id: IN-05 severity: info - disposition: deferred + disposition: fixed title: "summer's scaffolding result lines are now hidden by -q" - id: IN-06 severity: info - disposition: deferred + disposition: fixed title: "fang replaces the root help function that NewRootIO installs" - id: IN-07 severity: info - disposition: deferred + disposition: fixed title: "diary pulls the whole TUI stack into security modules" - id: IN-08 severity: info - disposition: deferred + disposition: fixed title: "The console sanitizer passes raw C1 bytes through on its fast path" - id: IN-09 severity: info - disposition: deferred + disposition: fixed title: "The phase gate names consuming applications" open: 0 total: 32 @@ -141,15 +141,15 @@ recorded: 2026-10-22T01:19:33.337Z | Finding | Severity | Disposition | Source | |---------|----------|-------------|--------| | WR-09 | warning | fixed | fix fce232d (quick 261022-4z8) | -| WR-10 | warning | fixed | fix 17c722d (quick 261022-4z8); the exit-130 suggestion is deferred to todo .planning/todos/pending/2026-10-22-console-review-info-findings.md | +| WR-10 | warning | fixed | fix 17c722d (quick 261022-4z8); follow-up bb7e14b (quick 261028-rqd): a delegate killed by a signal exits 128+n, silently for SIGINT and SIGTERM | | WR-11 | warning | fixed | fix 707372b (quick 261022-4z8) | | WR-12 | warning | fixed | fix 57a849d, reworked in 139f5e3 so that lagoon.Status stays plugin-only and migrate:status adds the framework sets itself (quick 261022-4z8) | | WR-13 | warning | fixed | fix 0691d26 (quick 261022-4z8) | | WR-14 | warning | fixed | fix 48e13f9 (quick 261022-4z8) | -| IN-10 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md | -| IN-11 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md | -| IN-12 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md | -| IN-13 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md | +| IN-10 | info | fixed | fix 6efb9a4 (quick 261028-rqd) | +| IN-11 | info | fixed | fix 4d75695 (quick 261028-rqd) | +| IN-12 | info | fixed | fix f91d70d (quick 261028-rqd); part 2 (Windows) not changed, documented in raise's doc comment: Go cannot report another handler, and returning without exiting would swallow Ctrl+C | +| IN-13 | info | fixed | fix 4914cad, bonfire.ErrWriter (quick 261028-rqd) | | IN-14 | info | fixed | docs 7c15095 (quick 261022-4z8) | | IN-15 | info | fixed | fix 1ac75ad (quick 261022-4z8) | | CR-01 | critical | fixed | fix b077dc3 (19.8-05) (not in the current review) | @@ -163,15 +163,15 @@ recorded: 2026-10-22T01:19:33.337Z | WR-06 | warning | fixed | fix 39677f1 (19.8-05) (not in the current review) | | WR-07 | warning | fixed | fix 020fe83 (19.8-05) (not in the current review); remainder WR-12 (fix 57a849d) | | WR-08 | warning | fixed | fix 9b62285 (19.8-05) (not in the current review); remainder WR-11 (fix 707372b) | -| IN-01 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-02 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-03 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-04 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-05 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-06 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-07 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-08 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | -| IN-09 | info | deferred | todo .planning/todos/pending/2026-10-22-console-review-info-findings.md (not in the current review) | +| IN-01 | info | fixed | fix 3520d5d (quick 261028-rqd) (not in the current review) | +| IN-02 | info | fixed | fix e34d113 (quick 261028-rqd) (not in the current review) | +| IN-03 | info | fixed | fix 39c59b8 (quick 261028-rqd) (not in the current review) | +| IN-04 | info | fixed | feat 795c4f6, bonfire.FlagBool (quick 261028-rqd); summer's flagTrue/flagBool and flare's flagSet keep their wider value sets for compatibility (not in the current review) | +| IN-05 | info | fixed | docs 2da42e9 (quick 261028-rqd): documentation fix, the code is unchanged (0.4 shipped the lines; -q hiding them is now documented) (not in the current review) | +| IN-06 | info | fixed | refactor 53c0a65, fang removed; planning docs 6294ac4 (quick 261028-rqd) (not in the current review) | +| IN-07 | info | fixed | refactor f3f87f3, internal/consolekit (quick 261028-rqd) (not in the current review) | +| IN-08 | info | fixed | fix 8476a65 (quick 261028-rqd) (not in the current review) | +| IN-09 | info | fixed | fix 10fec47 (quick 261028-rqd) (not in the current review) | Dispositions: `open` (recorded, not yet triaged), `fixed`, `skipped`, `deferred`. Set `deferred` by hand and put the reason in the Source cell; both are preserved. A `|` in the reason is kept as prose and escaped on the next run. diff --git a/.planning/todos/pending/2026-10-28-earlier-phase-gates-name-consuming-apps.md b/.planning/todos/pending/2026-10-28-earlier-phase-gates-name-consuming-apps.md new file mode 100644 index 00000000..c235f37e --- /dev/null +++ b/.planning/todos/pending/2026-10-28-earlier-phase-gates-name-consuming-apps.md @@ -0,0 +1,44 @@ +--- +created: 2026-10-28T20:00:00.000Z +title: Earlier phase gate scripts still name consuming applications +area: framework +severity: minor +files: + - scripts/check-phase2.sh + - scripts/check-phase3.sh + - scripts/check-phase8.sh + - scripts/check-phase9.sh + - scripts/check-phase10.sh + - scripts/check-phase10.1.sh + - scripts/check-phase10.2.sh + - scripts/check-phase11.sh + - scripts/check-phase11.1.sh + - scripts/check-phase11.2.sh + - scripts/check-phase12.sh + - scripts/check-phase12.1.sh + - scripts/check-phase12.2.sh + - scripts/check-phase13.sh + - scripts/check-phase14.sh + - scripts/check-phase14.2.sh + - scripts/check-phase14.2.1.sh + - scripts/check-phase14.3.sh + - scripts/check-phase15.sh + - scripts/check-phase16.sh + - scripts/check-phase17.sh + - scripts/check-phase19.sh + - scripts/check-phase19.3.sh + - scripts/check-phase19.4.sh + - scripts/check-phase19.5.sh + - scripts/check-phase19.6.sh + - scripts/check-phase19.6.1.sh + - scripts/check-phase19.7.sh + - scripts/check-phase32.sh +--- + +## Problem + +Quick 261028-rqd (console review finding IN-09) moved every sibling application path and the forbidden-name list of `scripts/check-phase19.8.sh` into `PHASE198_*` environment variables, so that gate names no consuming application (CLAUDE.md: framework code never names a consuming application). A grep of the other gate scripts (`scripts/check-phase*.sh` other than 19.8) for the consuming application names and checkout paths still matches the 29 scripts listed above: default sibling paths, application labels or name lists. + +## Solution + +Apply the 19.8 pattern to each script that is still run: read the application paths and names from environment variables with no defaults, print `NOT RUN : set ` when one is unset, and fail instead under a `REQUIRE_SIBLINGS`-style switch. Scripts for phases whose gates are no longer run can be left as historical records; decide per script.