agile-context-engineering 0.3.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +18 -0
- package/.claude-plugin/plugin.json +10 -0
- package/CHANGELOG.md +7 -1
- package/LICENSE +51 -51
- package/README.md +330 -318
- package/agents/ace-code-discovery-analyst.md +245 -245
- package/agents/ace-code-integration-analyst.md +248 -248
- package/agents/ace-code-reviewer.md +375 -375
- package/agents/ace-product-owner.md +365 -361
- package/agents/ace-project-researcher.md +606 -606
- package/agents/ace-research-synthesizer.md +228 -228
- package/agents/ace-technical-application-architect.md +315 -315
- package/agents/ace-wiki-mapper.md +449 -445
- package/bin/install.js +605 -195
- package/hooks/ace-check-update.js +71 -62
- package/hooks/ace-statusline.js +107 -89
- package/hooks/hooks.json +14 -0
- package/package.json +7 -5
- package/shared/lib/ace-core.js +361 -0
- package/shared/lib/ace-core.test.js +308 -0
- package/shared/lib/ace-github.js +753 -0
- package/shared/lib/ace-story.js +400 -0
- package/shared/lib/ace-story.test.js +250 -0
- package/{agile-context-engineering → shared}/utils/questioning.xml +110 -110
- package/{agile-context-engineering → shared}/utils/ui-formatting.md +299 -299
- package/{commands/ace/execute-story.md → skills/execute-story/SKILL.md} +116 -138
- package/skills/execute-story/script.js +291 -0
- package/skills/execute-story/script.test.js +261 -0
- package/{agile-context-engineering/templates/product/story.xml → skills/execute-story/story-template.xml} +451 -451
- package/skills/execute-story/walkthrough-template.xml +255 -0
- package/{agile-context-engineering/workflows/execute-story.xml → skills/execute-story/workflow.xml} +1221 -1219
- package/skills/help/SKILL.md +71 -0
- package/skills/help/script.js +315 -0
- package/skills/help/script.test.js +183 -0
- package/{agile-context-engineering/workflows/help.xml → skills/help/workflow.xml} +544 -533
- package/{commands/ace/init-coding-standards.md → skills/init-coding-standards/SKILL.md} +91 -83
- package/{agile-context-engineering/templates/wiki/coding-standards.xml → skills/init-coding-standards/coding-standards-template.xml} +531 -531
- package/skills/init-coding-standards/script.js +50 -0
- package/skills/init-coding-standards/script.test.js +70 -0
- package/{agile-context-engineering/workflows/init-coding-standards.xml → skills/init-coding-standards/workflow.xml} +381 -386
- package/skills/map-cross-cutting/SKILL.md +126 -0
- package/{agile-context-engineering/templates/wiki → skills/map-cross-cutting}/system-cross-cutting.xml +197 -197
- package/skills/map-cross-cutting/workflow.xml +330 -0
- package/skills/map-guide/SKILL.md +126 -0
- package/{agile-context-engineering/templates/wiki → skills/map-guide}/guide.xml +137 -137
- package/skills/map-guide/workflow.xml +320 -0
- package/skills/map-pattern/SKILL.md +125 -0
- package/{agile-context-engineering/templates/wiki → skills/map-pattern}/pattern.xml +159 -159
- package/skills/map-pattern/workflow.xml +331 -0
- package/{commands/ace/map-story.md → skills/map-story/SKILL.md} +180 -165
- package/{agile-context-engineering/templates/wiki → skills/map-story/templates}/decizions.xml +115 -115
- package/skills/map-story/templates/guide.xml +137 -0
- package/skills/map-story/templates/pattern.xml +159 -0
- package/skills/map-story/templates/system-cross-cutting.xml +197 -0
- package/{agile-context-engineering/templates/wiki → skills/map-story/templates}/system.xml +381 -381
- package/{agile-context-engineering/templates/wiki → skills/map-story/templates}/tech-debt-index.xml +125 -125
- package/{agile-context-engineering/templates/wiki → skills/map-story/templates}/walkthrough.xml +255 -255
- package/{agile-context-engineering/workflows/map-story.xml → skills/map-story/workflow.xml} +1046 -1046
- package/{commands/ace/map-subsystem.md → skills/map-subsystem/SKILL.md} +155 -140
- package/skills/map-subsystem/script.js +51 -0
- package/skills/map-subsystem/script.test.js +68 -0
- package/skills/map-subsystem/templates/decizions.xml +115 -0
- package/skills/map-subsystem/templates/guide.xml +137 -0
- package/{agile-context-engineering/templates/wiki → skills/map-subsystem/templates}/module-discovery.xml +174 -174
- package/skills/map-subsystem/templates/pattern.xml +159 -0
- package/{agile-context-engineering/templates/wiki → skills/map-subsystem/templates}/subsystem-architecture.xml +343 -343
- package/{agile-context-engineering/templates/wiki → skills/map-subsystem/templates}/subsystem-structure.xml +234 -234
- package/skills/map-subsystem/templates/system-cross-cutting.xml +197 -0
- package/skills/map-subsystem/templates/system.xml +381 -0
- package/skills/map-subsystem/templates/walkthrough.xml +255 -0
- package/{agile-context-engineering/workflows/map-subsystem.xml → skills/map-subsystem/workflow.xml} +1173 -1178
- package/skills/map-sys-doc/SKILL.md +125 -0
- package/skills/map-sys-doc/system.xml +381 -0
- package/skills/map-sys-doc/workflow.xml +336 -0
- package/{commands/ace/map-system.md → skills/map-system/SKILL.md} +103 -92
- package/skills/map-system/script.js +75 -0
- package/skills/map-system/script.test.js +73 -0
- package/{agile-context-engineering/templates/wiki → skills/map-system/templates}/system-architecture.xml +254 -254
- package/{agile-context-engineering/templates/wiki → skills/map-system/templates}/system-structure.xml +177 -177
- package/{agile-context-engineering/templates/wiki → skills/map-system/templates}/testing-framework.xml +283 -283
- package/{agile-context-engineering/templates/wiki → skills/map-system/templates}/wiki-readme.xml +296 -296
- package/{agile-context-engineering/workflows/map-system.xml → skills/map-system/workflow.xml} +667 -672
- package/{commands/ace/map-walkthrough.md → skills/map-walkthrough/SKILL.md} +140 -127
- package/skills/map-walkthrough/walkthrough.xml +255 -0
- package/{agile-context-engineering/workflows/map-walkthrough.xml → skills/map-walkthrough/workflow.xml} +457 -457
- package/{commands/ace/plan-backlog.md → skills/plan-backlog/SKILL.md} +93 -83
- package/{agile-context-engineering/templates/product/product-backlog.xml → skills/plan-backlog/product-backlog-template.xml} +231 -231
- package/skills/plan-backlog/script.js +121 -0
- package/skills/plan-backlog/script.test.js +83 -0
- package/{agile-context-engineering/workflows/plan-backlog.xml → skills/plan-backlog/workflow.xml} +1348 -1356
- package/{commands/ace/plan-feature.md → skills/plan-feature/SKILL.md} +99 -89
- package/{agile-context-engineering/templates/product/feature.xml → skills/plan-feature/feature-template.xml} +361 -361
- package/skills/plan-feature/script.js +131 -0
- package/skills/plan-feature/script.test.js +80 -0
- package/{agile-context-engineering/workflows/plan-feature.xml → skills/plan-feature/workflow.xml} +1487 -1495
- package/{commands/ace/plan-product-vision.md → skills/plan-product-vision/SKILL.md} +91 -81
- package/{agile-context-engineering/templates/product/product-vision.xml → skills/plan-product-vision/product-vision-template.xml} +227 -227
- package/skills/plan-product-vision/script.js +51 -0
- package/skills/plan-product-vision/script.test.js +69 -0
- package/{agile-context-engineering/workflows/plan-product-vision.xml → skills/plan-product-vision/workflow.xml} +337 -342
- package/{commands/ace/plan-story.md → skills/plan-story/SKILL.md} +139 -159
- package/skills/plan-story/script.js +295 -0
- package/skills/plan-story/script.test.js +240 -0
- package/skills/plan-story/story-template.xml +458 -0
- package/{agile-context-engineering/workflows/plan-story.xml → skills/plan-story/workflow.xml} +1301 -944
- package/{commands/ace/research-external-solution.md → skills/research-external-solution/SKILL.md} +120 -138
- package/{agile-context-engineering/templates/product/external-solution.xml → skills/research-external-solution/external-solution-template.xml} +832 -832
- package/skills/research-external-solution/script.js +229 -0
- package/skills/research-external-solution/script.test.js +134 -0
- package/{agile-context-engineering/workflows/research-external-solution.xml → skills/research-external-solution/workflow.xml} +657 -659
- package/{commands/ace/research-integration-solution.md → skills/research-integration-solution/SKILL.md} +121 -135
- package/{agile-context-engineering/templates/product/story-integration-solution.xml → skills/research-integration-solution/integration-solution-template.xml} +1015 -1015
- package/skills/research-integration-solution/script.js +223 -0
- package/skills/research-integration-solution/script.test.js +134 -0
- package/{agile-context-engineering/workflows/research-integration-solution.xml → skills/research-integration-solution/workflow.xml} +711 -713
- package/{commands/ace/research-story-wiki.md → skills/research-story-wiki/SKILL.md} +101 -116
- package/skills/research-story-wiki/script.js +223 -0
- package/skills/research-story-wiki/script.test.js +138 -0
- package/{agile-context-engineering/templates/product/story-wiki.xml → skills/research-story-wiki/story-wiki-template.xml} +194 -194
- package/{agile-context-engineering/workflows/research-story-wiki.xml → skills/research-story-wiki/workflow.xml} +473 -475
- package/{commands/ace/research-technical-solution.md → skills/research-technical-solution/SKILL.md} +131 -147
- package/skills/research-technical-solution/script.js +223 -0
- package/skills/research-technical-solution/script.test.js +134 -0
- package/{agile-context-engineering/templates/product/story-technical-solution.xml → skills/research-technical-solution/technical-solution-template.xml} +1025 -1025
- package/{agile-context-engineering/workflows/research-technical-solution.xml → skills/research-technical-solution/workflow.xml} +761 -763
- package/{commands/ace/review-story.md → skills/review-story/SKILL.md} +99 -109
- package/skills/review-story/script.js +249 -0
- package/skills/review-story/script.test.js +169 -0
- package/skills/review-story/story-template.xml +451 -0
- package/{agile-context-engineering/workflows/review-story.xml → skills/review-story/workflow.xml} +279 -281
- package/{commands/ace/update.md → skills/update/SKILL.md} +65 -56
- package/{agile-context-engineering/workflows/update.xml → skills/update/workflow.xml} +33 -18
- package/agile-context-engineering/src/ace-tools.js +0 -2881
- package/agile-context-engineering/src/ace-tools.test.js +0 -1089
- package/agile-context-engineering/templates/_command.md +0 -54
- package/agile-context-engineering/templates/_workflow.xml +0 -17
- package/agile-context-engineering/templates/config.json +0 -0
- package/agile-context-engineering/templates/product/integration-solution.xml +0 -0
- package/commands/ace/help.md +0 -93
|
@@ -1,194 +1,194 @@
|
|
|
1
|
-
<story-wiki>
|
|
2
|
-
|
|
3
|
-
<purpose>
|
|
4
|
-
Template for the `## Relevant Wiki` section that gets APPENDED to the story file
|
|
5
|
-
(`.ace/artifacts/product/<id-epic_name>/<id-feature_name>/<id-story_name>/<id-story_name>.md`)
|
|
6
|
-
and optionally updated in the GitHub issue body.
|
|
7
|
-
|
|
8
|
-
This is pass 2 of the story specification pipeline (see story.xml composition).
|
|
9
|
-
It runs AFTER sections 1-8 (business requirements) are complete.
|
|
10
|
-
|
|
11
|
-
A research agent reads the User Story, Description, and Acceptance Criteria from pass 1,
|
|
12
|
-
then scans the `.docs/wiki/` directory to select documents that are relevant for
|
|
13
|
-
designing a good technical solution for this story.
|
|
14
|
-
|
|
15
|
-
The output is written directly INTO the story file — replacing or populating the
|
|
16
|
-
`## Relevant Wiki` section placeholder left by pass 1.
|
|
17
|
-
|
|
18
|
-
This section is consumed by pass 5 (technical solution) as the primary reference
|
|
19
|
-
for which wiki documents to load when designing the implementation approach.
|
|
20
|
-
</purpose>
|
|
21
|
-
|
|
22
|
-
<output-format>
|
|
23
|
-
|
|
24
|
-
<section name="relevant-wiki">
|
|
25
|
-
## Relevant Wiki
|
|
26
|
-
|
|
27
|
-
<!-- Pass 2. Populated by research-story-wiki workflow.
|
|
28
|
-
A research agent reads the User Story, Description, and AC,
|
|
29
|
-
then scans `.docs/wiki/` to select documents relevant to
|
|
30
|
-
designing a good technical solution for this story.
|
|
31
|
-
|
|
32
|
-
Group references by wiki document type. Only include documents that
|
|
33
|
-
directly inform implementation — do not list tangentially related docs.
|
|
34
|
-
Each entry: relative path + one-line reason why it's relevant. -->
|
|
35
|
-
|
|
36
|
-
### System-Wide
|
|
37
|
-
|
|
38
|
-
<!-- MANDATORY — all four system-wide docs are always included.
|
|
39
|
-
These are mandatory context for every story — no reason needed. -->
|
|
40
|
-
|
|
41
|
-
- `.docs/wiki/system-wide/system-structure.md` — Mandatory system-wide context
|
|
42
|
-
- `.docs/wiki/system-wide/system-architecture.md` — Mandatory system-wide context
|
|
43
|
-
- `.docs/wiki/system-wide/coding-standards.md` — Mandatory system-wide context
|
|
44
|
-
- `.docs/wiki/system-wide/testing-framework.md` — Mandatory system-wide context
|
|
45
|
-
|
|
46
|
-
### Systems
|
|
47
|
-
- [`.docs/wiki/subsystems/[name]/systems/[system].md`] — [Why this system is relevant to this story]
|
|
48
|
-
|
|
49
|
-
### Patterns
|
|
50
|
-
- [`.docs/wiki/subsystems/[name]/patterns/[pattern].md`] — [Why this pattern applies to this story]
|
|
51
|
-
|
|
52
|
-
### Cross-Cutting Concerns
|
|
53
|
-
- [`.docs/wiki/subsystems/[name]/cross-cutting/[concern].md`] — [Why this concern matters for this story]
|
|
54
|
-
|
|
55
|
-
### Guides
|
|
56
|
-
- [`.docs/wiki/subsystems/[name]/guides/[guide].md`] — [Why this guide is useful for this story]
|
|
57
|
-
|
|
58
|
-
### Walkthroughs
|
|
59
|
-
- [`.docs/wiki/subsystems/[name]/walkthroughs/[flow].md`] — [Why this flow walkthrough helps understand the implementation context]
|
|
60
|
-
|
|
61
|
-
### Decisions
|
|
62
|
-
- [`.docs/wiki/subsystems/[name]/decisions/[decision].md`] — [Why this ADR constrains or informs this story]
|
|
63
|
-
|
|
64
|
-
### Architecture
|
|
65
|
-
- [`.docs/wiki/subsystems/[name]/architecture.md`] — [Why this subsystem's architecture doc is relevant]
|
|
66
|
-
|
|
67
|
-
<!-- Omit any subsystem category header that has no relevant documents.
|
|
68
|
-
The System-Wide section is NEVER omitted — it is always present.
|
|
69
|
-
|
|
70
|
-
Example:
|
|
71
|
-
|
|
72
|
-
### System-Wide
|
|
73
|
-
- `.docs/wiki/system-wide/system-structure.md` — Locates auth subsystem boundaries and shared middleware
|
|
74
|
-
- `.docs/wiki/system-wide/system-architecture.md` — Documents API gateway routing to auth service
|
|
75
|
-
- `.docs/wiki/system-wide/coding-standards.md` — Error handling conventions for API responses
|
|
76
|
-
- `.docs/wiki/system-wide/testing-framework.md` — Integration test setup for auth endpoints
|
|
77
|
-
|
|
78
|
-
### Systems
|
|
79
|
-
- `.docs/wiki/subsystems/auth/systems/oauth-provider.md` — Implements the provider abstraction this story extends
|
|
80
|
-
- `.docs/wiki/subsystems/auth/systems/session-manager.md` — Manages tokens created by the OAuth flow
|
|
81
|
-
|
|
82
|
-
### Patterns
|
|
83
|
-
- `.docs/wiki/subsystems/auth/patterns/strategy-pattern.md` — Each OAuth provider is a strategy; new provider must follow this
|
|
84
|
-
|
|
85
|
-
### Decisions
|
|
86
|
-
- `.docs/wiki/subsystems/auth/decisions/adr-003-jwt-over-sessions.md` — Constrains token format to JWT
|
|
87
|
-
-->
|
|
88
|
-
</section>
|
|
89
|
-
|
|
90
|
-
</output-format>
|
|
91
|
-
|
|
92
|
-
<selection-criteria>
|
|
93
|
-
|
|
94
|
-
<include-when>
|
|
95
|
-
A wiki document should be INCLUDED if it:
|
|
96
|
-
- Describes a system this story will modify or extend
|
|
97
|
-
- Documents a pattern this story must follow
|
|
98
|
-
- Covers a cross-cutting concern this story must respect (auth, logging, error handling, etc.)
|
|
99
|
-
- Contains a guide for a task this story requires (e.g., "how to add an API endpoint")
|
|
100
|
-
- Walks through a complex flow this story extends or modifies
|
|
101
|
-
- Records an ADR that constrains design choices for this story
|
|
102
|
-
- Describes the structure or architecture of a subsystem this story touches
|
|
103
|
-
</include-when>
|
|
104
|
-
|
|
105
|
-
<exclude-when>
|
|
106
|
-
A wiki document should be EXCLUDED if it:
|
|
107
|
-
- Is only tangentially related (same subsystem but different concern)
|
|
108
|
-
- Describes something the story reads from but does not modify
|
|
109
|
-
- Would be "nice to know" but does not change the implementation approach
|
|
110
|
-
- Duplicates information already in a system-wide doc
|
|
111
|
-
</exclude-when>
|
|
112
|
-
|
|
113
|
-
<reason-quality>
|
|
114
|
-
Each entry MUST have a one-line reason explaining WHY that document is relevant
|
|
115
|
-
to THIS specific story. Generic reasons like "related to auth" are NOT acceptable.
|
|
116
|
-
The reason must explain what the implementing agent should look for or learn from
|
|
117
|
-
that document.
|
|
118
|
-
|
|
119
|
-
Good: "Defines the provider strategy interface this story must implement"
|
|
120
|
-
Bad: "Related to OAuth"
|
|
121
|
-
</reason-quality>
|
|
122
|
-
|
|
123
|
-
</selection-criteria>
|
|
124
|
-
|
|
125
|
-
<guidelines>
|
|
126
|
-
|
|
127
|
-
<guideline name="system-wide-mandatory">
|
|
128
|
-
The four system-wide documents are ALWAYS included in the output:
|
|
129
|
-
- system-structure.md
|
|
130
|
-
- system-architecture.md
|
|
131
|
-
- coding-standards.md
|
|
132
|
-
- testing-framework.md
|
|
133
|
-
|
|
134
|
-
These are mandatory context for every story. Do NOT read them during wiki research —
|
|
135
|
-
the implementing agent (pass 5) will read them directly. Just list them in the output.
|
|
136
|
-
</guideline>
|
|
137
|
-
|
|
138
|
-
<guideline name="subsystem-depth">
|
|
139
|
-
For each affected subsystem, the research agent must READ the subsystem's wiki
|
|
140
|
-
documents to assess relevance — not just list them based on directory names.
|
|
141
|
-
Only include documents that directly inform the implementation of THIS story.
|
|
142
|
-
</guideline>
|
|
143
|
-
|
|
144
|
-
<guideline name="feature-relevant-wiki-hint">
|
|
145
|
-
If a `relevant-wiki.md` file exists at the feature level
|
|
146
|
-
(`.ace/artifacts/product/<id-epic_name>/<id-feature_name>/relevant-wiki.md`),
|
|
147
|
-
use it as a STARTING POINT to identify which subsystems to investigate.
|
|
148
|
-
This file may not exist — proceed without it if missing.
|
|
149
|
-
</guideline>
|
|
150
|
-
|
|
151
|
-
<guideline name="parallel-subsystem-research">
|
|
152
|
-
When multiple subsystems need investigation, spawn parallel ace-wiki-mapper
|
|
153
|
-
agents to read and assess each subsystem's docs concurrently. Each agent returns
|
|
154
|
-
a list of relevant files with reasons — the orchestrator compiles the final section.
|
|
155
|
-
</guideline>
|
|
156
|
-
|
|
157
|
-
<guideline name="conciseness">
|
|
158
|
-
The Relevant Wiki section should be scannable. No prose paragraphs.
|
|
159
|
-
Just categorized file references with one-line reasons.
|
|
160
|
-
Omit empty category headers — if no patterns are relevant, don't show ### Patterns.
|
|
161
|
-
The System-Wide section is the only exception — it is always present.
|
|
162
|
-
</guideline>
|
|
163
|
-
|
|
164
|
-
<guideline name="github-compatibility">
|
|
165
|
-
The output must render cleanly in both markdown files and GitHub issue bodies.
|
|
166
|
-
Use standard markdown — no HTML, no custom formatting.
|
|
167
|
-
Backtick-formatted file paths for readability.
|
|
168
|
-
</guideline>
|
|
169
|
-
|
|
170
|
-
</guidelines>
|
|
171
|
-
|
|
172
|
-
<evolution>
|
|
173
|
-
|
|
174
|
-
**Creation (research-story-wiki — pass 2):**
|
|
175
|
-
This pass runs after sections 1-8 are complete. It reads the story requirements
|
|
176
|
-
and scans the wiki to populate the Relevant Wiki section. A single run produces
|
|
177
|
-
the complete section.
|
|
178
|
-
|
|
179
|
-
**Consumption (story-technical-solution — pass 5):**
|
|
180
|
-
The technical solution pass reads this section to know which wiki documents to load
|
|
181
|
-
as context when designing the implementation approach. Every file listed here
|
|
182
|
-
will be read by the implementing agent.
|
|
183
|
-
|
|
184
|
-
**Re-research (exception, not norm):**
|
|
185
|
-
Only when story scope changes significantly (AC rewritten, new subsystems involved).
|
|
186
|
-
Re-running overwrites the existing Relevant Wiki section.
|
|
187
|
-
|
|
188
|
-
**This section IS part of the story file.**
|
|
189
|
-
It replaces the placeholder left by pass 1 in the story.xml template.
|
|
190
|
-
It is also synced to the GitHub issue body when GitHub integration is enabled.
|
|
191
|
-
|
|
192
|
-
</evolution>
|
|
193
|
-
|
|
194
|
-
</story-wiki>
|
|
1
|
+
<story-wiki>
|
|
2
|
+
|
|
3
|
+
<purpose>
|
|
4
|
+
Template for the `## Relevant Wiki` section that gets APPENDED to the story file
|
|
5
|
+
(`.ace/artifacts/product/<id-epic_name>/<id-feature_name>/<id-story_name>/<id-story_name>.md`)
|
|
6
|
+
and optionally updated in the GitHub issue body.
|
|
7
|
+
|
|
8
|
+
This is pass 2 of the story specification pipeline (see story.xml composition).
|
|
9
|
+
It runs AFTER sections 1-8 (business requirements) are complete.
|
|
10
|
+
|
|
11
|
+
A research agent reads the User Story, Description, and Acceptance Criteria from pass 1,
|
|
12
|
+
then scans the `.docs/wiki/` directory to select documents that are relevant for
|
|
13
|
+
designing a good technical solution for this story.
|
|
14
|
+
|
|
15
|
+
The output is written directly INTO the story file — replacing or populating the
|
|
16
|
+
`## Relevant Wiki` section placeholder left by pass 1.
|
|
17
|
+
|
|
18
|
+
This section is consumed by pass 5 (technical solution) as the primary reference
|
|
19
|
+
for which wiki documents to load when designing the implementation approach.
|
|
20
|
+
</purpose>
|
|
21
|
+
|
|
22
|
+
<output-format>
|
|
23
|
+
|
|
24
|
+
<section name="relevant-wiki">
|
|
25
|
+
## Relevant Wiki
|
|
26
|
+
|
|
27
|
+
<!-- Pass 2. Populated by research-story-wiki workflow.
|
|
28
|
+
A research agent reads the User Story, Description, and AC,
|
|
29
|
+
then scans `.docs/wiki/` to select documents relevant to
|
|
30
|
+
designing a good technical solution for this story.
|
|
31
|
+
|
|
32
|
+
Group references by wiki document type. Only include documents that
|
|
33
|
+
directly inform implementation — do not list tangentially related docs.
|
|
34
|
+
Each entry: relative path + one-line reason why it's relevant. -->
|
|
35
|
+
|
|
36
|
+
### System-Wide
|
|
37
|
+
|
|
38
|
+
<!-- MANDATORY — all four system-wide docs are always included.
|
|
39
|
+
These are mandatory context for every story — no reason needed. -->
|
|
40
|
+
|
|
41
|
+
- `.docs/wiki/system-wide/system-structure.md` — Mandatory system-wide context
|
|
42
|
+
- `.docs/wiki/system-wide/system-architecture.md` — Mandatory system-wide context
|
|
43
|
+
- `.docs/wiki/system-wide/coding-standards.md` — Mandatory system-wide context
|
|
44
|
+
- `.docs/wiki/system-wide/testing-framework.md` — Mandatory system-wide context
|
|
45
|
+
|
|
46
|
+
### Systems
|
|
47
|
+
- [`.docs/wiki/subsystems/[name]/systems/[system].md`] — [Why this system is relevant to this story]
|
|
48
|
+
|
|
49
|
+
### Patterns
|
|
50
|
+
- [`.docs/wiki/subsystems/[name]/patterns/[pattern].md`] — [Why this pattern applies to this story]
|
|
51
|
+
|
|
52
|
+
### Cross-Cutting Concerns
|
|
53
|
+
- [`.docs/wiki/subsystems/[name]/cross-cutting/[concern].md`] — [Why this concern matters for this story]
|
|
54
|
+
|
|
55
|
+
### Guides
|
|
56
|
+
- [`.docs/wiki/subsystems/[name]/guides/[guide].md`] — [Why this guide is useful for this story]
|
|
57
|
+
|
|
58
|
+
### Walkthroughs
|
|
59
|
+
- [`.docs/wiki/subsystems/[name]/walkthroughs/[flow].md`] — [Why this flow walkthrough helps understand the implementation context]
|
|
60
|
+
|
|
61
|
+
### Decisions
|
|
62
|
+
- [`.docs/wiki/subsystems/[name]/decisions/[decision].md`] — [Why this ADR constrains or informs this story]
|
|
63
|
+
|
|
64
|
+
### Architecture
|
|
65
|
+
- [`.docs/wiki/subsystems/[name]/architecture.md`] — [Why this subsystem's architecture doc is relevant]
|
|
66
|
+
|
|
67
|
+
<!-- Omit any subsystem category header that has no relevant documents.
|
|
68
|
+
The System-Wide section is NEVER omitted — it is always present.
|
|
69
|
+
|
|
70
|
+
Example:
|
|
71
|
+
|
|
72
|
+
### System-Wide
|
|
73
|
+
- `.docs/wiki/system-wide/system-structure.md` — Locates auth subsystem boundaries and shared middleware
|
|
74
|
+
- `.docs/wiki/system-wide/system-architecture.md` — Documents API gateway routing to auth service
|
|
75
|
+
- `.docs/wiki/system-wide/coding-standards.md` — Error handling conventions for API responses
|
|
76
|
+
- `.docs/wiki/system-wide/testing-framework.md` — Integration test setup for auth endpoints
|
|
77
|
+
|
|
78
|
+
### Systems
|
|
79
|
+
- `.docs/wiki/subsystems/auth/systems/oauth-provider.md` — Implements the provider abstraction this story extends
|
|
80
|
+
- `.docs/wiki/subsystems/auth/systems/session-manager.md` — Manages tokens created by the OAuth flow
|
|
81
|
+
|
|
82
|
+
### Patterns
|
|
83
|
+
- `.docs/wiki/subsystems/auth/patterns/strategy-pattern.md` — Each OAuth provider is a strategy; new provider must follow this
|
|
84
|
+
|
|
85
|
+
### Decisions
|
|
86
|
+
- `.docs/wiki/subsystems/auth/decisions/adr-003-jwt-over-sessions.md` — Constrains token format to JWT
|
|
87
|
+
-->
|
|
88
|
+
</section>
|
|
89
|
+
|
|
90
|
+
</output-format>
|
|
91
|
+
|
|
92
|
+
<selection-criteria>
|
|
93
|
+
|
|
94
|
+
<include-when>
|
|
95
|
+
A wiki document should be INCLUDED if it:
|
|
96
|
+
- Describes a system this story will modify or extend
|
|
97
|
+
- Documents a pattern this story must follow
|
|
98
|
+
- Covers a cross-cutting concern this story must respect (auth, logging, error handling, etc.)
|
|
99
|
+
- Contains a guide for a task this story requires (e.g., "how to add an API endpoint")
|
|
100
|
+
- Walks through a complex flow this story extends or modifies
|
|
101
|
+
- Records an ADR that constrains design choices for this story
|
|
102
|
+
- Describes the structure or architecture of a subsystem this story touches
|
|
103
|
+
</include-when>
|
|
104
|
+
|
|
105
|
+
<exclude-when>
|
|
106
|
+
A wiki document should be EXCLUDED if it:
|
|
107
|
+
- Is only tangentially related (same subsystem but different concern)
|
|
108
|
+
- Describes something the story reads from but does not modify
|
|
109
|
+
- Would be "nice to know" but does not change the implementation approach
|
|
110
|
+
- Duplicates information already in a system-wide doc
|
|
111
|
+
</exclude-when>
|
|
112
|
+
|
|
113
|
+
<reason-quality>
|
|
114
|
+
Each entry MUST have a one-line reason explaining WHY that document is relevant
|
|
115
|
+
to THIS specific story. Generic reasons like "related to auth" are NOT acceptable.
|
|
116
|
+
The reason must explain what the implementing agent should look for or learn from
|
|
117
|
+
that document.
|
|
118
|
+
|
|
119
|
+
Good: "Defines the provider strategy interface this story must implement"
|
|
120
|
+
Bad: "Related to OAuth"
|
|
121
|
+
</reason-quality>
|
|
122
|
+
|
|
123
|
+
</selection-criteria>
|
|
124
|
+
|
|
125
|
+
<guidelines>
|
|
126
|
+
|
|
127
|
+
<guideline name="system-wide-mandatory">
|
|
128
|
+
The four system-wide documents are ALWAYS included in the output:
|
|
129
|
+
- system-structure.md
|
|
130
|
+
- system-architecture.md
|
|
131
|
+
- coding-standards.md
|
|
132
|
+
- testing-framework.md
|
|
133
|
+
|
|
134
|
+
These are mandatory context for every story. Do NOT read them during wiki research —
|
|
135
|
+
the implementing agent (pass 5) will read them directly. Just list them in the output.
|
|
136
|
+
</guideline>
|
|
137
|
+
|
|
138
|
+
<guideline name="subsystem-depth">
|
|
139
|
+
For each affected subsystem, the research agent must READ the subsystem's wiki
|
|
140
|
+
documents to assess relevance — not just list them based on directory names.
|
|
141
|
+
Only include documents that directly inform the implementation of THIS story.
|
|
142
|
+
</guideline>
|
|
143
|
+
|
|
144
|
+
<guideline name="feature-relevant-wiki-hint">
|
|
145
|
+
If a `relevant-wiki.md` file exists at the feature level
|
|
146
|
+
(`.ace/artifacts/product/<id-epic_name>/<id-feature_name>/relevant-wiki.md`),
|
|
147
|
+
use it as a STARTING POINT to identify which subsystems to investigate.
|
|
148
|
+
This file may not exist — proceed without it if missing.
|
|
149
|
+
</guideline>
|
|
150
|
+
|
|
151
|
+
<guideline name="parallel-subsystem-research">
|
|
152
|
+
When multiple subsystems need investigation, spawn parallel ace-wiki-mapper
|
|
153
|
+
agents to read and assess each subsystem's docs concurrently. Each agent returns
|
|
154
|
+
a list of relevant files with reasons — the orchestrator compiles the final section.
|
|
155
|
+
</guideline>
|
|
156
|
+
|
|
157
|
+
<guideline name="conciseness">
|
|
158
|
+
The Relevant Wiki section should be scannable. No prose paragraphs.
|
|
159
|
+
Just categorized file references with one-line reasons.
|
|
160
|
+
Omit empty category headers — if no patterns are relevant, don't show ### Patterns.
|
|
161
|
+
The System-Wide section is the only exception — it is always present.
|
|
162
|
+
</guideline>
|
|
163
|
+
|
|
164
|
+
<guideline name="github-compatibility">
|
|
165
|
+
The output must render cleanly in both markdown files and GitHub issue bodies.
|
|
166
|
+
Use standard markdown — no HTML, no custom formatting.
|
|
167
|
+
Backtick-formatted file paths for readability.
|
|
168
|
+
</guideline>
|
|
169
|
+
|
|
170
|
+
</guidelines>
|
|
171
|
+
|
|
172
|
+
<evolution>
|
|
173
|
+
|
|
174
|
+
**Creation (research-story-wiki — pass 2):**
|
|
175
|
+
This pass runs after sections 1-8 are complete. It reads the story requirements
|
|
176
|
+
and scans the wiki to populate the Relevant Wiki section. A single run produces
|
|
177
|
+
the complete section.
|
|
178
|
+
|
|
179
|
+
**Consumption (story-technical-solution — pass 5):**
|
|
180
|
+
The technical solution pass reads this section to know which wiki documents to load
|
|
181
|
+
as context when designing the implementation approach. Every file listed here
|
|
182
|
+
will be read by the implementing agent.
|
|
183
|
+
|
|
184
|
+
**Re-research (exception, not norm):**
|
|
185
|
+
Only when story scope changes significantly (AC rewritten, new subsystems involved).
|
|
186
|
+
Re-running overwrites the existing Relevant Wiki section.
|
|
187
|
+
|
|
188
|
+
**This section IS part of the story file.**
|
|
189
|
+
It replaces the placeholder left by pass 1 in the story.xml template.
|
|
190
|
+
It is also synced to the GitHub issue body when GitHub integration is enabled.
|
|
191
|
+
|
|
192
|
+
</evolution>
|
|
193
|
+
|
|
194
|
+
</story-wiki>
|