You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
spec-driven's specs instruction sends main-spec reads and edits to a cwd-relative path, so they miss the store #1702
The specs artifact instruction tells an agent to read and edit a capability's main spec at openspec/specs/<capability-path>/spec.md — a path relative to the current directory. When the change lives in a registered store, the main spec lives under the store root, so that path is wrong.
The workflow templates already solved this. sync-specs.ts:44 and archive-change.ts:98 both say main specs live under `<planningHome.root>/openspec/specs/` — "use that (store-aware) root for every main-spec path below, not a hardcoded repo path." The schema instruction is the site that was missed.
ls openspec/specs/ in the working repo does not contain store-only-capability — it is in the store.
Why it matters
The MODIFIED workflow's first step is "locate the existing requirement," and step 2 is "copy the ENTIRE requirement block." Sending that read to the wrong root produces one of two outcomes:
The path does not exist. The agent cannot copy the block and may write a MODIFIED delta from memory — which validate rejects for dropping scenarios, or which loses content at archive time.
Worse: a local capability happens to share the name. The read succeeds against a different capability, and the agent copies the wrong requirement block into the delta. This fails silently.
The Purpose edit at line 103 has the same split: it would write to a local file that is not the spec being described.
Suggested fix
Use the store-aware root already returned in the instructions JSON, matching the wording the workflow templates use:
edit `<planningHome.root>/openspec/specs/<capability-path>/spec.md` directly
1. Locate the existing requirement in `<planningHome.root>/openspec/specs/<capability-path>/spec.md`
Guidance text only — no CLI, parser, or archive behavior changes.
Notes
Found while hardening #1700 (which fixes #1689). Kept separate deliberately: #1700 is scoped to teaching the spec-inventory verb, and these two lines predate it.
Activity
fix(schema): resolve main-spec reads against the store-aware root (Fi…