@nimiplatform/nimi-coding 0.3.1 → 0.5.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 (115) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/CONTRIBUTING.md +3 -3
  3. package/README.md +297 -41
  4. package/README.zh-CN.md +306 -31
  5. package/bin/nimicoding.mjs +1 -1
  6. package/cli/commands/authority.mjs +804 -0
  7. package/cli/commands/clear.mjs +27 -7
  8. package/cli/commands/doctor.mjs +10 -1
  9. package/cli/commands/start.mjs +23 -27
  10. package/cli/commands/sync.mjs +21 -101
  11. package/cli/constants.mjs +7 -31
  12. package/cli/dev/check-authority-surface.mjs +182 -0
  13. package/cli/dev/check-product-conformance.mjs +889 -0
  14. package/cli/help.mjs +10 -17
  15. package/cli/index.mjs +6 -47
  16. package/cli/lib/authority/anchors.mjs +491 -0
  17. package/cli/lib/authority/audit.mjs +567 -0
  18. package/cli/lib/authority/change-candidates.mjs +807 -0
  19. package/cli/lib/authority/closed-sets.mjs +645 -0
  20. package/cli/lib/authority/compile.mjs +92 -0
  21. package/cli/lib/authority/compiled-snapshot.mjs +143 -0
  22. package/cli/lib/authority/consumers.mjs +520 -0
  23. package/cli/lib/authority/diagnostics.mjs +93 -0
  24. package/cli/lib/authority/diff.mjs +310 -0
  25. package/cli/lib/authority/discover.mjs +447 -0
  26. package/cli/lib/authority/format.mjs +169 -0
  27. package/cli/lib/authority/git-snapshot.mjs +720 -0
  28. package/cli/lib/authority/graph.mjs +351 -0
  29. package/cli/lib/authority/impact.mjs +125 -0
  30. package/cli/lib/authority/lexicon.mjs +55 -0
  31. package/cli/lib/authority/query.mjs +162 -0
  32. package/cli/lib/authority/repository-corpus.mjs +37 -0
  33. package/cli/lib/authority/repository-inventory.mjs +34 -0
  34. package/cli/lib/authority/review.mjs +212 -0
  35. package/cli/lib/authority/sarif.mjs +174 -0
  36. package/cli/lib/authority/scope-bindings.mjs +225 -0
  37. package/cli/lib/authority/source-map.mjs +105 -0
  38. package/cli/lib/authority/source-markdown.mjs +167 -0
  39. package/cli/lib/authority/source-yaml.mjs +308 -0
  40. package/cli/lib/authority/surface.mjs +97 -0
  41. package/cli/lib/authority/terms.mjs +422 -0
  42. package/cli/lib/authority/tracked-text.mjs +70 -0
  43. package/cli/lib/authority/validate.mjs +300 -0
  44. package/cli/lib/bootstrap.mjs +55 -71
  45. package/cli/lib/doctor.mjs +40 -123
  46. package/cli/lib/entrypoints.mjs +104 -105
  47. package/cli/lib/fs-helpers.mjs +139 -15
  48. package/cli/lib/internal/governance/config.mjs +0 -36
  49. package/cli/lib/shared.mjs +8 -21
  50. package/cli/lib/sync.mjs +81 -92
  51. package/cli/lib/value-helpers.mjs +0 -26
  52. package/cli/lib/yaml-helpers.mjs +1 -124
  53. package/cli/seeds/bootstrap.mjs +31 -87
  54. package/cli/seeds/seed-policy.yaml +9 -63
  55. package/contracts/authority-scope-bindings.schema.yaml +15 -0
  56. package/contracts/authority-source.schema.yaml +58 -0
  57. package/contracts/authority-verifier-bindings.schema.yaml +31 -0
  58. package/methodology/authority-authoring.yaml +127 -0
  59. package/methodology/core.yaml +34 -27
  60. package/package.json +10 -6
  61. package/spec/authority-anchors.yaml +99 -0
  62. package/spec/authority-audit.yaml +89 -0
  63. package/spec/authority-authoring.yaml +137 -0
  64. package/spec/authority-change-candidates.yaml +146 -0
  65. package/spec/authority-closed-sets.yaml +65 -0
  66. package/spec/authority-consumers.yaml +77 -0
  67. package/spec/authority-context.yaml +50 -0
  68. package/spec/authority-discovery.yaml +119 -0
  69. package/spec/authority-graph.yaml +59 -0
  70. package/spec/authority-impact.yaml +61 -0
  71. package/spec/authority-review.yaml +71 -0
  72. package/spec/authority-terms.yaml +63 -0
  73. package/spec/product-scope.yaml +37 -23
  74. package/cli/commands/blueprint-audit.mjs +0 -91
  75. package/cli/commands/classify-spec-tree.mjs +0 -5
  76. package/cli/commands/generate-spec-derived-docs.mjs +0 -151
  77. package/cli/commands/generate-spec-migration-plan.mjs +0 -30
  78. package/cli/commands/surface-validator-command.mjs +0 -49
  79. package/cli/commands/validate-domain-admission.mjs +0 -5
  80. package/cli/commands/validate-guidance-bodies.mjs +0 -5
  81. package/cli/commands/validate-placement.mjs +0 -5
  82. package/cli/commands/validate-projection-edges.mjs +0 -5
  83. package/cli/commands/validate-spec-audit.mjs +0 -27
  84. package/cli/commands/validate-spec-governance.mjs +0 -144
  85. package/cli/commands/validate-spec-tree.mjs +0 -27
  86. package/cli/commands/validate-table-family.mjs +0 -5
  87. package/cli/commands/validate-tracked-output-admission.mjs +0 -5
  88. package/cli/lib/blueprint-audit.mjs +0 -363
  89. package/cli/lib/contracts.mjs +0 -21
  90. package/cli/lib/internal/contracts-loaders.mjs +0 -47
  91. package/cli/lib/internal/contracts-parse.mjs +0 -192
  92. package/cli/lib/internal/governance/runner.mjs +0 -35
  93. package/cli/lib/internal/surface-taxonomy-validators.mjs +0 -1147
  94. package/cli/lib/internal/validators-shared.mjs +0 -12
  95. package/cli/lib/internal/validators-spec-helpers.mjs +0 -52
  96. package/cli/lib/internal/validators-spec.mjs +0 -380
  97. package/cli/lib/validators.mjs +0 -30
  98. package/config/bootstrap.yaml +0 -6
  99. package/config/spec-generation-inputs.yaml +0 -41
  100. package/contracts/domain-admission.schema.yaml +0 -56
  101. package/contracts/migration-inventory.schema.yaml +0 -15
  102. package/contracts/negative-fixtures.yaml +0 -26
  103. package/contracts/placement-contract.schema.yaml +0 -127
  104. package/contracts/projection-edge.schema.yaml +0 -46
  105. package/contracts/shared-enums.yaml +0 -63
  106. package/contracts/spec-generation-audit.schema.yaml +0 -46
  107. package/contracts/spec-generation-inputs.schema.yaml +0 -43
  108. package/contracts/spec-layout.schema.yaml +0 -32
  109. package/contracts/surface-taxonomy.schema.yaml +0 -139
  110. package/contracts/table-family.schema.yaml +0 -133
  111. package/contracts/tracked-output-admission.schema.yaml +0 -17
  112. package/methodology/four-closure-policy.yaml +0 -20
  113. package/methodology/role-separation-policy.yaml +0 -22
  114. package/methodology/spec-reconstruction.yaml +0 -69
  115. package/spec/_meta/spec-tree-model.yaml +0 -44
@@ -1,22 +0,0 @@
1
- version: 2
2
- role_separation_policy:
3
- purpose: Prevent one perspective from silently defining authority, implementation, and acceptance.
4
- logical_responsibilities:
5
- authority_authoring:
6
- owns: [product_intent, normative_rules, explicit_semantic_decisions]
7
- must_not_self_validate: implementation_conformance
8
- implementation:
9
- owns: [code_changes, migrations, executable_tests]
10
- must_not_self_authorize: product_semantic_changes
11
- verification:
12
- owns: [contract_checks, negative_evidence, structural_and_drift_proof]
13
- must_not_rewrite: product_authority_to_make_results_pass
14
- separation_rule:
15
- required: responsibilities_remain_distinguishable_in_evidence_and_decisions
16
- mechanism: host_owned
17
- physical_agent_or_session_topology: not_prescribed
18
- failure_conditions:
19
- - implementation_invents_missing_authority
20
- - verification_accepts_pseudo_success
21
- - generated_evidence_is_promoted_to_authority
22
- - unresolved_owner_ambiguity_is_silently_resolved
@@ -1,69 +0,0 @@
1
- version: 3
2
- reconstruction:
3
- id: spec_reconstruction
4
- owner: host_product_team
5
- package_role: contracts_methodology_and_deterministic_validation
6
- execution_owner: host_native_capabilities
7
- generation_inputs_ref: .nimi/config/spec-generation-inputs.yaml
8
- surface_taxonomy_ref: .nimi/contracts/surface-taxonomy.schema.yaml
9
- placement_contract_ref: .nimi/contracts/placement-contract.schema.yaml
10
- table_family_contract_ref: .nimi/contracts/table-family.schema.yaml
11
- domain_admission_contract_ref: .nimi/contracts/domain-admission.schema.yaml
12
- tracked_output_admission_contract_ref: .nimi/contracts/tracked-output-admission.schema.yaml
13
- goals:
14
- - establish_project_canonical_rule_root
15
- - classify_every_input_before_generation
16
- - keep_product_authority_under_.nimi/spec
17
- - keep_package_methodology_under_nimi-coding
18
- - keep_generation_state_under_.nimi/local/state/spec-generation
19
- - keep_verification_evidence_under_.nimi/local/audit
20
- - separate_product_authority_tables_from_support_registries
21
- - reject_generated_views_as_authority_inputs
22
- - preserve_authority_explicitness
23
- - stop_on_authority_ambiguity
24
- target_root: .nimi/spec
25
- audit_root: .nimi/local/state/spec-generation/spec-generation-audit.yaml
26
- target_tree_shape:
27
- required_surface_classes: [product_authority, product_authority_table, thin_guidance]
28
- optional_surface_classes: [host_projection_anchor, support_registry, host_instruction, tracked_derived_projection]
29
- forbidden_surface_classes: [derived_view, spec_generation_state, audit_evidence_state, operational_local_artifact, nimicoding_managed_projection, methodology_authority]
30
- minimal_required_outputs:
31
- - .nimi/spec/INDEX.md
32
- - .nimi/spec/project/kernel/index.md
33
- - .nimi/spec/project/kernel/core-rules.md
34
- - .nimi/spec/project/kernel/tables/rule-catalog.yaml
35
- minimum_generation_sequence:
36
- - classify_inputs
37
- - validate_placement
38
- - write_product_authority
39
- - write_product_authority_tables
40
- - write_thin_guidance
41
- - write_local_generation_audit
42
- skeleton_rules:
43
- - generate_minimal_kernel_before_optional_guides
44
- - declare_table_family_before_accepting_kernel_table
45
- - add_domain_guides_only_as_thin_guidance
46
- - treat_missing_rules_as_explicit_gaps_not_implicit_completion
47
- - treat_unclassified_files_as_fail_closed
48
- benchmark_acceptance:
49
- mode: semantic_and_structural_parity_when_blueprint_exists
50
- blueprint_is_optional: true
51
- benchmark_reference_ref: .nimi/local/state/spec-generation/blueprint-reference.yaml
52
- hard_constraints:
53
- - no_human_friendly_parallel_truth
54
- - no_silent_authority_inference
55
- - write_product_authority_outputs_only_under_.nimi/spec
56
- - write_file_level_generation_audit_under_.nimi/local/state/spec-generation
57
- - never_write_generation_audit_under_.nimi/spec
58
- - every_generated_canonical_file_requires_explicit_source_basis_and_unresolved_gap_tracking
59
- - every_input_file_requires_surface_class_before_generation
60
- - package_methodology_and_package_spec_must_not_be_promoted_into_.nimi/spec
61
- - host_projection_anchors_must_be_minimal_and_admitted
62
- - unresolved_ambiguity_must_remain_explicit
63
- - nimi_coding_must_not_create_or_manage_host_execution_state
64
- completion_gate:
65
- required_profile: surface_taxonomy_v2
66
- audit_contract_ref: .nimi/contracts/spec-generation-audit.schema.yaml
67
- validation_commands:
68
- - pnpm exec nimicoding validate-spec-tree -- .nimi/spec
69
- - pnpm exec nimicoding validate-spec-audit -- .nimi/local/state/spec-generation/spec-generation-audit.yaml
@@ -1,44 +0,0 @@
1
- version: 3
2
- spec_tree_model:
3
- profile: surface_taxonomy_v2
4
- product_authority_root: .nimi/spec
5
- package_authority_root: package://@nimiplatform/nimi-coding
6
- authority_mode: surface_class_validated
7
- contract_refs:
8
- shared_enums: package://@nimiplatform/nimi-coding/contracts/shared-enums.yaml
9
- surface_taxonomy: package://@nimiplatform/nimi-coding/contracts/surface-taxonomy.schema.yaml
10
- placement_contract: package://@nimiplatform/nimi-coding/contracts/placement-contract.schema.yaml
11
- projection_edge: package://@nimiplatform/nimi-coding/contracts/projection-edge.schema.yaml
12
- table_family: package://@nimiplatform/nimi-coding/contracts/table-family.schema.yaml
13
- domain_admission: package://@nimiplatform/nimi-coding/contracts/domain-admission.schema.yaml
14
- tracked_output_admission: package://@nimiplatform/nimi-coding/contracts/tracked-output-admission.schema.yaml
15
- migration_inventory: package://@nimiplatform/nimi-coding/contracts/migration-inventory.schema.yaml
16
- domains:
17
- - id: project
18
- root: .nimi/spec/project
19
- authority_class: active_product
20
- allowed_surface_classes: [product_authority, product_authority_table, thin_guidance, support_registry]
21
- required_files:
22
- surface_taxonomy_v2:
23
- - .nimi/spec/INDEX.md
24
- - .nimi/spec/project/kernel/index.md
25
- - .nimi/spec/project/kernel/core-rules.md
26
- - .nimi/spec/project/kernel/tables/rule-catalog.yaml
27
- generated_pipelines:
28
- - id: spec_human_doc
29
- input_contract_ref: package://@nimiplatform/nimi-coding/contracts/spec-generation-inputs.schema.yaml
30
- input_config_ref: package://@nimiplatform/nimi-coding/config/spec-generation-inputs.yaml
31
- output_class: derived_view
32
- output_roots: [stdout_view]
33
- audit_output_root: .nimi/local/state/spec-generation
34
- generate_command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope spec-human-doc
35
- drift_check_command: pnpm exec nimicoding generate-spec-derived-docs --profile nimi --scope spec-human-doc --check
36
- fail_closed_rules:
37
- - unknown_profile_is_invalid
38
- - unclassified_files_are_invalid
39
- - path_shape_is_not_authority_proof
40
- - domain_roots_must_not_escape_product_authority_root
41
- - product_authority_table_without_table_family_is_invalid
42
- - generated_outputs_must_not_overlap_product_authority_roots
43
- - operational_and_audit_state_must_not_live_under_.nimi/spec
44
- - package_methodology_must_not_be_copied_to_host_product_authority