Skip to content

Commit e1a9141

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 25cf5ed commit e1a9141

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

bin/gstack-artifacts-init

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,8 +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).
230239
projects/*/*-design-*.md
231240
projects/*/*-test-plan-*.md
241+
projects/*/*-eng-review-test-plan-*.md
232242
projects/*/timeline.jsonl
233243
retros/*.md
234244
developer-profile.json
@@ -256,6 +266,7 @@ cat > "$GSTACK_HOME/.brain-privacy-map.json" <<'EOF'
256266
{"pattern": "projects/*/designs/*/*.md", "class": "artifact"},
257267
{"pattern": "projects/*/*-design-*.md", "class": "artifact"},
258268
{"pattern": "projects/*/*-test-plan-*.md", "class": "artifact"},
269+
{"pattern": "projects/*/*-eng-review-test-plan-*.md", "class": "artifact"},
259270
{"pattern": "retros/*.md", "class": "artifact"},
260271
{"pattern": "builder-journey.md", "class": "artifact"},
261272
{"pattern": "projects/*/timeline.jsonl", "class": "behavioral"},

0 commit comments

Comments
 (0)