@devtrack-solution/codesdd 1.2.3 → 1.2.4

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 (213) hide show
  1. package/.sdd/skills/curated/devtrack-api/SKILL.md +98 -12
  2. package/.sdd/skills/curated/devtrack-api/agents/claude-code.yaml +10 -0
  3. package/.sdd/skills/curated/devtrack-api/agents/codex.yaml +10 -0
  4. package/.sdd/skills/curated/devtrack-api/agents/cursor.yaml +10 -0
  5. package/.sdd/skills/curated/devtrack-api/agents/gemini.yaml +10 -0
  6. package/.sdd/skills/curated/devtrack-api/agents/kimi.yaml +10 -0
  7. package/.sdd/skills/curated/devtrack-api/agents/openai.yaml +5 -3
  8. package/.sdd/skills/curated/devtrack-api/agents/opencode.yaml +12 -0
  9. package/.sdd/skills/curated/devtrack-api/references/application-presentation.md +61 -5
  10. package/.sdd/skills/curated/devtrack-api/references/consumer-sync-policy.md +15 -3
  11. package/.sdd/skills/curated/devtrack-api/references/contract-pack.yaml +1951 -0
  12. package/.sdd/skills/curated/devtrack-api/references/domain-modeling.md +16 -14
  13. package/.sdd/skills/curated/devtrack-api/references/field-validation-protocol.md +40 -0
  14. package/.sdd/skills/curated/devtrack-api/references/foundation-layout.md +19 -2
  15. package/.sdd/skills/curated/devtrack-api/references/generated-artifact-invalidation.md +97 -0
  16. package/.sdd/skills/curated/devtrack-api/references/implementation-checklist.md +30 -1
  17. package/.sdd/skills/curated/devtrack-api/references/portable-agent-contract.md +42 -0
  18. package/.sdd/skills/curated/devtrack-api/references/testing-validation.md +22 -1
  19. package/.sdd/skills/curated/devtrack-api/references/typeorm-infrastructure.md +9 -7
  20. package/README.md +280 -29
  21. package/dist/applications/sdd/index.d.ts +16 -0
  22. package/dist/applications/sdd/index.js +16 -0
  23. package/dist/cli/program.js +180 -11
  24. package/dist/commands/config.js +197 -10
  25. package/dist/commands/sdd/execution.js +408 -16
  26. package/dist/commands/sdd/plugin.js +5 -0
  27. package/dist/commands/sdd/shared.d.ts +1 -0
  28. package/dist/commands/sdd/shared.js +10 -0
  29. package/dist/commands/sdd.js +157 -7
  30. package/dist/core/cli/command-matrix.d.ts +18 -0
  31. package/dist/core/cli/command-matrix.js +157 -0
  32. package/dist/core/cli-command-quality.js +11 -0
  33. package/dist/core/completions/command-registry.js +45 -0
  34. package/dist/core/config-schema.d.ts +31 -1
  35. package/dist/core/config-schema.js +79 -5
  36. package/dist/core/config.d.ts +1 -0
  37. package/dist/core/config.js +11 -0
  38. package/dist/core/global-config.d.ts +29 -0
  39. package/dist/core/init.d.ts +2 -2
  40. package/dist/core/init.js +13 -14
  41. package/dist/core/sdd/agent-binding.d.ts +19 -19
  42. package/dist/core/sdd/agent-runtime-contract.d.ts +204 -0
  43. package/dist/core/sdd/agent-runtime-contract.js +200 -0
  44. package/dist/core/sdd/allocator-recovery.d.ts +14 -0
  45. package/dist/core/sdd/allocator-recovery.js +30 -0
  46. package/dist/core/sdd/allocator-security.d.ts +18 -0
  47. package/dist/core/sdd/allocator-security.js +36 -0
  48. package/dist/core/sdd/api-foundation-baseline.d.ts +111 -0
  49. package/dist/core/sdd/api-foundation-baseline.js +151 -0
  50. package/dist/core/sdd/api-foundation-parity.d.ts +114 -0
  51. package/dist/core/sdd/api-foundation-parity.js +131 -0
  52. package/dist/core/sdd/api-profile-catalog.d.ts +36 -0
  53. package/dist/core/sdd/api-profile-catalog.js +132 -0
  54. package/dist/core/sdd/api-profile-dry-run-projection.d.ts +93 -0
  55. package/dist/core/sdd/api-profile-dry-run-projection.js +370 -0
  56. package/dist/core/sdd/api-profile-recipes.d.ts +82 -0
  57. package/dist/core/sdd/api-profile-recipes.js +484 -0
  58. package/dist/core/sdd/artifact-id-allocator.d.ts +368 -0
  59. package/dist/core/sdd/artifact-id-allocator.js +510 -0
  60. package/dist/core/sdd/check.d.ts +52 -1
  61. package/dist/core/sdd/check.js +326 -11
  62. package/dist/core/sdd/coordination/coordination-adapters.d.ts +15 -8
  63. package/dist/core/sdd/coordination/coordination-adapters.js +43 -15
  64. package/dist/core/sdd/coordination/index.d.ts +1 -0
  65. package/dist/core/sdd/coordination/index.js +1 -0
  66. package/dist/core/sdd/coordination/redis-runtime.d.ts +131 -0
  67. package/dist/core/sdd/coordination/redis-runtime.js +698 -0
  68. package/dist/core/sdd/deepagent-contracts.d.ts +99 -5
  69. package/dist/core/sdd/deepagent-contracts.js +62 -0
  70. package/dist/core/sdd/deepagents/reversa-subagents.d.ts +3 -3
  71. package/dist/core/sdd/default-bootstrap-files.d.ts +2 -2
  72. package/dist/core/sdd/default-bootstrap-files.js +14 -10
  73. package/dist/core/sdd/default-skills.js +115 -9
  74. package/dist/core/sdd/devtrack-api-appliance.d.ts +42 -1
  75. package/dist/core/sdd/devtrack-api-appliance.js +159 -32
  76. package/dist/core/sdd/devtrack-api-architecture.d.ts +16 -0
  77. package/dist/core/sdd/devtrack-api-architecture.js +86 -0
  78. package/dist/core/sdd/docs-sync.js +24 -18
  79. package/dist/core/sdd/domain/capability-diff.d.ts +63 -0
  80. package/dist/core/sdd/domain/capability-diff.js +200 -0
  81. package/dist/core/sdd/domain/change-safety-guardrails.d.ts +74 -0
  82. package/dist/core/sdd/domain/change-safety-guardrails.js +333 -0
  83. package/dist/core/sdd/domain/semantic-intent-classifier.d.ts +29 -0
  84. package/dist/core/sdd/domain/semantic-intent-classifier.js +117 -0
  85. package/dist/core/sdd/enterprise-mutating-command-gate.d.ts +27 -0
  86. package/dist/core/sdd/enterprise-mutating-command-gate.js +104 -0
  87. package/dist/core/sdd/enterprise-provenance-gates.d.ts +20 -0
  88. package/dist/core/sdd/enterprise-provenance-gates.js +63 -0
  89. package/dist/core/sdd/enterprise-provisioning-policy.d.ts +26 -0
  90. package/dist/core/sdd/enterprise-provisioning-policy.js +104 -0
  91. package/dist/core/sdd/foundation-artifact-map-validator.d.ts +16 -0
  92. package/dist/core/sdd/foundation-artifact-map-validator.js +71 -0
  93. package/dist/core/sdd/foundation-layer-manifest.d.ts +24 -0
  94. package/dist/core/sdd/foundation-layer-manifest.js +117 -0
  95. package/dist/core/sdd/governance-schemas.d.ts +2 -2
  96. package/dist/core/sdd/governance-schemas.js +11 -2
  97. package/dist/core/sdd/intent-guard.d.ts +22 -0
  98. package/dist/core/sdd/intent-guard.js +67 -0
  99. package/dist/core/sdd/json-schema.js +13 -1
  100. package/dist/core/sdd/legacy-operations.js +169 -5
  101. package/dist/core/sdd/migrate-workspace.js +39 -0
  102. package/dist/core/sdd/package-security-gates.d.ts +21 -0
  103. package/dist/core/sdd/package-security-gates.js +121 -0
  104. package/dist/core/sdd/package-structure-gate.d.ts +85 -3
  105. package/dist/core/sdd/package-structure-gate.js +384 -11
  106. package/dist/core/sdd/parallel-feat-automation.d.ts +185 -7
  107. package/dist/core/sdd/parallel-feat-automation.js +212 -0
  108. package/dist/core/sdd/plugin-broker.d.ts +223 -4
  109. package/dist/core/sdd/plugin-broker.js +10 -0
  110. package/dist/core/sdd/plugin-cli.d.ts +30 -0
  111. package/dist/core/sdd/plugin-cli.js +70 -3
  112. package/dist/core/sdd/plugin-evidence.d.ts +73 -0
  113. package/dist/core/sdd/plugin-manifest.d.ts +69 -1
  114. package/dist/core/sdd/plugin-manifest.js +10 -0
  115. package/dist/core/sdd/plugin-policy-pack.d.ts +1 -1
  116. package/dist/core/sdd/plugin-policy.js +6 -1
  117. package/dist/core/sdd/plugin-registry.d.ts +138 -2
  118. package/dist/core/sdd/plugin-sdk-contract.d.ts +363 -0
  119. package/dist/core/sdd/plugin-sdk-contract.js +268 -0
  120. package/dist/core/sdd/plugin-skill-binding.d.ts +1 -1
  121. package/dist/core/sdd/quality-validation.d.ts +89 -16
  122. package/dist/core/sdd/release-readiness.d.ts +68 -0
  123. package/dist/core/sdd/release-readiness.js +767 -0
  124. package/dist/core/sdd/reversa-architecture-extractor.d.ts +13 -0
  125. package/dist/core/sdd/reversa-architecture-extractor.js +89 -0
  126. package/dist/core/sdd/reversa-artifact-writer.d.ts +18 -0
  127. package/dist/core/sdd/reversa-artifact-writer.js +40 -0
  128. package/dist/core/sdd/reversa-command-policy.d.ts +136 -0
  129. package/dist/core/sdd/reversa-command-policy.js +361 -0
  130. package/dist/core/sdd/reversa-data-extractor.d.ts +11 -0
  131. package/dist/core/sdd/reversa-data-extractor.js +73 -0
  132. package/dist/core/sdd/reversa-equivalence.d.ts +20 -0
  133. package/dist/core/sdd/reversa-equivalence.js +34 -0
  134. package/dist/core/sdd/reversa-evidence.d.ts +298 -0
  135. package/dist/core/sdd/reversa-evidence.js +118 -0
  136. package/dist/core/sdd/reversa-reconstruction.d.ts +29 -0
  137. package/dist/core/sdd/reversa-reconstruction.js +32 -0
  138. package/dist/core/sdd/reversa-rules-extractor.d.ts +12 -0
  139. package/dist/core/sdd/reversa-rules-extractor.js +86 -0
  140. package/dist/core/sdd/reversa-source-safety.d.ts +19 -0
  141. package/dist/core/sdd/reversa-source-safety.js +105 -0
  142. package/dist/core/sdd/reversa-surface-scout.d.ts +13 -0
  143. package/dist/core/sdd/reversa-surface-scout.js +85 -0
  144. package/dist/core/sdd/reversa-ux-mapper.d.ts +11 -0
  145. package/dist/core/sdd/reversa-ux-mapper.js +73 -0
  146. package/dist/core/sdd/runtime-boundary-contract.d.ts +45 -0
  147. package/dist/core/sdd/runtime-boundary-contract.js +90 -0
  148. package/dist/core/sdd/sdk-agent-plugin-quality-gates.d.ts +150 -0
  149. package/dist/core/sdd/sdk-agent-plugin-quality-gates.js +258 -0
  150. package/dist/core/sdd/services/agent-run.service.d.ts +38 -6
  151. package/dist/core/sdd/services/agent-run.service.js +73 -1
  152. package/dist/core/sdd/services/archive-quality-coherence.service.d.ts +17 -0
  153. package/dist/core/sdd/services/archive-quality-coherence.service.js +141 -0
  154. package/dist/core/sdd/services/capability-diff.service.d.ts +18 -0
  155. package/dist/core/sdd/services/capability-diff.service.js +26 -0
  156. package/dist/core/sdd/services/change-safety-preflight.service.d.ts +17 -0
  157. package/dist/core/sdd/services/change-safety-preflight.service.js +17 -0
  158. package/dist/core/sdd/services/context.service.d.ts +43 -340
  159. package/dist/core/sdd/services/context.service.js +323 -9
  160. package/dist/core/sdd/services/decide.service.js +1 -1
  161. package/dist/core/sdd/services/finalize.service.d.ts +27 -0
  162. package/dist/core/sdd/services/finalize.service.js +226 -18
  163. package/dist/core/sdd/services/frontend-impact.service.d.ts +1 -1
  164. package/dist/core/sdd/services/historical-quality-regression.service.d.ts +35 -0
  165. package/dist/core/sdd/services/historical-quality-regression.service.js +228 -0
  166. package/dist/core/sdd/services/ingest-deposito.service.js +1 -1
  167. package/dist/core/sdd/services/planning-execution-coherence.service.d.ts +45 -0
  168. package/dist/core/sdd/services/planning-execution-coherence.service.js +225 -0
  169. package/dist/core/sdd/services/semantic-intent-classifier.service.d.ts +6 -0
  170. package/dist/core/sdd/services/semantic-intent-classifier.service.js +7 -0
  171. package/dist/core/sdd/state.d.ts +1 -0
  172. package/dist/core/sdd/state.js +266 -34
  173. package/dist/core/sdd/store/sdd-stores.js +2 -2
  174. package/dist/core/sdd/structural-health.d.ts +13 -13
  175. package/dist/core/sdd/types.d.ts +30 -15
  176. package/dist/core/sdd/types.js +4 -0
  177. package/dist/core/sdd/views.js +17 -0
  178. package/dist/core/sdd/workspace-schemas.d.ts +428 -7
  179. package/dist/core/sdd/workspace-schemas.js +223 -70
  180. package/dist/core/shared/skill-generation.d.ts +2 -0
  181. package/dist/core/shared/skill-generation.js +19 -2
  182. package/dist/core/shared/tool-detection.d.ts +19 -0
  183. package/dist/core/shared/tool-detection.js +89 -0
  184. package/dist/domains/sdd/index.d.ts +6 -0
  185. package/dist/domains/sdd/index.js +6 -0
  186. package/dist/infrastructures/sdd/index.d.ts +7 -0
  187. package/dist/infrastructures/sdd/index.js +6 -0
  188. package/dist/presentations/cli/sdd/index.d.ts +3 -0
  189. package/dist/presentations/cli/sdd/index.js +3 -0
  190. package/dist/shared/sdd/index.d.ts +3 -0
  191. package/dist/shared/sdd/index.js +2 -0
  192. package/package.json +14 -10
  193. package/schemas/sdd/2-plan.schema.json +207 -2
  194. package/schemas/sdd/5-quality.schema.json +324 -25
  195. package/schemas/sdd/agent-runtime-command-plan.schema.json +212 -0
  196. package/schemas/sdd/agent-runtime-opencode-run-evidence.schema.json +270 -0
  197. package/schemas/sdd/codesdd-plugin.schema.json +171 -0
  198. package/schemas/sdd/deepagent-run-request.schema.json +316 -0
  199. package/schemas/sdd/parallel-feat-automation-plan.schema.json +89 -0
  200. package/schemas/sdd/parallel-feat-scheduler-request.schema.json +116 -0
  201. package/schemas/sdd/parallel-feat-scheduler-result.schema.json +404 -0
  202. package/schemas/sdd/plugin-artifact-manifest.schema.json +109 -0
  203. package/schemas/sdd/plugin-artifact-map.schema.json +223 -0
  204. package/schemas/sdd/plugin-evidence-manifest.schema.json +109 -0
  205. package/schemas/sdd/plugin-language-runtime.schema.json +103 -0
  206. package/schemas/sdd/plugin-package-governance.schema.json +74 -0
  207. package/schemas/sdd/plugin-registry.schema.json +171 -0
  208. package/schemas/sdd/plugin-runtime-invocation-plan.schema.json +109 -0
  209. package/schemas/sdd/quality-evidence-bundle.schema.json +109 -0
  210. package/schemas/sdd/reversa-evidence-bundle.schema.json +466 -0
  211. package/schemas/sdd/sdk-agent-plugin-quality-gate-input.schema.json +168 -0
  212. package/schemas/sdd/sdk-agent-plugin-quality-gate-report.schema.json +160 -0
  213. package/schemas/sdd/workspace-catalog.schema.json +5298 -1409
@@ -692,6 +692,115 @@
692
692
  },
693
693
  "content_type": {
694
694
  "type": "string"
695
+ },
696
+ "artifact_kind": {
697
+ "type": "string",
698
+ "enum": [
699
+ "source",
700
+ "test",
701
+ "documentation",
702
+ "configuration",
703
+ "schema",
704
+ "evidence",
705
+ "migration",
706
+ "asset",
707
+ "package-metadata"
708
+ ]
709
+ },
710
+ "role": {
711
+ "type": "string",
712
+ "enum": [
713
+ "interface",
714
+ "type",
715
+ "implementation",
716
+ "abstraction",
717
+ "business-object",
718
+ "value-object",
719
+ "entity",
720
+ "repository-port",
721
+ "use-case",
722
+ "service",
723
+ "handler",
724
+ "adapter",
725
+ "mapper",
726
+ "module",
727
+ "controller",
728
+ "dto",
729
+ "validator",
730
+ "policy",
731
+ "manifest",
732
+ "fixture",
733
+ "test",
734
+ "documentation",
735
+ "evidence"
736
+ ]
737
+ },
738
+ "layer": {
739
+ "type": "string",
740
+ "enum": [
741
+ "root",
742
+ "domain",
743
+ "application",
744
+ "infrastructure",
745
+ "presentation",
746
+ "shared",
747
+ "tests",
748
+ "docs",
749
+ "sdd",
750
+ "config",
751
+ "assets"
752
+ ]
753
+ },
754
+ "language": {
755
+ "type": "string",
756
+ "enum": [
757
+ "typescript",
758
+ "javascript",
759
+ "python",
760
+ "java",
761
+ "go",
762
+ "rust",
763
+ "csharp",
764
+ "php",
765
+ "ruby",
766
+ "shell",
767
+ "other"
768
+ ]
769
+ },
770
+ "context": {
771
+ "type": "string",
772
+ "minLength": 1
773
+ },
774
+ "implementation": {
775
+ "type": "string",
776
+ "enum": [
777
+ "concrete",
778
+ "abstract",
779
+ "contract",
780
+ "generated",
781
+ "manual"
782
+ ]
783
+ },
784
+ "decision_refs": {
785
+ "type": "array",
786
+ "items": {
787
+ "type": "string",
788
+ "pattern": "^(?:ADR|DEB|EPIC|FEAT|INS)-\\d{4}$"
789
+ }
790
+ },
791
+ "source_refs": {
792
+ "type": "array",
793
+ "items": {
794
+ "type": "string",
795
+ "minLength": 1
796
+ }
797
+ },
798
+ "tags": {
799
+ "type": "array",
800
+ "items": {
801
+ "type": "string",
802
+ "minLength": 1
803
+ }
695
804
  }
696
805
  },
697
806
  "required": [
@@ -754,6 +754,115 @@
754
754
  },
755
755
  "content_type": {
756
756
  "type": "string"
757
+ },
758
+ "artifact_kind": {
759
+ "type": "string",
760
+ "enum": [
761
+ "source",
762
+ "test",
763
+ "documentation",
764
+ "configuration",
765
+ "schema",
766
+ "evidence",
767
+ "migration",
768
+ "asset",
769
+ "package-metadata"
770
+ ]
771
+ },
772
+ "role": {
773
+ "type": "string",
774
+ "enum": [
775
+ "interface",
776
+ "type",
777
+ "implementation",
778
+ "abstraction",
779
+ "business-object",
780
+ "value-object",
781
+ "entity",
782
+ "repository-port",
783
+ "use-case",
784
+ "service",
785
+ "handler",
786
+ "adapter",
787
+ "mapper",
788
+ "module",
789
+ "controller",
790
+ "dto",
791
+ "validator",
792
+ "policy",
793
+ "manifest",
794
+ "fixture",
795
+ "test",
796
+ "documentation",
797
+ "evidence"
798
+ ]
799
+ },
800
+ "layer": {
801
+ "type": "string",
802
+ "enum": [
803
+ "root",
804
+ "domain",
805
+ "application",
806
+ "infrastructure",
807
+ "presentation",
808
+ "shared",
809
+ "tests",
810
+ "docs",
811
+ "sdd",
812
+ "config",
813
+ "assets"
814
+ ]
815
+ },
816
+ "language": {
817
+ "type": "string",
818
+ "enum": [
819
+ "typescript",
820
+ "javascript",
821
+ "python",
822
+ "java",
823
+ "go",
824
+ "rust",
825
+ "csharp",
826
+ "php",
827
+ "ruby",
828
+ "shell",
829
+ "other"
830
+ ]
831
+ },
832
+ "context": {
833
+ "type": "string",
834
+ "minLength": 1
835
+ },
836
+ "implementation": {
837
+ "type": "string",
838
+ "enum": [
839
+ "concrete",
840
+ "abstract",
841
+ "contract",
842
+ "generated",
843
+ "manual"
844
+ ]
845
+ },
846
+ "decision_refs": {
847
+ "type": "array",
848
+ "items": {
849
+ "type": "string",
850
+ "pattern": "^(?:ADR|DEB|EPIC|FEAT|INS)-\\d{4}$"
851
+ }
852
+ },
853
+ "source_refs": {
854
+ "type": "array",
855
+ "items": {
856
+ "type": "string",
857
+ "minLength": 1
858
+ }
859
+ },
860
+ "tags": {
861
+ "type": "array",
862
+ "items": {
863
+ "type": "string",
864
+ "minLength": 1
865
+ }
757
866
  }
758
867
  },
759
868
  "required": [
@@ -0,0 +1,466 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "schema_version": {
6
+ "type": "number",
7
+ "const": 1
8
+ },
9
+ "contract": {
10
+ "type": "string",
11
+ "const": "reversa-evidence-bundle/v1"
12
+ },
13
+ "operation_id": {
14
+ "type": "string",
15
+ "pattern": "^[a-z0-9][a-z0-9-]*$"
16
+ },
17
+ "generated_at": {
18
+ "type": "string",
19
+ "format": "date-time",
20
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
21
+ },
22
+ "feature_ref": {
23
+ "type": "string",
24
+ "pattern": "^FEAT-\\d{4}$"
25
+ },
26
+ "mode": {
27
+ "type": "string",
28
+ "enum": [
29
+ "read-only",
30
+ "plan",
31
+ "validate",
32
+ "apply-sandbox",
33
+ "apply-approved"
34
+ ]
35
+ },
36
+ "source_attestations": {
37
+ "minItems": 1,
38
+ "type": "array",
39
+ "items": {
40
+ "type": "object",
41
+ "properties": {
42
+ "source_ref": {
43
+ "type": "string",
44
+ "minLength": 1
45
+ },
46
+ "source_type": {
47
+ "type": "string",
48
+ "enum": [
49
+ "repository",
50
+ "document",
51
+ "config",
52
+ "runtime_log",
53
+ "database_schema",
54
+ "manual_note"
55
+ ]
56
+ },
57
+ "trust_level": {
58
+ "type": "string",
59
+ "enum": [
60
+ "trusted",
61
+ "untrusted",
62
+ "hostile"
63
+ ]
64
+ },
65
+ "sha256": {
66
+ "type": "string",
67
+ "minLength": 1
68
+ },
69
+ "redaction_status": {
70
+ "type": "string",
71
+ "enum": [
72
+ "not_required",
73
+ "redacted",
74
+ "blocked"
75
+ ]
76
+ },
77
+ "notes": {
78
+ "type": "string",
79
+ "minLength": 1
80
+ }
81
+ },
82
+ "required": [
83
+ "source_ref",
84
+ "source_type",
85
+ "trust_level",
86
+ "redaction_status"
87
+ ],
88
+ "additionalProperties": false
89
+ }
90
+ },
91
+ "findings": {
92
+ "default": [],
93
+ "type": "array",
94
+ "items": {
95
+ "type": "object",
96
+ "properties": {
97
+ "id": {
98
+ "type": "string",
99
+ "pattern": "^REV-FIND-[A-Z0-9-]+$"
100
+ },
101
+ "phase": {
102
+ "type": "string",
103
+ "enum": [
104
+ "intake",
105
+ "surface",
106
+ "architecture",
107
+ "rules",
108
+ "data",
109
+ "ux",
110
+ "artifact_generation",
111
+ "migration",
112
+ "reconstruction",
113
+ "equivalence"
114
+ ]
115
+ },
116
+ "title": {
117
+ "type": "string",
118
+ "minLength": 1
119
+ },
120
+ "summary": {
121
+ "type": "string",
122
+ "minLength": 1
123
+ },
124
+ "confidence": {
125
+ "type": "string",
126
+ "enum": [
127
+ "high",
128
+ "medium",
129
+ "low",
130
+ "unknown"
131
+ ]
132
+ },
133
+ "source_refs": {
134
+ "minItems": 1,
135
+ "type": "array",
136
+ "items": {
137
+ "type": "string",
138
+ "minLength": 1
139
+ }
140
+ },
141
+ "contradiction_refs": {
142
+ "default": [],
143
+ "type": "array",
144
+ "items": {
145
+ "type": "string",
146
+ "minLength": 1
147
+ }
148
+ },
149
+ "promoted_refs": {
150
+ "default": [],
151
+ "type": "array",
152
+ "items": {
153
+ "type": "string",
154
+ "minLength": 1
155
+ }
156
+ },
157
+ "metadata": {
158
+ "default": {},
159
+ "type": "object",
160
+ "propertyNames": {
161
+ "type": "string"
162
+ },
163
+ "additionalProperties": {}
164
+ }
165
+ },
166
+ "required": [
167
+ "id",
168
+ "phase",
169
+ "title",
170
+ "summary",
171
+ "confidence",
172
+ "source_refs",
173
+ "contradiction_refs",
174
+ "promoted_refs",
175
+ "metadata"
176
+ ],
177
+ "additionalProperties": false
178
+ }
179
+ },
180
+ "artifacts": {
181
+ "default": [],
182
+ "type": "array",
183
+ "items": {
184
+ "type": "object",
185
+ "properties": {
186
+ "path": {
187
+ "type": "string",
188
+ "minLength": 1
189
+ },
190
+ "artifact_type": {
191
+ "type": "string",
192
+ "enum": [
193
+ "inventory",
194
+ "architecture_map",
195
+ "business_rules",
196
+ "data_model",
197
+ "ux_map",
198
+ "generated_sdd_artifact",
199
+ "migration_plan",
200
+ "reconstruction_diff",
201
+ "equivalence_report",
202
+ "question_set"
203
+ ]
204
+ },
205
+ "phase": {
206
+ "type": "string",
207
+ "enum": [
208
+ "intake",
209
+ "surface",
210
+ "architecture",
211
+ "rules",
212
+ "data",
213
+ "ux",
214
+ "artifact_generation",
215
+ "migration",
216
+ "reconstruction",
217
+ "equivalence"
218
+ ]
219
+ },
220
+ "checksum_sha256": {
221
+ "type": "string",
222
+ "minLength": 1
223
+ },
224
+ "produced_by": {
225
+ "type": "string",
226
+ "minLength": 1
227
+ },
228
+ "write_scope": {
229
+ "type": "string",
230
+ "enum": [
231
+ "read_only",
232
+ "dry_run",
233
+ "sandbox",
234
+ "approved_apply"
235
+ ]
236
+ }
237
+ },
238
+ "required": [
239
+ "path",
240
+ "artifact_type",
241
+ "phase",
242
+ "produced_by",
243
+ "write_scope"
244
+ ],
245
+ "additionalProperties": false
246
+ }
247
+ },
248
+ "validations": {
249
+ "default": [],
250
+ "type": "array",
251
+ "items": {
252
+ "type": "object",
253
+ "properties": {
254
+ "id": {
255
+ "type": "string",
256
+ "pattern": "^REV-VAL-[A-Z0-9-]+$"
257
+ },
258
+ "phase": {
259
+ "type": "string",
260
+ "enum": [
261
+ "intake",
262
+ "surface",
263
+ "architecture",
264
+ "rules",
265
+ "data",
266
+ "ux",
267
+ "artifact_generation",
268
+ "migration",
269
+ "reconstruction",
270
+ "equivalence"
271
+ ]
272
+ },
273
+ "command": {
274
+ "type": "string",
275
+ "minLength": 1
276
+ },
277
+ "status": {
278
+ "type": "string",
279
+ "enum": [
280
+ "passed",
281
+ "warning",
282
+ "failed",
283
+ "blocked",
284
+ "skipped"
285
+ ]
286
+ },
287
+ "evidence_ref": {
288
+ "type": "string",
289
+ "minLength": 1
290
+ },
291
+ "issue_codes": {
292
+ "default": [],
293
+ "type": "array",
294
+ "items": {
295
+ "type": "string",
296
+ "pattern": "^[A-Z][A-Z0-9_]*$"
297
+ }
298
+ }
299
+ },
300
+ "required": [
301
+ "id",
302
+ "phase",
303
+ "command",
304
+ "status",
305
+ "issue_codes"
306
+ ],
307
+ "additionalProperties": false
308
+ }
309
+ },
310
+ "contradictions": {
311
+ "default": [],
312
+ "type": "array",
313
+ "items": {
314
+ "type": "object",
315
+ "properties": {
316
+ "id": {
317
+ "type": "string",
318
+ "pattern": "^REV-CONTRA-[A-Z0-9-]+$"
319
+ },
320
+ "finding_refs": {
321
+ "minItems": 2,
322
+ "type": "array",
323
+ "items": {
324
+ "type": "string",
325
+ "minLength": 1
326
+ }
327
+ },
328
+ "summary": {
329
+ "type": "string",
330
+ "minLength": 1
331
+ },
332
+ "resolution_status": {
333
+ "type": "string",
334
+ "enum": [
335
+ "open",
336
+ "resolved",
337
+ "accepted_risk"
338
+ ]
339
+ }
340
+ },
341
+ "required": [
342
+ "id",
343
+ "finding_refs",
344
+ "summary",
345
+ "resolution_status"
346
+ ],
347
+ "additionalProperties": false
348
+ }
349
+ },
350
+ "human_questions": {
351
+ "default": [],
352
+ "type": "array",
353
+ "items": {
354
+ "type": "object",
355
+ "properties": {
356
+ "id": {
357
+ "type": "string",
358
+ "pattern": "^REV-Q-[A-Z0-9-]+$"
359
+ },
360
+ "question": {
361
+ "type": "string",
362
+ "minLength": 1
363
+ },
364
+ "blocks_phase": {
365
+ "type": "string",
366
+ "enum": [
367
+ "intake",
368
+ "surface",
369
+ "architecture",
370
+ "rules",
371
+ "data",
372
+ "ux",
373
+ "artifact_generation",
374
+ "migration",
375
+ "reconstruction",
376
+ "equivalence"
377
+ ]
378
+ },
379
+ "required_before_apply": {
380
+ "default": false,
381
+ "type": "boolean"
382
+ }
383
+ },
384
+ "required": [
385
+ "id",
386
+ "question",
387
+ "required_before_apply"
388
+ ],
389
+ "additionalProperties": false
390
+ }
391
+ },
392
+ "quality_refs": {
393
+ "default": [],
394
+ "type": "array",
395
+ "items": {
396
+ "type": "string",
397
+ "minLength": 1
398
+ }
399
+ },
400
+ "residual_risks": {
401
+ "default": [],
402
+ "type": "array",
403
+ "items": {
404
+ "type": "object",
405
+ "properties": {
406
+ "code": {
407
+ "type": "string",
408
+ "pattern": "^[A-Z][A-Z0-9_]*$"
409
+ },
410
+ "severity": {
411
+ "type": "string",
412
+ "enum": [
413
+ "low",
414
+ "medium",
415
+ "high",
416
+ "critical"
417
+ ]
418
+ },
419
+ "description": {
420
+ "type": "string",
421
+ "minLength": 1
422
+ },
423
+ "mitigation": {
424
+ "type": "string",
425
+ "minLength": 1
426
+ }
427
+ },
428
+ "required": [
429
+ "code",
430
+ "severity",
431
+ "description",
432
+ "mitigation"
433
+ ],
434
+ "additionalProperties": false
435
+ }
436
+ },
437
+ "metadata": {
438
+ "default": {},
439
+ "type": "object",
440
+ "propertyNames": {
441
+ "type": "string"
442
+ },
443
+ "additionalProperties": {}
444
+ }
445
+ },
446
+ "required": [
447
+ "schema_version",
448
+ "contract",
449
+ "operation_id",
450
+ "generated_at",
451
+ "feature_ref",
452
+ "mode",
453
+ "source_attestations",
454
+ "findings",
455
+ "artifacts",
456
+ "validations",
457
+ "contradictions",
458
+ "human_questions",
459
+ "quality_refs",
460
+ "residual_risks",
461
+ "metadata"
462
+ ],
463
+ "additionalProperties": false,
464
+ "title": "CodeSDD Reversa Evidence Bundle",
465
+ "description": "Machine-readable evidence bundle contract for Reversa intake, extraction, generation, migration, reconstruction, and equivalence phases."
466
+ }