ace-docs 0.31.0

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.
Files changed (91) hide show
  1. checksums.yaml +7 -0
  2. data/.ace-defaults/docs/config.yml +169 -0
  3. data/.ace-defaults/docs/multi-subject-example.md +130 -0
  4. data/.ace-defaults/docs/single-subject-example.md +150 -0
  5. data/.ace-defaults/nav/protocols/guide-sources/ace-docs.yml +10 -0
  6. data/.ace-defaults/nav/protocols/prompt-sources/ace-docs.yml +34 -0
  7. data/.ace-defaults/nav/protocols/tmpl-sources/ace-docs.yml +10 -0
  8. data/.ace-defaults/nav/protocols/wfi-sources/ace-docs.yml +19 -0
  9. data/CHANGELOG.md +1082 -0
  10. data/LICENSE +21 -0
  11. data/README.md +40 -0
  12. data/Rakefile +14 -0
  13. data/exe/ace-docs +14 -0
  14. data/handbook/guides/documentation/ruby.md +16 -0
  15. data/handbook/guides/documentation/rust.md +35 -0
  16. data/handbook/guides/documentation/typescript.md +18 -0
  17. data/handbook/guides/documentation.g.md +437 -0
  18. data/handbook/guides/documents-embedded-sync.g.md +473 -0
  19. data/handbook/guides/documents-embedding.g.md +276 -0
  20. data/handbook/guides/markdown-style.g.md +290 -0
  21. data/handbook/prompts/ace-change-analyzer.system.md +113 -0
  22. data/handbook/prompts/ace-change-analyzer.user.md +95 -0
  23. data/handbook/prompts/document-analysis.md +74 -0
  24. data/handbook/prompts/document-analysis.system.md +129 -0
  25. data/handbook/prompts/markdown-style.system.md +113 -0
  26. data/handbook/skills/as-docs-create-adr/SKILL.md +35 -0
  27. data/handbook/skills/as-docs-create-api/SKILL.md +35 -0
  28. data/handbook/skills/as-docs-create-user/SKILL.md +35 -0
  29. data/handbook/skills/as-docs-maintain-adrs/SKILL.md +35 -0
  30. data/handbook/skills/as-docs-squash-changelog/SKILL.md +42 -0
  31. data/handbook/skills/as-docs-update/SKILL.md +36 -0
  32. data/handbook/skills/as-docs-update-blueprint/SKILL.md +28 -0
  33. data/handbook/skills/as-docs-update-roadmap/SKILL.md +24 -0
  34. data/handbook/skills/as-docs-update-tools/SKILL.md +36 -0
  35. data/handbook/skills/as-docs-update-usage/SKILL.md +26 -0
  36. data/handbook/templates/code-docs/javascript-jsdoc.template.md +102 -0
  37. data/handbook/templates/code-docs/ruby-yard.template.md +85 -0
  38. data/handbook/templates/project-docs/README.template.md +73 -0
  39. data/handbook/templates/project-docs/architecture.template.md +300 -0
  40. data/handbook/templates/project-docs/blueprint.template.md +165 -0
  41. data/handbook/templates/project-docs/context/ownership.yml +160 -0
  42. data/handbook/templates/project-docs/decisions/adr.template.md +60 -0
  43. data/handbook/templates/project-docs/prd.template.md +144 -0
  44. data/handbook/templates/project-docs/roadmap/roadmap.template.md +47 -0
  45. data/handbook/templates/project-docs/vision.template.md +233 -0
  46. data/handbook/templates/user-docs/user-guide.template.md +107 -0
  47. data/handbook/workflow-instructions/docs/create-adr.wf.md +334 -0
  48. data/handbook/workflow-instructions/docs/create-api.wf.md +448 -0
  49. data/handbook/workflow-instructions/docs/create-cookbook.wf.md +434 -0
  50. data/handbook/workflow-instructions/docs/create-user.wf.md +399 -0
  51. data/handbook/workflow-instructions/docs/maintain-adrs.wf.md +589 -0
  52. data/handbook/workflow-instructions/docs/squash-changelog.wf.md +246 -0
  53. data/handbook/workflow-instructions/docs/update-blueprint.wf.md +361 -0
  54. data/handbook/workflow-instructions/docs/update-context.wf.md +336 -0
  55. data/handbook/workflow-instructions/docs/update-roadmap.wf.md +421 -0
  56. data/handbook/workflow-instructions/docs/update-tools.wf.md +307 -0
  57. data/handbook/workflow-instructions/docs/update-usage.wf.md +710 -0
  58. data/handbook/workflow-instructions/docs/update.wf.md +418 -0
  59. data/lib/ace/docs/atoms/diff_filterer.rb +131 -0
  60. data/lib/ace/docs/atoms/frontmatter_free_matcher.rb +20 -0
  61. data/lib/ace/docs/atoms/git_date_resolver.rb +16 -0
  62. data/lib/ace/docs/atoms/readme_metadata_inferrer.rb +60 -0
  63. data/lib/ace/docs/atoms/terminology_extractor.rb +308 -0
  64. data/lib/ace/docs/atoms/time_range_calculator.rb +96 -0
  65. data/lib/ace/docs/atoms/timestamp_parser.rb +106 -0
  66. data/lib/ace/docs/atoms/type_inferrer.rb +70 -0
  67. data/lib/ace/docs/cli/commands/analyze.rb +351 -0
  68. data/lib/ace/docs/cli/commands/analyze_consistency.rb +185 -0
  69. data/lib/ace/docs/cli/commands/discover.rb +75 -0
  70. data/lib/ace/docs/cli/commands/scope_options.rb +71 -0
  71. data/lib/ace/docs/cli/commands/status.rb +241 -0
  72. data/lib/ace/docs/cli/commands/update.rb +198 -0
  73. data/lib/ace/docs/cli/commands/validate.rb +225 -0
  74. data/lib/ace/docs/cli.rb +60 -0
  75. data/lib/ace/docs/models/analysis_report.rb +120 -0
  76. data/lib/ace/docs/models/consistency_report.rb +259 -0
  77. data/lib/ace/docs/models/document.rb +354 -0
  78. data/lib/ace/docs/molecules/change_detector.rb +389 -0
  79. data/lib/ace/docs/molecules/document_loader.rb +133 -0
  80. data/lib/ace/docs/molecules/frontmatter_manager.rb +85 -0
  81. data/lib/ace/docs/molecules/git_date_resolver.rb +30 -0
  82. data/lib/ace/docs/organisms/cross_document_analyzer.rb +274 -0
  83. data/lib/ace/docs/organisms/document_registry.rb +318 -0
  84. data/lib/ace/docs/organisms/validator.rb +164 -0
  85. data/lib/ace/docs/prompts/compact_diff_prompt.rb +119 -0
  86. data/lib/ace/docs/prompts/consistency_prompt.rb +286 -0
  87. data/lib/ace/docs/prompts/document_analysis_prompt.rb +389 -0
  88. data/lib/ace/docs/version.rb +7 -0
  89. data/lib/ace/docs.rb +82 -0
  90. data/lib/test.rb +4 -0
  91. metadata +347 -0
@@ -0,0 +1,246 @@
1
+ ---
2
+ doc-type: workflow
3
+ title: Squash Changelog Entries Workflow
4
+ purpose: changelog management workflow instruction
5
+ ace-docs:
6
+ last-updated: 2026-02-22
7
+ last-checked: 2026-03-21
8
+ ---
9
+
10
+ # Squash Changelog Entries Workflow
11
+
12
+ Consolidate multiple CHANGELOG.md version entries added on a feature branch into a single entry before merging to the target branch.
13
+
14
+ ## When to Use
15
+
16
+ On feature branches with multiple `ace-release` cycles that each added a version entry to root `CHANGELOG.md`. Before merging the PR, squash these into one entry using the **lowest** version number.
17
+
18
+ ## Prerequisites
19
+
20
+ - On a feature branch (not main/master)
21
+ - Root `CHANGELOG.md` exists with entries added during this branch's lifecycle
22
+ - Entries follow [Keep a Changelog](https://keepachangelog.com/) format
23
+
24
+ ## Steps
25
+
26
+ ### 1. Safety Check
27
+
28
+ Verify you are NOT on main/master:
29
+
30
+ ```bash
31
+ BRANCH=$(git branch --show-current)
32
+ ```
33
+
34
+ If on `main` or `master`, **STOP** unless `--force` was passed. Squashing on main would alter published history.
35
+
36
+ ### 2. Determine Target Branch
37
+
38
+ Use this priority order to find the branch this PR targets:
39
+
40
+ 1. **Embedded context** — check `<current_repository_status>` for "Current PR → Target: X"
41
+ 2. **Explicit argument** — if user passed a branch name, use it
42
+ 3. **GitHub CLI** — `gh pr view --json baseRefName --jq '.baseRefName'`
43
+ 4. **Fallback** — `main`
44
+
45
+ ```bash
46
+ TARGET=$(gh pr view --json baseRefName --jq '.baseRefName' 2>/dev/null || echo main)
47
+ ```
48
+
49
+ ### 3. Detect New Entries
50
+
51
+ Use the embedded `<changelog_diff>` section if available. Otherwise:
52
+
53
+ ```bash
54
+ git diff "$TARGET" -- CHANGELOG.md
55
+ ```
56
+
57
+ Extract all new `## [X.Y.Z]` version headers that were **added** (lines starting with `+## [`).
58
+
59
+ ```bash
60
+ git diff "$TARGET" -- CHANGELOG.md | grep -E '^\+## \[[0-9]+\.[0-9]+\.[0-9]+\]' | sed 's/^\+//'
61
+ ```
62
+
63
+ ### 4. Validate Entry Count
64
+
65
+ | Count | Action |
66
+ |-------|--------|
67
+ | 0 | Report "No new changelog entries found — nothing to squash." **STOP.** |
68
+ | 1 | Report "Only one entry found — already consolidated, nothing to squash." **STOP.** |
69
+ | 2+ | Proceed to squash. |
70
+
71
+ ### 5. Parse Entries
72
+
73
+ Read `CHANGELOG.md` and extract each new entry's content:
74
+
75
+ - For each detected version header, capture everything from `## [X.Y.Z]` down to (but not including) the next `## [` header
76
+ - Parse into categories: Fixed, Added, Removed, Changed, Technical
77
+ - Preserve individual line items with their package version prefixes (e.g., `**ace-foo v1.2.3**:`)
78
+
79
+ ### 6. Select Version
80
+
81
+ Use the **LOWEST** version number from the detected entries (numeric comparison, not lexicographic).
82
+
83
+ **Numeric comparison**: Compare major, then minor, then patch as integers.
84
+ - `0.9.496` < `0.9.497` < `0.9.498` → select `0.9.496`
85
+
86
+ Keep the **date** from the lowest version entry (it was the first release on this branch).
87
+
88
+ ### 7. Merge Categories
89
+
90
+ Combine all items across entries by category, following this canonical order:
91
+
92
+ 1. **Fixed**
93
+ 2. **Added**
94
+ 3. **Removed**
95
+ 4. **Changed**
96
+ 5. **Technical**
97
+
98
+ Rules:
99
+ - **Dedup similar items**: If two entries describe the same fix/feature with slightly different wording, keep the more descriptive one
100
+ - **Preserve package prefixes**: Keep `**ace-foo vX.Y.Z**:` prefixes for traceability
101
+ - **Skip empty categories**: Only include categories that have items after merging
102
+ - **Within each category**: Order items by package name, then by version (ascending)
103
+
104
+ ### 8. Preview
105
+
106
+ Show the squashed entry to the user. Format:
107
+
108
+ ```
109
+ --- Squashed changelog entry ---
110
+ Merging N entries ([highest]...[lowest]) into single [lowest] entry:
111
+
112
+ ## [X.Y.Z] - YYYY-MM-DD
113
+
114
+ ### Fixed
115
+ - item 1
116
+ - item 2
117
+
118
+ ### Added
119
+ - item 3
120
+
121
+ ...
122
+ --- End preview ---
123
+
124
+ Confirm: Replace N entries with this single entry? (Y/n)
125
+ ```
126
+
127
+ Wait for user confirmation before proceeding.
128
+
129
+ ### 9. Replace
130
+
131
+ Use the **Edit** tool to replace the multi-entry block in `CHANGELOG.md`:
132
+
133
+ - `old_string`: The entire block from the first (highest version) `## [X.Y.Z]` header through the last line of the last (lowest version) entry, up to but not including the next pre-existing `## [` header
134
+ - `new_string`: The single squashed entry from step 8
135
+
136
+ ### 10. Verify
137
+
138
+ After replacement, confirm correctness:
139
+
140
+ ```bash
141
+ # Old versions should be gone
142
+ grep -E "## \[OLD_VERSION\]" CHANGELOG.md
143
+ # Should return no results for removed versions
144
+
145
+ # New version should be present
146
+ grep -E "## \[LOWEST_VERSION\]" CHANGELOG.md
147
+ # Should return exactly one match
148
+
149
+ # Unreleased section should be intact
150
+ grep "## \[Unreleased\]" CHANGELOG.md
151
+ # Should return one match
152
+ ```
153
+
154
+ ### 11. Report
155
+
156
+ Print a summary:
157
+
158
+ ```
159
+ Squashed N changelog entries into one:
160
+ Removed: [0.9.498], [0.9.497]
161
+ Kept: [0.9.496] (with all 13 items merged)
162
+
163
+ Changes are NOT committed. Review and commit when ready.
164
+ ```
165
+
166
+ ## Edge Cases
167
+
168
+ ### Different Dates Across Entries
169
+
170
+ Use the date from the **lowest** version (earliest release on this branch). The squashed entry represents the cumulative work starting from that point.
171
+
172
+ ### Multiple Packages in Same Category
173
+
174
+ Keep all items — each has its own package prefix for disambiguation:
175
+
176
+ ```markdown
177
+ ### Fixed
178
+ - **ace-assign v0.7.3**: Fix A
179
+ - **ace-assign v0.7.5**: Fix B
180
+ ```
181
+
182
+ ### Dirty Working Tree
183
+
184
+ If there are uncommitted changes to `CHANGELOG.md`, warn the user:
185
+
186
+ ```
187
+ Warning: CHANGELOG.md has uncommitted changes. These will be included in the squash result.
188
+ Proceed anyway? (y/N)
189
+ ```
190
+
191
+ ### Version Comparison
192
+
193
+ Always compare versions **numerically**, not as strings:
194
+ - `0.9.10` > `0.9.9` (numeric: 10 > 9)
195
+ - String comparison would incorrectly say `0.9.9` > `0.9.10`
196
+
197
+ Split on `.`, compare each segment as integers.
198
+
199
+ ## Examples
200
+
201
+ ### Example 1: Three Entries on Feature Branch
202
+
203
+ Before:
204
+ ```markdown
205
+ ## [Unreleased]
206
+
207
+ ## [0.9.498] - 2026-02-13
208
+ ### Fixed
209
+ - **ace-assign v0.7.5**: Fix A
210
+ ### Changed
211
+ - **ace-assign v0.7.5**: Change B
212
+
213
+ ## [0.9.497] - 2026-02-13
214
+ ### Fixed
215
+ - **ace-assign v0.7.4**: Fix C
216
+ ### Added
217
+ - **ace-assign v0.7.4**: Feature D
218
+
219
+ ## [0.9.496] - 2026-02-13
220
+ ### Added
221
+ - **ace-assign v0.7.3**: Feature E
222
+ ### Fixed
223
+ - **ace-assign v0.7.3**: Fix F
224
+ ```
225
+
226
+ After squash:
227
+ ```markdown
228
+ ## [Unreleased]
229
+
230
+ ## [0.9.496] - 2026-02-13
231
+ ### Fixed
232
+ - **ace-assign v0.7.3**: Fix F
233
+ - **ace-assign v0.7.4**: Fix C
234
+ - **ace-assign v0.7.5**: Fix A
235
+ ### Added
236
+ - **ace-assign v0.7.3**: Feature E
237
+ - **ace-assign v0.7.4**: Feature D
238
+ ### Changed
239
+ - **ace-assign v0.7.5**: Change B
240
+ ```
241
+
242
+ ### Example 2: Already Squashed
243
+
244
+ ```
245
+ Only one entry found ([0.9.496]) — already consolidated, nothing to squash.
246
+ ```
@@ -0,0 +1,361 @@
1
+ ---
2
+ doc-type: workflow
3
+ title: Update Project Blueprint Workflow Instruction
4
+ purpose: Documentation for ace-docs/handbook/workflow-instructions/docs/update-blueprint.wf.md
5
+ ace-docs:
6
+ last-updated: 2026-02-23
7
+ last-checked: 2026-03-21
8
+ ---
9
+
10
+ # Update Project Blueprint Workflow Instruction
11
+
12
+ ## Goal
13
+
14
+ Update the `docs/blueprint.md` file with a concise summary of the current project structure, key files, and links to
15
+ core project documents. The blueprint provides essential orientation for developers and AI agents to quickly understand
16
+ the project organization.
17
+
18
+ ## Definition
19
+
20
+ A "blueprint" in this context is a concise overview document that provides orientation to the project's structure and
21
+ organization, highlighting key directories and files to help developers (especially AI assistants) quickly understand
22
+ how to navigate the codebase.
23
+
24
+ ## Prerequisites
25
+
26
+ * Project structure should be relatively stable
27
+ * Core documents (`vision.md`, `architecture.md`) should exist and be reasonably up-to-date
28
+ * Write access to `dev-taskflow/` directory
29
+
30
+ ## Project Context Loading
31
+
32
+ * Read and follow: `ace-bundle wfi://bundle`
33
+
34
+ ## High-Level Execution Plan
35
+
36
+ ### Planning Phase
37
+
38
+ * Analyze current project structure
39
+ * Identify key directories and files
40
+ * Check for existing specialized
41
+ documentation (tools.md, etc.)
42
+ * Determine what has changed since last
43
+ update
44
+
45
+
46
+ ### Execution Phase
47
+
48
+ * Generate updated directory structure
49
+ overview
50
+ * Update key file descriptions
51
+ * Verify and update document links
52
+ * Add read-only and ignored paths sections
53
+ * Save updated blueprint
54
+
55
+
56
+ ## Process Steps
57
+
58
+ 1. **Identify Core Project Documents:**
59
+ * Verify `docs/vision.md` and `docs/architecture.md` are present
60
+ * Check for any additional core documentation files
61
+ 2. **Generate Blueprint Structure:**
62
+
63
+ Use the blueprint template:
64
+
65
+ 3. **Analyze Project Structure:**
66
+ * Use enhanced tree navigation to get current structure:
67
+
68
+ nav-tree --project-structure --filter source
69
+ {: .language-bash}
70
+
71
+ * Identify main source directories with enhanced navigation: nav-ls --long src/ app/ lib/
72
+ {: .language-bash}
73
+
74
+ * Note test directory location and submodules with context awareness
75
+ * Document any submodules if present
76
+ 4. **Update Directory Descriptions:**
77
+ * Replace placeholder directories with actual project structure
78
+ * Add brief descriptions for each major directory
79
+ * Include relationship between directories if relevant
80
+ 5. **Identify Key Project-Specific Files:**
81
+ * List critical configuration files
82
+ * Include entry points and main modules
83
+ * Focus on files unique to this project
84
+ * Add version/build files (package.json, Gemfile, etc.)
85
+ * **For tools**: If `docs/tools.md` exists, reference it instead of duplicating tool lists
86
+ 6. **Extract Technology Stack:**
87
+ * Read from architecture.md or analyze project files
88
+ * Identify primary language and version
89
+ * List main framework and key libraries
90
+ * Include database and external services
91
+ 7. **Define Agent Guidelines:**
92
+ * Specify read-only paths (archived releases, etc.)
93
+ * List ignored paths (dependencies, logs, etc.)
94
+ * Add project-specific restrictions
95
+ 8. **Update Links and Save:**
96
+ * Ensure all internal document links are correct
97
+ * Verify file paths are relative to blueprint location
98
+ * Save the updated `docs/blueprint.md` file
99
+
100
+ ## Common Directory Patterns
101
+
102
+ ### Web Applications
103
+
104
+ app/ # Application code
105
+ config/ # Configuration files
106
+ public/ # Static assets
107
+ views/ # Templates
108
+
109
+ ### Libraries/Packages
110
+
111
+ lib/ # Library source code
112
+ examples/ # Usage examples
113
+ benchmarks/ # Performance tests
114
+
115
+ ### Microservices
116
+
117
+ services/ # Individual services
118
+ shared/ # Shared code
119
+ infra/ # Infrastructure config
120
+
121
+ ## Technology Stack Detection
122
+
123
+ ### Node.js
124
+
125
+ * Look for: `package.json`, `node_modules/`
126
+ * Key files: `index.js`, `server.js`, `app.js`
127
+
128
+ ### Ruby
129
+
130
+ * Look for: `Gemfile`, `Rakefile`, `.ruby-version`
131
+ * Key files: `config.ru`, `app.rb`
132
+
133
+ ### Python
134
+
135
+ * Look for: `requirements.txt`, `setup.py`, `pyproject.toml`
136
+ * Key files: `__main__.py`, `app.py`, `main.py`
137
+
138
+ ### Rust
139
+
140
+ * Look for: `Cargo.toml`, `Cargo.lock`
141
+ * Key files: `main.rs`, `lib.rs`
142
+
143
+ ## Output / Success Criteria
144
+
145
+ * `docs/blueprint.md` file is created or updated
146
+ * Contains accurate directory structure representation
147
+ * Technology stack is correctly identified
148
+ * Key files are listed with descriptions
149
+ * Read-only and ignored paths are specified
150
+ * All document links are valid and relative
151
+ * Information complements (not duplicates) other docs
152
+ * Tools information references `docs/tools.md` if it exists rather than duplicating
153
+
154
+ ## Usage Example
155
+
156
+ Invoke this workflow when:
157
+
158
+ * Significant structural changes have occurred
159
+ * Before starting a major planning phase
160
+ * When onboarding new team members or AI agents
161
+ * After major refactoring or reorganization
162
+
163
+ Example:
164
+
165
+ > "Update the blueprint to reflect our new microservices structure"
166
+
167
+ ## Best Practices
168
+
169
+ **DO:**
170
+
171
+ * Keep descriptions concise and focused
172
+ * Update after major structural changes
173
+ * Include technology versions when known
174
+ * Specify AI agent guidelines clearly
175
+ * Use relative paths for all links
176
+
177
+ **DON'T:**
178
+
179
+ * Include temporary or generated files
180
+ * Duplicate architecture documentation
181
+ * Duplicate detailed tools information (if `docs/tools.md` exists, reference it instead)
182
+ * List every single file
183
+ * Include sensitive information
184
+ * Use absolute file paths
185
+
186
+ <documents>
187
+ <template name="blueprint" markdown="1"># Project Blueprint: [Project Name]
188
+
189
+ ## What is a Blueprint?
190
+
191
+ This document provides a concise overview of the project's structure and organization, highlighting key directories and files to help developers (especially AI assistants) quickly understand how to navigate the codebase. It should be updated periodically using the `update-blueprint` workflow.
192
+
193
+ ## Core Project Documents
194
+
195
+ - [What We Build](docs/vision.md) - Project vision and goals
196
+ - [Architecture](docs/architecture.md) - System design and implementation principles
197
+ - [Blueprint](docs/blueprint.md) - Project structure and organization
198
+
199
+ ## Project Organization
200
+
201
+ <!-- Describe your project's main directory structure -->
202
+
203
+
204
+
205
+ This project follows a documentation-first approach with these primary directories:
206
+
207
+ - **docs/** - Project documentation
208
+ - **guides/** - Best practices and development standards
209
+ - **architecture/** - System design and decisions
210
+ - **workflow-instructions/** - Structured commands for AI agents
211
+ - **zed/** - Editor integration (if applicable)
212
+
213
+ - **dev-taskflow/** - Project-specific documentation
214
+ - **current/** - Active release cycle work
215
+ - **backlog/** - Pending tasks for future releases
216
+ - **done/** - Completed releases and tasks
217
+ - **decisions/** - Architecture Decision Records (ADRs)
218
+
219
+ - **bin/** - Executable scripts for project management and automation
220
+
221
+ - **src/** - Source code (adjust directory names as needed)
222
+ - **[component1]/** - Core functionality
223
+ - **[component2]/** - Additional features
224
+ - **utils/** - Shared utilities
225
+
226
+ - **tests/** - Test files and test utilities
227
+
228
+ - **config/** - Configuration files
229
+
230
+ <!-- Add your project-specific directories here -->
231
+
232
+
233
+
234
+ ## View Complete Directory Structure
235
+
236
+ To see the complete filtered directory structure, run:
237
+
238
+ ```bash
239
+ nav-tree
240
+ ```
241
+
242
+ This will show all project files while filtering out temporary files, session logs, and other non-essential directories.
243
+
244
+ ## Key Project-Specific Files
245
+
246
+ <!-- List important files that developers should know about -->
247
+
248
+
249
+
250
+ - [Documentation](docs/README.md) - Project documentation hub
251
+ - [Development Guides](docs/guides/README.md) - Development standards and best practices
252
+ - [Configuration](README.md) - Configuration documentation (if applicable)
253
+
254
+ ## Technology Stack
255
+
256
+ <!-- Summarize the main technologies used -->
257
+
258
+
259
+
260
+ - **Primary Language**: [e.g., JavaScript, Python, Rust]
261
+ - **Framework**: [e.g., React, Django, Axum]
262
+ - **Database**: [e.g., PostgreSQL, MongoDB, SQLite]
263
+ - **Key Libraries**: [List important dependencies]
264
+ - **Development Tools**: [e.g., Docker, Webpack, Cargo]
265
+
266
+ ## Read-Only Paths
267
+
268
+ This section lists files and directories that the agent should treat as read-only. Attempts to modify these paths should be flagged or prevented.
269
+
270
+ <!-- Add project-specific read-only paths -->
271
+
272
+
273
+ - `docs/decisions/**/*`
274
+ - `dev-taskflow/done/**/*`
275
+ - `*.lock` # Dependency lock files
276
+ - `dist/**/*` # Built artifacts
277
+ - `build/**/*` # Build output
278
+
279
+ ## Ignored Paths
280
+
281
+ This section lists files, directories, or glob patterns that the agent should ignore entirely during its operations (e.g., when searching, reading, or editing files).
282
+
283
+ - `dev-taskflow/done/**/*` # Default: Protects completed tasks and releases
284
+ - `**/node_modules/**`
285
+ - `**/.git/**`
286
+ - `**/__pycache__/**`
287
+ - `**/target/**` # Rust build artifacts
288
+ - `**/dist/**` # Built distributions
289
+ - `**/build/**` # Build artifacts
290
+ - `**/.env` # Environment files
291
+ - `**/.env.*` # Environment variants
292
+ - `*.session.log`
293
+ - `*.lock`
294
+ - `*.tmp`
295
+ - `*~` # Backup files
296
+ - `**/.DS_Store` # macOS system files
297
+ - `**/Thumbs.db` # Windows system files
298
+
299
+ ## Entry Points
300
+
301
+ <!-- Document the main ways to start or interact with the project -->
302
+
303
+
304
+
305
+ ### Development
306
+
307
+ ```bash
308
+ # Start development server
309
+ bin/run
310
+
311
+ # Run tests
312
+ # Run project-specific test command
313
+
314
+ # Build for production
315
+ bin/build
316
+ ```
317
+
318
+ ### Common Workflows
319
+
320
+ - **New Feature**: Use `task-manager next` to find next task, follow task workflow
321
+ - **Bug Fix**: Create task in backlog, prioritize, implement
322
+ - **Documentation**: Update relevant files in `dev-taskflow/`
323
+
324
+ ## Dependencies
325
+
326
+ <!-- List major external dependencies and their purposes -->
327
+
328
+
329
+
330
+ ### Runtime Dependencies
331
+
332
+ - [Library 1]: Purpose and version constraints
333
+ - [Library 2]: Purpose and version constraints
334
+
335
+ ### Development Dependencies
336
+
337
+ ## Submodules
338
+
339
+ <!-- Document any Git submodules used -->
340
+
341
+
342
+
343
+ ### docs-dev (if applicable)
344
+
345
+ - Path: `docs-dev`
346
+ - Repository: [Repository URL]
347
+ - Purpose: Development workflows and guides
348
+ - **Important**: Commits for this submodule must be made from within the submodule directory
349
+
350
+ ### [Other Submodules]
351
+
352
+ - Path: `[path]`
353
+ - Repository: [Repository URL]
354
+ - Purpose: [Description]
355
+
356
+ ---
357
+
358
+ *This blueprint should be updated when significant structural changes are made to the project. Use the `update-blueprint` workflow to keep it current.*
359
+ </template>
360
+ </documents>
361
+