diff --git a/gsd-core/workflows/execute-plan.md b/gsd-core/workflows/execute-plan.md index 6bd658aaa..00809939a 100644 --- a/gsd-core/workflows/execute-plan.md +++ b/gsd-core/workflows/execute-plan.md @@ -409,7 +409,7 @@ emit narrative output between the Write tool call and the commit tool call. Truncation at this boundary is a known failure mode (see #2070 rescue logic in execute-phase.md step 5.5). -Create `{phase}-{plan}-SUMMARY.md` at `.planning/phases/XX-name/`. Use the template at `~/.claude/gsd-core/templates/summary.md` (or its `.compact.md` variant — same `compact-content-gate.md` resolution as the USER-SETUP template above). +Create `{phase}-{plan}-SUMMARY.md` at `.planning/phases/XX-name/`. Use the template at `~/.claude/gsd-core/templates/summary.md` (or `summary.compact.md` — same `compact-content-gate.md` resolution as the USER-SETUP template above). **Frontmatter:** phase, plan, subsystem, tags | requires/provides/affects | tech-stack.added/patterns | key-files.created/modified | key-decisions | requirements-completed (**MUST** copy `requirements` array from PLAN.md frontmatter verbatim) | duration ($DURATION), completed ($PLAN_END_TIME date). diff --git a/tests/code-review-tier3-files-override-scoping.test.cjs b/tests/code-review-tier3-files-override-scoping.test.cjs index 5c8ee2866..b65cbd9b1 100644 --- a/tests/code-review-tier3-files-override-scoping.test.cjs +++ b/tests/code-review-tier3-files-override-scoping.test.cjs @@ -117,6 +117,12 @@ function runTiers(tmpDir, { filesOverride, seedReviewFiles = [] }) { 'set -uo pipefail', `FILES_OVERRIDE="${filesOverride || ''}"`, filesArrayInit, + // Both tiers print diagnostic "File scope: ..." / "Warning: ..." lines to + // stdout as documentation for a human running code-review.md interactively + // — a brace group (not a subshell: variables set inside still persist to + // the enclosing shell) discards that chatter so only the final REVIEW_FILES + // printf below reaches this script's captured stdout. + '{', tier1, // Tier 1 unconditionally resets REVIEW_FILES=() when FILES_OVERRIDE is // set; the seed only matters (and only applies) when it is not, exactly @@ -126,6 +132,7 @@ function runTiers(tmpDir, { filesOverride, seedReviewFiles = [] }) { 'PADDED_PHASE="03"', 'LAST_REVIEW_COMMIT=""', tier3, + '} > /dev/null', 'printf \'%s\\n\' "${REVIEW_FILES[@]}"', ].join('\n');