diff --git a/scripts/resolvers/design.ts b/scripts/resolvers/design.ts
index c272bc769..55e095cd9 100644
--- a/scripts/resolvers/design.ts
+++ b/scripts/resolvers/design.ts
@@ -44,7 +44,7 @@ source <(${ctx.paths.binDir}/gstack-diff-scope 2>/dev/null)
1. **Check for DESIGN.md.** If \`DESIGN.md\` or \`design-system.md\` exists in the repo root, read it. All design findings are calibrated against it — patterns blessed in DESIGN.md are not flagged. If not found, use universal design principles.
-2. **Read \`.claude/skills/review/design-checklist.md\`.** If the file cannot be read, skip design review with a note: "Design checklist not found — skipping design review."
+2. **Read \`~/.claude/skills/gstack/review/design-checklist.md\`.** If the file cannot be read, skip design review with a note: "Design checklist not found — skipping design review."
3. **Read each changed frontend file** (full file, not just diff hunks). Frontend files are identified by the patterns listed in the checklist.
diff --git a/ship/sections/review-army.md b/ship/sections/review-army.md
index 247c6b2f0..a517935fb 100644
--- a/ship/sections/review-army.md
+++ b/ship/sections/review-army.md
@@ -88,7 +88,7 @@ source <(~/.claude/skills/gstack/bin/gstack-diff-scope 2>/dev/null)
1. **Check for DESIGN.md.** If `DESIGN.md` or `design-system.md` exists in the repo root, read it. All design findings are calibrated against it — patterns blessed in DESIGN.md are not flagged. If not found, use universal design principles.
-2. **Read `.claude/skills/review/design-checklist.md`.** If the file cannot be read, skip design review with a note: "Design checklist not found — skipping design review."
+2. **Read `~/.claude/skills/gstack/review/design-checklist.md`.** If the file cannot be read, skip design review with a note: "Design checklist not found — skipping design review."
3. **Read each changed frontend file** (full file, not just diff hunks). Frontend files are identified by the patterns listed in the checklist.
diff --git a/test/gen-skill-docs.test.ts b/test/gen-skill-docs.test.ts
index 47a94b466..59671d11e 100644
--- a/test/gen-skill-docs.test.ts
+++ b/test/gen-skill-docs.test.ts
@@ -1778,6 +1778,16 @@ describe('DESIGN_REVIEW_LITE extended with Codex', () => {
expect(content).toContain('SCOPE_FRONTEND');
});
+ test('design-checklist path uses installed gstack/review root (#2694)', () => {
+ // #2694: generateDesignReviewLite used to emit
+ // `.claude/skills/review/design-checklist.md` (missing the gstack/ segment).
+ // After install the file lives at ~/.claude/skills/gstack/review/design-checklist.md.
+ // The bad relative form must not appear — the good path does not contain it
+ // as a substring because `gstack/` sits between `skills/` and `review/`.
+ expect(content).toContain('~/.claude/skills/gstack/review/design-checklist.md');
+ expect(content).not.toContain('.claude/skills/review/design-checklist.md');
+ });
+
});
// ─── Codex Generation Tests ─────────────────────────────────