Skip to content

Commit 50b1d00

Browse files
committed
fix(brain-allowlist): sync project-root design and test-plan artifacts
Fixes #1452. `/office-hours` Builder, `/plan-eng-review`, and `/autoplan` write their output at the project root, not under `designs/`: projects/{slug}/{user}-{branch}-design-{datetime}.md projects/{slug}/{user}-{branch}-test-plan-{datetime}.md projects/{slug}/{user}-{branch}-eng-review-test-plan-{datetime}.md The `.brain-allowlist` generated by `gstack-artifacts-init` covers `projects/*/designs/*.md` and the `ceo-plans/` paths, so CEO plans sync correctly but the design / test-plan artifacts they reference do not. Pull on machine B and you get the CEO plan but not the underlying design, breaking the cross-machine plan-references-design chain. Add three root-anchored globs to the managed block of `.brain-allowlist`: projects/*/*-design-*.md projects/*/*-test-plan-*.md projects/*/*-eng-review-test-plan-*.md The `*` glob doesn't match path separators, so these patterns are disjoint from the existing `designs/*.md` patterns — no double-sync, no churn for installs that already had the subdirectory layout. Mirror the three patterns in `.brain-privacy-map.json` with `"class": "artifact"`, matching how the existing `designs/*.md` patterns are classified there, so the same privacy semantics apply. Same class of incomplete-rename bug as #1441 (v1.27.0.0 missed the config key in one place); this audit covers the allowlist surface.
1 parent dc6252d commit 50b1d00

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

bin/gstack-artifacts-init

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,18 @@ projects/*/ceo-plans/*.md
227227
projects/*/ceo-plans/*/*.md
228228
projects/*/designs/*.md
229229
projects/*/designs/*/*.md
230+
# Project-root design / test-plan artifacts written by /office-hours,
231+
# /plan-eng-review, and /autoplan. The skills emit
232+
# `{user}-{branch}-design-{datetime}.md`,
233+
# `{user}-{branch}-test-plan-{datetime}.md`, and
234+
# `{user}-{branch}-eng-review-test-plan-{datetime}.md` at the project
235+
# root (not under designs/), so the existing `designs/*.md` patterns
236+
# miss them. Without these the cross-machine pull on machine B gets
237+
# the referencing CEO plan but not the underlying design / test plan
238+
# (#1452).
239+
projects/*/*-design-*.md
240+
projects/*/*-test-plan-*.md
241+
projects/*/*-eng-review-test-plan-*.md
230242
projects/*/timeline.jsonl
231243
retros/*.md
232244
developer-profile.json
@@ -247,6 +259,9 @@ cat > "$GSTACK_HOME/.brain-privacy-map.json" <<'EOF'
247259
{"pattern": "projects/*/ceo-plans/*/*.md", "class": "artifact"},
248260
{"pattern": "projects/*/designs/*.md", "class": "artifact"},
249261
{"pattern": "projects/*/designs/*/*.md", "class": "artifact"},
262+
{"pattern": "projects/*/*-design-*.md", "class": "artifact"},
263+
{"pattern": "projects/*/*-test-plan-*.md", "class": "artifact"},
264+
{"pattern": "projects/*/*-eng-review-test-plan-*.md", "class": "artifact"},
250265
{"pattern": "retros/*.md", "class": "artifact"},
251266
{"pattern": "builder-journey.md", "class": "artifact"},
252267
{"pattern": "projects/*/timeline.jsonl", "class": "behavioral"},

0 commit comments

Comments
 (0)