@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.
Files changed (186) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +348 -0
  3. package/adapters/README.md +25 -0
  4. package/adapters/claude/README.md +89 -0
  5. package/adapters/claude/profile.yaml +70 -0
  6. package/adapters/codex/README.md +53 -0
  7. package/adapters/codex/profile.yaml +78 -0
  8. package/adapters/oh-my-codex/README.md +185 -0
  9. package/adapters/oh-my-codex/profile.yaml +46 -0
  10. package/bin/nimicoding.mjs +6 -0
  11. package/cli/commands/admit-high-risk-decision.mjs +108 -0
  12. package/cli/commands/audit-sweep.mjs +341 -0
  13. package/cli/commands/blueprint-audit.mjs +91 -0
  14. package/cli/commands/clear.mjs +168 -0
  15. package/cli/commands/closeout.mjs +183 -0
  16. package/cli/commands/decide-high-risk-execution.mjs +124 -0
  17. package/cli/commands/doctor.mjs +53 -0
  18. package/cli/commands/generate-spec-derived-docs.mjs +131 -0
  19. package/cli/commands/handoff.mjs +123 -0
  20. package/cli/commands/ingest-high-risk-execution.mjs +95 -0
  21. package/cli/commands/review-high-risk-execution.mjs +95 -0
  22. package/cli/commands/start.mjs +717 -0
  23. package/cli/commands/topic-formatters.mjs +382 -0
  24. package/cli/commands/topic-goal.mjs +33 -0
  25. package/cli/commands/topic-options-shared.mjs +27 -0
  26. package/cli/commands/topic-options-workflow.mjs +767 -0
  27. package/cli/commands/topic-options.mjs +626 -0
  28. package/cli/commands/topic-runner.mjs +169 -0
  29. package/cli/commands/topic.mjs +795 -0
  30. package/cli/commands/validate-acceptance.mjs +5 -0
  31. package/cli/commands/validate-ai-governance.mjs +214 -0
  32. package/cli/commands/validate-execution-packet.mjs +5 -0
  33. package/cli/commands/validate-orchestration-state.mjs +5 -0
  34. package/cli/commands/validate-prompt.mjs +5 -0
  35. package/cli/commands/validate-spec-audit.mjs +27 -0
  36. package/cli/commands/validate-spec-governance.mjs +124 -0
  37. package/cli/commands/validate-spec-tree.mjs +27 -0
  38. package/cli/commands/validate-worker-output.mjs +5 -0
  39. package/cli/constants.mjs +489 -0
  40. package/cli/help.mjs +134 -0
  41. package/cli/index.mjs +103 -0
  42. package/cli/lib/adapter-profiles.mjs +403 -0
  43. package/cli/lib/audit-execution.mjs +52 -0
  44. package/cli/lib/audit-sweep-runtime/admissions.mjs +381 -0
  45. package/cli/lib/audit-sweep-runtime/audit-validity.mjs +333 -0
  46. package/cli/lib/audit-sweep-runtime/chunks.mjs +697 -0
  47. package/cli/lib/audit-sweep-runtime/closeout.mjs +144 -0
  48. package/cli/lib/audit-sweep-runtime/codex-auditor-evidence.mjs +639 -0
  49. package/cli/lib/audit-sweep-runtime/codex-auditor.mjs +515 -0
  50. package/cli/lib/audit-sweep-runtime/common.mjs +329 -0
  51. package/cli/lib/audit-sweep-runtime/coverage-quality.mjs +172 -0
  52. package/cli/lib/audit-sweep-runtime/evidence-assignment.mjs +152 -0
  53. package/cli/lib/audit-sweep-runtime/format.mjs +57 -0
  54. package/cli/lib/audit-sweep-runtime/ingest.mjs +486 -0
  55. package/cli/lib/audit-sweep-runtime/inventory-spec-chunks.mjs +198 -0
  56. package/cli/lib/audit-sweep-runtime/inventory.mjs +728 -0
  57. package/cli/lib/audit-sweep-runtime/ledger.mjs +315 -0
  58. package/cli/lib/audit-sweep-runtime/p0p1-profile.mjs +101 -0
  59. package/cli/lib/audit-sweep-runtime/remediation.mjs +349 -0
  60. package/cli/lib/audit-sweep-runtime/rerun.mjs +129 -0
  61. package/cli/lib/audit-sweep-runtime/risk-budget.mjs +300 -0
  62. package/cli/lib/audit-sweep-runtime/status.mjs +62 -0
  63. package/cli/lib/audit-sweep-runtime/validators-ledger.mjs +215 -0
  64. package/cli/lib/audit-sweep-runtime/validators.mjs +758 -0
  65. package/cli/lib/audit-sweep.mjs +18 -0
  66. package/cli/lib/authority-convergence.mjs +309 -0
  67. package/cli/lib/blueprint-audit.mjs +370 -0
  68. package/cli/lib/bootstrap.mjs +228 -0
  69. package/cli/lib/closeout.mjs +623 -0
  70. package/cli/lib/codex-sdk-runner.mjs +76 -0
  71. package/cli/lib/contracts.mjs +180 -0
  72. package/cli/lib/doctor.mjs +18 -0
  73. package/cli/lib/entrypoints.mjs +274 -0
  74. package/cli/lib/external-execution.mjs +101 -0
  75. package/cli/lib/fs-helpers.mjs +33 -0
  76. package/cli/lib/handoff.mjs +785 -0
  77. package/cli/lib/high-risk-admission.mjs +442 -0
  78. package/cli/lib/high-risk-decision.mjs +324 -0
  79. package/cli/lib/high-risk-ingest.mjs +317 -0
  80. package/cli/lib/high-risk-review.mjs +263 -0
  81. package/cli/lib/internal/contracts-loaders.mjs +132 -0
  82. package/cli/lib/internal/contracts-parse-high-risk.mjs +131 -0
  83. package/cli/lib/internal/contracts-parse.mjs +457 -0
  84. package/cli/lib/internal/contracts-validators.mjs +398 -0
  85. package/cli/lib/internal/doctor-bootstrap-surface.mjs +359 -0
  86. package/cli/lib/internal/doctor-delegated-surface.mjs +256 -0
  87. package/cli/lib/internal/doctor-finalize.mjs +385 -0
  88. package/cli/lib/internal/doctor-format.mjs +286 -0
  89. package/cli/lib/internal/doctor-inspectors.mjs +294 -0
  90. package/cli/lib/internal/doctor-state.mjs +205 -0
  91. package/cli/lib/internal/governance/ai/ai-context-budget-core.mjs +315 -0
  92. package/cli/lib/internal/governance/ai/ai-structure-budget-core.mjs +358 -0
  93. package/cli/lib/internal/governance/ai/check-agents-freshness.mjs +155 -0
  94. package/cli/lib/internal/governance/ai/check-high-risk-doc-metadata-core.mjs +173 -0
  95. package/cli/lib/internal/governance/config.mjs +150 -0
  96. package/cli/lib/internal/governance/runner.mjs +35 -0
  97. package/cli/lib/internal/governance/shared/read-yaml-with-fragments.mjs +49 -0
  98. package/cli/lib/internal/validators-artifacts.mjs +515 -0
  99. package/cli/lib/internal/validators-shared.mjs +28 -0
  100. package/cli/lib/internal/validators-spec-helpers.mjs +186 -0
  101. package/cli/lib/internal/validators-spec.mjs +410 -0
  102. package/cli/lib/shared.mjs +83 -0
  103. package/cli/lib/topic-draft-packets.mjs +48 -0
  104. package/cli/lib/topic-goal.mjs +361 -0
  105. package/cli/lib/topic-runner.mjs +772 -0
  106. package/cli/lib/topic.mjs +93 -0
  107. package/cli/lib/ui.mjs +178 -0
  108. package/cli/lib/validators.mjs +78 -0
  109. package/cli/lib/value-helpers.mjs +24 -0
  110. package/cli/lib/yaml-helpers.mjs +133 -0
  111. package/cli/nimicoding.mjs +1 -0
  112. package/cli/seeds/bootstrap.mjs +47 -0
  113. package/config/audit-execution-artifacts.yaml +20 -0
  114. package/config/bootstrap.yaml +6 -0
  115. package/config/external-execution-artifacts.yaml +16 -0
  116. package/config/host-adapter.yaml +30 -0
  117. package/config/host-profile.yaml +29 -0
  118. package/config/installer-evidence.yaml +31 -0
  119. package/config/skill-installer.yaml +23 -0
  120. package/config/skill-manifest.yaml +46 -0
  121. package/config/skills.yaml +30 -0
  122. package/config/spec-generation-inputs.yaml +25 -0
  123. package/contracts/acceptance.schema.yaml +16 -0
  124. package/contracts/admission-checklist.schema.yaml +15 -0
  125. package/contracts/audit-chunk.schema.yaml +110 -0
  126. package/contracts/audit-closeout.schema.yaml +51 -0
  127. package/contracts/audit-finding.schema.yaml +61 -0
  128. package/contracts/audit-ledger.schema.yaml +138 -0
  129. package/contracts/audit-plan.schema.yaml +123 -0
  130. package/contracts/audit-remediation-map.schema.yaml +51 -0
  131. package/contracts/audit-rerun.schema.yaml +31 -0
  132. package/contracts/audit-sweep-result.yaml +49 -0
  133. package/contracts/authority-convergence-audit.schema.yaml +19 -0
  134. package/contracts/closeout.schema.yaml +25 -0
  135. package/contracts/decision-review.schema.yaml +16 -0
  136. package/contracts/doc-spec-audit-result.yaml +19 -0
  137. package/contracts/execution-packet.schema.yaml +49 -0
  138. package/contracts/external-host-compatibility.yaml +22 -0
  139. package/contracts/forbidden-shortcuts.catalog.yaml +23 -0
  140. package/contracts/high-risk-admission.schema.yaml +23 -0
  141. package/contracts/high-risk-execution-result.yaml +20 -0
  142. package/contracts/orchestration-state.schema.yaml +41 -0
  143. package/contracts/overflow-continuation.schema.yaml +12 -0
  144. package/contracts/packet.schema.yaml +30 -0
  145. package/contracts/pending-note.schema.yaml +17 -0
  146. package/contracts/prompt.schema.yaml +12 -0
  147. package/contracts/remediation.schema.yaml +16 -0
  148. package/contracts/result.schema.yaml +24 -0
  149. package/contracts/spec-generation-audit.schema.yaml +31 -0
  150. package/contracts/spec-generation-inputs.schema.yaml +39 -0
  151. package/contracts/spec-reconstruction-result.yaml +37 -0
  152. package/contracts/topic-goal.schema.yaml +78 -0
  153. package/contracts/topic-run-ledger.schema.yaml +72 -0
  154. package/contracts/topic-step-decision.schema.yaml +45 -0
  155. package/contracts/topic.schema.yaml +65 -0
  156. package/contracts/true-close.schema.yaml +15 -0
  157. package/contracts/wave.schema.yaml +29 -0
  158. package/contracts/worker-output.schema.yaml +15 -0
  159. package/methodology/audit-sweep-p0p1-recall.yaml +45 -0
  160. package/methodology/authority-convergence-policy.yaml +42 -0
  161. package/methodology/core.yaml +25 -0
  162. package/methodology/four-closure-policy.yaml +28 -0
  163. package/methodology/overflow-continuation-policy.yaml +14 -0
  164. package/methodology/role-separation-policy.yaml +28 -0
  165. package/methodology/skill-exchange-projection.yaml +114 -0
  166. package/methodology/skill-handoff.yaml +34 -0
  167. package/methodology/skill-installer-result.yaml +27 -0
  168. package/methodology/skill-installer-summary-projection.yaml +181 -0
  169. package/methodology/skill-runtime.yaml +23 -0
  170. package/methodology/spec-reconstruction.yaml +63 -0
  171. package/methodology/spec-target-truth-profile.yaml +53 -0
  172. package/methodology/topic-lifecycle-report.yaml +144 -0
  173. package/methodology/topic-lifecycle.yaml +37 -0
  174. package/methodology/topic-naming-ontology.yaml +21 -0
  175. package/methodology/topic-ontology.yaml +38 -0
  176. package/methodology/topic-validation-policy.yaml +9 -0
  177. package/methodology/wave-dag-policy.yaml +14 -0
  178. package/package.json +50 -0
  179. package/spec/_meta/command-gating-matrix.yaml +110 -0
  180. package/spec/_meta/generate-drift-migration-checklist.yaml +155 -0
  181. package/spec/_meta/governance-routing-cutover-checklist.yaml +35 -0
  182. package/spec/_meta/phase2-impacted-surface-matrix.yaml +44 -0
  183. package/spec/_meta/spec-authority-cutover-readiness.yaml +104 -0
  184. package/spec/_meta/spec-tree-model.yaml +72 -0
  185. package/spec/bootstrap-state.yaml +99 -0
  186. package/spec/product-scope.yaml +56 -0
@@ -0,0 +1,144 @@
1
+ version: 2
2
+ topic_lifecycle_report:
3
+ canonical_root: .nimi/topics
4
+ lifecycle_roots:
5
+ - proposal
6
+ - ongoing
7
+ - pending
8
+ - closed
9
+ topic_id_pattern: YYYY-MM-DD-topic-slug
10
+ topic_folder_shape: .nimi/topics/<state>/YYYY-MM-DD-topic-slug/
11
+ recommended_files:
12
+ - README.md
13
+ - design.md
14
+ - preflight.md
15
+ - waves.md
16
+ - packet-*.md
17
+ - closeout.md
18
+ state_evidence:
19
+ file: topic.yaml
20
+ required_fields:
21
+ - topic_id
22
+ - state
23
+ - created_at
24
+ - last_transition_at
25
+ - last_transition_reason
26
+ canonical_constraints:
27
+ human_authored_topic_reports_must_use_canonical_root: true
28
+ flat_topic_root_markdown_is_forbidden: true
29
+ legacy_local_report_root_allowed_for_human_topics: false
30
+ legacy_local_execution_workspace_is_primary: false
31
+ applicability_boundary:
32
+ default_posture: authority_bearing_or_high_risk_only
33
+ small_low_risk_changes_need_topic: false
34
+ recommended_only_when:
35
+ - authority_bearing
36
+ - high_risk_refactor
37
+ - multi_wave_iteration
38
+ - complex_remediation
39
+ movement_rules:
40
+ allowed:
41
+ - proposal_to_ongoing
42
+ - ongoing_to_pending
43
+ - pending_to_ongoing
44
+ - pending_to_closed
45
+ - ongoing_to_closed
46
+ - proposal_to_closed
47
+ - closed_to_ongoing
48
+ - ongoing_to_proposal
49
+ forbid_parallel_topic_copies: true
50
+ development_rhythm:
51
+ topic_role:
52
+ primary_unit: major_iteration_line
53
+ purpose:
54
+ - hold_one_canonical_planning_and_execution_home_for_a_large_line_of_work
55
+ - define_mainline_goal_stop_lines_and_deferred_scope_without_becoming_a_micro_backlog
56
+ must_not:
57
+ - scatter_one_iteration_line_across_parallel_sibling_topics
58
+ - turn_each_small_request_into_a_new_topic_by_default
59
+ - stay_in_indefinite_planning_without_wave_admission_or_pause
60
+ - normalize_topic_as_the_default_entrypoint_for_small_low_risk_work
61
+ wave_role:
62
+ primary_unit: bounded_execution_slice
63
+ required_properties:
64
+ - one_wave_owns_one_primary_closure_goal
65
+ - each_wave_names_explicit_scope_stop_line_checks_and_out_of_scope_follow_ons
66
+ - parallelism_is_allowed_only_inside_a_wave_after_its_contract_or_api_is_stable
67
+ preferred_closure_shapes:
68
+ - authority_cut
69
+ - implementation_packet
70
+ - bounded_reaudit
71
+ - explicit_pause_or_defer_note
72
+ pre_implementation_authority_convergence:
73
+ policy_ref: .nimi/methodology/authority-convergence-policy.yaml
74
+ audit_contract_ref: .nimi/contracts/authority-convergence-audit.schema.yaml
75
+ applies_before: implementation_dispatch
76
+ required_when:
77
+ - authority_or_spec_packet_is_selected
78
+ - selected_packet_refs_.nimi/spec_authority
79
+ - topic_declares_redesign_work_type
80
+ pass_condition: recorded_audit_result_PASS
81
+ fail_condition: NEEDS_REVISION_or_FAIL_returns_wave_to_revision
82
+ execution_projection_owner: host_adapter_profile
83
+ admission_rules:
84
+ proposal_stage:
85
+ allowed:
86
+ - baseline_design
87
+ - topic_audit
88
+ - candidate_wave_plan
89
+ forbidden:
90
+ - implementation_tracking
91
+ - admitted_wave_execution
92
+ - pseudo_phase_graph_across_sibling_topics
93
+ ongoing_entry_requires:
94
+ - exactly_one_selected_next_execution_target
95
+ - topic_local_preflight
96
+ - bounded_stop_line
97
+ - explicit_consumed_contexts_or_inputs
98
+ - expected_closeout_checks_or_evidence
99
+ - explicit_forbidden_reopenings
100
+ pending_stage:
101
+ allowed:
102
+ - usage_or_rollout_observation
103
+ - external_dependency_wait
104
+ - explicit_pause_note_with_reopen_or_close_criteria
105
+ forbidden:
106
+ - active_implementation_tracking
107
+ - silent_indefinite_dormancy_without_reopen_or_close_criteria
108
+ pending_entry_requires:
109
+ - no_active_implementation_wave
110
+ - explicit_pending_note_or_equivalent_status_record
111
+ - explicit_reopen_criteria_or_close_trigger
112
+ - bounded_reason_why_topic_is_not_yet_closed
113
+ preflight_contract:
114
+ required_fields:
115
+ - spec_status
116
+ - authority_owner
117
+ - work_type
118
+ - parallel_truth
119
+ - selected_wave
120
+ - consumed_inputs_or_contexts
121
+ - fixed_authority_surfaces
122
+ - stop_line
123
+ - closeout_checks
124
+ - forbidden_reopenings
125
+ guarantees:
126
+ - the_wave_is_admitted_because_a_real_target_is_selected_not_because_planning_continues
127
+ - local_topic_artifacts_do_not_silently_promote_parallel_truth
128
+ wave_limits:
129
+ planning_only:
130
+ maximum_consecutive_waves: 1
131
+ rationale: planning_may_harden_one_execution_target_but_must_not_become_an_endless_self_extension_loop
132
+ follow_on_rule:
133
+ - if_no_authority_cut_implementation_packet_or_explicit_pause_is_reached_after_a_planning_wave_the_topic_should_pause_or_re-preflight_instead_of_opening_unbounded_new_planning_waves
134
+ closeout_layers:
135
+ context_closure: a_context_has_reached_a_stable_planning_stop_line
136
+ wave_closeout: one_admitted_wave_reached_its_stop_line_with_bounded_evidence
137
+ pending_hold: a_topic_is_waiting_without_active_development_but_retains_explicit_reopen_or_close_criteria
138
+ topic_closeout: the_topic_is_no_longer_the_active_workstream
139
+ must_remain_distinct: true
140
+ anti_patterns:
141
+ - local_requirement_trap_where_small_requests_replace_the_mainline_goal
142
+ - giant_topic_planning_that_never_commits_to_a_bounded_wave
143
+ - pseudo_progress_where_new_wave_names_exist_without_new_closure
144
+ - reopening_deferred_scope_without_new_preflight
@@ -0,0 +1,37 @@
1
+ version: 1
2
+ topic_lifecycle:
3
+ physical_roots:
4
+ - proposal
5
+ - ongoing
6
+ - pending
7
+ - closed
8
+ fine_grained_states:
9
+ - design_only
10
+ - implementation_ready
11
+ - implementation_active
12
+ - true_close_pending
13
+ - true_closed
14
+ - revoked
15
+ - superseded
16
+ transition_rules:
17
+ - proposal_to_ongoing
18
+ - ongoing_to_pending
19
+ - pending_to_ongoing
20
+ - ongoing_to_closed
21
+ - pending_to_closed
22
+ - closed_to_ongoing_requires_explicit_reopen
23
+ wave_states:
24
+ - candidate
25
+ - preflight_draft
26
+ - preflight_admitted
27
+ - implementation_admitted
28
+ - implementation_active
29
+ - needs_revision
30
+ - overflowed
31
+ - continuation_packet_open
32
+ - closed
33
+ - retired
34
+ - superseded
35
+ true_close_rules:
36
+ - passed_true_close_may_be_revoked_by_later_independent_audit
37
+ - revoked_true_close_requires_follow_up_lineage
@@ -0,0 +1,21 @@
1
+ version: 1
2
+ topic_naming_ontology:
3
+ topic_id_pattern: YYYY-MM-DD-topic-slug
4
+ wave_packet_patterns:
5
+ - packet-wave-<id>-<slug>-preflight.md
6
+ - packet-wave-<id>-<slug>-implementation.md
7
+ - packet-wave-<id>-exec-pack-<id>-<slug>.md
8
+ result_patterns:
9
+ - result-wave-<id>-<slug>-preflight.md
10
+ - result-wave-<id>-<slug>-implementation-admission.md
11
+ - result-wave-<id>-<slug>-implementation.md
12
+ - result-wave-<id>-<slug>-implementation-audit.md
13
+ special_patterns:
14
+ - decision-review-<slug>.md
15
+ - topic-true-close-audit.md
16
+ - closeout-topic-true-close.md
17
+ remediation_kind_enum:
18
+ - a
19
+ - b
20
+ - continuation
21
+ - execution_state_closure
@@ -0,0 +1,38 @@
1
+ version: 1
2
+ topic_ontology:
3
+ primary_entities:
4
+ - topic
5
+ - wave
6
+ - packet
7
+ - result
8
+ - closeout
9
+ extended_entities:
10
+ - exec_pack
11
+ - remediation
12
+ - decision_review
13
+ - overflow_continuation
14
+ - true_close
15
+ root_artifacts:
16
+ - topic.yaml
17
+ - README.md
18
+ - design.md
19
+ governance_companions:
20
+ - preflight.md
21
+ - waves.md
22
+ - candidate-wave-plan.md
23
+ - implementation-doctrine.md
24
+ - admission-checklists.md
25
+ - manager-session-protocol.md
26
+ - manager-prompts.md
27
+ contract_refs:
28
+ topic: .nimi/contracts/topic.schema.yaml
29
+ wave: .nimi/contracts/wave.schema.yaml
30
+ packet: .nimi/contracts/packet.schema.yaml
31
+ result: .nimi/contracts/result.schema.yaml
32
+ closeout: .nimi/contracts/closeout.schema.yaml
33
+ admission_checklist: .nimi/contracts/admission-checklist.schema.yaml
34
+ remediation: .nimi/contracts/remediation.schema.yaml
35
+ decision_review: .nimi/contracts/decision-review.schema.yaml
36
+ overflow_continuation: .nimi/contracts/overflow-continuation.schema.yaml
37
+ true_close: .nimi/contracts/true-close.schema.yaml
38
+ forbidden_shortcuts_catalog: .nimi/contracts/forbidden-shortcuts.catalog.yaml
@@ -0,0 +1,9 @@
1
+ version: 1
2
+ topic_validation_policy:
3
+ ignored_topic_validate_semantics:
4
+ status: report_only
5
+ canonical_success: false
6
+ ignore_for_default_validate:
7
+ - topic_id: 2026-04-20-desktop-agent-live2d-companion-substrate
8
+ reason: historical_dense_topic_pre_machine_wave_registry
9
+ posture: report_only_until_hard_cut_migration
@@ -0,0 +1,14 @@
1
+ version: 1
2
+ wave_dag_policy:
3
+ principles:
4
+ - upstream_owner_cut_before_downstream_consumer_fan_out
5
+ - admitted_preflight_requires_real_dependency_readiness
6
+ - retired_or_superseded_waves_must_not_remain_dispatchable
7
+ parallelization:
8
+ allowed_only_when:
9
+ - owner_domain_is_already_stable
10
+ - write_sets_do_not_conflict
11
+ - manager_explicitly_allows_parallelism
12
+ forbidden_when:
13
+ - canonical_truth_is_still_being_defined
14
+ - downstream_wave_would_infer_upstream_shape
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "@nimiplatform/nimi-coding",
3
+ "version": "0.1.0",
4
+ "private": false,
5
+ "description": "AI-native coding governance toolkit for bootstrapping .nimi/** into arbitrary projects.",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/nimiplatform/nimi"
10
+ },
11
+ "type": "module",
12
+ "publishConfig": {
13
+ "access": "public",
14
+ "provenance": true
15
+ },
16
+ "bin": {
17
+ "nimicoding": "./bin/nimicoding.mjs"
18
+ },
19
+ "engines": {
20
+ "node": ">=24.0.0",
21
+ "pnpm": ">=10.0.0"
22
+ },
23
+ "keywords": [
24
+ "ai",
25
+ "coding",
26
+ "governance",
27
+ "methodology",
28
+ "spec",
29
+ "nimicoding"
30
+ ],
31
+ "dependencies": {
32
+ "@openai/codex-sdk": "^0.124.0",
33
+ "yaml": "^2.8.1"
34
+ },
35
+ "files": [
36
+ "bin",
37
+ "cli",
38
+ "adapters",
39
+ "config",
40
+ "contracts",
41
+ "methodology",
42
+ "spec",
43
+ "README.md",
44
+ "LICENSE"
45
+ ],
46
+ "scripts": {
47
+ "test": "node --test",
48
+ "check:pack": "npm pack --dry-run"
49
+ }
50
+ }
@@ -0,0 +1,110 @@
1
+ version: 1
2
+ command_gating_matrix:
3
+ - command: start
4
+ allowed_tree_states:
5
+ - bootstrap_only
6
+ - spec_tree_seeded
7
+ - canonical_tree_in_progress
8
+ - canonical_tree_ready
9
+ allowed_authority_modes:
10
+ - external_authority_active
11
+ - canonical_cutover_ready
12
+ - canonical_active
13
+ notes:
14
+ - seeds_or_continues_canonical_tree_work
15
+ - must_not_infer_completion_from_compact_target_files
16
+ - command: doctor
17
+ allowed_tree_states:
18
+ - bootstrap_only
19
+ - spec_tree_seeded
20
+ - canonical_tree_in_progress
21
+ - canonical_tree_ready
22
+ allowed_authority_modes:
23
+ - external_authority_active
24
+ - canonical_cutover_ready
25
+ - canonical_active
26
+ reports:
27
+ - tree_state
28
+ - authority_mode
29
+ - blueprint_mode
30
+ - file_class_validity
31
+ - pipeline_readiness
32
+ - command: handoff
33
+ skill: spec_reconstruction
34
+ allowed_tree_states:
35
+ - bootstrap_only
36
+ - spec_tree_seeded
37
+ - canonical_tree_in_progress
38
+ allowed_authority_modes:
39
+ - external_authority_active
40
+ - canonical_cutover_ready
41
+ - canonical_active
42
+ - command: handoff
43
+ skill: doc_spec_audit
44
+ allowed_tree_states:
45
+ - canonical_tree_in_progress
46
+ - canonical_tree_ready
47
+ allowed_authority_modes:
48
+ - external_authority_active
49
+ - canonical_cutover_ready
50
+ - canonical_active
51
+ - command: handoff
52
+ skill: audit_sweep
53
+ allowed_tree_states:
54
+ - canonical_tree_ready
55
+ allowed_authority_modes:
56
+ - external_authority_active
57
+ - canonical_cutover_ready
58
+ - canonical_active
59
+ - command: handoff
60
+ skill: high_risk_execution
61
+ allowed_tree_states:
62
+ - canonical_tree_ready
63
+ allowed_authority_modes:
64
+ - external_authority_active
65
+ - canonical_cutover_ready
66
+ - canonical_active
67
+ - command: closeout
68
+ skill: spec_reconstruction
69
+ completed_requires:
70
+ tree_state: canonical_tree_ready
71
+ canonical_required_files_valid: true
72
+ spec_generation_audit_valid: true
73
+ - command: closeout
74
+ skill: doc_spec_audit
75
+ completed_requires:
76
+ tree_state: canonical_tree_ready
77
+ audit_references_canonical_root: true
78
+ - command: closeout
79
+ skill: audit_sweep
80
+ completed_requires:
81
+ tree_state: canonical_tree_ready
82
+ canonical_required_files_valid: true
83
+ spec_generation_audit_valid: true
84
+ - command: closeout
85
+ skill: high_risk_execution
86
+ completed_requires:
87
+ tree_state: canonical_tree_ready
88
+ canonical_required_files_valid: true
89
+ high_risk_admissions_truth_ref: .nimi/spec/high-risk-admissions.yaml
90
+ - command: ingest-high-risk-execution
91
+ requires:
92
+ tree_state: canonical_tree_ready
93
+ authority_mode:
94
+ - external_authority_active
95
+ - canonical_cutover_ready
96
+ - canonical_active
97
+ - command: review-high-risk-execution
98
+ requires:
99
+ tree_state: canonical_tree_ready
100
+ - command: decide-high-risk-execution
101
+ requires:
102
+ tree_state: canonical_tree_ready
103
+ - command: admit-high-risk-decision
104
+ requires:
105
+ tree_state: canonical_tree_ready
106
+ canonical_admissions_truth: .nimi/spec/high-risk-admissions.yaml
107
+ allowed_authority_modes:
108
+ - external_authority_active
109
+ - canonical_cutover_ready
110
+ - canonical_active
@@ -0,0 +1,155 @@
1
+ version: 1
2
+ generate_drift_migration_checklist:
3
+ posture: subordinate_evidence_table_for_drift_pipeline_gate
4
+ decision_authority_ref: .nimi/spec/_meta/spec-authority-cutover-readiness.yaml
5
+ entries:
6
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope runtime
7
+ current_canonical_input_root: spec/runtime/kernel
8
+ current_generated_output_root: spec/runtime/kernel/generated
9
+ post_cutover_canonical_input_root: .nimi/spec/runtime/kernel
10
+ post_cutover_generated_output_root: .nimi/spec/runtime/kernel/generated
11
+ update_phase: phase_3_preparation
12
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope cognition
13
+ current_canonical_input_root: spec/cognition/kernel
14
+ current_generated_output_root: spec/cognition/kernel/generated
15
+ post_cutover_canonical_input_root: .nimi/spec/cognition/kernel
16
+ post_cutover_generated_output_root: .nimi/spec/cognition/kernel/generated
17
+ update_phase: phase_3_preparation
18
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope sdk
19
+ current_canonical_input_root: spec/sdk/kernel
20
+ current_generated_output_root: spec/sdk/kernel/generated
21
+ post_cutover_canonical_input_root: .nimi/spec/sdk/kernel
22
+ post_cutover_generated_output_root: .nimi/spec/sdk/kernel/generated
23
+ update_phase: phase_3_preparation
24
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope desktop
25
+ current_canonical_input_root: spec/desktop/kernel
26
+ current_generated_output_root: spec/desktop/kernel/generated
27
+ post_cutover_canonical_input_root: .nimi/spec/desktop/kernel
28
+ post_cutover_generated_output_root: .nimi/spec/desktop/kernel/generated
29
+ update_phase: phase_3_preparation
30
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope future
31
+ current_canonical_input_root: spec/future/kernel
32
+ current_generated_output_root: spec/future/kernel/generated
33
+ post_cutover_canonical_input_root: .nimi/spec/future/kernel
34
+ post_cutover_generated_output_root: .nimi/spec/future/kernel/generated
35
+ update_phase: phase_3_preparation
36
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope platform
37
+ current_canonical_input_root: spec/platform/kernel
38
+ current_generated_output_root: spec/platform/kernel/generated
39
+ post_cutover_canonical_input_root: .nimi/spec/platform/kernel
40
+ post_cutover_generated_output_root: .nimi/spec/platform/kernel/generated
41
+ update_phase: phase_3_preparation
42
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope realm
43
+ current_canonical_input_root: spec/realm/kernel
44
+ current_generated_output_root: spec/realm/kernel/generated
45
+ post_cutover_canonical_input_root: .nimi/spec/realm/kernel
46
+ post_cutover_generated_output_root: .nimi/spec/realm/kernel/generated
47
+ update_phase: phase_3_preparation
48
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope spec-human-doc
49
+ current_canonical_input_root: spec
50
+ current_generated_output_root: spec/generated/nimi-spec.md
51
+ post_cutover_canonical_input_root: .nimi/spec
52
+ post_cutover_generated_output_root: spec/generated/nimi-spec.md
53
+ update_phase: phase_5_flip
54
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope spec-human-doc --check
55
+ current_canonical_input_root: spec
56
+ current_generated_output_root: spec/generated/nimi-spec.md
57
+ post_cutover_canonical_input_root: .nimi/spec
58
+ post_cutover_generated_output_root: spec/generated/nimi-spec.md
59
+ update_phase: phase_5_flip
60
+ - command: pnpm check:spec-semantic-completeness
61
+ current_canonical_input_root: spec
62
+ current_generated_output_root: none
63
+ post_cutover_canonical_input_root: .nimi/spec
64
+ post_cutover_generated_output_root: none
65
+ update_phase: phase_5_flip
66
+ - command: pnpm check:runtime-proto-spec-linkage
67
+ current_canonical_input_root: spec/runtime/kernel
68
+ current_generated_output_root: none
69
+ post_cutover_canonical_input_root: .nimi/spec/runtime/kernel
70
+ post_cutover_generated_output_root: none
71
+ update_phase: phase_5_flip
72
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope runtime --check
73
+ current_canonical_input_root: spec/runtime/kernel
74
+ current_generated_output_root: spec/runtime/kernel/generated
75
+ post_cutover_canonical_input_root: .nimi/spec/runtime/kernel
76
+ post_cutover_generated_output_root: .nimi/spec/runtime/kernel/generated
77
+ update_phase: phase_3_preparation
78
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope cognition --check
79
+ current_canonical_input_root: spec/cognition/kernel
80
+ current_generated_output_root: spec/cognition/kernel/generated
81
+ post_cutover_canonical_input_root: .nimi/spec/cognition/kernel
82
+ post_cutover_generated_output_root: .nimi/spec/cognition/kernel/generated
83
+ update_phase: phase_3_preparation
84
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope sdk --check
85
+ current_canonical_input_root: spec/sdk/kernel
86
+ current_generated_output_root: spec/sdk/kernel/generated
87
+ post_cutover_canonical_input_root: .nimi/spec/sdk/kernel
88
+ post_cutover_generated_output_root: .nimi/spec/sdk/kernel/generated
89
+ update_phase: phase_3_preparation
90
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope desktop --check
91
+ current_canonical_input_root: spec/desktop/kernel
92
+ current_generated_output_root: spec/desktop/kernel/generated
93
+ post_cutover_canonical_input_root: .nimi/spec/desktop/kernel
94
+ post_cutover_generated_output_root: .nimi/spec/desktop/kernel/generated
95
+ update_phase: phase_3_preparation
96
+ - command: pnpm exec nimicoding validate-spec-governance --profile nimi --scope desktop-consistency
97
+ current_canonical_input_root: spec/desktop/kernel
98
+ current_generated_output_root: none
99
+ post_cutover_canonical_input_root: .nimi/spec/desktop/kernel
100
+ post_cutover_generated_output_root: none
101
+ update_phase: phase_5_flip
102
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope future --check
103
+ current_canonical_input_root: spec/future/kernel
104
+ current_generated_output_root: spec/future/kernel/generated
105
+ post_cutover_canonical_input_root: .nimi/spec/future/kernel
106
+ post_cutover_generated_output_root: .nimi/spec/future/kernel/generated
107
+ update_phase: phase_3_preparation
108
+ - command: pnpm exec nimicoding validate-spec-governance --profile nimi --scope runtime-consistency
109
+ current_canonical_input_root: spec/runtime/kernel
110
+ current_generated_output_root: none
111
+ post_cutover_canonical_input_root: .nimi/spec/runtime/kernel
112
+ post_cutover_generated_output_root: none
113
+ update_phase: phase_5_flip
114
+ - command: pnpm exec nimicoding validate-spec-governance --profile nimi --scope cognition-consistency
115
+ current_canonical_input_root: spec/cognition/kernel
116
+ current_generated_output_root: none
117
+ post_cutover_canonical_input_root: .nimi/spec/cognition/kernel
118
+ post_cutover_generated_output_root: none
119
+ update_phase: phase_5_flip
120
+ - command: pnpm exec nimicoding validate-spec-governance --profile nimi --scope sdk-consistency
121
+ current_canonical_input_root: spec/sdk/kernel
122
+ current_generated_output_root: none
123
+ post_cutover_canonical_input_root: .nimi/spec/sdk/kernel
124
+ post_cutover_generated_output_root: none
125
+ update_phase: phase_5_flip
126
+ - command: pnpm exec nimicoding validate-spec-governance --profile nimi --scope future-consistency
127
+ current_canonical_input_root: spec/future/kernel
128
+ current_generated_output_root: none
129
+ post_cutover_canonical_input_root: .nimi/spec/future/kernel
130
+ post_cutover_generated_output_root: none
131
+ update_phase: phase_5_flip
132
+ - command: pnpm exec nimicoding validate-spec-governance --profile nimi --scope platform-consistency
133
+ current_canonical_input_root: spec/platform/kernel
134
+ current_generated_output_root: none
135
+ post_cutover_canonical_input_root: .nimi/spec/platform/kernel
136
+ post_cutover_generated_output_root: none
137
+ update_phase: phase_5_flip
138
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope platform --check
139
+ current_canonical_input_root: spec/platform/kernel
140
+ current_generated_output_root: spec/platform/kernel/generated
141
+ post_cutover_canonical_input_root: .nimi/spec/platform/kernel
142
+ post_cutover_generated_output_root: .nimi/spec/platform/kernel/generated
143
+ update_phase: phase_3_preparation
144
+ - command: pnpm exec nimicoding validate-spec-governance --profile nimi --scope realm-consistency
145
+ current_canonical_input_root: spec/realm/kernel
146
+ current_generated_output_root: none
147
+ post_cutover_canonical_input_root: .nimi/spec/realm/kernel
148
+ post_cutover_generated_output_root: none
149
+ update_phase: phase_5_flip
150
+ - command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope realm --check
151
+ current_canonical_input_root: spec/realm/kernel
152
+ current_generated_output_root: spec/realm/kernel/generated
153
+ post_cutover_canonical_input_root: .nimi/spec/realm/kernel
154
+ post_cutover_generated_output_root: .nimi/spec/realm/kernel/generated
155
+ update_phase: phase_3_preparation
@@ -0,0 +1,35 @@
1
+ version: 1
2
+ governance_routing_cutover_checklist:
3
+ posture: subordinate_evidence_table_for_governance_routing_gate
4
+ decision_authority_ref: .nimi/spec/_meta/spec-authority-cutover-readiness.yaml
5
+ entries:
6
+ - file: CLAUDE.md
7
+ current_active_authority: spec/**
8
+ current_generated_canonical_root: .nimi/spec/**
9
+ post_cutover_active_authority: .nimi/spec/**
10
+ update_phase: phase_5_flip
11
+ - file: AGENTS.md
12
+ current_active_authority: spec/**
13
+ current_generated_canonical_root: .nimi/spec/**
14
+ post_cutover_active_authority: .nimi/spec/**
15
+ update_phase: phase_5_flip
16
+ - file: spec/AGENTS.md
17
+ current_active_authority: spec/**
18
+ current_generated_canonical_root: .nimi/spec/**
19
+ post_cutover_active_authority: archived_or_derived_only
20
+ update_phase: phase_5_flip
21
+ - file: nimi-coding/README.md
22
+ current_active_authority: spec/**
23
+ current_generated_canonical_root: .nimi/spec/**
24
+ post_cutover_active_authority: canonical_spec_contract_docs
25
+ update_phase: phase_3_preparation
26
+ - file: nimi-coding/adapters/oh-my-codex/README.md
27
+ current_active_authority: spec/**
28
+ current_generated_canonical_root: .nimi/spec/**
29
+ post_cutover_active_authority: explicit_cutover_doc_required
30
+ update_phase: phase_3_preparation
31
+ - file: nimi-coding/cli/lib/entrypoints.mjs
32
+ current_active_authority: spec/**
33
+ current_generated_canonical_root: .nimi/spec/**
34
+ post_cutover_active_authority: managed_entrypoint_flip_requires_explicit_redesign_admission
35
+ update_phase: phase_3_preparation
@@ -0,0 +1,44 @@
1
+ version: 1
2
+ phase2_impacted_surface_matrix:
3
+ - surface: start_command
4
+ paths:
5
+ - nimi-coding/cli/commands/start.mjs
6
+ phase_dependency: phase_2
7
+ rewrite_reason: replace_compact_target_truth_gating_with_canonical_tree_gating
8
+ - surface: doctor_logic
9
+ paths:
10
+ - nimi-coding/cli/lib/doctor.mjs
11
+ - nimi-coding/cli/constants.mjs
12
+ phase_dependency: phase_2
13
+ rewrite_reason: replace_target_truth_completion_model_with_tree_state_and_authority_mode
14
+ - surface: handoff_logic
15
+ paths:
16
+ - nimi-coding/cli/lib/handoff.mjs
17
+ phase_dependency: phase_2
18
+ rewrite_reason: gate_skill_handoff_on_command_gating_matrix
19
+ - surface: closeout_logic
20
+ paths:
21
+ - nimi-coding/cli/lib/closeout.mjs
22
+ phase_dependency: phase_2
23
+ rewrite_reason: completed_outcomes_must_use_canonical_tree_readiness
24
+ - surface: high_risk_ingest_review_decision_admission
25
+ paths:
26
+ - nimi-coding/cli/lib/high-risk-ingest.mjs
27
+ - nimi-coding/cli/lib/high-risk-review.mjs
28
+ - nimi-coding/cli/lib/high-risk-decision.mjs
29
+ - nimi-coding/cli/lib/high-risk-admission.mjs
30
+ phase_dependency: phase_2
31
+ rewrite_reason: replace_legacy_target_truth_gates_with_tree_state_gates
32
+ - surface: contracts_and_methodology
33
+ paths:
34
+ - nimi-coding/contracts/spec-reconstruction-result.yaml
35
+ - nimi-coding/methodology/spec-reconstruction.yaml
36
+ - nimi-coding/methodology/spec-target-truth-profile.yaml
37
+ phase_dependency: historical_transition_note
38
+ rewrite_reason: repo_local_support_profile_no_longer_defines_default_reconstruction_completion
39
+ - surface: tests_and_fixtures
40
+ paths:
41
+ - nimi-coding/test/nimicoding.test.mjs
42
+ - nimi-coding/test/fixtures/validators/execution-packet.valid.yaml
43
+ phase_dependency: phase_2
44
+ rewrite_reason: legacy_helpers_and_assertions_assume_five_file_target_truth