@warpgogol/forge 4.2.4 → 5.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/AGENTS.md +13 -5
- package/dist/os/adr/handlers/list-create.d.ts.map +1 -1
- package/dist/os/adr/handlers/list-create.js +4 -1
- package/dist/os/adr/handlers/list-create.js.map +1 -1
- package/dist/os/adr/handlers/validate.d.ts.map +1 -1
- package/dist/os/adr/handlers/validate.js +6 -1
- package/dist/os/adr/handlers/validate.js.map +1 -1
- package/dist/os/adr/types.d.ts.map +1 -1
- package/dist/os/adr/types.js +7 -3
- package/dist/os/adr/types.js.map +1 -1
- package/dist/os/compass/compass.module.d.ts.map +1 -1
- package/dist/os/compass/compass.module.js +76 -10
- package/dist/os/compass/compass.module.js.map +1 -1
- package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +1 -1
- package/dist/os/compass/handlers/compass-audit-handler.js +7 -3
- package/dist/os/compass/handlers/compass-audit-handler.js.map +1 -1
- package/dist/os/compass/handlers/compass-change-summary-handler.d.ts +1 -9
- package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +1 -1
- package/dist/os/compass/handlers/compass-change-summary-handler.js +44 -186
- package/dist/os/compass/handlers/compass-change-summary-handler.js.map +1 -1
- package/dist/os/compass/handlers/compass-inventory-handler.d.ts +2 -0
- package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +1 -1
- package/dist/os/compass/handlers/compass-inventory-handler.js +24 -12
- package/dist/os/compass/handlers/compass-inventory-handler.js.map +1 -1
- package/dist/os/compass/handlers/compass-inventory.d.ts +7 -5
- package/dist/os/compass/handlers/compass-inventory.d.ts.map +1 -1
- package/dist/os/compass/handlers/compass-inventory.js +84 -241
- package/dist/os/compass/handlers/compass-inventory.js.map +1 -1
- package/dist/os/compass/handlers/compass-migrate-handler.d.ts +4 -0
- package/dist/os/compass/handlers/compass-migrate-handler.d.ts.map +1 -0
- package/dist/os/compass/handlers/compass-migrate-handler.js +100 -0
- package/dist/os/compass/handlers/compass-migrate-handler.js.map +1 -0
- package/dist/os/compass/handlers/compass-migrate.d.ts +34 -0
- package/dist/os/compass/handlers/compass-migrate.d.ts.map +1 -0
- package/dist/os/compass/handlers/compass-migrate.js +273 -0
- package/dist/os/compass/handlers/compass-migrate.js.map +1 -0
- package/dist/os/compass/handlers/resolve-scan-root.d.ts.map +1 -1
- package/dist/os/compass/handlers/resolve-scan-root.js +15 -8
- package/dist/os/compass/handlers/resolve-scan-root.js.map +1 -1
- package/dist/os/compass/handlers/summary-record.d.ts +46 -0
- package/dist/os/compass/handlers/summary-record.d.ts.map +1 -0
- package/dist/os/compass/handlers/summary-record.js +233 -0
- package/dist/os/compass/handlers/summary-record.js.map +1 -0
- package/dist/os/compass/index.d.ts +4 -1
- package/dist/os/compass/index.d.ts.map +1 -1
- package/dist/os/compass/index.js +9 -1
- package/dist/os/compass/index.js.map +1 -1
- package/dist/os/compass/policy.d.ts +65 -0
- package/dist/os/compass/policy.d.ts.map +1 -0
- package/dist/os/compass/policy.js +241 -0
- package/dist/os/compass/policy.js.map +1 -0
- package/dist/os/core/core.module.d.ts.map +1 -1
- package/dist/os/core/core.module.js +9 -21
- package/dist/os/core/core.module.js.map +1 -1
- package/dist/os/core/handlers/forge-autonomy-validate.d.ts.map +1 -1
- package/dist/os/core/handlers/forge-autonomy-validate.js +7 -1
- package/dist/os/core/handlers/forge-autonomy-validate.js.map +1 -1
- package/dist/os/core/handlers/package-health.d.ts.map +1 -1
- package/dist/os/core/handlers/package-health.js +6 -1
- package/dist/os/core/handlers/package-health.js.map +1 -1
- package/dist/os/core/handlers/pinned-check.d.ts.map +1 -1
- package/dist/os/core/handlers/pinned-check.js +6 -1
- package/dist/os/core/handlers/pinned-check.js.map +1 -1
- package/dist/os/core/handlers/pinned-validate.d.ts.map +1 -1
- package/dist/os/core/handlers/pinned-validate.js +6 -1
- package/dist/os/core/handlers/pinned-validate.js.map +1 -1
- package/dist/os/core/handlers/validate.d.ts.map +1 -1
- package/dist/os/core/handlers/validate.js +6 -1
- package/dist/os/core/handlers/validate.js.map +1 -1
- package/dist/os/exploration/exploration.module.d.ts.map +1 -1
- package/dist/os/exploration/exploration.module.js +6 -4
- package/dist/os/exploration/exploration.module.js.map +1 -1
- package/dist/os/exploration/handlers/list.d.ts.map +1 -1
- package/dist/os/exploration/handlers/list.js +4 -1
- package/dist/os/exploration/handlers/list.js.map +1 -1
- package/dist/os/mission/handlers/archive.d.ts.map +1 -1
- package/dist/os/mission/handlers/archive.js +7 -3
- package/dist/os/mission/handlers/archive.js.map +1 -1
- package/dist/os/mission/index.d.ts.map +1 -1
- package/dist/os/mission/index.js +13 -0
- package/dist/os/mission/index.js.map +1 -1
- package/dist/os/notes/index.d.ts.map +1 -1
- package/dist/os/notes/index.js +7 -1
- package/dist/os/notes/index.js.map +1 -1
- package/dist/os/rfc/frontmatter-io.d.ts.map +1 -1
- package/dist/os/rfc/frontmatter-io.js +6 -1
- package/dist/os/rfc/frontmatter-io.js.map +1 -1
- package/dist/os/rfc/handlers/archive.d.ts.map +1 -1
- package/dist/os/rfc/handlers/archive.js +6 -1
- package/dist/os/rfc/handlers/archive.js.map +1 -1
- package/dist/os/rfc/handlers/implement-stamp.d.ts.map +1 -1
- package/dist/os/rfc/handlers/implement-stamp.js +7 -3
- package/dist/os/rfc/handlers/implement-stamp.js.map +1 -1
- package/dist/os/rfc/handlers/index-graph.d.ts.map +1 -1
- package/dist/os/rfc/handlers/index-graph.js +6 -1
- package/dist/os/rfc/handlers/index-graph.js.map +1 -1
- package/dist/os/rfc/handlers/lifecycle.d.ts.map +1 -1
- package/dist/os/rfc/handlers/lifecycle.js +6 -1
- package/dist/os/rfc/handlers/lifecycle.js.map +1 -1
- package/dist/os/rfc/handlers/list-create.d.ts.map +1 -1
- package/dist/os/rfc/handlers/list-create.js +6 -1
- package/dist/os/rfc/handlers/list-create.js.map +1 -1
- package/dist/os/rfc/handlers/pipeline-status.d.ts.map +1 -1
- package/dist/os/rfc/handlers/pipeline-status.js +6 -1
- package/dist/os/rfc/handlers/pipeline-status.js.map +1 -1
- package/dist/os/rfc/handlers/supersede-propose.d.ts.map +1 -1
- package/dist/os/rfc/handlers/supersede-propose.js +6 -1
- package/dist/os/rfc/handlers/supersede-propose.js.map +1 -1
- package/dist/os/rfc/handlers/validate-rules.d.ts.map +1 -1
- package/dist/os/rfc/handlers/validate-rules.js +7 -3
- package/dist/os/rfc/handlers/validate-rules.js.map +1 -1
- package/dist/os/rfc/handlers/validate.d.ts.map +1 -1
- package/dist/os/rfc/handlers/validate.js +6 -1
- package/dist/os/rfc/handlers/validate.js.map +1 -1
- package/dist/os/rfc/index.d.ts.map +1 -1
- package/dist/os/rfc/index.js +6 -1
- package/dist/os/rfc/index.js.map +1 -1
- package/dist/os/rfc/rfc.module.d.ts.map +1 -1
- package/dist/os/rfc/rfc.module.js +6 -1
- package/dist/os/rfc/rfc.module.js.map +1 -1
- package/dist/os/rfc/types.d.ts +7 -4
- package/dist/os/rfc/types.d.ts.map +1 -1
- package/dist/os/rfc/types.js +7 -4
- package/dist/os/rfc/types.js.map +1 -1
- package/dist/os/session/handlers/save.d.ts.map +1 -1
- package/dist/os/session/handlers/save.js +6 -1
- package/dist/os/session/handlers/save.js.map +1 -1
- package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts.map +1 -1
- package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +6 -1
- package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +1 -1
- package/dist/os/werkstatt/handlers/workspace-deps.js +3 -3
- package/dist/os/werkstatt/handlers/workspace-deps.js.map +1 -1
- package/dist/os/workflow/index.d.ts.map +1 -1
- package/dist/os/workflow/index.js +6 -1
- package/dist/os/workflow/index.js.map +1 -1
- package/dist/src/config/forge-config.d.ts +50 -4
- package/dist/src/config/forge-config.d.ts.map +1 -1
- package/dist/src/config/forge-config.js +11 -19
- package/dist/src/config/forge-config.js.map +1 -1
- package/dist/src/forge-module.d.ts.map +1 -1
- package/dist/src/forge-module.js +6 -1
- package/dist/src/forge-module.js.map +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +10 -2
- package/dist/src/index.js.map +1 -1
- package/dist/src/migration-adapters/git-utils.d.ts.map +1 -1
- package/dist/src/migration-adapters/git-utils.js +6 -2
- package/dist/src/migration-adapters/git-utils.js.map +1 -1
- package/dist/src/migration-adapters/ignored-files.d.ts.map +1 -1
- package/dist/src/migration-adapters/ignored-files.js +6 -1
- package/dist/src/migration-adapters/ignored-files.js.map +1 -1
- package/dist/src/migration-adapters/index.d.ts.map +1 -1
- package/dist/src/migration-adapters/index.js +4 -1
- package/dist/src/migration-adapters/index.js.map +1 -1
- package/dist/src/migration-adapters/types.d.ts.map +1 -1
- package/dist/src/migration-adapters/types.js +6 -2
- package/dist/src/migration-adapters/types.js.map +1 -1
- package/dist/src/onboarding/agents-generate.js +7 -7
- package/dist/src/onboarding/create.d.ts.map +1 -1
- package/dist/src/onboarding/create.js +7 -6
- package/dist/src/onboarding/create.js.map +1 -1
- package/dist/src/onboarding/doctor.d.ts.map +1 -1
- package/dist/src/onboarding/doctor.js +7 -13
- package/dist/src/onboarding/doctor.js.map +1 -1
- package/dist/src/onboarding/init.d.ts.map +1 -1
- package/dist/src/onboarding/init.js +7 -12
- package/dist/src/onboarding/init.js.map +1 -1
- package/dist/src/onboarding/invariant-engine.d.ts.map +1 -1
- package/dist/src/onboarding/invariant-engine.js +7 -2
- package/dist/src/onboarding/invariant-engine.js.map +1 -1
- package/dist/src/onboarding/nested-agents-generate.d.ts.map +1 -1
- package/dist/src/onboarding/nested-agents-generate.js +7 -2
- package/dist/src/onboarding/nested-agents-generate.js.map +1 -1
- package/dist/src/onboarding/nested-agents-templates.d.ts.map +1 -1
- package/dist/src/onboarding/nested-agents-templates.js +6 -1
- package/dist/src/onboarding/nested-agents-templates.js.map +1 -1
- package/dist/src/onboarding/scaffold-project.d.ts.map +1 -1
- package/dist/src/onboarding/scaffold-project.js +6 -1
- package/dist/src/onboarding/scaffold-project.js.map +1 -1
- package/dist/src/onboarding/upgrade.d.ts.map +1 -1
- package/dist/src/onboarding/upgrade.js +7 -3
- package/dist/src/onboarding/upgrade.js.map +1 -1
- package/dist/src/profiles/profile-schema.d.ts +54 -4
- package/dist/src/profiles/profile-schema.d.ts.map +1 -1
- package/dist/src/profiles/profile-schema.js +34 -14
- package/dist/src/profiles/profile-schema.js.map +1 -1
- package/dist/src/profiles/stack-profile.d.ts +24 -0
- package/dist/src/profiles/stack-profile.d.ts.map +1 -1
- package/dist/src/profiles/stack-profile.js +7 -3
- package/dist/src/profiles/stack-profile.js.map +1 -1
- package/dist/src/registry.d.ts.map +1 -1
- package/dist/src/registry.js +7 -9
- package/dist/src/registry.js.map +1 -1
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/types.js +6 -1
- package/dist/src/types.js.map +1 -1
- package/dist/src/utils/fs-atomic.d.ts.map +1 -1
- package/dist/src/utils/fs-atomic.js +13 -1
- package/dist/src/utils/fs-atomic.js.map +1 -1
- package/dist/src/utils/fs-idempotent.d.ts.map +1 -1
- package/dist/src/utils/fs-idempotent.js +13 -0
- package/dist/src/utils/fs-idempotent.js.map +1 -1
- package/dist/src/utils/fs-trash-sync.d.ts.map +1 -1
- package/dist/src/utils/fs-trash-sync.js +13 -1
- package/dist/src/utils/fs-trash-sync.js.map +1 -1
- package/dist/src/utils/fs-trash.d.ts.map +1 -1
- package/dist/src/utils/fs-trash.js +13 -1
- package/dist/src/utils/fs-trash.js.map +1 -1
- package/dist/src/utils/fs.d.ts.map +1 -1
- package/dist/src/utils/fs.js +14 -3
- package/dist/src/utils/fs.js.map +1 -1
- package/dist/src/utils/hash.d.ts.map +1 -1
- package/dist/src/utils/hash.js +12 -1
- package/dist/src/utils/hash.js.map +1 -1
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +13 -2
- package/dist/src/utils/index.js.map +1 -1
- package/dist/src/utils/string-utils.d.ts.map +1 -1
- package/dist/src/utils/string-utils.js +12 -1
- package/dist/src/utils/string-utils.js.map +1 -1
- package/dist/src/validators/port-validate.js +1 -1
- package/dist/src/validators/port-validate.js.map +1 -1
- package/dist/src/validators/skill-validate.d.ts.map +1 -1
- package/dist/src/validators/skill-validate.js +7 -8
- package/dist/src/validators/skill-validate.js.map +1 -1
- package/docs/reference/forge-yaml.md +38 -9
- package/os/adr/handlers/list-create.ts +4 -1
- package/os/adr/handlers/validate.ts +6 -1
- package/os/adr/types.ts +7 -3
- package/os/compass/compass.module.ts +79 -13
- package/os/compass/handlers/compass-audit-handler.ts +22 -3
- package/os/compass/handlers/compass-change-summary-handler.ts +55 -227
- package/os/compass/handlers/compass-inventory-handler.ts +30 -12
- package/os/compass/handlers/compass-inventory.ts +103 -240
- package/os/compass/handlers/compass-migrate-handler.ts +122 -0
- package/os/compass/handlers/compass-migrate.ts +361 -0
- package/os/compass/handlers/resolve-scan-root-package.test.ts +70 -0
- package/os/compass/handlers/resolve-scan-root.ts +15 -8
- package/os/compass/handlers/summary-record.ts +313 -0
- package/os/compass/handlers/tests/compass-migrate.test.ts +291 -0
- package/os/compass/handlers/tests/compass-policy.test.ts +249 -0
- package/os/compass/handlers/tests/compass-v2-contract.test.ts +9 -9
- package/os/compass/handlers/tests/summary-record.test.ts +224 -0
- package/os/compass/index.ts +23 -5
- package/os/compass/policy.ts +350 -0
- package/os/core/core.module.ts +9 -21
- package/os/core/handlers/forge-autonomy-validate.ts +7 -1
- package/os/core/handlers/package-health.ts +6 -1
- package/os/core/handlers/pinned-check.ts +6 -1
- package/os/core/handlers/pinned-validate.ts +6 -1
- package/os/core/handlers/validate.ts +6 -1
- package/os/exploration/exploration.module.ts +72 -71
- package/os/exploration/handlers/list.ts +4 -1
- package/os/mission/handlers/archive.ts +7 -3
- package/os/mission/index.ts +14 -0
- package/os/notes/index.ts +7 -1
- package/os/rfc/frontmatter-io.ts +6 -1
- package/os/rfc/handlers/archive.ts +6 -1
- package/os/rfc/handlers/implement-stamp.ts +7 -3
- package/os/rfc/handlers/index-graph.ts +6 -1
- package/os/rfc/handlers/lifecycle.ts +6 -1
- package/os/rfc/handlers/list-create.ts +6 -1
- package/os/rfc/handlers/pipeline-status.ts +6 -1
- package/os/rfc/handlers/supersede-propose.ts +6 -1
- package/os/rfc/handlers/validate-rules.ts +7 -3
- package/os/rfc/handlers/validate.ts +6 -1
- package/os/rfc/index.ts +6 -1
- package/os/rfc/rfc.module.ts +6 -1
- package/os/rfc/types.ts +7 -4
- package/os/session/handlers/save.ts +6 -1
- package/os/werkstatt/handlers/werkstatt-lock-recover.ts +6 -1
- package/os/werkstatt/handlers/workspace-deps.ts +3 -3
- package/os/workflow/index.ts +6 -1
- package/package.json +1 -1
- package/skills/fo/fo-add-tests/SKILL.md +14 -0
- package/skills/fo/fo-architecture/SKILL.md +14 -0
- package/skills/fo/fo-compass-annotate/SKILL.md +14 -0
- package/skills/fo/fo-design-summit/SKILL.md +14 -0
- package/skills/fo/fo-doc-audit/SKILL.md +14 -0
- package/skills/fo/fo-explore/SKILL.md +14 -0
- package/skills/fo/fo-extract-dna/SKILL.md +14 -0
- package/skills/fo/fo-fix/SKILL.md +14 -0
- package/skills/fo/fo-handoff/SKILL.md +14 -0
- package/skills/fo/fo-harvest/SKILL.md +14 -0
- package/skills/fo/fo-idea/SKILL.md +14 -0
- package/skills/fo/fo-idea-audit/SKILL.md +14 -0
- package/skills/fo/fo-idea-create-adr/SKILL.md +14 -0
- package/skills/fo/fo-idea-create-rfc/SKILL.md +14 -0
- package/skills/fo/fo-idea-enhance/SKILL.md +14 -0
- package/skills/fo/fo-idea-i-just-want-to-see-the-plan/SKILL.md +14 -0
- package/skills/fo/fo-idea-i-just-want-to-see-the-result/SKILL.md +14 -0
- package/skills/fo/fo-idea-implement/SKILL.md +14 -0
- package/skills/fo/fo-idea-plan/SKILL.md +14 -0
- package/skills/fo/fo-idea-status/SKILL.md +14 -0
- package/skills/fo/fo-knowledge-distill/SKILL.md +14 -0
- package/skills/fo/fo-memory-sync/SKILL.md +14 -0
- package/skills/fo/fo-qa/SKILL.md +14 -0
- package/skills/fo/fo-review/SKILL.md +14 -0
- package/skills/fo/fo-session-retro/SKILL.md +14 -0
- package/skills/fo/fo-session-save/SKILL.md +14 -0
- package/skills/fo/fo-spec-ingest/SKILL.md +14 -0
- package/skills/fo/fo-step-commit/SKILL.md +14 -0
- package/skills/fo/fo-triage/SKILL.md +14 -0
- package/skills/meta/forge-bootstrap/SKILL.md +14 -0
- package/skills/meta/port-to-forge/SKILL.md +14 -0
- package/skills/meta/skill-create/SKILL.md +14 -0
- package/skills/shared/grilling/SKILL.md +14 -0
- package/skills/shared/my-preferences/SKILL.md +14 -0
- package/skills/shared/windows-ai-tooling/SKILL.md +14 -0
- package/skills/shared/writing-great-skills/SKILL.md +14 -0
- package/src/config/forge-config.ts +16 -23
- package/src/forge-module.ts +6 -1
- package/src/index.ts +10 -2
- package/src/migration-adapters/git-utils.ts +6 -2
- package/src/migration-adapters/ignored-files.ts +6 -1
- package/src/migration-adapters/index.ts +4 -1
- package/src/migration-adapters/types.ts +6 -2
- package/src/onboarding/agents-generate.ts +7 -7
- package/src/onboarding/create.ts +7 -6
- package/src/onboarding/doctor.ts +7 -13
- package/src/onboarding/init.ts +7 -12
- package/src/onboarding/invariant-engine.ts +7 -2
- package/src/onboarding/nested-agents-generate.ts +7 -2
- package/src/onboarding/nested-agents-templates.ts +6 -1
- package/src/onboarding/scaffold-project.ts +6 -1
- package/src/onboarding/upgrade.ts +7 -3
- package/src/profiles/profile-schema.ts +42 -18
- package/src/profiles/stack-profile.ts +7 -3
- package/src/registry.ts +7 -9
- package/src/tests/agents-generate.test.ts +2 -2
- package/src/tests/forge-autonomy-validate.test.ts +1 -1
- package/src/types.ts +6 -1
- package/src/utils/fs-atomic.ts +13 -1
- package/src/utils/fs-idempotent.ts +13 -0
- package/src/utils/fs-trash-sync.ts +13 -1
- package/src/utils/fs-trash.ts +13 -1
- package/src/utils/fs.ts +14 -3
- package/src/utils/hash.ts +12 -1
- package/src/utils/index.ts +13 -2
- package/src/utils/string-utils.ts +12 -1
- package/src/validators/port-validate.ts +1 -1
- package/src/validators/skill-validate.ts +7 -8
- package/skills/shared/extension-e2e-mitm/SKILL.md +0 -53
- package/skills/shared/extension-e2e-mitm/fixture-proxy.ts +0 -113
- package/src/types/werkstatt-engine-shims.d.ts +0 -1416
- package/src/types/werkstatt-shared-shims.d.ts +0 -5686
|
@@ -1,171 +1,43 @@
|
|
|
1
1
|
/*
|
|
2
2
|
<MODULE_CONTRACT>
|
|
3
|
-
<purpose>CHANGE_SUMMARY
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
<purpose>CHANGE_SUMMARY v2 repair logic per RFC-1095. Moved from
|
|
4
|
+
@warpgogol/site-kernel-checks to @warpgogol/forge for full autonomous mode
|
|
5
|
+
(RFC-0556). Provides compass.summary.trim --mode repair.</purpose>
|
|
6
6
|
<non-goals>
|
|
7
7
|
<item>Do not audit truthfulness of CHANGE_SUMMARY items against code — that is RFC-0352.</item>
|
|
8
|
-
<item>Do not
|
|
9
|
-
<item>Do not
|
|
8
|
+
<item>Do not use an LLM — repair is purely deterministic.</item>
|
|
9
|
+
<item>Do not classify items — under the v2 contract every item carries a governance ID; ID-less items are removed, not classified.</item>
|
|
10
10
|
</non-goals>
|
|
11
11
|
</MODULE_CONTRACT>
|
|
12
12
|
<CHANGE_SUMMARY>
|
|
13
|
-
<item>RFC-0349: initial implementation of classifyChangeSummaryItem, compass.changesummary.validate, and compass.changesummary.tidy.</item>
|
|
14
13
|
<item>RFC-0538: renamed compass.changesummary.tidy to compass.summary.trim, raised cap from 3 unprotected to 30 total items, aligned validate cap to 30 total.</item>
|
|
15
14
|
<item>RFC-0556: moved from @warpgogol/site-kernel-checks to @warpgogol/forge for autonomous mode.</item>
|
|
16
15
|
<item>RFC-1094: --mode flag; mode-aware COMPASS-CS-05/06/07 diagnostics via shared evaluateV2Rules; PROTECTED_RE now aliases GOVERNANCE_ID_RE.</item>
|
|
16
|
+
<item>RFC-1095: rewrote trim as v2 repair (collapse >5 described items into history, remove ID-less items, normalize history); removed compass.changesummary.validate and the classify machinery (classifyChangeSummaryItem, PROTECTED_RE, BOILERPLATE_RE).</item>
|
|
17
|
+
<item>RFC-1095: compass.summary.record, trim repair rewrite, commit integration</item>
|
|
18
|
+
<history>RFC-0349</history>
|
|
17
19
|
</CHANGE_SUMMARY>
|
|
18
20
|
*/
|
|
19
21
|
import { resolve } from "node:path";
|
|
20
22
|
import { readFile } from "node:fs/promises";
|
|
21
|
-
import { createCompassInventoryEntries
|
|
23
|
+
import { createCompassInventoryEntries } from "./compass-inventory.js";
|
|
24
|
+
import { resolveCompassPolicy } from "../policy.js";
|
|
22
25
|
import { resolveCompassScanRoot } from "./resolve-scan-root.js";
|
|
23
26
|
import { writeFileIfChanged } from "../../../src/utils/fs-idempotent.js";
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
export function
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return "boilerplate";
|
|
31
|
-
return "unprotected";
|
|
32
|
-
}
|
|
33
|
-
function extractChangeSummaryBlock(source) {
|
|
34
|
-
const match = source.match(/<CHANGE_SUMMARY>[\s\S]*?<\/CHANGE_SUMMARY>/);
|
|
35
|
-
return match?.[0] ?? null;
|
|
36
|
-
}
|
|
37
|
-
function extractItems(block) {
|
|
38
|
-
const items = [];
|
|
39
|
-
const re = /<item>([\s\S]*?)<\/item>/g;
|
|
40
|
-
let m;
|
|
41
|
-
while ((m = re.exec(block)) !== null) {
|
|
42
|
-
items.push(m[1].trim());
|
|
43
|
-
}
|
|
44
|
-
return items;
|
|
45
|
-
}
|
|
46
|
-
function getLineCommentPrefix(filePath) {
|
|
47
|
-
if (filePath.endsWith(".gd"))
|
|
48
|
-
return "# ";
|
|
49
|
-
if (filePath.endsWith(".tscn") || filePath.endsWith(".tres"))
|
|
50
|
-
return "; ";
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
function rebuildChangeSummaryBlock(items, filePath) {
|
|
54
|
-
const prefix = getLineCommentPrefix(filePath);
|
|
55
|
-
const lines = ["<CHANGE_SUMMARY>"];
|
|
56
|
-
for (const item of items) {
|
|
57
|
-
lines.push(` <item>${item}</item>`);
|
|
58
|
-
}
|
|
59
|
-
lines.push("</CHANGE_SUMMARY>");
|
|
60
|
-
if (prefix) {
|
|
61
|
-
return lines.map((line, i) => (i === 0 ? line : prefix + line)).join("\n");
|
|
62
|
-
}
|
|
63
|
-
return lines.join("\n");
|
|
64
|
-
}
|
|
65
|
-
function replaceChangeSummaryBlock(source, newBlock) {
|
|
66
|
-
return source.replace(/<CHANGE_SUMMARY>[\s\S]*?<\/CHANGE_SUMMARY>/, newBlock);
|
|
67
|
-
}
|
|
68
|
-
const MAX_TOTAL_ITEMS = 30;
|
|
69
|
-
export async function runCompassChangeSummaryValidate(input, context) {
|
|
70
|
-
const scanRoot = resolveCompassScanRoot(input, context);
|
|
71
|
-
let mode;
|
|
72
|
-
try {
|
|
73
|
-
mode = resolveCompassMode(input);
|
|
74
|
-
}
|
|
75
|
-
catch {
|
|
76
|
-
context.logger.error(`[compass.changesummary.validate] invalid --mode value: ${String(input.flags["mode"])} (expected warning|error)`);
|
|
27
|
+
import { buildChangeSummaryBlock, CHANGE_SUMMARY_WINDOW, mergeHistoryIds, parseChangeSummary, } from "./summary-record.js";
|
|
28
|
+
const CHANGE_SUMMARY_BLOCK_RE = /<CHANGE_SUMMARY>[\s\S]*?<\/CHANGE_SUMMARY>/;
|
|
29
|
+
export async function runCompassSummaryTrim(input, context) {
|
|
30
|
+
const mode = input.flags["mode"];
|
|
31
|
+
if (mode !== undefined && mode !== "repair") {
|
|
32
|
+
context.logger.error(`[compass.summary.trim] invalid --mode value: ${String(mode)} (expected "repair")`);
|
|
77
33
|
return { exitCode: 1, summary: "invalid --mode value" };
|
|
78
34
|
}
|
|
79
|
-
const entries = await createCompassInventoryEntries(context.workspaceRoot, input, scanRoot);
|
|
80
|
-
const diagnostics = [];
|
|
81
|
-
let checkedFiles = 0;
|
|
82
|
-
// RFC-1094: v2 CS rules (CS-05/06/07) are mode-aware; v1 rules (CS-01/02)
|
|
83
|
-
// stay at error severity in both modes until the sibling lifecycle RFC lands.
|
|
84
|
-
const v2Severity = mode === "error" ? "error" : "warning";
|
|
85
|
-
for (const entry of entries) {
|
|
86
|
-
if (entry.authoringStatus !== "authored" || entry.requiredScaffolding === "none") {
|
|
87
|
-
continue;
|
|
88
|
-
}
|
|
89
|
-
checkedFiles++;
|
|
90
|
-
const absPath = resolve(context.workspaceRoot, entry.path);
|
|
91
|
-
const source = getEntrySource(entry) ?? (await readFile(absPath, "utf8"));
|
|
92
|
-
for (const v2 of evaluateV2Rules(entry, source)) {
|
|
93
|
-
if (!v2.ruleId.startsWith("COMPASS-CS-")) {
|
|
94
|
-
continue;
|
|
95
|
-
}
|
|
96
|
-
diagnostics.push({
|
|
97
|
-
ruleId: v2.ruleId,
|
|
98
|
-
severity: v2Severity,
|
|
99
|
-
file: entry.path,
|
|
100
|
-
message: v2.message,
|
|
101
|
-
fixHint: v2.fix,
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
if (!entry.hasChangeSummary) {
|
|
105
|
-
continue;
|
|
106
|
-
}
|
|
107
|
-
const block = extractChangeSummaryBlock(source);
|
|
108
|
-
if (!block)
|
|
109
|
-
continue;
|
|
110
|
-
const items = extractItems(block);
|
|
111
|
-
let hasBoilerplate = false;
|
|
112
|
-
let totalItems = 0;
|
|
113
|
-
for (const item of items) {
|
|
114
|
-
const cls = classifyChangeSummaryItem(item);
|
|
115
|
-
if (cls === "boilerplate") {
|
|
116
|
-
hasBoilerplate = true;
|
|
117
|
-
}
|
|
118
|
-
totalItems++;
|
|
119
|
-
}
|
|
120
|
-
if (hasBoilerplate) {
|
|
121
|
-
diagnostics.push({
|
|
122
|
-
ruleId: "COMPASS-CS-01",
|
|
123
|
-
severity: "error",
|
|
124
|
-
file: entry.path,
|
|
125
|
-
message: "CHANGE_SUMMARY contains a boilerplate item",
|
|
126
|
-
fixHint: "fix: run compass.summary.trim",
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
if (totalItems > MAX_TOTAL_ITEMS) {
|
|
130
|
-
diagnostics.push({
|
|
131
|
-
ruleId: "COMPASS-CS-02",
|
|
132
|
-
severity: "error",
|
|
133
|
-
file: entry.path,
|
|
134
|
-
message: `CHANGE_SUMMARY has ${totalItems} total items (cap is ${MAX_TOTAL_ITEMS})`,
|
|
135
|
-
fixHint: `fix: run compass.summary.trim (cap is ${MAX_TOTAL_ITEMS} total items)`,
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
const failed = diagnostics.some((d) => d.severity === "error");
|
|
140
|
-
for (const d of diagnostics) {
|
|
141
|
-
const log = `[compass.changesummary.validate] ${d.ruleId}: ${d.file}: ${d.message}`;
|
|
142
|
-
if (d.severity === "error") {
|
|
143
|
-
context.logger.error(log);
|
|
144
|
-
}
|
|
145
|
-
else {
|
|
146
|
-
context.logger.warn(log);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
return {
|
|
150
|
-
data: {
|
|
151
|
-
command: "compass.changesummary.validate",
|
|
152
|
-
status: failed ? "fail" : "pass",
|
|
153
|
-
diagnostics,
|
|
154
|
-
checkedFiles,
|
|
155
|
-
},
|
|
156
|
-
exitCode: failed ? 1 : 0,
|
|
157
|
-
summary: failed
|
|
158
|
-
? undefined
|
|
159
|
-
: `[compass.changesummary.validate] OK (${checkedFiles} authored files checked)`,
|
|
160
|
-
};
|
|
161
|
-
}
|
|
162
|
-
const TRIM_FALLBACK_ITEM = "Tidied by compass.summary.trim; see git history for prior entries.";
|
|
163
|
-
export async function runCompassSummaryTrim(input, context) {
|
|
164
35
|
if (context.dryRun) {
|
|
165
36
|
context.logger.info(`[compass.summary.trim] dry-run active — will not apply changes`);
|
|
166
37
|
}
|
|
167
38
|
const scanRoot = resolveCompassScanRoot(input, context);
|
|
168
|
-
const
|
|
39
|
+
const policy = resolveCompassPolicy(context.workspaceRoot, context.forgeRoot);
|
|
40
|
+
const entries = await createCompassInventoryEntries(context.workspaceRoot, input, scanRoot, policy);
|
|
169
41
|
const results = [];
|
|
170
42
|
for (const entry of entries) {
|
|
171
43
|
if (entry.authoringStatus !== "authored" || entry.requiredScaffolding === "none") {
|
|
@@ -176,61 +48,47 @@ export async function runCompassSummaryTrim(input, context) {
|
|
|
176
48
|
}
|
|
177
49
|
const absPath = resolve(context.workspaceRoot, entry.path);
|
|
178
50
|
const source = await readFile(absPath, "utf8");
|
|
179
|
-
const
|
|
180
|
-
if (!
|
|
51
|
+
const blockMatch = source.match(CHANGE_SUMMARY_BLOCK_RE);
|
|
52
|
+
if (!blockMatch)
|
|
181
53
|
continue;
|
|
182
|
-
const items =
|
|
183
|
-
const keptItems = [];
|
|
54
|
+
const { items, historyIds } = parseChangeSummary(blockMatch[0]);
|
|
184
55
|
const removedItems = [];
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
keptItems.push(text);
|
|
191
|
-
}
|
|
192
|
-
else if (cls === "boilerplate") {
|
|
193
|
-
removedItems.push(text);
|
|
56
|
+
// v2 repair: drop ID-less items, collapse described items past the window.
|
|
57
|
+
const idItems = [];
|
|
58
|
+
for (const item of items) {
|
|
59
|
+
if (policy.idPatternPrefix.test(item)) {
|
|
60
|
+
idItems.push(item);
|
|
194
61
|
}
|
|
195
62
|
else {
|
|
196
|
-
|
|
63
|
+
removedItems.push(item);
|
|
197
64
|
}
|
|
198
65
|
}
|
|
199
|
-
const
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
const protectedTexts = new Set(keptItems);
|
|
212
|
-
const unprotectedTexts = new Set(unprotectedToKeep.map((u) => u.text));
|
|
213
|
-
for (const originalItem of items) {
|
|
214
|
-
if (protectedTexts.has(originalItem) || unprotectedTexts.has(originalItem)) {
|
|
215
|
-
finalItems.push(originalItem);
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
if (finalItems.length === 0) {
|
|
219
|
-
finalItems.push(TRIM_FALLBACK_ITEM);
|
|
66
|
+
const collapsedIds = [];
|
|
67
|
+
while (idItems.length > CHANGE_SUMMARY_WINDOW) {
|
|
68
|
+
const oldest = idItems.shift();
|
|
69
|
+
const idMatch = oldest.match(policy.idPatternPrefix);
|
|
70
|
+
if (idMatch)
|
|
71
|
+
collapsedIds.push(idMatch[0]);
|
|
72
|
+
removedItems.push(oldest);
|
|
73
|
+
}
|
|
74
|
+
const nextHistory = mergeHistoryIds(historyIds, collapsedIds, policy);
|
|
75
|
+
const historyChanged = nextHistory.length !== historyIds.length || nextHistory.some((id, i) => id !== historyIds[i]);
|
|
76
|
+
if (removedItems.length === 0 && !historyChanged) {
|
|
77
|
+
continue;
|
|
220
78
|
}
|
|
221
|
-
const newBlock =
|
|
222
|
-
const transformed =
|
|
79
|
+
const newBlock = buildChangeSummaryBlock(idItems, nextHistory, entry.path);
|
|
80
|
+
const transformed = source.replace(CHANGE_SUMMARY_BLOCK_RE, newBlock);
|
|
223
81
|
if (transformed === source) {
|
|
224
82
|
continue;
|
|
225
83
|
}
|
|
226
84
|
if (!context.dryRun) {
|
|
227
85
|
await writeFileIfChanged(absPath, transformed);
|
|
228
86
|
}
|
|
229
|
-
context.logger.info(`[compass.summary.trim]
|
|
87
|
+
context.logger.info(`[compass.summary.trim] repaired: ${entry.path} (removed ${removedItems.length}, kept ${idItems.length})`);
|
|
230
88
|
results.push({
|
|
231
89
|
path: entry.path,
|
|
232
90
|
removed: removedItems,
|
|
233
|
-
kept:
|
|
91
|
+
kept: idItems.length,
|
|
234
92
|
});
|
|
235
93
|
}
|
|
236
94
|
return {
|
|
@@ -243,7 +101,7 @@ export async function runCompassSummaryTrim(input, context) {
|
|
|
243
101
|
summary: `[compass.summary.trim] files=${results.length}, removed=${results.reduce((sum, r) => sum + r.removed.length, 0)}`,
|
|
244
102
|
nextSteps: [
|
|
245
103
|
{
|
|
246
|
-
action: `Commit the
|
|
104
|
+
action: `Commit the repaired headers: pnpm exec forge run ecosystem.commit`,
|
|
247
105
|
kind: "optional",
|
|
248
106
|
},
|
|
249
107
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compass-change-summary-handler.js","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-change-summary-handler.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"compass-change-summary-handler.js","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-change-summary-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type CompassInventoryEntry } from "./compass-inventory.ts";
|
|
2
|
+
import { type CompassPolicySource } from "../policy.ts";
|
|
2
3
|
import type { ForgeCommandInput, ForgeCommandResult, ForgeRuntimeContext } from "../../../src/types.ts";
|
|
3
4
|
interface CompassInventorySummary {
|
|
4
5
|
scannedFiles: number;
|
|
@@ -12,6 +13,7 @@ export declare function runCompassInventory(input: ForgeCommandInput, context: F
|
|
|
12
13
|
entries: CompassInventoryEntry[];
|
|
13
14
|
outputPath: string;
|
|
14
15
|
summary: CompassInventorySummary;
|
|
16
|
+
policySource: CompassPolicySource;
|
|
15
17
|
}>>;
|
|
16
18
|
export declare function runCompassValidation(input: ForgeCommandInput, context: ForgeRuntimeContext): Promise<ForgeCommandResult<{
|
|
17
19
|
checkedFiles: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compass-inventory-handler.d.ts","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-inventory-handler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compass-inventory-handler.d.ts","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-inventory-handler.ts"],"names":[],"mappings":"AA6BA,OAAO,EAKL,KAAK,qBAAqB,EAC3B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAwB,KAAK,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAW9E,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAwE/B,UAAU,uBAAuB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AA+HD,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CACR,kBAAkB,CAAC;IACjB,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,uBAAuB,CAAC;IACjC,YAAY,EAAE,mBAAmB,CAAC;CACnC,CAAC,CACH,CA+CA;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CACR,kBAAkB,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,uBAAuB,CAAC;IACjC,WAAW,EAAE,KAAK,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,GAAG,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;CACJ,CAAC,CACH,CAuPA"}
|
|
@@ -12,18 +12,23 @@ contract block specs alongside built-in MODULE_CONTRACT and CHANGE_SUMMARY check
|
|
|
12
12
|
</non-goals>
|
|
13
13
|
</MODULE_CONTRACT>
|
|
14
14
|
<CHANGE_SUMMARY>
|
|
15
|
-
<item>RFC-0348: v2 two-block contract — XML output updated, compass.validate emits COMPASS-* diagnostics, summary uses standard-required-files.</item>
|
|
16
|
-
<item>RFC-0350: added COMPASS-TODO-01 diagnostic for unfilled Compass TODO sentinels.</item>
|
|
17
|
-
<item>RFC-0556: moved from @warpgogol/site-kernel-checks to @warpgogol/forge for autonomous mode.</item>
|
|
18
|
-
<item>Game extensions: added COMPASS-SYNTAX-01 diagnostic validating comment syntax per file type (.gd needs # prefix, .tscn/.tres need ; prefix, .ts/.cs need block comment).</item>
|
|
19
15
|
<item>RFC-0943: added COMPASS-PLUGIN-01/02/03 diagnostics for pack-declared contract block specs from forge.plugin.yaml extensionPoints.</item>
|
|
20
16
|
<item>RFC-1094: --mode warning|error on compass.validate; mode-aware v2 diagnostics (KD/ORDER/PURPOSE) with severity field; inventory data.entries now carries full entries and XML gains v2 fields.</item>
|
|
17
|
+
<item>RFC-1095: summary-record unit tests, commit integration tests, CS rules into compass.validate</item>
|
|
18
|
+
<item>RFC-1097: step 6 — compass.migrate codemod run
|
|
19
|
+
|
|
20
|
+
Mechanical v1 to v2 header migration across the workspace: 942 files rewritten — CHANGE_SUMMARY windows collapsed into history, forbidden v1 blocks stripped, KEY_DECISIONS seeded from @ai-invariant comments (5 files) or TODO placeholders (103 files), blocks reordered to canonical order.</item>
|
|
21
|
+
<item>RFC-1097: sweep — packages/forge + services clean
|
|
22
|
+
|
|
23
|
+
Sweep batch 2: real KEY_DECISIONS on 10 files, expanded purposes (CONTRACT-02/PURPOSE-02), headers on mission/index + gen-upstreams, sanitizeItemText in summary.record (literal Compass tags corrupted history), excludedPaths for wrangler types, test-fixtures testPattern. forge+services now 0 diagnostics under --mode error.</item>
|
|
24
|
+
<history>RFC-0348, RFC-0350, RFC-0556</history>
|
|
21
25
|
</CHANGE_SUMMARY>
|
|
22
26
|
*/
|
|
23
27
|
import { resolve } from "node:path";
|
|
24
28
|
import { readFile } from "node:fs/promises";
|
|
25
29
|
import { createCompassInventoryEntries, evaluateV2Rules, getEntrySource, resolveCompassMode, } from "./compass-inventory.js";
|
|
26
30
|
import { resolveCompassScanRoot } from "./resolve-scan-root.js";
|
|
31
|
+
import { resolveCompassPolicy } from "../policy.js";
|
|
27
32
|
import { writeFileIfChanged } from "../../../src/utils/fs-idempotent.js";
|
|
28
33
|
import { loadForgeConfig } from "../../../src/config/forge-config.js";
|
|
29
34
|
import { loadContractRegistry, findApplicablePackSpecs, } from "../../../src/compass/contract-registry.js";
|
|
@@ -194,13 +199,14 @@ function renderInventoryXml(entries, summary) {
|
|
|
194
199
|
}
|
|
195
200
|
export async function runCompassInventory(input, context) {
|
|
196
201
|
const scanRoot = resolveCompassScanRoot(input, context) ?? context.workspaceRoot;
|
|
197
|
-
const
|
|
202
|
+
const policy = resolveCompassPolicy(scanRoot, context.forgeRoot);
|
|
203
|
+
const entries = await createCompassInventoryEntries(scanRoot, input, undefined, policy);
|
|
198
204
|
const summary = summarizeInventory(entries);
|
|
199
205
|
context.logger.info(`[compass.inventory] scanned=${summary.scannedFiles} authored=${summary.authoredFiles} excluded=${summary.excludedFiles} standard=${summary.standardRequiredFiles}`);
|
|
200
206
|
if (context.dryRun) {
|
|
201
207
|
context.logger.warn(`[compass.inventory] dry-run active — skipped writing ${INVENTORY_OUTPUT_PATH}`);
|
|
202
208
|
return {
|
|
203
|
-
data: { entries, outputPath: INVENTORY_OUTPUT_PATH, summary },
|
|
209
|
+
data: { entries, outputPath: INVENTORY_OUTPUT_PATH, summary, policySource: policy.source },
|
|
204
210
|
summary: `[compass.inventory] previewed ${INVENTORY_OUTPUT_PATH}`,
|
|
205
211
|
nextSteps: [
|
|
206
212
|
{
|
|
@@ -214,7 +220,7 @@ export async function runCompassInventory(input, context) {
|
|
|
214
220
|
const outputPath = resolve(context.workspaceRoot, INVENTORY_OUTPUT_PATH);
|
|
215
221
|
await writeFileIfChanged(outputPath, xml);
|
|
216
222
|
return {
|
|
217
|
-
data: { entries, outputPath, summary },
|
|
223
|
+
data: { entries, outputPath, summary, policySource: policy.source },
|
|
218
224
|
summary: `[compass.inventory] ${context.dryRun ? "previewed" : "wrote"} ${INVENTORY_OUTPUT_PATH}`,
|
|
219
225
|
nextSteps: context.dryRun
|
|
220
226
|
? [
|
|
@@ -241,7 +247,8 @@ export async function runCompassValidation(input, context) {
|
|
|
241
247
|
context.logger.error(`[compass.validate] invalid --mode value: ${String(input.flags["mode"])} (expected warning|error)`);
|
|
242
248
|
return { exitCode: 1, summary: "invalid --mode value" };
|
|
243
249
|
}
|
|
244
|
-
const
|
|
250
|
+
const policy = resolveCompassPolicy(context.workspaceRoot, context.forgeRoot);
|
|
251
|
+
const entries = await createCompassInventoryEntries(context.workspaceRoot, input, scanRoot, policy);
|
|
245
252
|
const summary = summarizeInventory(entries);
|
|
246
253
|
const failures = entries.filter((entry) => entry.authoringStatus === "authored" &&
|
|
247
254
|
entry.requiredScaffolding !== "none" &&
|
|
@@ -249,15 +256,20 @@ export async function runCompassValidation(input, context) {
|
|
|
249
256
|
const diagnostics = [];
|
|
250
257
|
// RFC-1094: v2 rules are mode-aware — warnings in `warning` mode (default
|
|
251
258
|
// during the migration window), errors in `error` mode. Owned subset:
|
|
252
|
-
// COMPASS-KD-*, COMPASS-ORDER-01, COMPASS-PURPOSE
|
|
253
|
-
//
|
|
254
|
-
const V2_VALIDATE_RULE_PREFIXES = [
|
|
259
|
+
// COMPASS-KD-*, COMPASS-ORDER-01, COMPASS-PURPOSE-*, COMPASS-CS-*.
|
|
260
|
+
// RFC-1095: CS-* rules moved here — compass.changesummary.validate is removed.
|
|
261
|
+
const V2_VALIDATE_RULE_PREFIXES = [
|
|
262
|
+
"COMPASS-KD-",
|
|
263
|
+
"COMPASS-ORDER-",
|
|
264
|
+
"COMPASS-PURPOSE-",
|
|
265
|
+
"COMPASS-CS-",
|
|
266
|
+
];
|
|
255
267
|
const v2Severity = mode === "error" ? "error" : "warning";
|
|
256
268
|
const authoredEntries = entries.filter((entry) => entry.authoringStatus === "authored" && entry.requiredScaffolding !== "none");
|
|
257
269
|
for (const entry of authoredEntries) {
|
|
258
270
|
const absPath = resolve(context.workspaceRoot, entry.path);
|
|
259
271
|
const source = getEntrySource(entry) ?? (await readFile(absPath, "utf8"));
|
|
260
|
-
for (const v2 of evaluateV2Rules(entry, source)) {
|
|
272
|
+
for (const v2 of evaluateV2Rules(entry, source, policy)) {
|
|
261
273
|
if (!V2_VALIDATE_RULE_PREFIXES.some((prefix) => v2.ruleId.startsWith(prefix))) {
|
|
262
274
|
continue;
|
|
263
275
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compass-inventory-handler.js","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-inventory-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compass-inventory-handler.js","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-inventory-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ForgeCommandInput } from "../../../src/types.ts";
|
|
2
|
-
|
|
2
|
+
import { type CompassPolicy, type CompassRiskClass, type CompassWorkspaceKind } from "../policy.ts";
|
|
3
3
|
export type CompassValidationMode = "warning" | "error";
|
|
4
4
|
export interface CompassV2Diagnostic {
|
|
5
5
|
ruleId: string;
|
|
@@ -7,8 +7,6 @@ export interface CompassV2Diagnostic {
|
|
|
7
7
|
fix: string;
|
|
8
8
|
}
|
|
9
9
|
export declare function resolveCompassMode(input: ForgeCommandInput): CompassValidationMode;
|
|
10
|
-
type CompassWorkspaceKind = "app" | "package" | "service";
|
|
11
|
-
type CompassRiskClass = "high" | "medium" | "low";
|
|
12
10
|
type CompassComplexity = "non-trivial" | "trivial";
|
|
13
11
|
type CompassScaffoldingMode = "standard" | "none";
|
|
14
12
|
type CompassAuthoringStatus = "authored" | "excluded";
|
|
@@ -38,10 +36,14 @@ export interface CompassInventoryEntry {
|
|
|
38
36
|
compliant: boolean;
|
|
39
37
|
violations: string[];
|
|
40
38
|
}
|
|
39
|
+
export declare function getRelativeSegments(filePath: string, workspaceRoot: string): string[];
|
|
40
|
+
export declare function getWorkspaceRelativeSegments(segments: string[], policy: CompassPolicy): string[];
|
|
41
|
+
export declare function detectLayer(relativePath: string, policy: CompassPolicy): string;
|
|
42
|
+
export declare function detectRiskClass(pathFromRoot: string, workspaceRelativePath: string, policy: CompassPolicy): CompassRiskClass;
|
|
41
43
|
export declare function deriveFileTokens(pathFromRoot: string, source: string): Set<string>;
|
|
42
|
-
export declare function evaluateV2Rules(entry: Pick<CompassInventoryEntry, "path" | "keyDecisionsRequired">, source: string): CompassV2Diagnostic[];
|
|
44
|
+
export declare function evaluateV2Rules(entry: Pick<CompassInventoryEntry, "path" | "keyDecisionsRequired">, source: string, policy: CompassPolicy): CompassV2Diagnostic[];
|
|
43
45
|
/** Returns the source text captured during `createCompassInventoryEntries`, if still cached. */
|
|
44
46
|
export declare function getEntrySource(entry: CompassInventoryEntry): string | undefined;
|
|
45
|
-
export declare function createCompassInventoryEntries(workspaceRoot: string, input: ForgeCommandInput, scanRoot?: string): Promise<CompassInventoryEntry[]>;
|
|
47
|
+
export declare function createCompassInventoryEntries(workspaceRoot: string, input: ForgeCommandInput, scanRoot?: string, policy?: CompassPolicy): Promise<CompassInventoryEntry[]>;
|
|
46
48
|
export {};
|
|
47
49
|
//# sourceMappingURL=compass-inventory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compass-inventory.d.ts","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-inventory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compass-inventory.d.ts","sourceRoot":"","sources":["../../../../os/compass/handlers/compass-inventory.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAC1B,MAAM,cAAc,CAAC;AAoCtB,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,OAAO,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,qBAAqB,CAKlF;AAED,KAAK,iBAAiB,GAAG,aAAa,GAAG,SAAS,CAAC;AACnD,KAAK,sBAAsB,GAAG,UAAU,GAAG,MAAM,CAAC;AAClD,KAAK,sBAAsB,GAAG,UAAU,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,oBAAoB,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,sBAAsB,CAAC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,mBAAmB,EAAE,sBAAsB,CAAC;IAC5C,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,OAAO,CAAC;IAC9B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AA6ED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,CAErF;AAoBD,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,GAAG,MAAM,EAAE,CAKhG;AAED,wBAAgB,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,MAAM,CAE/E;AAED,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EACpB,qBAAqB,EAAE,MAAM,EAC7B,MAAM,EAAE,aAAa,GACpB,gBAAgB,CAKlB;AA2OD,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CA4BlF;AAuBD,wBAAgB,eAAe,CAC7B,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,sBAAsB,CAAC,EACnE,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,GACpB,mBAAmB,EAAE,CAwHvB;AA0CD,gGAAgG;AAChG,wBAAgB,cAAc,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAE/E;AAED,wBAAsB,6BAA6B,CACjD,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,iBAAiB,EACxB,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAmElC"}
|