Skip to content

fix: design-doc discovery reads docs/designs/ only — a root DESIGN.md is the design system (#2839) - #2840

Closed
Bit0ps wants to merge 1 commit into
garrytan:mainfrom
Bit0ps:fix/design-doc-discovery-root-design-md
Closed

Bit0ps wants to merge 1 commit into
garrytan:mainfrom
Bit0ps:fix/design-doc-discovery-root-design-md

Conversation

@Bit0ps

@Bit0ps Bit0ps commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

What

DESIGN_DOC_DISCOVERY no longer takes a repo-root DESIGN.md as the phase's design doc. Only docs/designs/*.md is a repo-local design doc; the #703 freshness rule against the private copy is unchanged.

Why

Since the open DESIGN.md format (v1.84.0.0), the root file is the design system /design-consultation writes — tokens and spec sections, no problem statement. The block preferred it to docs/designs/*.md, and to ~/.gstack/projects/<slug>/*-design-*.md whenever it was newer; on a checkout with no private copy (a fresh clone, a server) unconditionally. So a project holding both files had plan-ceo-review, plan-eng-review, plan-devex-review, autoplan and review's prerequisite re-check reasoning from a colour palette while printing Design doc found: DESIGN.md, and the /office-hours prerequisite offer never fired because a doc had been found. Full measurement in #2839.

Changes

  • scripts/resolvers/design-doc-discovery.ts: remove the $_REPOTOP/DESIGN.md branch; comments say why
  • regenerated autoplan, plan-ceo-review, plan-devex-review, plan-eng-review (bun run gen:skill-docs --host all, no other file moved)
  • test/gen-skill-docs.test.ts: the four skills look in docs/designs/ only and never name _REPOTOP/DESIGN.md

Verified

bun test test/gen-skill-docs.test.ts — 440 pass, 0 fail.

Fixes #2839

🤖 Generated with Claude Code

… is the design system, never the design doc

The shared DESIGN_DOC_DISCOVERY block took a repo-root DESIGN.md as the
phase's design doc ahead of docs/designs/*.md, and ahead of the private copy
whenever it was newer — unconditionally on a checkout with no private copy.
Since the open DESIGN.md format, that file is the design system
/design-consultation writes: tokens, not a problem statement. So on any
project holding both, plan-ceo-review, plan-eng-review, plan-devex-review,
autoplan and review's prerequisite re-check reviewed a plan against a colour
palette while printing "Design doc found: DESIGN.md", and the office-hours
prerequisite offer never fired because a doc had been found.

Drop the root check; docs/designs/*.md stays the repo-local design doc, with
the garrytan#703 freshness rule unchanged. Regenerated the four skills; a test pins
that none of them names _REPOTOP/DESIGN.md again.

Fixes garrytan#2839

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@trunk-io

trunk-io Bot commented Sep 9, 2026

Copy link
Copy Markdown

Merging to main in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here

@trunk-io

trunk-io Bot commented Sep 15, 2026

Copy link
Copy Markdown

An error occurred while submitting your PR to the queue: Only users that are a part of this repo's Trunk organization or have write permissions to the repo can submit a PR to the queue

@capy-ai

capy-ai Bot commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

Thank you, @Bit0ps. Your fix is folded into v1.91.19.0 (#3025), which is now merged, and you're credited as a co-author on the release commit and in the CHANGELOG. Closing this PR because the change is on main now.

@capy-ai capy-ai Bot closed this Oct 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

plan reviews prefer a root DESIGN.md over docs/designs/, so a design-system file shadows the feature design doc

1 participant