agentera 0.0.0 → 3.0.0-dev.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 (252) hide show
  1. package/README.md +6 -45
  2. package/bundle/.agentera-npx-bundle.json +4 -0
  3. package/bundle/references/adapters/cursor.md +213 -0
  4. package/bundle/references/adapters/opencode.md +530 -0
  5. package/bundle/references/adapters/package-manifest-interface-model.yaml +337 -0
  6. package/bundle/references/adapters/package-registry.yaml +247 -0
  7. package/bundle/references/adapters/package-surface-characterization.md +48 -0
  8. package/bundle/references/adapters/runtime-adapter-characterization.md +79 -0
  9. package/bundle/references/adapters/runtime-adapter-interface-model.yaml +200 -0
  10. package/bundle/references/adapters/runtime-adapter-registry.yaml +548 -0
  11. package/bundle/references/adapters/runtime-feature-parity.md +189 -0
  12. package/bundle/references/analysis/benchmark.md +267 -0
  13. package/bundle/references/analysis/startup-measurement-contract.yaml +424 -0
  14. package/bundle/references/artifacts/artifact-registry-interface-model.yaml +288 -0
  15. package/bundle/references/cli/agent-ready-state-contract.yaml +950 -0
  16. package/bundle/references/cli/app-lifecycle-vocabulary.yaml +233 -0
  17. package/bundle/references/cli/audience-namespace-cli-migration.yaml +355 -0
  18. package/bundle/references/cli/bundle-skill-vocabulary.yaml +278 -0
  19. package/bundle/references/cli/capability-instruction-contract.yaml +123 -0
  20. package/bundle/references/cli/capability-tool-classification.yaml +53 -0
  21. package/bundle/references/cli/routing-execution-vocabulary.yaml +281 -0
  22. package/bundle/references/cli/update-channels.yaml +120 -0
  23. package/bundle/references/cli/vocabulary-index.yaml +160 -0
  24. package/bundle/references/cli/vocabulary.md +562 -0
  25. package/bundle/references/meta/documentation-inventory.md +43 -0
  26. package/bundle/references/v1-section-mapping.md +47 -0
  27. package/bundle/registry.json +39 -0
  28. package/bundle/skills/agentera/.claude-plugin/plugin.json +27 -0
  29. package/bundle/skills/agentera/SKILL.md +470 -0
  30. package/bundle/skills/agentera/agents/dokumentera.toml +6 -0
  31. package/bundle/skills/agentera/agents/hej.toml +6 -0
  32. package/bundle/skills/agentera/agents/inspektera.toml +6 -0
  33. package/bundle/skills/agentera/agents/inspirera.toml +6 -0
  34. package/bundle/skills/agentera/agents/optimera.toml +6 -0
  35. package/bundle/skills/agentera/agents/orkestrera.toml +6 -0
  36. package/bundle/skills/agentera/agents/planera.toml +6 -0
  37. package/bundle/skills/agentera/agents/profilera.toml +6 -0
  38. package/bundle/skills/agentera/agents/realisera.toml +6 -0
  39. package/bundle/skills/agentera/agents/resonera.toml +6 -0
  40. package/bundle/skills/agentera/agents/visionera.toml +6 -0
  41. package/bundle/skills/agentera/agents/visualisera.toml +6 -0
  42. package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +428 -0
  43. package/bundle/skills/agentera/capabilities/dokumentera/schemas/artifacts.yaml +73 -0
  44. package/bundle/skills/agentera/capabilities/dokumentera/schemas/exit.yaml +35 -0
  45. package/bundle/skills/agentera/capabilities/dokumentera/schemas/triggers.yaml +35 -0
  46. package/bundle/skills/agentera/capabilities/dokumentera/schemas/validation.yaml +139 -0
  47. package/bundle/skills/agentera/capabilities/hej/instructions.md +331 -0
  48. package/bundle/skills/agentera/capabilities/hej/schemas/artifacts.yaml +69 -0
  49. package/bundle/skills/agentera/capabilities/hej/schemas/exit.yaml +32 -0
  50. package/bundle/skills/agentera/capabilities/hej/schemas/triggers.yaml +58 -0
  51. package/bundle/skills/agentera/capabilities/hej/schemas/validation.yaml +55 -0
  52. package/bundle/skills/agentera/capabilities/inspektera/instructions.md +514 -0
  53. package/bundle/skills/agentera/capabilities/inspektera/schemas/artifacts.yaml +76 -0
  54. package/bundle/skills/agentera/capabilities/inspektera/schemas/exit.yaml +36 -0
  55. package/bundle/skills/agentera/capabilities/inspektera/schemas/triggers.yaml +38 -0
  56. package/bundle/skills/agentera/capabilities/inspektera/schemas/validation.yaml +113 -0
  57. package/bundle/skills/agentera/capabilities/inspirera/instructions.md +280 -0
  58. package/bundle/skills/agentera/capabilities/inspirera/schemas/artifacts.yaml +24 -0
  59. package/bundle/skills/agentera/capabilities/inspirera/schemas/exit.yaml +33 -0
  60. package/bundle/skills/agentera/capabilities/inspirera/schemas/triggers.yaml +34 -0
  61. package/bundle/skills/agentera/capabilities/inspirera/schemas/validation.yaml +58 -0
  62. package/bundle/skills/agentera/capabilities/optimera/instructions.md +437 -0
  63. package/bundle/skills/agentera/capabilities/optimera/schemas/artifacts.yaml +69 -0
  64. package/bundle/skills/agentera/capabilities/optimera/schemas/exit.yaml +35 -0
  65. package/bundle/skills/agentera/capabilities/optimera/schemas/triggers.yaml +39 -0
  66. package/bundle/skills/agentera/capabilities/optimera/schemas/validation.yaml +91 -0
  67. package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +433 -0
  68. package/bundle/skills/agentera/capabilities/orkestrera/schemas/artifacts.yaml +64 -0
  69. package/bundle/skills/agentera/capabilities/orkestrera/schemas/exit.yaml +34 -0
  70. package/bundle/skills/agentera/capabilities/orkestrera/schemas/triggers.yaml +42 -0
  71. package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +107 -0
  72. package/bundle/skills/agentera/capabilities/planera/instructions.md +368 -0
  73. package/bundle/skills/agentera/capabilities/planera/schemas/artifacts.yaml +62 -0
  74. package/bundle/skills/agentera/capabilities/planera/schemas/exit.yaml +33 -0
  75. package/bundle/skills/agentera/capabilities/planera/schemas/triggers.yaml +34 -0
  76. package/bundle/skills/agentera/capabilities/planera/schemas/validation.yaml +61 -0
  77. package/bundle/skills/agentera/capabilities/profilera/instructions.md +419 -0
  78. package/bundle/skills/agentera/capabilities/profilera/schemas/artifacts.yaml +18 -0
  79. package/bundle/skills/agentera/capabilities/profilera/schemas/exit.yaml +34 -0
  80. package/bundle/skills/agentera/capabilities/profilera/schemas/triggers.yaml +45 -0
  81. package/bundle/skills/agentera/capabilities/profilera/schemas/validation.yaml +57 -0
  82. package/bundle/skills/agentera/capabilities/realisera/instructions.md +403 -0
  83. package/bundle/skills/agentera/capabilities/realisera/schemas/artifacts.yaml +80 -0
  84. package/bundle/skills/agentera/capabilities/realisera/schemas/exit.yaml +35 -0
  85. package/bundle/skills/agentera/capabilities/realisera/schemas/triggers.yaml +39 -0
  86. package/bundle/skills/agentera/capabilities/realisera/schemas/validation.yaml +110 -0
  87. package/bundle/skills/agentera/capabilities/resonera/instructions.md +329 -0
  88. package/bundle/skills/agentera/capabilities/resonera/schemas/artifacts.yaml +47 -0
  89. package/bundle/skills/agentera/capabilities/resonera/schemas/exit.yaml +35 -0
  90. package/bundle/skills/agentera/capabilities/resonera/schemas/triggers.yaml +46 -0
  91. package/bundle/skills/agentera/capabilities/resonera/schemas/validation.yaml +77 -0
  92. package/bundle/skills/agentera/capabilities/visionera/instructions.md +309 -0
  93. package/bundle/skills/agentera/capabilities/visionera/schemas/artifacts.yaml +57 -0
  94. package/bundle/skills/agentera/capabilities/visionera/schemas/exit.yaml +35 -0
  95. package/bundle/skills/agentera/capabilities/visionera/schemas/triggers.yaml +41 -0
  96. package/bundle/skills/agentera/capabilities/visionera/schemas/validation.yaml +74 -0
  97. package/bundle/skills/agentera/capabilities/visualisera/instructions.md +400 -0
  98. package/bundle/skills/agentera/capabilities/visualisera/schemas/artifacts.yaml +44 -0
  99. package/bundle/skills/agentera/capabilities/visualisera/schemas/exit.yaml +34 -0
  100. package/bundle/skills/agentera/capabilities/visualisera/schemas/triggers.yaml +33 -0
  101. package/bundle/skills/agentera/capabilities/visualisera/schemas/validation.yaml +80 -0
  102. package/bundle/skills/agentera/capability_schema_contract.yaml +385 -0
  103. package/bundle/skills/agentera/protocol.yaml +463 -0
  104. package/bundle/skills/agentera/references/contract.md +1039 -0
  105. package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +60 -0
  106. package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +461 -0
  107. package/bundle/skills/agentera/schemas/artifacts/design.yaml +55 -0
  108. package/bundle/skills/agentera/schemas/artifacts/docs.yaml +402 -0
  109. package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +373 -0
  110. package/bundle/skills/agentera/schemas/artifacts/health.yaml +484 -0
  111. package/bundle/skills/agentera/schemas/artifacts/objective.yaml +399 -0
  112. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +342 -0
  113. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +325 -0
  114. package/bundle/skills/agentera/schemas/artifacts/todo.yaml +110 -0
  115. package/bundle/skills/agentera/schemas/artifacts/vision.yaml +262 -0
  116. package/bundle/skills/hej/.claude-plugin/plugin.json +6 -0
  117. package/bundle/skills/hej/SKILL.md +69 -0
  118. package/bundle/skills/hej/agents/hej.toml +11 -0
  119. package/bundle/skills/hej/agents/openai.yaml +8 -0
  120. package/dist/analytics/extractCorpus.js +1791 -0
  121. package/dist/analytics/extractCorpus.js.map +1 -0
  122. package/dist/analytics/usageStats.js +487 -0
  123. package/dist/analytics/usageStats.js.map +1 -0
  124. package/dist/bin/agentera.js +4 -0
  125. package/dist/bin/agentera.js.map +1 -0
  126. package/dist/cli/appContext.js +226 -0
  127. package/dist/cli/appContext.js.map +1 -0
  128. package/dist/cli/argvalidate.js +41 -0
  129. package/dist/cli/argvalidate.js.map +1 -0
  130. package/dist/cli/capabilityContext.js +2421 -0
  131. package/dist/cli/capabilityContext.js.map +1 -0
  132. package/dist/cli/commands/backfill.js +84 -0
  133. package/dist/cli/commands/backfill.js.map +1 -0
  134. package/dist/cli/commands/capability.js +44 -0
  135. package/dist/cli/commands/capability.js.map +1 -0
  136. package/dist/cli/commands/compact.js +148 -0
  137. package/dist/cli/commands/compact.js.map +1 -0
  138. package/dist/cli/commands/doctor.js +180 -0
  139. package/dist/cli/commands/doctor.js.map +1 -0
  140. package/dist/cli/commands/lint.js +179 -0
  141. package/dist/cli/commands/lint.js.map +1 -0
  142. package/dist/cli/commands/prime.js +545 -0
  143. package/dist/cli/commands/prime.js.map +1 -0
  144. package/dist/cli/commands/query.js +346 -0
  145. package/dist/cli/commands/query.js.map +1 -0
  146. package/dist/cli/commands/report.js +210 -0
  147. package/dist/cli/commands/report.js.map +1 -0
  148. package/dist/cli/commands/schema.js +306 -0
  149. package/dist/cli/commands/schema.js.map +1 -0
  150. package/dist/cli/commands/state.js +1012 -0
  151. package/dist/cli/commands/state.js.map +1 -0
  152. package/dist/cli/commands/upgrade.js +49 -0
  153. package/dist/cli/commands/upgrade.js.map +1 -0
  154. package/dist/cli/commands/validate.js +519 -0
  155. package/dist/cli/commands/validate.js.map +1 -0
  156. package/dist/cli/commands/verify.js +204 -0
  157. package/dist/cli/commands/verify.js.map +1 -0
  158. package/dist/cli/dispatch.js +962 -0
  159. package/dist/cli/dispatch.js.map +1 -0
  160. package/dist/cli/orientation.js +595 -0
  161. package/dist/cli/orientation.js.map +1 -0
  162. package/dist/cli/prime-blob.js +3 -0
  163. package/dist/cli/prime-blob.js.map +1 -0
  164. package/dist/cli/stateQuery.js +292 -0
  165. package/dist/cli/stateQuery.js.map +1 -0
  166. package/dist/cli/structured.js +18 -0
  167. package/dist/cli/structured.js.map +1 -0
  168. package/dist/core/difflib.js +274 -0
  169. package/dist/core/difflib.js.map +1 -0
  170. package/dist/core/git.js +43 -0
  171. package/dist/core/git.js.map +1 -0
  172. package/dist/core/paths.js +50 -0
  173. package/dist/core/paths.js.map +1 -0
  174. package/dist/core/pyjson.js +101 -0
  175. package/dist/core/pyjson.js.map +1 -0
  176. package/dist/core/sourceRoot.js +72 -0
  177. package/dist/core/sourceRoot.js.map +1 -0
  178. package/dist/core/toml.js +11 -0
  179. package/dist/core/toml.js.map +1 -0
  180. package/dist/core/yaml.js +25 -0
  181. package/dist/core/yaml.js.map +1 -0
  182. package/dist/eval/evalSkills.js +258 -0
  183. package/dist/eval/evalSkills.js.map +1 -0
  184. package/dist/eval/semanticEval.js +148 -0
  185. package/dist/eval/semanticEval.js.map +1 -0
  186. package/dist/eval/semanticFixtures.js +227 -0
  187. package/dist/eval/semanticFixtures.js.map +1 -0
  188. package/dist/hooks/common.js +160 -0
  189. package/dist/hooks/common.js.map +1 -0
  190. package/dist/hooks/compaction.js +935 -0
  191. package/dist/hooks/compaction.js.map +1 -0
  192. package/dist/hooks/cursorPreToolUse.js +19 -0
  193. package/dist/hooks/cursorPreToolUse.js.map +1 -0
  194. package/dist/hooks/cursorSessionStart.js +71 -0
  195. package/dist/hooks/cursorSessionStart.js.map +1 -0
  196. package/dist/hooks/sessionStart.js +209 -0
  197. package/dist/hooks/sessionStart.js.map +1 -0
  198. package/dist/hooks/sessionStop.js +212 -0
  199. package/dist/hooks/sessionStop.js.map +1 -0
  200. package/dist/hooks/validateArtifact.js +933 -0
  201. package/dist/hooks/validateArtifact.js.map +1 -0
  202. package/dist/registries/artifactRegistry.js +206 -0
  203. package/dist/registries/artifactRegistry.js.map +1 -0
  204. package/dist/registries/capabilityContract.js +310 -0
  205. package/dist/registries/capabilityContract.js.map +1 -0
  206. package/dist/registries/packageRegistry.js +641 -0
  207. package/dist/registries/packageRegistry.js.map +1 -0
  208. package/dist/registries/runtimeAdapterRegistry.js +315 -0
  209. package/dist/registries/runtimeAdapterRegistry.js.map +1 -0
  210. package/dist/setup/codex.js +1052 -0
  211. package/dist/setup/codex.js.map +1 -0
  212. package/dist/setup/copilot.js +227 -0
  213. package/dist/setup/copilot.js.map +1 -0
  214. package/dist/setup/cursor.js +127 -0
  215. package/dist/setup/cursor.js.map +1 -0
  216. package/dist/setup/doctor.js +1269 -0
  217. package/dist/setup/doctor.js.map +1 -0
  218. package/dist/state/installRoot.js +279 -0
  219. package/dist/state/installRoot.js.map +1 -0
  220. package/dist/state/progressCommit.js +289 -0
  221. package/dist/state/progressCommit.js.map +1 -0
  222. package/dist/state/startupAnalysis.js +1953 -0
  223. package/dist/state/startupAnalysis.js.map +1 -0
  224. package/dist/upgrade/appModel.js +189 -0
  225. package/dist/upgrade/appModel.js.map +1 -0
  226. package/dist/upgrade/channels.js +197 -0
  227. package/dist/upgrade/channels.js.map +1 -0
  228. package/dist/upgrade/compatibility.js +197 -0
  229. package/dist/upgrade/compatibility.js.map +1 -0
  230. package/dist/upgrade/doctor.js +368 -0
  231. package/dist/upgrade/doctor.js.map +1 -0
  232. package/dist/upgrade/migrateArtifactsV2ToV3.js +412 -0
  233. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -0
  234. package/dist/upgrade/upgradeCommands.js +40 -0
  235. package/dist/upgrade/upgradeCommands.js.map +1 -0
  236. package/dist/upgrade/upgradeOrchestrator.js +280 -0
  237. package/dist/upgrade/upgradeOrchestrator.js.map +1 -0
  238. package/dist/validate/appHomeContract.js +150 -0
  239. package/dist/validate/appHomeContract.js.map +1 -0
  240. package/dist/validate/capability.js +412 -0
  241. package/dist/validate/capability.js.map +1 -0
  242. package/dist/validate/crossCapability.js +145 -0
  243. package/dist/validate/crossCapability.js.map +1 -0
  244. package/dist/validate/lifecycleAdapters.js +772 -0
  245. package/dist/validate/lifecycleAdapters.js.map +1 -0
  246. package/dist/validate/selfAudit.js +107 -0
  247. package/dist/validate/selfAudit.js.map +1 -0
  248. package/package.json +28 -8
  249. package/LICENSE +0 -201
  250. package/bin/agentera.mjs +0 -50
  251. package/lib/exec.mjs +0 -116
  252. package/lib/resolve.mjs +0 -129
@@ -0,0 +1,402 @@
1
+ # Docs Artifact Schema
2
+ #
3
+ # Documentation contract maintained by dokumentera. Tracks project doc
4
+ # conventions, artifact path overrides, document index with status, coverage
5
+ # metrics, and timestamped audit findings.
6
+ #
7
+ # Structural pattern: UPPER_CASE groups with numbered entries and stable IDs,
8
+ # following capability_schema_contract.yaml and protocol.yaml conventions.
9
+ #
10
+ # ── Field-by-field mapping: v1 DOCS.md → v2 docs.yaml ──
11
+ #
12
+ # v1 Field v2 Field v2 ID
13
+ # ─────────────────────────────────────────────────────────────────────
14
+ # <!-- Last audit: date (label) --> HEADER.last_audit DH1
15
+ # ## Conventions / doc_root CONVENTIONS.doc_root DC1
16
+ # ## Conventions / style CONVENTIONS.style DC2
17
+ # ## Conventions / auto_gen CONVENTIONS.auto_gen DC3
18
+ # ## Conventions / version_files CONVENTIONS.version_files DC4
19
+ # ## Conventions / semver_policy CONVENTIONS.semver_policy DC5
20
+ # ## Artifact Mapping / table row MAPPING.entry DM1
21
+ # (Artifact column) MAPPING.artifact DM2
22
+ # (Path column) MAPPING.path DM3
23
+ # (Producers column) MAPPING.producers DM4
24
+ # ## Index / table row INDEX.entry DI1
25
+ # (Document column) INDEX.document DI2
26
+ # (Path column) INDEX.path DI3
27
+ # (Last Updated column) INDEX.last_updated DI4
28
+ # (Status column) INDEX.status DI5
29
+ # ## Coverage / Documented COVERAGE.documented DV1
30
+ # ## Coverage / Undocumented COVERAGE.undocumented DV2
31
+ # ## Coverage / Stale COVERAGE.stale DV3
32
+ # ## Coverage / Tests COVERAGE.tests DV4
33
+ # ## Audit Log / ### date (label) AUDIT_LOG.entry DA1
34
+ # (audit date from heading) AUDIT_LOG.date DA2
35
+ # (audit label from heading) AUDIT_LOG.label DA3
36
+ # - [finding_type] description FINDING.type DF1
37
+ # (severity from context) FINDING.severity DF2
38
+ # (description text) FINDING.description DF3
39
+ # (resolution: fixed/deferred) FINDING.resolution DF4
40
+ #
41
+ # Protocol references:
42
+ # visual tokens: VT1 (protocol.yaml VISUAL_TOKENS, status: current)
43
+ # severity: SF1-SF3 (protocol.yaml SEVERITY_FINDING)
44
+ # status values: ■ current, ▣ stale, □ missing, ▸ intent, ▸ generated
45
+
46
+ meta:
47
+ name: docs
48
+ version: "1.0.0"
49
+ description: >-
50
+ Documentation contract. Produced by dokumentera. Consumed by all skills
51
+ for artifact path resolution and doc status tracking.
52
+ artifact_type: agent_facing
53
+ path: ".agentera/docs.yaml"
54
+ producer: dokumentera
55
+ consumers: [all_skills]
56
+ format: yaml
57
+
58
+ GROUP_PREFIXES:
59
+ BUDGET: DB
60
+ HEADER: DH
61
+ CONVENTIONS: DC
62
+ MAPPING: DM
63
+ INDEX: DI
64
+ COVERAGE: DV
65
+ AUDIT_LOG: DA
66
+ FINDING: DF
67
+ VALIDATION: DVL
68
+
69
+ BUDGET:
70
+ 1:
71
+ id: DB1
72
+ scope: full_file
73
+ max_words: 2000
74
+ description: >-
75
+ Maximum words for the full file. If a write would exceed this
76
+ budget, compact older audit log entries.
77
+
78
+ HEADER:
79
+ 1:
80
+ id: DH1
81
+ field: last_audit
82
+ type: string
83
+ format: "YYYY-MM-DD (label)"
84
+ required: true
85
+ description: >-
86
+ Date and label of the most recent documentation audit. Used by
87
+ consuming skills to gauge doc freshness.
88
+ validation:
89
+ - "Must include date in YYYY-MM-DD format"
90
+
91
+ CONVENTIONS:
92
+ 1:
93
+ id: DC1
94
+ field: doc_root
95
+ type: string
96
+ required: true
97
+ description: >-
98
+ Root directory for documentation files. Typically '.' (project root).
99
+ validation:
100
+ - "Non-empty string"
101
+ 2:
102
+ id: DC2
103
+ field: style
104
+ type: string
105
+ required: true
106
+ description: >-
107
+ Documentation style guide. Describes expected prose style
108
+ (e.g., 'technical, concise, sections with tables, no badges').
109
+ validation:
110
+ - "Non-empty string"
111
+ 3:
112
+ id: DC3
113
+ field: auto_gen
114
+ type: list[string]
115
+ required: true
116
+ description: >-
117
+ List of auto-generated files (those produced by tooling rather
118
+ than manual editing). May be empty (['none']).
119
+ 4:
120
+ id: DC4
121
+ field: version_files
122
+ type: list[string]
123
+ required: true
124
+ description: >-
125
+ Files whose content changes indicate a version bump is needed.
126
+ Tracked by planera, inspektera, and realisera for bump discipline.
127
+ validation:
128
+ - "At least one entry required"
129
+ 5:
130
+ id: DC5
131
+ field: semver_policy
132
+ type: map
133
+ required: true
134
+ description: >-
135
+ Semantic versioning policy. Maps commit types to bump levels.
136
+ sub_fields:
137
+ - field: feat
138
+ type: string
139
+ required: true
140
+ description: "Bump level for feat commits (e.g., 'minor')"
141
+ - field: fix
142
+ type: string
143
+ required: true
144
+ description: "Bump level for fix commits (e.g., 'patch')"
145
+ - field: docs_chore_test
146
+ type: string
147
+ required: false
148
+ description: "Bump level for docs/chore/test commits (e.g., 'no bump')"
149
+
150
+ MAPPING:
151
+ 1:
152
+ id: DM1
153
+ field: entry
154
+ type: map
155
+ required: true
156
+ description: >-
157
+ Each artifact mapping entry. Skills check this table for path
158
+ overrides. If an artifact has no entry or docs is absent,
159
+ use the default layout.
160
+ min_count: 1
161
+ 2:
162
+ id: DM2
163
+ field: artifact
164
+ parent: MAPPING.entry
165
+ type: string
166
+ required: true
167
+ description: >-
168
+ Canonical artifact name (e.g., 'VISION.md', 'PROGRESS.md',
169
+ 'TODO.md'). Must match the tracked artifact set.
170
+ validation:
171
+ - "Non-empty string"
172
+ 3:
173
+ id: DM3
174
+ field: path
175
+ parent: MAPPING.entry
176
+ type: string
177
+ required: true
178
+ description: >-
179
+ File path for this artifact. May be absolute or relative.
180
+ Environment variable references (e.g., $PROFILERA_PROFILE_DIR)
181
+ are resolved at read time.
182
+ validation:
183
+ - "Non-empty string"
184
+ 4:
185
+ id: DM4
186
+ field: producers
187
+ parent: MAPPING.entry
188
+ type: list[string]
189
+ required: true
190
+ description: >-
191
+ Skills that produce this artifact. At least one producer required.
192
+ validation:
193
+ - "At least one producer required"
194
+
195
+ INDEX:
196
+ 1:
197
+ id: DI1
198
+ field: entry
199
+ type: map
200
+ required: true
201
+ description: >-
202
+ Each index entry tracks a document in the project. All documents
203
+ that skills read or write should have an index entry.
204
+ 2:
205
+ id: DI2
206
+ field: document
207
+ parent: INDEX.entry
208
+ type: string
209
+ required: true
210
+ description: "Short human-readable name for the document."
211
+ validation:
212
+ - "Non-empty string"
213
+ 3:
214
+ id: DI3
215
+ field: path
216
+ parent: INDEX.entry
217
+ type: string
218
+ required: true
219
+ description: "File path for this document."
220
+ validation:
221
+ - "Non-empty string"
222
+ 4:
223
+ id: DI4
224
+ field: last_updated
225
+ parent: INDEX.entry
226
+ type: string
227
+ format: "YYYY-MM-DD"
228
+ required: true
229
+ description: "Date the document was last modified."
230
+ validation:
231
+ - "Must match YYYY-MM-DD format"
232
+ 5:
233
+ id: DI5
234
+ field: status
235
+ parent: INDEX.entry
236
+ type: string
237
+ required: true
238
+ description: >-
239
+ Document status. Uses visual tokens from protocol.yaml VISUAL_TOKENS.
240
+ Values: current, stale, missing, intent, generated.
241
+ validation:
242
+ - "Must be one of: current, stale, missing, intent, generated"
243
+
244
+ COVERAGE:
245
+ 1:
246
+ id: DV1
247
+ field: documented
248
+ type: string
249
+ required: true
250
+ description: >-
251
+ Count and total of documented items (e.g., '12/12 skills have SKILL.md').
252
+ validation:
253
+ - "Non-empty string"
254
+ 2:
255
+ id: DV2
256
+ field: undocumented
257
+ type: string
258
+ required: true
259
+ description: >-
260
+ Count of items lacking documentation (e.g., '0 skills lack documentation').
261
+ validation:
262
+ - "Non-empty string"
263
+ 3:
264
+ id: DV3
265
+ field: stale
266
+ type: string
267
+ required: true
268
+ description: >-
269
+ Count or list of stale documents (those where code changed since
270
+ the doc was last updated).
271
+ validation:
272
+ - "Non-empty string or 'none'"
273
+ 4:
274
+ id: DV4
275
+ field: tests
276
+ type: string
277
+ required: true
278
+ description: >-
279
+ Test suite summary (e.g., '577 tests across 23 files; CI runs
280
+ on push/PR via GitHub Actions').
281
+ validation:
282
+ - "Non-empty string"
283
+
284
+ AUDIT_LOG:
285
+ 1:
286
+ id: DA1
287
+ field: entry
288
+ type: map
289
+ required: false
290
+ description: >-
291
+ Each audit log entry. Timestamped findings from dokumentera audits.
292
+ Appended when an audit is performed.
293
+ 2:
294
+ id: DA2
295
+ field: date
296
+ parent: AUDIT_LOG.entry
297
+ type: string
298
+ format: "YYYY-MM-DD"
299
+ required: true
300
+ description: "Date the audit was performed."
301
+ validation:
302
+ - "Must match YYYY-MM-DD format"
303
+ 3:
304
+ id: DA3
305
+ field: label
306
+ parent: AUDIT_LOG.entry
307
+ type: string
308
+ required: true
309
+ description: >-
310
+ Short label for the audit context (e.g., 'installation reliability
311
+ checkpoint', 'post-plan coverage refresh').
312
+ validation:
313
+ - "Non-empty string"
314
+
315
+ FINDING:
316
+ 1:
317
+ id: DF1
318
+ field: type
319
+ type: string
320
+ required: true
321
+ description: >-
322
+ Finding category. One of: gap (not implemented), stale (code changed
323
+ but docs not updated), redundant (same info in multiple places),
324
+ misaligned (docs contradict implementation), cleanup (style/clarity),
325
+ checked (verification passed), freshness (state alignment note),
326
+ handoff (transfer note).
327
+ validation:
328
+ - "Must be one of: gap, stale, redundant, misaligned, cleanup, checked, freshness, handoff"
329
+ 2:
330
+ id: DF2
331
+ field: severity
332
+ type: string
333
+ required: true
334
+ description: >-
335
+ Finding severity. References protocol.yaml SEVERITY_FINDING (SF1-SF3).
336
+ protocol_ref: SEVERITY_FINDING
337
+ validation:
338
+ - "Must be one of: critical, warning, info"
339
+ 3:
340
+ id: DF3
341
+ field: description
342
+ type: string
343
+ required: true
344
+ description: >-
345
+ What was found and what was done about it. Includes the problem
346
+ statement and the resolution action.
347
+ validation:
348
+ - "Non-empty string"
349
+ 4:
350
+ id: DF4
351
+ field: resolution
352
+ type: string
353
+ required: true
354
+ description: >-
355
+ Whether the finding was fixed, deferred, or noted.
356
+ validation:
357
+ - "Must be one of: fixed, deferred, noted"
358
+
359
+ VALIDATION:
360
+ 1:
361
+ id: DVL1
362
+ rule: required_fields
363
+ severity: error
364
+ description: >-
365
+ The docs artifact must have: last_audit, conventions (doc_root,
366
+ style, auto_gen, version_files, semver_policy), at least one
367
+ mapping entry, at least one index entry, and coverage.
368
+ checks:
369
+ - "last_audit is present"
370
+ - "conventions.doc_root is present"
371
+ - "conventions.style is present"
372
+ - "conventions.auto_gen is present"
373
+ - "conventions.version_files is present"
374
+ - "conventions.semver_policy is present"
375
+ - "At least one mapping entry exists"
376
+ - "At least one index entry exists"
377
+ - "coverage.documented is present"
378
+ - "coverage.tests is present"
379
+ 2:
380
+ id: DVL2
381
+ rule: mapping_artifact_names
382
+ severity: warning
383
+ description: >-
384
+ Artifact names in the mapping should be from the canonical set.
385
+ checks:
386
+ - "Each artifact name is a recognized tracked artifact"
387
+ 3:
388
+ id: DVL3
389
+ rule: index_status_values
390
+ severity: warning
391
+ description: >-
392
+ Index status values should be from the allowed set.
393
+ checks:
394
+ - "Each status is one of: current, stale, missing, intent, generated"
395
+ 4:
396
+ id: DVL4
397
+ rule: word_budget
398
+ severity: advisory
399
+ description: >-
400
+ Advisory check. Full file should be <=2000 words.
401
+ checks:
402
+ - "Total file word count <= 2000"