fix(prometheus): complete OpenSpec command reference, fix Gemini self-containment, strengthen tests
This commit is contained in:
@@ -166,7 +166,7 @@ describe("PROMETHEUS_SYSTEM_PROMPT spec-driven intent type", () => {
|
||||
const prompt = PROMETHEUS_SYSTEM_PROMPT
|
||||
|
||||
//#when / #then
|
||||
expect(prompt.toLowerCase()).toMatch(/spec.first|spec.aware/)
|
||||
expect(prompt.toLowerCase()).toContain("spec-first")
|
||||
})
|
||||
})
|
||||
|
||||
@@ -200,3 +200,21 @@ describe("PROMETHEUS_SYSTEM_PROMPT spec compliance section", () => {
|
||||
expect(prompt.toLowerCase()).toMatch(/spec framework/i)
|
||||
})
|
||||
})
|
||||
|
||||
describe("PROMETHEUS_SYSTEM_PROMPT OpenSpec expanded commands", () => {
|
||||
test("should contain /opsx:ff fast-forward command", () => {
|
||||
//#given
|
||||
const prompt = PROMETHEUS_SYSTEM_PROMPT
|
||||
|
||||
//#when / #then
|
||||
expect(prompt).toContain("/opsx:ff")
|
||||
})
|
||||
|
||||
test("should contain /opsx:explore command", () => {
|
||||
//#given
|
||||
const prompt = PROMETHEUS_SYSTEM_PROMPT
|
||||
|
||||
//#when / #then
|
||||
expect(prompt).toContain("/opsx:explore")
|
||||
})
|
||||
})
|
||||
|
||||
@@ -138,10 +138,10 @@ This is not optional. Output your current understanding in this exact format:
|
||||
### SDD Framework Check (during exploration)
|
||||
|
||||
While running exploration agents in Phase 1, ALSO check for spec-driven development framework directories:
|
||||
- \`openspec/\` -> OpenSpec framework detected
|
||||
- \`.specify/\` -> Spec Kit framework detected
|
||||
- \`openspec/\` -> OpenSpec framework detected. Read: \`openspec/specs/*/spec.md\`, \`openspec/changes/*/proposal.md\`. Shorten interview — specs answer discovery questions.
|
||||
- \`.specify/\` -> Spec Kit framework detected. Read: \`.specify/constitution.md\`, \`.specify/specs/*.md\`. Pre-fill clearance from spec content.
|
||||
|
||||
If found: announce detection, read spec files (see spec-driven-mode instructions), treat this as **Spec-Driven** intent, pre-fill clearance from spec content, and shorten interview accordingly.
|
||||
If found: announce detection, treat this as **Spec-Driven** intent, reference spec files in plan tasks, and suggest framework commands in TODO sections (\`/opsx:propose\`, \`/opsx:apply\`, \`/opsx:ff\` for OpenSpec; \`specify spec\`, \`specify plan\` for Spec Kit).
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -92,7 +92,7 @@ At the start of every session, check for SDD framework directories:
|
||||
- \`openspec/\` -> OpenSpec detected. Read: \`openspec/specs/*/spec.md\`, \`openspec/changes/*/proposal.md\`
|
||||
- \`.specify/\` -> Spec Kit detected. Read: \`.specify/constitution.md\`, \`.specify/specs/*.md\`
|
||||
|
||||
When detected: announce it, read specs BEFORE interview, pre-fill clearance from spec content, shorten interview, reference spec files in plan tasks, and suggest framework commands in TODO sections (\`/opsx:propose\`, \`/opsx:apply\` for OpenSpec; \`specify spec\`, \`specify plan\` for Spec Kit).
|
||||
When detected: announce it, read specs BEFORE interview, pre-fill clearance from spec content, shorten interview, reference spec files in plan tasks, and suggest framework commands in TODO sections (\`/opsx:propose\`, \`/opsx:apply\`, \`/opsx:ff\` for OpenSpec; \`specify spec\`, \`specify plan\` for Spec Kit).
|
||||
|
||||
This is Spec-Driven intent -- ground the plan in existing spec requirements.
|
||||
</spec_framework_awareness>
|
||||
|
||||
@@ -46,11 +46,20 @@ When a framework is detected, adjust your interview behavior:
|
||||
|
||||
## Available Framework Commands Reference
|
||||
|
||||
### OpenSpec commands:
|
||||
- \`/opsx:propose\` - Create a new change proposal from requirements
|
||||
- \`/opsx:apply\` - Apply an approved proposal to generate tasks
|
||||
- \`/opsx:archive\` - Archive a completed change
|
||||
- \`/opsx:verify\` - Verify implementation matches spec
|
||||
### OpenSpec commands (core profile — available by default):
|
||||
- \`/opsx:propose\` - Create a change and generate all planning artifacts in one step
|
||||
- \`/opsx:explore\` - Think through ideas, investigate problems, compare approaches
|
||||
- \`/opsx:apply\` - Implement tasks from tasks.md, checking off as you go
|
||||
- \`/opsx:archive\` - Archive a completed change (optionally syncs delta specs)
|
||||
|
||||
### OpenSpec commands (expanded profile — requires \`openspec config profile\` + \`openspec update\`):
|
||||
- \`/opsx:new\` - Scaffold a new change folder (no artifacts generated yet)
|
||||
- \`/opsx:continue\` - Create the next single artifact in the dependency chain
|
||||
- \`/opsx:ff\` - Fast-forward: create ALL planning artifacts at once
|
||||
- \`/opsx:verify\` - Validate implementation matches artifacts
|
||||
- \`/opsx:sync\` - Merge delta specs into main specs
|
||||
- \`/opsx:bulk-archive\` - Archive multiple completed changes with conflict detection
|
||||
- \`/opsx:onboard\` - Interactive guided tutorial using the actual codebase
|
||||
|
||||
### Spec Kit commands:
|
||||
- \`specify spec\` - Create or update a spec
|
||||
|
||||
Reference in New Issue
Block a user