@nimiplatform/nimi-coding 0.1.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.
- package/LICENSE +21 -0
- package/README.md +348 -0
- package/adapters/README.md +25 -0
- package/adapters/claude/README.md +89 -0
- package/adapters/claude/profile.yaml +70 -0
- package/adapters/codex/README.md +53 -0
- package/adapters/codex/profile.yaml +78 -0
- package/adapters/oh-my-codex/README.md +185 -0
- package/adapters/oh-my-codex/profile.yaml +46 -0
- package/bin/nimicoding.mjs +6 -0
- package/cli/commands/admit-high-risk-decision.mjs +108 -0
- package/cli/commands/audit-sweep.mjs +341 -0
- package/cli/commands/blueprint-audit.mjs +91 -0
- package/cli/commands/clear.mjs +168 -0
- package/cli/commands/closeout.mjs +183 -0
- package/cli/commands/decide-high-risk-execution.mjs +124 -0
- package/cli/commands/doctor.mjs +53 -0
- package/cli/commands/generate-spec-derived-docs.mjs +131 -0
- package/cli/commands/handoff.mjs +123 -0
- package/cli/commands/ingest-high-risk-execution.mjs +95 -0
- package/cli/commands/review-high-risk-execution.mjs +95 -0
- package/cli/commands/start.mjs +717 -0
- package/cli/commands/topic-formatters.mjs +382 -0
- package/cli/commands/topic-goal.mjs +33 -0
- package/cli/commands/topic-options-shared.mjs +27 -0
- package/cli/commands/topic-options-workflow.mjs +767 -0
- package/cli/commands/topic-options.mjs +626 -0
- package/cli/commands/topic-runner.mjs +169 -0
- package/cli/commands/topic.mjs +795 -0
- package/cli/commands/validate-acceptance.mjs +5 -0
- package/cli/commands/validate-ai-governance.mjs +214 -0
- package/cli/commands/validate-execution-packet.mjs +5 -0
- package/cli/commands/validate-orchestration-state.mjs +5 -0
- package/cli/commands/validate-prompt.mjs +5 -0
- package/cli/commands/validate-spec-audit.mjs +27 -0
- package/cli/commands/validate-spec-governance.mjs +124 -0
- package/cli/commands/validate-spec-tree.mjs +27 -0
- package/cli/commands/validate-worker-output.mjs +5 -0
- package/cli/constants.mjs +489 -0
- package/cli/help.mjs +134 -0
- package/cli/index.mjs +103 -0
- package/cli/lib/adapter-profiles.mjs +403 -0
- package/cli/lib/audit-execution.mjs +52 -0
- package/cli/lib/audit-sweep-runtime/admissions.mjs +381 -0
- package/cli/lib/audit-sweep-runtime/audit-validity.mjs +333 -0
- package/cli/lib/audit-sweep-runtime/chunks.mjs +697 -0
- package/cli/lib/audit-sweep-runtime/closeout.mjs +144 -0
- package/cli/lib/audit-sweep-runtime/codex-auditor-evidence.mjs +639 -0
- package/cli/lib/audit-sweep-runtime/codex-auditor.mjs +515 -0
- package/cli/lib/audit-sweep-runtime/common.mjs +329 -0
- package/cli/lib/audit-sweep-runtime/coverage-quality.mjs +172 -0
- package/cli/lib/audit-sweep-runtime/evidence-assignment.mjs +152 -0
- package/cli/lib/audit-sweep-runtime/format.mjs +57 -0
- package/cli/lib/audit-sweep-runtime/ingest.mjs +486 -0
- package/cli/lib/audit-sweep-runtime/inventory-spec-chunks.mjs +198 -0
- package/cli/lib/audit-sweep-runtime/inventory.mjs +728 -0
- package/cli/lib/audit-sweep-runtime/ledger.mjs +315 -0
- package/cli/lib/audit-sweep-runtime/p0p1-profile.mjs +101 -0
- package/cli/lib/audit-sweep-runtime/remediation.mjs +349 -0
- package/cli/lib/audit-sweep-runtime/rerun.mjs +129 -0
- package/cli/lib/audit-sweep-runtime/risk-budget.mjs +300 -0
- package/cli/lib/audit-sweep-runtime/status.mjs +62 -0
- package/cli/lib/audit-sweep-runtime/validators-ledger.mjs +215 -0
- package/cli/lib/audit-sweep-runtime/validators.mjs +758 -0
- package/cli/lib/audit-sweep.mjs +18 -0
- package/cli/lib/authority-convergence.mjs +309 -0
- package/cli/lib/blueprint-audit.mjs +370 -0
- package/cli/lib/bootstrap.mjs +228 -0
- package/cli/lib/closeout.mjs +623 -0
- package/cli/lib/codex-sdk-runner.mjs +76 -0
- package/cli/lib/contracts.mjs +180 -0
- package/cli/lib/doctor.mjs +18 -0
- package/cli/lib/entrypoints.mjs +274 -0
- package/cli/lib/external-execution.mjs +101 -0
- package/cli/lib/fs-helpers.mjs +33 -0
- package/cli/lib/handoff.mjs +785 -0
- package/cli/lib/high-risk-admission.mjs +442 -0
- package/cli/lib/high-risk-decision.mjs +324 -0
- package/cli/lib/high-risk-ingest.mjs +317 -0
- package/cli/lib/high-risk-review.mjs +263 -0
- package/cli/lib/internal/contracts-loaders.mjs +132 -0
- package/cli/lib/internal/contracts-parse-high-risk.mjs +131 -0
- package/cli/lib/internal/contracts-parse.mjs +457 -0
- package/cli/lib/internal/contracts-validators.mjs +398 -0
- package/cli/lib/internal/doctor-bootstrap-surface.mjs +359 -0
- package/cli/lib/internal/doctor-delegated-surface.mjs +256 -0
- package/cli/lib/internal/doctor-finalize.mjs +385 -0
- package/cli/lib/internal/doctor-format.mjs +286 -0
- package/cli/lib/internal/doctor-inspectors.mjs +294 -0
- package/cli/lib/internal/doctor-state.mjs +205 -0
- package/cli/lib/internal/governance/ai/ai-context-budget-core.mjs +315 -0
- package/cli/lib/internal/governance/ai/ai-structure-budget-core.mjs +358 -0
- package/cli/lib/internal/governance/ai/check-agents-freshness.mjs +155 -0
- package/cli/lib/internal/governance/ai/check-high-risk-doc-metadata-core.mjs +173 -0
- package/cli/lib/internal/governance/config.mjs +150 -0
- package/cli/lib/internal/governance/runner.mjs +35 -0
- package/cli/lib/internal/governance/shared/read-yaml-with-fragments.mjs +49 -0
- package/cli/lib/internal/validators-artifacts.mjs +515 -0
- package/cli/lib/internal/validators-shared.mjs +28 -0
- package/cli/lib/internal/validators-spec-helpers.mjs +186 -0
- package/cli/lib/internal/validators-spec.mjs +410 -0
- package/cli/lib/shared.mjs +83 -0
- package/cli/lib/topic-draft-packets.mjs +48 -0
- package/cli/lib/topic-goal.mjs +361 -0
- package/cli/lib/topic-runner.mjs +772 -0
- package/cli/lib/topic.mjs +93 -0
- package/cli/lib/ui.mjs +178 -0
- package/cli/lib/validators.mjs +78 -0
- package/cli/lib/value-helpers.mjs +24 -0
- package/cli/lib/yaml-helpers.mjs +133 -0
- package/cli/nimicoding.mjs +1 -0
- package/cli/seeds/bootstrap.mjs +47 -0
- package/config/audit-execution-artifacts.yaml +20 -0
- package/config/bootstrap.yaml +6 -0
- package/config/external-execution-artifacts.yaml +16 -0
- package/config/host-adapter.yaml +30 -0
- package/config/host-profile.yaml +29 -0
- package/config/installer-evidence.yaml +31 -0
- package/config/skill-installer.yaml +23 -0
- package/config/skill-manifest.yaml +46 -0
- package/config/skills.yaml +30 -0
- package/config/spec-generation-inputs.yaml +25 -0
- package/contracts/acceptance.schema.yaml +16 -0
- package/contracts/admission-checklist.schema.yaml +15 -0
- package/contracts/audit-chunk.schema.yaml +110 -0
- package/contracts/audit-closeout.schema.yaml +51 -0
- package/contracts/audit-finding.schema.yaml +61 -0
- package/contracts/audit-ledger.schema.yaml +138 -0
- package/contracts/audit-plan.schema.yaml +123 -0
- package/contracts/audit-remediation-map.schema.yaml +51 -0
- package/contracts/audit-rerun.schema.yaml +31 -0
- package/contracts/audit-sweep-result.yaml +49 -0
- package/contracts/authority-convergence-audit.schema.yaml +19 -0
- package/contracts/closeout.schema.yaml +25 -0
- package/contracts/decision-review.schema.yaml +16 -0
- package/contracts/doc-spec-audit-result.yaml +19 -0
- package/contracts/execution-packet.schema.yaml +49 -0
- package/contracts/external-host-compatibility.yaml +22 -0
- package/contracts/forbidden-shortcuts.catalog.yaml +23 -0
- package/contracts/high-risk-admission.schema.yaml +23 -0
- package/contracts/high-risk-execution-result.yaml +20 -0
- package/contracts/orchestration-state.schema.yaml +41 -0
- package/contracts/overflow-continuation.schema.yaml +12 -0
- package/contracts/packet.schema.yaml +30 -0
- package/contracts/pending-note.schema.yaml +17 -0
- package/contracts/prompt.schema.yaml +12 -0
- package/contracts/remediation.schema.yaml +16 -0
- package/contracts/result.schema.yaml +24 -0
- package/contracts/spec-generation-audit.schema.yaml +31 -0
- package/contracts/spec-generation-inputs.schema.yaml +39 -0
- package/contracts/spec-reconstruction-result.yaml +37 -0
- package/contracts/topic-goal.schema.yaml +78 -0
- package/contracts/topic-run-ledger.schema.yaml +72 -0
- package/contracts/topic-step-decision.schema.yaml +45 -0
- package/contracts/topic.schema.yaml +65 -0
- package/contracts/true-close.schema.yaml +15 -0
- package/contracts/wave.schema.yaml +29 -0
- package/contracts/worker-output.schema.yaml +15 -0
- package/methodology/audit-sweep-p0p1-recall.yaml +45 -0
- package/methodology/authority-convergence-policy.yaml +42 -0
- package/methodology/core.yaml +25 -0
- package/methodology/four-closure-policy.yaml +28 -0
- package/methodology/overflow-continuation-policy.yaml +14 -0
- package/methodology/role-separation-policy.yaml +28 -0
- package/methodology/skill-exchange-projection.yaml +114 -0
- package/methodology/skill-handoff.yaml +34 -0
- package/methodology/skill-installer-result.yaml +27 -0
- package/methodology/skill-installer-summary-projection.yaml +181 -0
- package/methodology/skill-runtime.yaml +23 -0
- package/methodology/spec-reconstruction.yaml +63 -0
- package/methodology/spec-target-truth-profile.yaml +53 -0
- package/methodology/topic-lifecycle-report.yaml +144 -0
- package/methodology/topic-lifecycle.yaml +37 -0
- package/methodology/topic-naming-ontology.yaml +21 -0
- package/methodology/topic-ontology.yaml +38 -0
- package/methodology/topic-validation-policy.yaml +9 -0
- package/methodology/wave-dag-policy.yaml +14 -0
- package/package.json +50 -0
- package/spec/_meta/command-gating-matrix.yaml +110 -0
- package/spec/_meta/generate-drift-migration-checklist.yaml +155 -0
- package/spec/_meta/governance-routing-cutover-checklist.yaml +35 -0
- package/spec/_meta/phase2-impacted-surface-matrix.yaml +44 -0
- package/spec/_meta/spec-authority-cutover-readiness.yaml +104 -0
- package/spec/_meta/spec-tree-model.yaml +72 -0
- package/spec/bootstrap-state.yaml +99 -0
- package/spec/product-scope.yaml +56 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
schema:
|
|
3
|
+
id: nimi-coding.audit-finding.v1
|
|
4
|
+
kind: audit-finding
|
|
5
|
+
required_fields:
|
|
6
|
+
- id
|
|
7
|
+
- sweep_id
|
|
8
|
+
- chunk_id
|
|
9
|
+
- fingerprint
|
|
10
|
+
- severity
|
|
11
|
+
- category
|
|
12
|
+
- actionability
|
|
13
|
+
- confidence
|
|
14
|
+
- impact
|
|
15
|
+
- location
|
|
16
|
+
- title
|
|
17
|
+
- description
|
|
18
|
+
- evidence
|
|
19
|
+
- disposition
|
|
20
|
+
- evidence_ref
|
|
21
|
+
optional_fields:
|
|
22
|
+
- owner_domain
|
|
23
|
+
- root_cause
|
|
24
|
+
- cluster_id
|
|
25
|
+
- detected_at
|
|
26
|
+
severity_enum:
|
|
27
|
+
- critical
|
|
28
|
+
- high
|
|
29
|
+
- medium
|
|
30
|
+
- low
|
|
31
|
+
actionability_enum:
|
|
32
|
+
- auto-fix
|
|
33
|
+
- needs-decision
|
|
34
|
+
- deferred-backlog
|
|
35
|
+
confidence_enum:
|
|
36
|
+
- high
|
|
37
|
+
- medium
|
|
38
|
+
- low
|
|
39
|
+
disposition_enum:
|
|
40
|
+
- open
|
|
41
|
+
- remediated
|
|
42
|
+
- accepted-risk
|
|
43
|
+
- false-positive
|
|
44
|
+
- deferred-backlog
|
|
45
|
+
location_required_fields:
|
|
46
|
+
- file
|
|
47
|
+
evidence_required_fields:
|
|
48
|
+
- summary
|
|
49
|
+
- auditor_reasoning
|
|
50
|
+
root_cause_optional_fields:
|
|
51
|
+
- key
|
|
52
|
+
- authority_ref
|
|
53
|
+
- evidence_root
|
|
54
|
+
- contract_seam
|
|
55
|
+
- repair_target
|
|
56
|
+
hard_constraints:
|
|
57
|
+
- finding_location_file_must_belong_to_source_chunk_or_declared_spec_authority_evidence_roots
|
|
58
|
+
- finding_fingerprint_must_be_stable_over_semantically_identical_evidence
|
|
59
|
+
- non_open_disposition_requires_resolution_evidence
|
|
60
|
+
- duplicate_symptoms_may_cluster_only_when_root_cause_key_and_authority_context_match
|
|
61
|
+
- unique_critical_or_high_root_causes_must_remain_canonical_findings
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
schema:
|
|
3
|
+
id: nimi-coding.audit-ledger.v1
|
|
4
|
+
kind: audit-ledger
|
|
5
|
+
required_top_level_fields:
|
|
6
|
+
- version
|
|
7
|
+
- kind
|
|
8
|
+
- sweep_id
|
|
9
|
+
- snapshot_id
|
|
10
|
+
- immutable
|
|
11
|
+
- plan_ref
|
|
12
|
+
- chunk_refs
|
|
13
|
+
- findings_ref
|
|
14
|
+
- evidence_refs
|
|
15
|
+
- run_ledger_ref
|
|
16
|
+
- status
|
|
17
|
+
- coverage
|
|
18
|
+
- coverage_quality
|
|
19
|
+
- audit_validity
|
|
20
|
+
- finding_count
|
|
21
|
+
- finding_cluster_count
|
|
22
|
+
- clustered_symptom_count
|
|
23
|
+
- remediation_obligation_count
|
|
24
|
+
- unresolved_finding_count
|
|
25
|
+
- finding_posture
|
|
26
|
+
- created_at
|
|
27
|
+
status_enum:
|
|
28
|
+
- candidate_ready
|
|
29
|
+
- partial
|
|
30
|
+
- partial_authority_only
|
|
31
|
+
- blocked_evidence_incomplete
|
|
32
|
+
- blocked
|
|
33
|
+
coverage_required_fields:
|
|
34
|
+
- total_files
|
|
35
|
+
- included_files
|
|
36
|
+
- audited_files
|
|
37
|
+
- frozen_chunks
|
|
38
|
+
- failed_chunks
|
|
39
|
+
- skipped_chunks
|
|
40
|
+
finding_posture_required_fields:
|
|
41
|
+
- open
|
|
42
|
+
- remediated
|
|
43
|
+
- accepted_risk
|
|
44
|
+
- false_positive
|
|
45
|
+
- deferred_backlog
|
|
46
|
+
coverage_quality_required_fields:
|
|
47
|
+
- scope_label
|
|
48
|
+
- posture
|
|
49
|
+
- authority_chunk_count
|
|
50
|
+
- chunks_with_evidence_inventory
|
|
51
|
+
- chunks_without_evidence_inventory
|
|
52
|
+
- empty_evidence_chunk_ratio
|
|
53
|
+
- evidence_file_count
|
|
54
|
+
- max_evidence_files_per_chunk
|
|
55
|
+
- max_evidence_chunk_id
|
|
56
|
+
- evidence_concentration_ratio
|
|
57
|
+
- owner_domain_coverage
|
|
58
|
+
- warnings
|
|
59
|
+
- blockers
|
|
60
|
+
coverage_quality_posture_enum:
|
|
61
|
+
- strong
|
|
62
|
+
- warning
|
|
63
|
+
- blocked
|
|
64
|
+
audit_validity_required_fields:
|
|
65
|
+
- posture
|
|
66
|
+
- no_finding_posture
|
|
67
|
+
- audited_outcomes_with_implementation_evidence_refs
|
|
68
|
+
- audited_outcomes_without_implementation_evidence_refs
|
|
69
|
+
- zero_finding_chunk_count
|
|
70
|
+
- large_zero_finding_chunk_count
|
|
71
|
+
- negative_reasoning_present
|
|
72
|
+
- p0p1_recall_required_count
|
|
73
|
+
- p0p1_recall_invalid_count
|
|
74
|
+
- p0p1_rule_check_count
|
|
75
|
+
- auditor_provenance_present
|
|
76
|
+
- calibration_expected_defect_count
|
|
77
|
+
- calibration_missed_defect_count
|
|
78
|
+
- warnings
|
|
79
|
+
- blockers
|
|
80
|
+
audit_validity_posture_enum:
|
|
81
|
+
- trusted
|
|
82
|
+
- warning
|
|
83
|
+
- invalid
|
|
84
|
+
no_finding_posture_enum:
|
|
85
|
+
- not_applicable
|
|
86
|
+
- explained
|
|
87
|
+
- weak
|
|
88
|
+
- invalid
|
|
89
|
+
run_event_type_enum:
|
|
90
|
+
- plan_created
|
|
91
|
+
- chunk_dispatched
|
|
92
|
+
- chunk_ingested
|
|
93
|
+
- chunk_reviewed
|
|
94
|
+
- chunk_frozen
|
|
95
|
+
- chunk_failed
|
|
96
|
+
- chunk_skipped
|
|
97
|
+
- chunk_codex_audit_prepared
|
|
98
|
+
- chunk_codex_audit_failed
|
|
99
|
+
- chunk_codex_auditor_output_rejected
|
|
100
|
+
- chunk_codex_auditor_output_accepted
|
|
101
|
+
- ledger_snapshot_created
|
|
102
|
+
- remediation_map_created
|
|
103
|
+
- remediation_map_admitted
|
|
104
|
+
- finding_resolved
|
|
105
|
+
- closeout_summary_projected
|
|
106
|
+
coverage_quality_warning_ids:
|
|
107
|
+
- sparse_evidence_inventory
|
|
108
|
+
- owner_domain_authority_only
|
|
109
|
+
- evidence_fan_in_concentrated
|
|
110
|
+
- full_status_scope_is_declared_inventory
|
|
111
|
+
coverage_quality_blocker_ids:
|
|
112
|
+
- declared_evidence_target_unresolved
|
|
113
|
+
- unmapped_evidence_files
|
|
114
|
+
- strict_required_owner_domain_missing_evidence
|
|
115
|
+
audit_validity_warning_ids:
|
|
116
|
+
- zero_findings_on_large_evidence_inventory
|
|
117
|
+
- empty_inventory_no_finding_weak
|
|
118
|
+
audit_validity_blocker_ids:
|
|
119
|
+
- no_finding_evidence_invalid
|
|
120
|
+
- audited_outcome_authority_only_evidence_refs
|
|
121
|
+
- no_finding_negative_reasoning_missing
|
|
122
|
+
- manager_freeze_invalid_no_finding
|
|
123
|
+
- calibration_known_defect_missed
|
|
124
|
+
- p0p1_negative_reasoning_missing
|
|
125
|
+
- p0p1_evidence_refs_out_of_scope
|
|
126
|
+
- p0p1_rule_checks_missing_or_invalid
|
|
127
|
+
- auditor_provenance_missing
|
|
128
|
+
- synthetic_no_finding_evidence
|
|
129
|
+
hard_constraints:
|
|
130
|
+
- ledger_snapshots_are_immutable
|
|
131
|
+
- candidate_ready_requires_all_included_files_audited
|
|
132
|
+
- candidate_ready_requires_all_chunks_frozen
|
|
133
|
+
- failed_or_skipped_chunks_force_partial_or_blocked
|
|
134
|
+
- ledger_must_reference_append_only_run_ledger
|
|
135
|
+
- remediation_obligation_count_excludes_clustered_duplicate_symptoms
|
|
136
|
+
- coverage_quality_and_audit_validity_must_be_persisted_in_immutable_snapshots
|
|
137
|
+
- coverage_quality_and_audit_validity_must_be_nested_objects_not_flattened_root_fields
|
|
138
|
+
- partial_authority_only_and_blocked_evidence_incomplete_are_non_candidate_statuses
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
schema:
|
|
3
|
+
id: nimi-coding.audit-plan.v1
|
|
4
|
+
kind: audit-plan
|
|
5
|
+
required_top_level_fields:
|
|
6
|
+
- version
|
|
7
|
+
- kind
|
|
8
|
+
- sweep_id
|
|
9
|
+
- target_root
|
|
10
|
+
- inventory_hash
|
|
11
|
+
- inventory
|
|
12
|
+
- chunks
|
|
13
|
+
- coverage
|
|
14
|
+
- created_at
|
|
15
|
+
- updated_at
|
|
16
|
+
optional_top_level_fields:
|
|
17
|
+
- planning_basis
|
|
18
|
+
- audit_ignore_policy
|
|
19
|
+
- risk_budget_policy
|
|
20
|
+
- risk_budget_status
|
|
21
|
+
- audit_sweep_config_ref
|
|
22
|
+
- app_slice_admission_ref
|
|
23
|
+
- app_slice_admissions
|
|
24
|
+
- audit_evidence_root_refs
|
|
25
|
+
- package_authority_admission_refs
|
|
26
|
+
- package_authority_admissions
|
|
27
|
+
- evidence_inventory_hash
|
|
28
|
+
- evidence_inventory
|
|
29
|
+
- unmapped_evidence_files
|
|
30
|
+
- coverage_quality
|
|
31
|
+
- audit_validity
|
|
32
|
+
inventory_entry_required_fields:
|
|
33
|
+
- file_ref
|
|
34
|
+
- sha256
|
|
35
|
+
- bytes
|
|
36
|
+
- extension
|
|
37
|
+
- owner_domain
|
|
38
|
+
- classification
|
|
39
|
+
- included
|
|
40
|
+
- exclusion_reason
|
|
41
|
+
chunk_required_fields:
|
|
42
|
+
- chunk_id
|
|
43
|
+
- state
|
|
44
|
+
- owner_domain
|
|
45
|
+
- criteria
|
|
46
|
+
- files
|
|
47
|
+
- file_count
|
|
48
|
+
chunk_optional_fields:
|
|
49
|
+
- planning_basis
|
|
50
|
+
- spec_surface
|
|
51
|
+
- authority_refs
|
|
52
|
+
- authority_kind
|
|
53
|
+
- app_id
|
|
54
|
+
- package_authority_id
|
|
55
|
+
- admission_ref
|
|
56
|
+
- authority_root
|
|
57
|
+
- evidence_root_admission_refs
|
|
58
|
+
- admitted_evidence_roots
|
|
59
|
+
- host_authority_projection_refs
|
|
60
|
+
- evidence_roots
|
|
61
|
+
- evidence_inventory
|
|
62
|
+
- coverage_contract
|
|
63
|
+
- evidence_inventory_status
|
|
64
|
+
- evidence_inventory_empty_reason
|
|
65
|
+
- calibration_expected_defects
|
|
66
|
+
state_enum:
|
|
67
|
+
- planned
|
|
68
|
+
- dispatched
|
|
69
|
+
- ingested
|
|
70
|
+
- reviewed
|
|
71
|
+
- frozen
|
|
72
|
+
- failed
|
|
73
|
+
- skipped
|
|
74
|
+
coverage_required_fields:
|
|
75
|
+
- total_files
|
|
76
|
+
- included_files
|
|
77
|
+
- excluded_files
|
|
78
|
+
- chunk_count
|
|
79
|
+
spec_authority_coverage_fields:
|
|
80
|
+
- authority_files
|
|
81
|
+
- evidence_files
|
|
82
|
+
- unmapped_evidence_files
|
|
83
|
+
audit_sweep_config_fields:
|
|
84
|
+
quality_mode_enum:
|
|
85
|
+
- default
|
|
86
|
+
- strict
|
|
87
|
+
coverage_quality_namespace: audit_sweep.coverage_quality
|
|
88
|
+
audit_validity_namespace: audit_sweep.audit_validity
|
|
89
|
+
coverage_quality_summary_fields:
|
|
90
|
+
- scope_label
|
|
91
|
+
- posture
|
|
92
|
+
- warnings
|
|
93
|
+
- blockers
|
|
94
|
+
audit_validity_summary_fields:
|
|
95
|
+
- posture
|
|
96
|
+
- warnings
|
|
97
|
+
- blockers
|
|
98
|
+
- no_finding_posture
|
|
99
|
+
- p0p1_recall_required_count
|
|
100
|
+
- p0p1_recall_invalid_count
|
|
101
|
+
- calibration_expected_defect_count
|
|
102
|
+
- calibration_missed_defect_count
|
|
103
|
+
hard_constraints:
|
|
104
|
+
- inventory_hash_must_cover_all_inventory_entries
|
|
105
|
+
- every_included_file_must_belong_to_exactly_one_chunk
|
|
106
|
+
- excluded_files_must_have_explicit_exclusion_reason
|
|
107
|
+
- zero_included_files_cannot_be_candidate_ready
|
|
108
|
+
- spec_authority_plans_must_chunk_by_authority_refs_not_file_inventory
|
|
109
|
+
- spec_authority_chunk_files_are_authority_refs_and_evidence_roots_define_audit_evidence_scope
|
|
110
|
+
- explicit_audit_ignore_policy_must_record_reason_and_ignored_chunks
|
|
111
|
+
- ignored_chunks_must_be_skipped_not_counted_as_audited
|
|
112
|
+
- risk_budget_pause_must_not_mark_unresolved_findings_as_closed
|
|
113
|
+
- risk_budget_pause_blocks_further_dispatch_until_remediation_bundle_or_manager_action
|
|
114
|
+
- admitted_package_authority_projection_refs_must_be_explicitly_mapped
|
|
115
|
+
- spec_authority_plans_must_materialize_full_evidence_inventory
|
|
116
|
+
- spec_authority_chunks_must_assign_evidence_inventory_to_every_matching_authority_chunk
|
|
117
|
+
- spec_authority_evidence_inventory_files_may_be_reused_across_chunks_without_creating_parallel_truth
|
|
118
|
+
- spec_authority_chunks_with_empty_evidence_inventory_must_declare_explicit_empty_reason
|
|
119
|
+
- spec_authority_unmapped_evidence_files_fail_closed_without_explicit_skip_reason
|
|
120
|
+
- spec_authority_coverage_must_split_authority_files_from_evidence_files
|
|
121
|
+
- spec_authority_audit_evidence_must_report_one_authority_outcome_per_authority_ref
|
|
122
|
+
- spec_authority_audit_evidence_must_report_evidence_files_exactly_matching_chunk_inventory
|
|
123
|
+
- audit_sweep_quality_mode_must_be_default_unless_strict_is_explicit
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
schema:
|
|
3
|
+
id: nimi-coding.audit-remediation-map.v1
|
|
4
|
+
kind: audit-remediation-map
|
|
5
|
+
required_top_level_fields:
|
|
6
|
+
- version
|
|
7
|
+
- kind
|
|
8
|
+
- sweep_id
|
|
9
|
+
- source_ledger_ref
|
|
10
|
+
- source_findings_ref
|
|
11
|
+
- grouping_policy
|
|
12
|
+
- remediation_bundles
|
|
13
|
+
- waves
|
|
14
|
+
- unmapped_findings
|
|
15
|
+
- created_at
|
|
16
|
+
- updated_at
|
|
17
|
+
wave_required_fields:
|
|
18
|
+
- wave_id
|
|
19
|
+
- status
|
|
20
|
+
- owner_domain
|
|
21
|
+
- priority
|
|
22
|
+
- actionability
|
|
23
|
+
- finding_ids
|
|
24
|
+
- cluster_ids
|
|
25
|
+
- clustered_symptom_count
|
|
26
|
+
- source_chunks
|
|
27
|
+
- files
|
|
28
|
+
- write_set
|
|
29
|
+
- depends_on
|
|
30
|
+
- remediation_bundle
|
|
31
|
+
- admission_checklist
|
|
32
|
+
remediation_bundle_required_fields:
|
|
33
|
+
- bundle_id
|
|
34
|
+
- cluster_ids
|
|
35
|
+
- representative_finding_ids
|
|
36
|
+
- canonical_finding_ids
|
|
37
|
+
- duplicate_symptom_count
|
|
38
|
+
- source_chunks
|
|
39
|
+
- repair_targets
|
|
40
|
+
status_enum:
|
|
41
|
+
- proposed
|
|
42
|
+
- admitted
|
|
43
|
+
- superseded
|
|
44
|
+
- empty
|
|
45
|
+
hard_constraints:
|
|
46
|
+
- remediation_map_must_not_mutate_source_ledger
|
|
47
|
+
- every_open_finding_must_be_mapped_or_explicitly_unmapped
|
|
48
|
+
- duplicate_symptoms_must_remain_traceable_inside_remediation_bundles
|
|
49
|
+
- duplicate_symptoms_do_not_count_as_independent_remediation_obligations_by_default
|
|
50
|
+
- write_set_conflicts_must_be_visible
|
|
51
|
+
- needs_decision_findings_require_manager_decision_admission
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
schema:
|
|
3
|
+
id: nimi-coding.audit-rerun.v1
|
|
4
|
+
kind: audit-rerun
|
|
5
|
+
required_top_level_fields:
|
|
6
|
+
- finding_id
|
|
7
|
+
- source_fingerprint
|
|
8
|
+
- disposition
|
|
9
|
+
- rerun
|
|
10
|
+
- evidence_summary
|
|
11
|
+
- verified_at
|
|
12
|
+
disposition_enum:
|
|
13
|
+
- remediated
|
|
14
|
+
- accepted-risk
|
|
15
|
+
- false-positive
|
|
16
|
+
- deferred-backlog
|
|
17
|
+
rerun_required_fields:
|
|
18
|
+
- chunk_id
|
|
19
|
+
- covered_files
|
|
20
|
+
- verdict
|
|
21
|
+
- auditor
|
|
22
|
+
verdict_enum:
|
|
23
|
+
- not_reproduced
|
|
24
|
+
- still_reproduced
|
|
25
|
+
- manager_accepted
|
|
26
|
+
- deferred
|
|
27
|
+
hard_constraints:
|
|
28
|
+
- remediated_requires_not_reproduced_verdict
|
|
29
|
+
- rerun_covered_files_must_include_original_finding_file
|
|
30
|
+
- source_fingerprint_must_match_original_finding
|
|
31
|
+
- manager_dispositions_require_manager_acceptance_evidence
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
result_contract:
|
|
3
|
+
id: delegated_audit_sweep_result
|
|
4
|
+
summary_required_fields:
|
|
5
|
+
- plan_ref
|
|
6
|
+
- chunk_refs
|
|
7
|
+
- ledger_ref
|
|
8
|
+
- report_ref
|
|
9
|
+
- remediation_map_ref
|
|
10
|
+
- audit_closeout_ref
|
|
11
|
+
- evidence_refs
|
|
12
|
+
- finding_count
|
|
13
|
+
- unresolved_finding_count
|
|
14
|
+
- status
|
|
15
|
+
- coverage_scope
|
|
16
|
+
- coverage_quality
|
|
17
|
+
- audit_validity
|
|
18
|
+
- summary
|
|
19
|
+
- verified_at
|
|
20
|
+
summary_status_enum:
|
|
21
|
+
- candidate_ready
|
|
22
|
+
- partial
|
|
23
|
+
- partial_authority_only
|
|
24
|
+
- blocked_evidence_incomplete
|
|
25
|
+
- blocked
|
|
26
|
+
coverage_quality_required_fields:
|
|
27
|
+
- scope_label
|
|
28
|
+
- posture
|
|
29
|
+
- warnings
|
|
30
|
+
- blockers
|
|
31
|
+
audit_validity_required_fields:
|
|
32
|
+
- posture
|
|
33
|
+
- warnings
|
|
34
|
+
- blockers
|
|
35
|
+
- no_finding_posture
|
|
36
|
+
- p0p1_recall_required_count
|
|
37
|
+
- p0p1_recall_invalid_count
|
|
38
|
+
- p0p1_rule_check_count
|
|
39
|
+
- auditor_provenance_present
|
|
40
|
+
- calibration_expected_defect_count
|
|
41
|
+
- calibration_missed_defect_count
|
|
42
|
+
locality: local_only
|
|
43
|
+
semantic_constraints:
|
|
44
|
+
- do_not_promote_audit_sweep_summary_to_project_truth
|
|
45
|
+
- do_not_treat_external_audit_sweep_summary_as_remediation_or_closure_judgement
|
|
46
|
+
- candidate_ready_requires_full_authority_and_evidence_coverage
|
|
47
|
+
- full_coverage_status_requires_candidate_ready_ledger
|
|
48
|
+
- spec_authority_sweeps_must_report_authority_coverage_and_evidence_coverage_separately
|
|
49
|
+
- audit_validity_invalid_must_not_be_summarized_as_successful_no_finding_audit
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
id: nimicoding.authority-convergence-audit.v1
|
|
2
|
+
kind: authority-convergence-audit
|
|
3
|
+
required:
|
|
4
|
+
- verdict
|
|
5
|
+
- blocking_findings
|
|
6
|
+
- concerns
|
|
7
|
+
- deferred_non_blockers
|
|
8
|
+
- authority_refs
|
|
9
|
+
- ready_for_implementation
|
|
10
|
+
verdict_enum:
|
|
11
|
+
- PASS
|
|
12
|
+
- NEEDS_REVISION
|
|
13
|
+
- FAIL
|
|
14
|
+
rules:
|
|
15
|
+
- PASS requires blocking_findings to be empty and ready_for_implementation=true
|
|
16
|
+
- NEEDS_REVISION or FAIL requires ready_for_implementation=false
|
|
17
|
+
- deferred_non_blockers must not hide unresolved authority owner, parallel truth, or downstream vocabulary blockers
|
|
18
|
+
- auditor output is candidate evidence until recorded by the nimicoding manager as a topic audit result
|
|
19
|
+
- auditor must not edit implementation code, mutate spec truth, or decide semantic acceptance
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
id: nimicoding.topic-closeout.v1
|
|
2
|
+
kind: topic-closeout
|
|
3
|
+
required:
|
|
4
|
+
- closeout_id
|
|
5
|
+
- topic_id
|
|
6
|
+
- scope
|
|
7
|
+
- authority_closure
|
|
8
|
+
- semantic_closure
|
|
9
|
+
- consumer_closure
|
|
10
|
+
- drift_resistance_closure
|
|
11
|
+
- disposition
|
|
12
|
+
scope_enum:
|
|
13
|
+
- wave
|
|
14
|
+
- topic
|
|
15
|
+
closure_enum:
|
|
16
|
+
- open
|
|
17
|
+
- closed
|
|
18
|
+
- blocked
|
|
19
|
+
disposition_enum:
|
|
20
|
+
- complete
|
|
21
|
+
- partial
|
|
22
|
+
- deferred
|
|
23
|
+
rules:
|
|
24
|
+
- wave closeout requires all four closure dimensions to be explicit
|
|
25
|
+
- topic closeout must not imply true close unless true-close posture is separately explicit
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
id: nimicoding.decision-review.v1
|
|
2
|
+
kind: decision-review
|
|
3
|
+
required:
|
|
4
|
+
- decision_review_id
|
|
5
|
+
- topic_id
|
|
6
|
+
- date
|
|
7
|
+
- decision
|
|
8
|
+
- replaced_scope
|
|
9
|
+
- active_replacement_scope
|
|
10
|
+
disposition_enum:
|
|
11
|
+
- retired
|
|
12
|
+
- superseded
|
|
13
|
+
- unchanged
|
|
14
|
+
rules:
|
|
15
|
+
- decision review must explicitly state whether prior scope is retired, superseded, or unchanged
|
|
16
|
+
- active replacement scope must be machine-identifiable
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
result_contract:
|
|
3
|
+
id: delegated_doc_spec_audit_result
|
|
4
|
+
summary_required_fields:
|
|
5
|
+
- compared_paths
|
|
6
|
+
- finding_count
|
|
7
|
+
- status
|
|
8
|
+
- summary
|
|
9
|
+
- verified_at
|
|
10
|
+
summary_status_enum:
|
|
11
|
+
- aligned
|
|
12
|
+
- drift_detected
|
|
13
|
+
- blocked
|
|
14
|
+
default_compared_paths:
|
|
15
|
+
- README.md
|
|
16
|
+
- .nimi/spec
|
|
17
|
+
locality: local_only
|
|
18
|
+
semantic_constraints:
|
|
19
|
+
- do_not_promote_doc_spec_audit_summary_to_project_truth
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
id: nimi-coding.execution-packet.v1
|
|
2
|
+
kind: execution-packet
|
|
3
|
+
required:
|
|
4
|
+
- packet_id
|
|
5
|
+
- topic_id
|
|
6
|
+
- status
|
|
7
|
+
- owner
|
|
8
|
+
- created_at
|
|
9
|
+
- updated_at
|
|
10
|
+
- baseline_ref
|
|
11
|
+
- entry_phase_id
|
|
12
|
+
- phases
|
|
13
|
+
- escalation_policy
|
|
14
|
+
- notification_settings
|
|
15
|
+
- resume_policy
|
|
16
|
+
status_enum:
|
|
17
|
+
- draft
|
|
18
|
+
- frozen
|
|
19
|
+
- superseded
|
|
20
|
+
- archived
|
|
21
|
+
phase_required:
|
|
22
|
+
- phase_id
|
|
23
|
+
- goal
|
|
24
|
+
- authority_refs
|
|
25
|
+
- write_scope
|
|
26
|
+
- read_scope
|
|
27
|
+
- required_checks
|
|
28
|
+
- completion_criteria
|
|
29
|
+
- escalation_conditions
|
|
30
|
+
- next_on_success
|
|
31
|
+
- stop_on_failure
|
|
32
|
+
phase_stop_on_failure_enum:
|
|
33
|
+
- pause
|
|
34
|
+
- stop
|
|
35
|
+
escalation_policy_required:
|
|
36
|
+
- pause_conditions
|
|
37
|
+
- manager_decision_required
|
|
38
|
+
notification_settings_required:
|
|
39
|
+
- on_block
|
|
40
|
+
- on_final_completion
|
|
41
|
+
- on_progress
|
|
42
|
+
resume_policy_required:
|
|
43
|
+
- same_revision_resume_allowed_reasons
|
|
44
|
+
- new_packet_required_on
|
|
45
|
+
rules:
|
|
46
|
+
- baseline_ref must resolve to a baseline artifact
|
|
47
|
+
- entry_phase_id must exist in phases[].phase_id
|
|
48
|
+
- next_on_success must be null or an existing phase_id
|
|
49
|
+
- packet must not encode transport secrets, runtime state, or semantic acceptance outcomes
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
compatibility_contract:
|
|
3
|
+
id: external_host_boundary_compatibility
|
|
4
|
+
completion_profile: boundary_complete
|
|
5
|
+
supported_host_posture:
|
|
6
|
+
- host_agnostic_external_host
|
|
7
|
+
supported_host_examples:
|
|
8
|
+
- oh_my_codex
|
|
9
|
+
- codex
|
|
10
|
+
- claude
|
|
11
|
+
- gemini
|
|
12
|
+
required_behavior:
|
|
13
|
+
- consume_handoff_json_as_authoritative_contract
|
|
14
|
+
- treat_handoff_prompt_as_human_projection_only
|
|
15
|
+
- read_project_local_nimi_truth
|
|
16
|
+
- route_declared_external_skills
|
|
17
|
+
- fail_closed_on_missing_authority
|
|
18
|
+
forbidden_behavior:
|
|
19
|
+
- assume_packaged_run_kernel
|
|
20
|
+
- assume_provider_or_scheduler_ownership
|
|
21
|
+
- promote_runtime_state_to_semantic_truth
|
|
22
|
+
- redefine_acceptance_disposition_or_finding_judgment
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
id: nimicoding.forbidden-shortcuts.v1
|
|
2
|
+
kind: forbidden-shortcuts-catalog
|
|
3
|
+
entries:
|
|
4
|
+
- key: mvp_subset_contract
|
|
5
|
+
meaning: do_not_cut_canonical_contract_truth_into_a_temporary_minimum_subset
|
|
6
|
+
- key: legacy_alias
|
|
7
|
+
meaning: do_not_keep_obsolete_semantics_alive_via_soft_aliases
|
|
8
|
+
- key: compat_shim
|
|
9
|
+
meaning: do_not_hide_owner_cut_gaps_behind_temporary_compatibility_code
|
|
10
|
+
- key: dual_read
|
|
11
|
+
meaning: do_not_keep_two_parallel_truth_read_paths_without_explicit_admission
|
|
12
|
+
- key: dual_write
|
|
13
|
+
meaning: do_not_keep_two_parallel_truth_write_paths_without_explicit_admission
|
|
14
|
+
- key: placeholder_success
|
|
15
|
+
meaning: do_not_fake_success_or_closure_when_required_truth_is_missing
|
|
16
|
+
- key: happy_path_only_closure
|
|
17
|
+
meaning: do_not_claim_closure_when_only_the_happy_path_is_closed
|
|
18
|
+
- key: time_phased_layering
|
|
19
|
+
meaning: do_not_replace_semantic_layering_with_time_sliced_core_contracts
|
|
20
|
+
- key: app_local_shadow_truth
|
|
21
|
+
meaning: do_not_let_app_local_convenience_state_become_hidden_canonical_truth
|
|
22
|
+
- key: silent_owner_cut_reopen
|
|
23
|
+
meaning: do_not_reopen_owner_domain_truth_inside_a_downstream_execution_wave
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
truth_contract:
|
|
3
|
+
id: canonical_high_risk_admissions_truth
|
|
4
|
+
top_level_required_keys:
|
|
5
|
+
- admissions
|
|
6
|
+
- admission_rules
|
|
7
|
+
- semantic_constraints
|
|
8
|
+
admission_required_fields:
|
|
9
|
+
- topic_id
|
|
10
|
+
- packet_id
|
|
11
|
+
- disposition
|
|
12
|
+
- admitted_at
|
|
13
|
+
- manager_review_owner
|
|
14
|
+
- summary
|
|
15
|
+
- source_decision_contract
|
|
16
|
+
disposition_enum:
|
|
17
|
+
- complete
|
|
18
|
+
- partial
|
|
19
|
+
- deferred
|
|
20
|
+
semantic_constraints:
|
|
21
|
+
- canonical_admission_records_must_not_promote_operational_runtime_state
|
|
22
|
+
- canonical_admission_records_must_use_one_record_per_topic_id
|
|
23
|
+
- canonical_admission_records_must_use_iso_8601_utc_admitted_at
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
version: 1
|
|
2
|
+
result_contract:
|
|
3
|
+
id: delegated_high_risk_execution_result
|
|
4
|
+
summary_required_fields:
|
|
5
|
+
- packet_ref
|
|
6
|
+
- orchestration_state_ref
|
|
7
|
+
- prompt_ref
|
|
8
|
+
- worker_output_ref
|
|
9
|
+
- evidence_refs
|
|
10
|
+
- status
|
|
11
|
+
- summary
|
|
12
|
+
- verified_at
|
|
13
|
+
summary_status_enum:
|
|
14
|
+
- candidate_ready
|
|
15
|
+
- blocked
|
|
16
|
+
- failed
|
|
17
|
+
locality: local_only
|
|
18
|
+
semantic_constraints:
|
|
19
|
+
- do_not_promote_high_risk_execution_summary_to_project_truth
|
|
20
|
+
- do_not_treat_external_execution_summary_as_acceptance_or_disposition
|