aw-spec-cli 0.1.4 → 0.1.5

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 (254) hide show
  1. package/assets/.agents/agent.json +28 -0
  2. package/assets/.agents/skills/aw-spec-orch/SKILL.md +56 -0
  3. package/assets/.agents/skills/aw-spec-orch-demo/SKILL.md +59 -0
  4. package/assets/.aw-spec/DESIGN-FORMAT.md +151 -0
  5. package/assets/.aw-spec/ORCH-DIALECT.md +156 -0
  6. package/assets/.aw-spec/RULE-PARTITION.md +126 -0
  7. package/assets/.aw-spec/extensions/agent-context/extension.yml +12 -9
  8. package/assets/.aw-spec/extensions.yml +12 -19
  9. package/assets/.aw-spec/integrations/aw-spec.manifest.json +1 -9
  10. package/assets/.aw-spec/interpreter/run-skill.py +1158 -0
  11. package/assets/.aw-spec/orchestrator/AGENT-PROFILE.md +94 -0
  12. package/assets/.aw-spec/orchestrator/README.md +300 -0
  13. package/assets/.aw-spec/orchestrator/adapters/claude_agent_sdk.py +74 -0
  14. package/assets/.aw-spec/orchestrator/adapters/google_antigravity.py +74 -0
  15. package/assets/.aw-spec/orchestrator/modules/delta-design.orch.yaml +105 -0
  16. package/assets/.aw-spec/orchestrator/modules/delta-spec.orch.yaml +79 -0
  17. package/assets/.aw-spec/orchestrator/modules/domain-select.orch.yaml +81 -0
  18. package/assets/.aw-spec/orchestrator/modules/tech-select.orch.yaml +75 -0
  19. package/assets/.aw-spec/orchestrator/orchestrator.py +1721 -0
  20. package/assets/.aw-spec/orchestrator/rev-templates/ai-rules.reference.md +40 -0
  21. package/assets/.aw-spec/orchestrator/rev-templates/comandrulemap.skeleton.md +59 -0
  22. package/assets/.aw-spec/orchestrator/rev-templates/commandtechrulemap.skeleton.md +97 -0
  23. package/assets/.aw-spec/orchestrator/rev-templates/domain-constitution.skeleton.md +61 -0
  24. package/assets/.aw-spec/orchestrator/rev-templates/domain-requirements.skeleton.md +48 -0
  25. package/assets/.aw-spec/orchestrator/rev-templates/domain-rule-file.skeleton.md +39 -0
  26. package/assets/.aw-spec/orchestrator/rev-templates/technical-constitution.skeleton.md +106 -0
  27. package/assets/.aw-spec/orchestrator/rev-templates/technical-rule-file.skeleton.md +54 -0
  28. package/assets/.aw-spec/orchestrator/workflows/_smoke.orch.yaml +160 -0
  29. package/assets/.aw-spec/orchestrator/workflows/aw-spec-add-component.orch.yaml +244 -0
  30. package/assets/.aw-spec/orchestrator/workflows/aw-spec-adopt.orch.yaml +775 -0
  31. package/assets/.aw-spec/orchestrator/workflows/aw-spec-analyze-delta-design.orch.yaml +248 -0
  32. package/assets/.aw-spec/orchestrator/workflows/aw-spec-analyze-design.orch.yaml +261 -0
  33. package/assets/.aw-spec/orchestrator/workflows/aw-spec-analyze-slice.orch.yaml +425 -0
  34. package/assets/.aw-spec/orchestrator/workflows/aw-spec-build.orch.yaml +188 -0
  35. package/assets/.aw-spec/orchestrator/workflows/aw-spec-characterize.orch.yaml +474 -0
  36. package/assets/.aw-spec/orchestrator/workflows/aw-spec-close-delta.orch.yaml +181 -0
  37. package/assets/.aw-spec/orchestrator/workflows/aw-spec-constitution.orch.yaml +284 -0
  38. package/assets/.aw-spec/orchestrator/workflows/aw-spec-demo.orch.yaml +103 -0
  39. package/assets/.aw-spec/orchestrator/workflows/aw-spec-dependency-tree.orch.yaml +69 -0
  40. package/assets/.aw-spec/orchestrator/workflows/aw-spec-deploy.orch.yaml +85 -0
  41. package/assets/.aw-spec/orchestrator/workflows/aw-spec-design.orch.yaml +382 -0
  42. package/assets/.aw-spec/orchestrator/workflows/aw-spec-finalize-delta.orch.yaml +382 -0
  43. package/assets/.aw-spec/orchestrator/workflows/aw-spec-foundation.orch.yaml +246 -0
  44. package/assets/.aw-spec/orchestrator/workflows/aw-spec-implement-delta.orch.yaml +231 -0
  45. package/assets/.aw-spec/orchestrator/workflows/aw-spec-implement.orch.yaml +258 -0
  46. package/assets/.aw-spec/orchestrator/workflows/aw-spec-inventory.orch.yaml +236 -0
  47. package/assets/.aw-spec/orchestrator/workflows/aw-spec-onboard.orch.yaml +949 -0
  48. package/assets/.aw-spec/orchestrator/workflows/aw-spec-parity.orch.yaml +293 -0
  49. package/assets/.aw-spec/orchestrator/workflows/aw-spec-run.orch.yaml +177 -0
  50. package/assets/.aw-spec/orchestrator/workflows/aw-spec-select-domain.orch.yaml +79 -0
  51. package/assets/.aw-spec/orchestrator/workflows/aw-spec-select-feature.orch.yaml +128 -0
  52. package/assets/.aw-spec/orchestrator/workflows/aw-spec-specify.orch.yaml +412 -0
  53. package/assets/.aw-spec/scripts/bash/aw-inventory.sh +14 -0
  54. package/assets/.aw-spec/scripts/bash/aw-parity.sh +13 -0
  55. package/assets/.aw-spec/scripts/bash/aw-rev-constitution.sh +13 -0
  56. package/assets/.aw-spec/scripts/bash/aw-spec-actions.sh +1899 -0
  57. package/assets/.aw-spec/scripts/bash/aw-xref.sh +15 -0
  58. package/assets/.aw-spec/scripts/bash/common.sh +11 -60
  59. package/assets/.aw-spec/scripts/powershell/aw-inventory.ps1 +14 -0
  60. package/assets/.aw-spec/scripts/powershell/aw-parity.ps1 +13 -0
  61. package/assets/.aw-spec/scripts/powershell/aw-rev-constitution.ps1 +13 -0
  62. package/assets/.aw-spec/scripts/powershell/aw-spec-actions.ps1 +1563 -0
  63. package/assets/.aw-spec/scripts/powershell/aw-xref.ps1 +15 -0
  64. package/assets/.aw-spec/scripts/python/aw-inventory.py +683 -0
  65. package/assets/.aw-spec/scripts/python/aw-parity.py +380 -0
  66. package/assets/.aw-spec/scripts/python/aw-rev-constitution.py +312 -0
  67. package/assets/.aw-spec/scripts/python/aw-xref.py +1330 -0
  68. package/assets/.aw-spec/scripts/python/validate_okf.py +349 -0
  69. package/assets/.aw-spec/templates/constitution-domain-template.md +75 -0
  70. package/assets/.aw-spec/templates/constitution-technical-template.md +70 -0
  71. package/assets/.aw-spec/templates/delta-design-template.md +69 -0
  72. package/assets/.aw-spec/templates/delta-spec-template.md +60 -0
  73. package/assets/.aw-spec/templates/design-template.md +383 -0
  74. package/assets/.aw-spec/templates/okf-concept-template.md +103 -0
  75. package/assets/.aw-spec/templates/parity-manifest-template.json +49 -0
  76. package/assets/.aw-spec/templates/source-map-template.md +85 -0
  77. package/assets/.aw-spec/templates/spec-template.md +192 -71
  78. package/assets/.claude/agent.json +27 -0
  79. package/assets/.claude/skills/aw-spec-orch/SKILL.md +55 -0
  80. package/assets/.claude/skills/aw-spec-orch-demo/SKILL.md +59 -0
  81. package/assets/.kilocode/agent.json +28 -0
  82. package/assets/.kilocode/workflows/aw-spec-orch-demo.md +59 -0
  83. package/assets/.kilocode/workflows/aw-spec-orch.md +55 -0
  84. package/assets/docs/architecture/clean-architecture.md +1 -1
  85. package/assets/docs/architecture/cqrs.md +1 -1
  86. package/assets/docs/architecture/eventing.md +1 -1
  87. package/assets/docs/architecture/folder-structure.md +1 -1
  88. package/assets/docs/architecture/modular-monolith.md +1 -1
  89. package/assets/docs/architecture/persistence.md +1 -1
  90. package/assets/docs/architecture/testing.md +1 -1
  91. package/assets/docs/architecture/vertical-slices.md +1 -1
  92. package/assets/docs/components/Email/README.md +1 -1
  93. package/assets/docs/components/Jobs/README.md +1 -1
  94. package/assets/docs/components/QrGenerator/README.md +1 -1
  95. package/assets/docs/components/README.md +1 -1
  96. package/assets/docs/domain/domain-driven-design.md +1 -1
  97. package/assets/docs/domainspecs/healthcare/api-versioning.domain.md +1 -1
  98. package/assets/docs/domainspecs/healthcare/auditing.domain.md +86 -18
  99. package/assets/docs/domainspecs/healthcare/authorization.domain.md +1 -1
  100. package/assets/docs/domainspecs/healthcare/clinical-terms.md +1 -1
  101. package/assets/docs/domainspecs/healthcare/coding-standards.domain.md +1 -1
  102. package/assets/docs/domainspecs/healthcare/comandrulemap.md +58 -124
  103. package/assets/docs/domainspecs/healthcare/commandtechrulemap.md +119 -0
  104. package/assets/docs/domainspecs/healthcare/consent.md +1 -1
  105. package/assets/docs/domainspecs/healthcare/cqrs.domain.md +1 -1
  106. package/assets/docs/domainspecs/healthcare/data-classification.domain.md +1 -1
  107. package/assets/docs/domainspecs/healthcare/dependency-policy.domain.md +1 -1
  108. package/assets/docs/domainspecs/healthcare/dicom.md +1 -1
  109. package/assets/docs/domainspecs/healthcare/domain-driven-design.domain.md +1 -1
  110. package/assets/docs/domainspecs/healthcare/eventing.domain.md +1 -1
  111. package/assets/docs/domainspecs/healthcare/fhir.md +1 -1
  112. package/assets/docs/domainspecs/healthcare/folder-structure.domain.md +1 -1
  113. package/assets/docs/domainspecs/healthcare/hipaa.md +1 -1
  114. package/assets/docs/domainspecs/healthcare/hl7.md +1 -1
  115. package/assets/docs/domainspecs/healthcare/integration-terms.md +1 -1
  116. package/assets/docs/domainspecs/healthcare/persistence.domain.md +1 -1
  117. package/assets/docs/domainspecs/healthcare/terminology.md +1 -1
  118. package/assets/docs/domainspecs/healthcare/testing.domain.md +1 -1
  119. package/assets/docs/domainspecs/healthcare/vertical-slices.domain.md +1 -1
  120. package/assets/docs/domainspecs/healthcare/zero-trust.domain.md +1 -1
  121. package/assets/docs/domainspecs/pharma/api-versioning.domain.md +1 -1
  122. package/assets/docs/domainspecs/pharma/atc.md +1 -1
  123. package/assets/docs/domainspecs/pharma/auditing.domain.md +80 -16
  124. package/assets/docs/domainspecs/pharma/authorization.domain.md +1 -1
  125. package/assets/docs/domainspecs/pharma/coding-standards.domain.md +1 -1
  126. package/assets/docs/domainspecs/pharma/comandrulemap.md +64 -142
  127. package/assets/docs/domainspecs/pharma/commandtechrulemap.md +119 -0
  128. package/assets/docs/domainspecs/pharma/cqrs.domain.md +1 -1
  129. package/assets/docs/domainspecs/pharma/data-classification.domain.md +1 -1
  130. package/assets/docs/domainspecs/pharma/data-provenance.md +1 -1
  131. package/assets/docs/domainspecs/pharma/dependency-policy.domain.md +1 -1
  132. package/assets/docs/domainspecs/pharma/domain-driven-design.domain.md +1 -1
  133. package/assets/docs/domainspecs/pharma/eventing.domain.md +1 -1
  134. package/assets/docs/domainspecs/pharma/fhir.md +1 -1
  135. package/assets/docs/domainspecs/pharma/folder-structure.domain.md +1 -1
  136. package/assets/docs/domainspecs/pharma/hl7.md +1 -1
  137. package/assets/docs/domainspecs/pharma/idmp.md +1 -1
  138. package/assets/docs/domainspecs/pharma/integration-terms.md +1 -1
  139. package/assets/docs/domainspecs/pharma/ndc.md +1 -1
  140. package/assets/docs/domainspecs/pharma/persistence.domain.md +1 -1
  141. package/assets/docs/domainspecs/pharma/pharma-terms.md +1 -1
  142. package/assets/docs/domainspecs/pharma/product-lifecycle.domain.md +1 -1
  143. package/assets/docs/domainspecs/pharma/regulatory-compliance.md +1 -1
  144. package/assets/docs/domainspecs/pharma/terminology.md +1 -1
  145. package/assets/docs/domainspecs/pharma/testing.domain.md +1 -1
  146. package/assets/docs/domainspecs/pharma/vertical-slices.domain.md +1 -1
  147. package/assets/docs/domainspecs/pharma/zero-trust.domain.md +1 -1
  148. package/assets/docs/governance/api-versioning.md +1 -1
  149. package/assets/docs/governance/coding-standards.md +1 -1
  150. package/assets/docs/governance/dependency-policy.md +1 -1
  151. package/assets/docs/requirement-spec.txt +27 -0
  152. package/assets/docs/security/auditing.md +54 -11
  153. package/assets/docs/security/authorization.md +1 -1
  154. package/assets/docs/security/data-classification.md +1 -1
  155. package/assets/docs/security/zero-trust.md +1 -1
  156. package/dist/commands/init.d.ts.map +1 -1
  157. package/dist/commands/init.js +7 -54
  158. package/dist/commands/init.js.map +1 -1
  159. package/dist/index.js +0 -2
  160. package/dist/index.js.map +1 -1
  161. package/dist/utils/paths.js +2 -2
  162. package/dist/utils/paths.js.map +1 -1
  163. package/package.json +1 -1
  164. package/assets/.agents/skills/aw-spec-addcomponent/SKILL.md +0 -129
  165. package/assets/.agents/skills/aw-spec-agent-context-update/SKILL.md +0 -31
  166. package/assets/.agents/skills/aw-spec-analyze/SKILL.md +0 -296
  167. package/assets/.agents/skills/aw-spec-checklist/SKILL.md +0 -374
  168. package/assets/.agents/skills/aw-spec-clarify/SKILL.md +0 -320
  169. package/assets/.agents/skills/aw-spec-constitution/SKILL.md +0 -194
  170. package/assets/.agents/skills/aw-spec-fast-implement/SKILL.md +0 -268
  171. package/assets/.agents/skills/aw-spec-foundation/SKILL.md +0 -358
  172. package/assets/.agents/skills/aw-spec-implement/SKILL.md +0 -279
  173. package/assets/.agents/skills/aw-spec-minimal-implementation/SKILL.md +0 -209
  174. package/assets/.agents/skills/aw-spec-plan/SKILL.md +0 -221
  175. package/assets/.agents/skills/aw-spec-select-domain/SKILL.md +0 -73
  176. package/assets/.agents/skills/aw-spec-specify/SKILL.md +0 -382
  177. package/assets/.agents/skills/aw-spec-tasks/SKILL.md +0 -259
  178. package/assets/.agents/skills/aw-spec-taskstoissues/SKILL.md +0 -107
  179. package/assets/.aw-spec/integrations/claude.manifest.json +0 -17
  180. package/assets/.aw-spec/scripts/bash/check-prerequisites.sh +0 -189
  181. package/assets/.aw-spec/scripts/bash/create-new-feature.sh +0 -299
  182. package/assets/.aw-spec/scripts/bash/setup-plan.sh +0 -84
  183. package/assets/.aw-spec/scripts/bash/setup-tasks.sh +0 -91
  184. package/assets/.aw-spec/templates/checklist-template.md +0 -40
  185. package/assets/.aw-spec/templates/constitution-template.md +0 -57
  186. package/assets/.aw-spec/templates/plan-template.md +0 -113
  187. package/assets/.aw-spec/templates/tasks-template.md +0 -252
  188. package/assets/.aw-spec/workflows/aw-spec/workflow.yml +0 -77
  189. package/assets/.aw-spec/workflows/workflow-registry.json +0 -13
  190. package/assets/.claude/skills/aw-spec-addcomponent/SKILL.md +0 -129
  191. package/assets/.claude/skills/aw-spec-agent-context-update/SKILL.md +0 -31
  192. package/assets/.claude/skills/aw-spec-analyze/SKILL.md +0 -296
  193. package/assets/.claude/skills/aw-spec-checklist/SKILL.md +0 -374
  194. package/assets/.claude/skills/aw-spec-clarify/SKILL.md +0 -320
  195. package/assets/.claude/skills/aw-spec-constitution/SKILL.md +0 -194
  196. package/assets/.claude/skills/aw-spec-fast-implement/SKILL.md +0 -268
  197. package/assets/.claude/skills/aw-spec-foundation/SKILL.md +0 -358
  198. package/assets/.claude/skills/aw-spec-implement/SKILL.md +0 -279
  199. package/assets/.claude/skills/aw-spec-minimal-implementation/SKILL.md +0 -209
  200. package/assets/.claude/skills/aw-spec-plan/SKILL.md +0 -221
  201. package/assets/.claude/skills/aw-spec-select-domain/SKILL.md +0 -73
  202. package/assets/.claude/skills/aw-spec-specify/SKILL.md +0 -382
  203. package/assets/.claude/skills/aw-spec-tasks/SKILL.md +0 -259
  204. package/assets/.claude/skills/aw-spec-taskstoissues/SKILL.md +0 -107
  205. package/assets/.kilocode/rules/specify-rules.md +0 -4
  206. package/assets/.kilocode/workflows/aw-spec-addcomponent.md +0 -129
  207. package/assets/.kilocode/workflows/aw-spec-agent-context.update.md +0 -31
  208. package/assets/.kilocode/workflows/aw-spec-analyze.md +0 -296
  209. package/assets/.kilocode/workflows/aw-spec-checklist.md +0 -374
  210. package/assets/.kilocode/workflows/aw-spec-clarify.md +0 -320
  211. package/assets/.kilocode/workflows/aw-spec-constitution.md +0 -194
  212. package/assets/.kilocode/workflows/aw-spec-fast-implement.md +0 -263
  213. package/assets/.kilocode/workflows/aw-spec-foundation.md +0 -358
  214. package/assets/.kilocode/workflows/aw-spec-implement.md +0 -279
  215. package/assets/.kilocode/workflows/aw-spec-minimal-implementation.md +0 -204
  216. package/assets/.kilocode/workflows/aw-spec-plan.md +0 -221
  217. package/assets/.kilocode/workflows/aw-spec-select-domain.md +0 -73
  218. package/assets/.kilocode/workflows/aw-spec-specify.md +0 -382
  219. package/assets/.kilocode/workflows/aw-spec-tasks.md +0 -259
  220. package/assets/.kilocode/workflows/aw-spec-taskstoissues.md +0 -107
  221. package/assets/docs/UI.Visualization/PACKAGING.md +0 -191
  222. package/assets/docs/UI.Visualization/UI.Visualization.Reference.pack.txt +0 -11768
  223. package/assets/docs/UI.Visualization/UI.Visualization.pack.txt +0 -11214
  224. package/assets/docs/UI.Visualization/pack-foundation.ps1 +0 -165
  225. package/assets/docs/UI.Visualization/pack-foundation.sh +0 -206
  226. package/assets/docs/UI.Visualization/pack-reference-foundation.ps1 +0 -159
  227. package/assets/docs/UI.Visualization/pack-reference-foundation.sh +0 -205
  228. package/assets/docs/UI.Visualization/unpack-foundation.ps1 +0 -126
  229. package/assets/docs/UI.Visualization/unpack-foundation.sh +0 -217
  230. package/assets/docs/UI.Visualization/unpack-reference-foundation.ps1 +0 -129
  231. package/assets/docs/UI.Visualization/unpack-reference-foundation.sh +0 -218
  232. package/assets/docs/command.txt +0 -295
  233. package/assets/docs/domainspecs/UIVisualization/chart-bubble.md +0 -70
  234. package/assets/docs/domainspecs/UIVisualization/chart-dimred.md +0 -58
  235. package/assets/docs/domainspecs/UIVisualization/chart-heatmap.md +0 -62
  236. package/assets/docs/domainspecs/UIVisualization/chart-network.md +0 -69
  237. package/assets/docs/domainspecs/UIVisualization/chart-parallel.md +0 -75
  238. package/assets/docs/domainspecs/UIVisualization/chart-scurve.md +0 -66
  239. package/assets/docs/domainspecs/UIVisualization/chart-survival.md +0 -69
  240. package/assets/docs/domainspecs/UIVisualization/chart-trellis.md +0 -68
  241. package/assets/docs/domainspecs/UIVisualization/chart-violin.md +0 -61
  242. package/assets/docs/domainspecs/UIVisualization/chart-volcano.md +0 -63
  243. package/assets/docs/domainspecs/UIVisualization/charting-standards.domain.md +0 -80
  244. package/assets/docs/domainspecs/UIVisualization/clean-architecture.domain.md +0 -87
  245. package/assets/docs/domainspecs/UIVisualization/coding-standards.domain.md +0 -47
  246. package/assets/docs/domainspecs/UIVisualization/comandrulemap.md +0 -130
  247. package/assets/docs/domainspecs/UIVisualization/component-contracts.domain.md +0 -67
  248. package/assets/docs/domainspecs/UIVisualization/data-source.domain.md +0 -68
  249. package/assets/docs/domainspecs/UIVisualization/domain-requirements.md +0 -110
  250. package/assets/docs/domainspecs/UIVisualization/folder-structure.domain.md +0 -55
  251. package/assets/docs/domainspecs/UIVisualization/state-management.domain.md +0 -67
  252. package/assets/docs/domainspecs/UIVisualization/testing.domain.md +0 -52
  253. package/assets/docs/domainspecs/UIVisualization/ui-viz-terms.md +0 -39
  254. package/assets/docs/pharma-constitution.my-ref.md +0 -86
@@ -0,0 +1,119 @@
1
+ # Pharma Domain — Command → Technical-Rule-File Map
2
+
3
+ Per-command list of the **technical** rule files loaded (via `resolve-tech` + the
4
+ `tech-select` module, into the sticky standards set) for the spec-anchored
5
+ orchestrator pipeline. This is the technical counterpart of `comandrulemap.md`
6
+ (which maps the DOMAIN rule files).
7
+
8
+ **The model:** the technical rule files (the `docs/architecture` Ā· `docs/security` Ā·
9
+ `docs/interop` Ā· `docs/governance` set that used to be HARDCODED in each workflow's
10
+ `standards:` block) are now CONFIGURATION — tune this map, not the workflows. The
11
+ technology base itself (`constitution.technical.md`) is NOT listed here — every
12
+ consumer still refers to it directly, as-is.
13
+
14
+ - All paths are workspace-relative technical rule files (domain-agnostic docs/…).
15
+ - `resolve-tech --command <name>` collects the `- ` bullets under `## /<name>`.
16
+ - This file is the **canonical technical mapping** for the pharma domain; it is
17
+ selected whenever pharma is the active domain (`.aw-spec/domain.json`).
18
+ - A command with no heading here loads no mapped technical file (only the workflow's
19
+ universal `ai-rules.md` seed + `constitution.technical.md`, referred to directly).
20
+ - `## /aw-spec-specify` is the one **modelling-methodology** slot (see the rule partition):
21
+ a domain-agnostic way of *modelling*, never a technology choice. Everything below it is a
22
+ HOW-phase technical set.
23
+
24
+ ---
25
+
26
+ ## /aw-spec-specify
27
+ <!-- MODELLING METHODOLOGY ONLY. Specify is the domain phase: the single technical input it
28
+ may take is a domain-agnostic way of MODELLING (DDD tactical patterns), never a
29
+ technology choice. Do NOT add an architecture / persistence / codegen file here — that
30
+ would break specify's domain purity (design/implement own those). The domain's own DDD
31
+ overlay (domain-driven-design.domain.md) arrives separately via comandrulemap. -->
32
+ - docs/domain/domain-driven-design.md
33
+
34
+ ## /aw-spec-design
35
+ <!-- The technical/architecture rule files the design author works from (alongside the
36
+ spec and constitution.technical.md). NO domain file here — domain reaches design
37
+ only as spec ids (BR-/CN-/DC-/IC-). -->
38
+ - docs/architecture/clean-architecture.md
39
+ - docs/architecture/cqrs.md
40
+ - docs/architecture/eventing.md
41
+ - docs/architecture/modular-monolith.md
42
+ - docs/architecture/vertical-slices.md
43
+ - docs/architecture/persistence.md
44
+ - docs/architecture/folder-structure.md
45
+ - docs/architecture/testing.md
46
+ - docs/governance/api-versioning.md
47
+ - docs/security/zero-trust.md
48
+ - docs/security/authorization.md
49
+ - docs/security/authorization-matrix.md
50
+ - docs/security/auditing.md
51
+ - docs/security/data-classification.md
52
+ - docs/interop/ihe-conformance.md
53
+
54
+ ## /aw-spec-implement
55
+ <!-- The FRAMEWORK / code-generation rule files the code generator builds against
56
+ (alongside design.md and constitution.technical.md). NO domain file — domain
57
+ reaches implement only through design.md. clean-architecture/cqrs are design
58
+ concerns; component wiring is a separate /aw-spec-orch add-component step. -->
59
+ - docs/governance/coding-standards.md
60
+ - docs/governance/dependency-policy.md
61
+ - docs/architecture/folder-structure.md
62
+ - docs/architecture/testing.md
63
+ - docs/VerticalSlice/PACKAGING.md
64
+
65
+ ## /aw-spec-implement-delta
66
+ <!-- The CR analog of implement — same FRAMEWORK / code-generation set (HOW to build).
67
+ The delta's code is generated against the master design.md + delta-design.md; no
68
+ domain file (domain reached the delta via delta-spec → delta-design). -->
69
+ - docs/governance/coding-standards.md
70
+ - docs/governance/dependency-policy.md
71
+ - docs/architecture/folder-structure.md
72
+ - docs/architecture/testing.md
73
+ - docs/VerticalSlice/PACKAGING.md
74
+
75
+ ## /aw-spec-build
76
+ <!-- The compile/fix reference set: the layering + coding rules the fixer respects when
77
+ repairing compile errors against the design intent. NO domain file (build loads
78
+ domain rules separately via domain-select) and no constitution.technical here. -->
79
+ - docs/architecture/clean-architecture.md
80
+ - docs/governance/coding-standards.md
81
+
82
+ ## /aw-spec-analyze-slice
83
+ <!-- The design↔code conformance gate's TECHNICAL checklist: the code + tests are
84
+ validated against these (alongside the DOMAIN gate overlays, loaded separately via
85
+ resolve-domain `## /aw-spec-gate`). Validation input only — never authoring. -->
86
+ - docs/architecture/testing.md
87
+ - docs/governance/coding-standards.md
88
+
89
+ ## /aw-spec-constitution
90
+ <!-- The technology-constitution base the TECHNICAL half of the split constitution
91
+ ratifies into constitution.technical.md. Loaded BEFORE the technical half and before
92
+ domain-select, so the technical author stays domain-free (the seam). NO domain file
93
+ here — the domain half's sources are the domain map's ## /aw-spec-constitution. -->
94
+ - docs/technology-constitution.md
95
+
96
+ ## /aw-spec-run
97
+ <!-- Execution / data migration: the persistence rules the migration step generates against.
98
+ NO domain file; run does not reference constitution.technical.md. -->
99
+ - docs/architecture/persistence.md
100
+
101
+ ---
102
+
103
+ ## Quick reference (command → technical file count)
104
+
105
+ | Command | Technical rule files | Role |
106
+ |---|---|---|
107
+ | /aw-spec-specify | 1 | the modelling methodology (DDD) the domain model is expressed in — no technology |
108
+ | /aw-spec-design | 15 | architecture/security/interop the design author mediates the spec against |
109
+ | /aw-spec-implement | 5 | governance/architecture the code generator builds against (from design.md) |
110
+ | /aw-spec-implement-delta | 5 | same code-generation set, scoped to the open change's delta-design |
111
+ | /aw-spec-build | 2 | layering + coding rules the compile-fixer respects |
112
+ | /aw-spec-analyze-slice | 2 | testing + coding rules the design↔code gate validates against |
113
+ | /aw-spec-constitution | 1 | the technology-constitution base the technical half ratifies |
114
+ | /aw-spec-run | 1 | persistence rules the execution / data-migration step generates against |
115
+
116
+ > All migrated workflows are on this map. The conformance-gate workflows **analyze-design**
117
+ > and **analyze-delta-design** are intentionally NOT here — they validate design/delta
118
+ > against the spec + DOMAIN gate overlays only (comandrulemap `## /aw-spec-gate`), with no
119
+ > technical gate checklist.
@@ -1,6 +1,6 @@
1
1
  # CQRS — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[cqrs]]. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Technology base: [[cqrs]]. Commands: `/aw-spec-specify`, `/aw-spec-gate`.
4
4
 
5
5
  ## Pipeline
6
6
  - Append a **product-audit behavior** to the mediator pipeline: every create/modify/retire/re-identify/reclassify command on `MedicinalProduct` MUST emit an immutable audit record (User, Timestamp, Action, Previous Value, New Value). See [[auditing.domain]], [[regulatory-compliance]].
@@ -1,6 +1,6 @@
1
1
  # Data Classification — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[data-classification]]. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-implement`.
3
+ > Technology base: [[data-classification]]. Commands: `/aw-spec-constitution`, `/aw-spec-specify`, `/aw-spec-gate`.
4
4
 
5
5
  > No PHI — the model is commercial confidentiality, regulatory integrity, and source trust.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Data Provenance Standards — Pharma
2
2
 
3
- > NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > NON-NEGOTIABLE. Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  ## First-class concern
6
6
  - Any product attribute imported from an external source (FDA NDC directory, RxNorm, WHO ATC, an MAH submission, a partner feed) SHALL carry a **`ProvenanceRecord`** (Provenance module).
@@ -1,6 +1,6 @@
1
1
  # Dependency Policy — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[dependency-policy]]. Commands: `/aw-spec-plan`, `/aw-spec-implement`.
3
+ > Technology base: [[dependency-policy]]. Commands: `/aw-spec-gate`.
4
4
 
5
5
  ## Reviews & libraries
6
6
  - Every new dependency gets a **regulatory-suitability** review beyond the generic license/supply-chain check — reject packages that phone home or ship analytics by default (leak risk for commercially-sensitive pre-market data) (see [[data-classification.domain]]).
@@ -1,6 +1,6 @@
1
1
  # Domain-Driven Design — Medicinal Product Domain Model
2
2
 
3
- > Technology base: [[domain-driven-design]]. NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Technology base: [[domain-driven-design]]. NON-NEGOTIABLE. Commands: `/aw-spec-specify`.
4
4
 
5
5
  ## Modeling
6
6
  - Use the pharma/regulatory ubiquitous language (see [[pharma-terms]]), aligned to ISO IDMP concepts (see [[idmp]]).
@@ -1,6 +1,6 @@
1
1
  # Eventing — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[eventing]]. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Technology base: [[eventing]]. Commands: `/aw-spec-specify`, `/aw-spec-gate`.
4
4
 
5
5
  ## Domain events
6
6
  - `MedicinalProduct` raises domain events on every significant state change — the integration seam to downstream consumers (prescribing, dispensing, manufacturing, pharmacovigilance, clinical).
@@ -1,6 +1,6 @@
1
1
  # FHIR Standards — Pharma
2
2
 
3
- > NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > NON-NEGOTIABLE. Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  ## Architecture & projectors
6
6
  - **R4 default**; R5 **additive** under `/fhir/R5/...`. FHIR is the canonical interop contract; it + any internal REST serve from the **same authoritative aggregates** — no duplicate write paths.
@@ -1,6 +1,6 @@
1
1
  # Folder Structure — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[folder-structure]]. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`. Replace `<SampleProjectName>`.
3
+ > Technology base: [[folder-structure]]. Commands: `/aw-spec-gate`. Replace `<SampleProjectName>`.
4
4
 
5
5
  ## Additions to the base layout
6
6
  ```
@@ -1,6 +1,6 @@
1
1
  # HL7 Integration Readiness — Pharma
2
2
 
3
- > Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  ## Principle
6
6
  - The solution SHALL support **future integration with HL7-based systems**. The registry is the authoritative product source; HL7 surfaces are **adapters, not a parallel model**. FHIR is the primary contract (see [[fhir]]); HL7 v2 adapters are added where a downstream system (prescribing/dispensing/manufacturing/pharmacovigilance) needs them.
@@ -1,6 +1,6 @@
1
1
  # ISO IDMP — Identification of Medicinal Products
2
2
 
3
- > NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > NON-NEGOTIABLE. Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  ## Alignment principle
6
6
  - The model SHALL align with the ISO IDMP suite (**ISO 11615/11616/11238/11239/11240**) **where applicable** — IDMP shapes the ubiquitous language + aggregate boundaries; it is **not** a wire format and does not replace the internal model (see [[domain-driven-design.domain]]).
@@ -1,6 +1,6 @@
1
1
  # Glossary — Integration Terms (Pharma)
2
2
 
3
- > Ubiquitous language for pharma interoperability standards + identifiers. Commands: `/aw-spec-specify`, `/aw-spec-clarify`, `/aw-spec-plan`. See [[pharma-terms]] (aggregates) + [[terminology]] (coding).
3
+ > Ubiquitous language for pharma interoperability standards + identifiers. Commands: `/aw-spec-specify`. See [[pharma-terms]] (aggregates) + [[terminology]] (coding).
4
4
 
5
5
  | Term | Definition |
6
6
  |---|---|
@@ -1,6 +1,6 @@
1
1
  # NDC — National Drug Code Standards
2
2
 
3
- > NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > NON-NEGOTIABLE. Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  ## Value Object
6
6
  - **NDC SHALL be a Value Object** (`NdcCode`) — immutable, equality by value (see [[domain-driven-design.domain]]).
@@ -1,6 +1,6 @@
1
1
  # Persistence — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[persistence]]. NON-NEGOTIABLE. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Technology base: [[persistence]]. NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-gate`.
4
4
 
5
5
  ## Version history
6
6
  - Maintain a **version history** of product information: each approved change produces a new, immutable **`ProductVersion`** snapshot.
@@ -1,6 +1,6 @@
1
1
  # Glossary — Pharmaceutical Terms
2
2
 
3
- > Ubiquitous language for the medicinal product registry. Commands: `/aw-spec-specify`, `/aw-spec-clarify`, `/aw-spec-plan`. See [[domain-driven-design.domain]] (modeling), [[terminology]] (coding), [[integration-terms]] (interop).
3
+ > Ubiquitous language for the medicinal product registry. Commands: `/aw-spec-constitution`, `/aw-spec-specify`. See [[domain-driven-design.domain]] (modeling), [[terminology]] (coding), [[integration-terms]] (interop).
4
4
 
5
5
  | Term | Definition |
6
6
  |---|---|
@@ -1,6 +1,6 @@
1
1
  # Product Lifecycle — Medicinal Product State Machine
2
2
 
3
- > Technology base: [[domain-driven-design]]. NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Technology base: [[domain-driven-design]]. NON-NEGOTIABLE. Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  ## States
6
6
  `Draft` → `Under Review` → `Approved` → `Active` → `Discontinued` / `Withdrawn`
@@ -1,6 +1,6 @@
1
1
  # Regulatory & Compliance Standards — Pharma
2
2
 
3
- > NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > NON-NEGOTIABLE. Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  > Umbrella for the compliance requirements — mechanisms live in the linked files.
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Terminology Standards — Pharma
2
2
 
3
- > NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > NON-NEGOTIABLE. Commands: `/aw-spec-constitution`, `/aw-spec-specify`.
4
4
 
5
5
  ## Coded value objects
6
6
  - **Coded data MUST use industry terminologies — free-text strings for coded concepts are FORBIDDEN.**
@@ -1,6 +1,6 @@
1
1
  # Testing — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[testing]]. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Technology base: [[testing]]. Commands: `/aw-spec-gate`.
4
4
 
5
5
  ## What MUST be tested
6
6
  - **Aggregate invariants** — required attributes; >= 1 ActiveIngredient; >= 1 PackagingConfiguration; NDC uniqueness + format; invalid dosage forms/routes rejected (see [[domain-driven-design.domain]], [[ndc]], [[terminology]]).
@@ -1,6 +1,6 @@
1
1
  # Vertical Slices — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[vertical-slices]]. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Technology base: [[vertical-slices]]. Commands: `/aw-spec-specify`, `/aw-spec-gate`.
4
4
 
5
5
  ## Interop adapters in the slice
6
6
  `{Module}/Interop/` carries the pharma external-protocol adapters:
@@ -1,6 +1,6 @@
1
1
  # Zero-Trust — Pharma Domain Addenda
2
2
 
3
- > Technology base: [[zero-trust]]. Commands: `/aw-spec-plan`, `/aw-spec-implement`.
3
+ > Technology base: [[zero-trust]]. Commands: `/aw-spec-constitution`, `/aw-spec-specify`, `/aw-spec-gate`.
4
4
 
5
5
  ## Rules
6
6
  - All registry traffic MUST be TLS-encrypted; commercially-sensitive pre-market data in transit MUST be TLS-protected; at-rest: see [[data-classification.domain]], [[persistence.domain]].
@@ -1,6 +1,6 @@
1
1
  # API Versioning Policy
2
2
 
3
- > Pure technology (domain-agnostic) — domain (e.g. FHIR) versioning in [[api-versioning.domain]]. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Pure technology (domain-agnostic) — domain (e.g. FHIR) versioning in [[api-versioning.domain]]. Commands: `/aw-spec-design`.
4
4
 
5
5
  ## REST versioning
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Coding Standards
2
2
 
3
- > Pure technology (domain-agnostic) — domain forbidden patterns & CI gates in [[coding-standards.domain]]. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Pure technology (domain-agnostic) — domain forbidden patterns & CI gates in [[coding-standards.domain]]. Commands: `/aw-spec-implement`, `/aw-spec-implement-delta`, `/aw-spec-build`, `/aw-spec-analyze-slice`.
4
4
 
5
5
  ## Naming conventions
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Dependency Policy
2
2
 
3
- > Pure technology (domain-agnostic) — domain package rules in [[dependency-policy.domain]]. Commands: `/aw-spec-plan`, `/aw-spec-implement`.
3
+ > Pure technology (domain-agnostic) — domain package rules in [[dependency-policy.domain]]. Commands: `/aw-spec-implement`, `/aw-spec-implement-delta`.
4
4
 
5
5
  ## Package governance
6
6
 
@@ -0,0 +1,27 @@
1
+ MedicinalProduct/
2
+
3
+ /aw-spec-orch constitution @docs/pharma-constitution.md
4
+
5
+ /aw-spec-orch specify RegisterMedicinalProduct
6
+
7
+ Allow an authorized user to register a new medicinal product in the registry.
8
+
9
+ On registration the user provides: product name, generic name, NDC, dosage form, strength, route of administration, manufacturer, one or more active ingredients with details, one or more packaging configurations and one or more ATC classification codes.
10
+
11
+ The system validates the submission (required attributes, duplicate NDC, valid dosage form and route of administration) and creates the product in the Draft state. A successful registration is auditable and emits a registration event.
12
+
13
+ Acceptance:
14
+ - A valid submission creates a Draft MedicinalProduct and returns its identifier.
15
+ - A malformed or duplicate NDC is rejected with a clear validation error.
16
+ - A product missing a required attribute, an active ingredient, or a packaging configuration is rejected.
17
+ - The creation is recorded in the audit trail.
18
+
19
+ /aw-spec-orch design
20
+
21
+ /aw-spec-orch analyze-design
22
+
23
+ /aw-spec-orch implement
24
+
25
+
26
+
27
+ ==============================================================================================
@@ -1,6 +1,6 @@
1
1
  # Auditing & Observability Standards
2
2
 
3
- > Pure technology (domain-agnostic) — domain audit additions in [[auditing.domain]]. NON-NEGOTIABLE. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Pure technology (domain-agnostic) — domain audit additions in [[auditing.domain]]. NON-NEGOTIABLE. Commands: `/aw-spec-design`.
4
4
 
5
5
  ## Observability baseline
6
6
 
@@ -39,14 +39,37 @@
39
39
  - Audit records are retained per the applicable retention policy (see [[persistence]];
40
40
  regulatory retention in [[auditing.domain]]).
41
41
 
42
- ## Canonical example (agent reference — `<SampleProjectName>` sample)
42
+ ## Two auditing levels
43
+
44
+ Auditing has exactly **two levels**, chosen **per aggregate** by the marker interfaces the root
45
+ implements. The interceptor populates every audit field automatically (no manual
46
+ `CreatedOn`/`ModifiedBy` assignment in handlers):
47
+
48
+ | Level | Aggregate root implements | Captured | Depth |
49
+ |-------|---------------------------|----------|-------|
50
+ | **Basic** | `IAuditedObject` (creation+modification) or `IFullAuditedObject` (+soft-delete) | `CreatedBy/On`, `ModifiedBy/On`, `DeletedBy/On`; one `AuditLog` per root per SaveChanges | entity-level (Created/Updated/Deleted) — no before/after |
51
+ | **Advanced** | Basic markers **+ `IFieldAudited`** | Basic + field-level before/after (`PropertyChange`: original → new) | entity + property-level previous/new |
43
52
 
44
- Aggregates opt into auditing by implementing the audit interfaces; the framework populates the
45
- fields automatically (no manual `CreatedOn`/`ModifiedBy` assignment in handlers):
53
+ Field-level before/after values exist **only** at the Advanced tier. Children marked
54
+ `IAggregateChild` fold into the root's `AuditLog`.
55
+
56
+ ## Canonical example (agent reference — `<SampleProjectName>` sample)
46
57
 
47
58
  ```csharp
48
- public class Project :
49
- EntityBase<ProjectId>, IAggregateRoot,
59
+ // Basic — lifecycle stamps only
60
+ public sealed class Category :
61
+ AggregateRootBase<CategoryId>, IAggregateRoot,
62
+ IAuditedObject // creation + modification
63
+ {
64
+ public DateTimeOffset CreatedOn { get; set; }
65
+ public string CreatedBy { get; set; } = default!;
66
+ public DateTimeOffset? ModifiedOn { get; set; }
67
+ public string? ModifiedBy { get; set; }
68
+ }
69
+
70
+ // Advanced — full lifecycle + field-level (before/after) tracking
71
+ public sealed class Project :
72
+ AggregateRootBase<ProjectId>, IAggregateRoot,
50
73
  IFullAuditedObject, // ICreationAudited + IModificationAudited + IDeletionAudited
51
74
  IFieldAudited, // opt-in to field-level (before/after) auditing
52
75
  ISoftDeletable, IConcurrencyTracked, IHasDomainEvents
@@ -69,15 +92,17 @@ The DbContext applies audit (plus soft-delete/tenant) behaviors centrally:
69
92
  modelBuilder.ApplyCrossCuttingBehaviors(this); // wires audit interceptors + filters
70
93
  ```
71
94
 
72
- Composition — enable auditing on the repository stack and route audit records to a
73
- separate, append-only store (schema `Auditing`, prefix `Audit_`):
95
+ Composition — enable auditing on the repository stack (one `EnableAdvancedAuditing()` registers
96
+ the interceptor that serves **both** levels; per-aggregate level is decided by the interfaces
97
+ above) and route audit records to a separate, append-only store (schema `Auditing`, prefix
98
+ `Audit_`):
74
99
 
75
100
  ```csharp
76
101
  // <SampleProjectName>.Service/Extensions/InfrastructureServiceRegistration.cs
77
102
  services.AddRepositories(builder => builder
78
103
  .UseSingleDbContextEFRepositories<ApplicationDbContext>(/* ... */)
79
- .EnableAuditing()
80
- .EnableAdvancedAuditing()
104
+ .EnableSoftDelete()
105
+ .EnableAdvancedAuditing() // AdvancedAuditingSaveChangesInterceptor
81
106
  .Done(), o => o.Provider = "EfCore");
82
107
 
83
108
  services.AddDataStore(b => b.UseEfCoreDataStore(/* ... */), o =>
@@ -95,9 +120,27 @@ services.AddAuditing(b => b
95
120
  o.ExcludeShadowProperties = true;
96
121
  })
97
122
  .UseAppWeaverDataStore(),
98
- o => { o.IsEnabled = true; o.EnableFieldLevelAuditing = true; });
123
+ o => { o.IsEnabled = true; o.EnableFieldLevelAuditing = true; }); // field-level = Advanced
99
124
  ```
100
125
 
126
+ ## Querying the audit trail (framework-provided)
127
+
128
+ The audit store is queryable out of the box via `IAuditEntity` — no bespoke read model required:
129
+
130
+ ```csharp
131
+ // by resource identity
132
+ var logs = await auditEntity.GetAuditLogsAsync(typeof(Project).FullName!, projectId.ToString());
133
+ // by user / action / time, with paging
134
+ var page = await auditEntity.GetAuditLogsAsync(new AuditLogFilter { UserId = "u1", Action = AuditAction.Updated, Take = 10 });
135
+ // by user / tenant
136
+ await auditEntity.GetAuditLogsByUserAsync("u1");
137
+ await auditEntity.GetAuditLogsByTenantAsync("tenant-alpha");
138
+ ```
139
+
140
+ Each `AuditLog` carries `{ UserId, UserName, Timestamp, Action, EntityType, EntityId, Metadata
141
+ (correlationId, …) }`; its `EntityChanges` hold entity-level `ChangeType`, and — for `IFieldAudited`
142
+ roots — nested `PropertyChanges` with `OriginalValue → NewValue`.
143
+
101
144
  Observability baseline — `ServiceDefaults` (OTel + Serilog + health) wired once in `Program.cs`:
102
145
 
103
146
  ```csharp
@@ -1,6 +1,6 @@
1
1
  # Authorization Standards
2
2
 
3
- > Pure technology (domain-agnostic) — domain roles & matrix in [[authorization.domain]]. NON-NEGOTIABLE. Commands: `/aw-spec-plan`, `/aw-spec-tasks`, `/aw-spec-implement`.
3
+ > Pure technology (domain-agnostic) — domain roles & matrix in [[authorization.domain]]. NON-NEGOTIABLE. Commands: `/aw-spec-design`.
4
4
 
5
5
  ## Authorization model
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Data Classification Standards
2
2
 
3
- > Pure technology (domain-agnostic) — domain data categories in [[data-classification.domain]]. NON-NEGOTIABLE. Commands: `/aw-spec-specify`, `/aw-spec-plan`, `/aw-spec-implement`.
3
+ > Pure technology (domain-agnostic) — domain data categories in [[data-classification.domain]]. NON-NEGOTIABLE. Commands: `/aw-spec-design`.
4
4
 
5
5
  ## Classification framework
6
6
 
@@ -1,6 +1,6 @@
1
1
  # Zero-Trust Standards
2
2
 
3
- > Pure technology (domain-agnostic) — domain additions in [[zero-trust.domain]]. NON-NEGOTIABLE where marked. Commands: `/aw-spec-plan`, `/aw-spec-implement`.
3
+ > Pure technology (domain-agnostic) — domain additions in [[zero-trust.domain]]. NON-NEGOTIABLE where marked. Commands: `/aw-spec-design`.
4
4
 
5
5
  ## Transport security (mTLS / TLS)
6
6
 
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,eAAO,MAAM,WAAW,SAwGpB,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,eAAO,MAAM,WAAW,SA2DpB,CAAC"}
@@ -1,13 +1,7 @@
1
1
  import { Command } from 'commander';
2
2
  import inquirer from 'inquirer';
3
- import chalk from 'chalk';
4
- import fs from 'fs-extra';
5
- import path from 'path';
6
- import { fileURLToPath } from 'url';
7
3
  import { copyAssets } from '../utils/copy-assets.js';
8
4
  import { resolveAssetsPath } from '../utils/paths.js';
9
- import { createManifest } from '../utils/manifest.js';
10
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
11
5
  export const initCommand = new Command('init')
12
6
  .description('Initialize a new AppWeaver Spec project in the current directory')
13
7
  .argument('[directory]', 'Target directory (default: current directory)', '.')
@@ -16,41 +10,7 @@ export const initCommand = new Command('init')
16
10
  .option('--dry-run', 'Show what would be done without making changes')
17
11
  .action(async (directory, options) => {
18
12
  const targetDir = directory === '.' ? process.cwd() : directory;
19
- const manifestPath = path.join(targetDir, '.aw-spec', 'manifest.json');
20
- // Check for existing project
21
- const existingManifest = await fs.pathExists(manifestPath);
22
- if (existingManifest && !options.dryRun) {
23
- console.log(chalk.yellow('\n\u26A0\uFE0F Existing AppWeaver Spec project detected.'));
24
- console.log(chalk.gray(` Manifest found at: ${manifestPath}`));
25
- if (options.yes) {
26
- console.log(chalk.yellow(' Use `aw-spec update` to update this project.'));
27
- process.exit(0);
28
- }
29
- const { action } = await inquirer.prompt([
30
- {
31
- type: 'list',
32
- name: 'action',
33
- message: 'What would you like to do?',
34
- choices: [
35
- { name: 'Update existing project (recommended)', value: 'update' },
36
- { name: 'Re-initialize (overwrite with fresh copy)', value: 'reinit' },
37
- { name: 'Cancel', value: 'cancel' },
38
- ],
39
- default: 'update',
40
- },
41
- ]);
42
- if (action === 'update') {
43
- console.log(chalk.gray(' Run `aw-spec update` to update this project.'));
44
- process.exit(0);
45
- }
46
- else if (action === 'cancel') {
47
- console.log(chalk.gray('\nInitialization cancelled.'));
48
- process.exit(0);
49
- }
50
- // action === 'reinit' continues below
51
- console.log(chalk.yellow('\n Re-initializing (will overwrite existing files)...\n'));
52
- }
53
- console.log(`\n\uD83D\uDD27 Initializing AppWeaver Spec project in: ${targetDir}\n`);
13
+ console.log(`\nšŸ”§ Initializing AppWeaver Spec project in: ${targetDir}\n`);
54
14
  // Determine agent
55
15
  let agent = options.agent;
56
16
  // If --yes flag and no explicit agent, use default (claude) without prompting
@@ -78,11 +38,11 @@ export const initCommand = new Command('init')
78
38
  const assetsPath = await resolveAssetsPath();
79
39
  const agentFolder = agent === 'claude' ? '.claude' : agent === 'kilocode' ? '.kilocode' : '.agents';
80
40
  if (options.dryRun) {
81
- console.log('\uD83D\uDCCB Dry run - would copy the following:');
82
- console.log(` \u2713 ${assetsPath}/.aw-spec -> ${targetDir}/.aw-spec`);
83
- console.log(` \u2713 ${assetsPath}/docs -> ${targetDir}/docs`);
84
- console.log(` \u2713 ${assetsPath}/${agentFolder} -> ${targetDir}/${agentFolder}`);
85
- console.log(` \u2713 ${assetsPath}/docs/VerticalSlice -> ${targetDir}/docs/VerticalSlice`);
41
+ console.log('šŸ“‹ Dry run - would copy the following:');
42
+ console.log(` āœ“ ${assetsPath}/.aw-spec -> ${targetDir}/.aw-spec`);
43
+ console.log(` āœ“ ${assetsPath}/docs -> ${targetDir}/docs`);
44
+ console.log(` āœ“ ${assetsPath}/${agentFolder} -> ${targetDir}/${agentFolder}`);
45
+ console.log(` āœ“ ${assetsPath}/docs/VerticalSlice -> ${targetDir}/docs/VerticalSlice`);
86
46
  return;
87
47
  }
88
48
  // Copy assets
@@ -92,14 +52,7 @@ export const initCommand = new Command('init')
92
52
  agent: agent,
93
53
  overwrite: options.yes,
94
54
  });
95
- // Create manifest after successful copy
96
- console.log('\n\uD83D\uDD0D Creating manifest...');
97
- const packageJson = await fs.readJSON(path.resolve(__dirname, '../../package.json'));
98
- const manifest = await createManifest(assetsPath, targetDir, packageJson.version);
99
- await fs.ensureDir(path.dirname(manifestPath));
100
- await fs.writeJSON(manifestPath, manifest, { spaces: 2 });
101
- console.log(chalk.green(` \u2713 Manifest created (${Object.keys(manifest.files).length} files tracked)`));
102
- console.log('\n\u2705 Project initialized successfully!');
55
+ console.log('\nāœ… Project initialized successfully!');
103
56
  console.log('\nNext steps:');
104
57
  console.log(' aw-spec doctor # Verify the installation');
105
58
  console.log(' aw-spec specify "Your feature description" # Start spec-driven development');
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -2,7 +2,6 @@
2
2
  import { program } from 'commander';
3
3
  import { initCommand } from './commands/init.js';
4
4
  import { doctorCommand } from './commands/doctor.js';
5
- import { updateCommand } from './commands/update.js';
6
5
  import fs from 'fs-extra';
7
6
  import path from 'path';
8
7
  import { fileURLToPath } from 'url';
@@ -13,7 +12,6 @@ program
13
12
  .description('AppWeaver Spec-Driven Development CLI')
14
13
  .version(packageJson.version)
15
14
  .addCommand(initCommand)
16
- .addCommand(updateCommand)
17
15
  .addCommand(doctorCommand);
18
16
  program.parse();
19
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAElF,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,uCAAuC,CAAC;KACpD,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;KAC5B,UAAU,CAAC,WAAW,CAAC;KACvB,UAAU,CAAC,aAAa,CAAC;KACzB,UAAU,CAAC,aAAa,CAAC,CAAC;AAE7B,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC;AAElF,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,uCAAuC,CAAC;KACpD,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;KAC5B,UAAU,CAAC,WAAW,CAAC;KACvB,UAAU,CAAC,aAAa,CAAC,CAAC;AAE7B,OAAO,CAAC,KAAK,EAAE,CAAC"}