onto-mcp 0.3.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/.onto/authority/core-lens-registry.yaml +134 -0
- package/.onto/authority/core-lexicon.yaml +1562 -0
- package/.onto/authority/diagnostic-codes.yaml +94 -0
- package/.onto/domains/accounting/competency_qs.md +384 -0
- package/.onto/domains/accounting/concepts.md +186 -0
- package/.onto/domains/accounting/conciseness_rules.md +160 -0
- package/.onto/domains/accounting/dependency_rules.md +239 -0
- package/.onto/domains/accounting/domain_scope.md +213 -0
- package/.onto/domains/accounting/extension_cases.md +416 -0
- package/.onto/domains/accounting/logic_rules.md +226 -0
- package/.onto/domains/accounting/structure_spec.md +298 -0
- package/.onto/domains/accounting-kr/competency_qs.md +562 -0
- package/.onto/domains/accounting-kr/concepts.md +187 -0
- package/.onto/domains/accounting-kr/conciseness_rules.md +125 -0
- package/.onto/domains/accounting-kr/dependency_rules.md +93 -0
- package/.onto/domains/accounting-kr/domain_scope.md +140 -0
- package/.onto/domains/accounting-kr/extension_cases.md +343 -0
- package/.onto/domains/accounting-kr/logic_rules.md +160 -0
- package/.onto/domains/accounting-kr/structure_spec.md +85 -0
- package/.onto/domains/business/competency_qs.md +263 -0
- package/.onto/domains/business/concepts.md +200 -0
- package/.onto/domains/business/conciseness_rules.md +135 -0
- package/.onto/domains/business/dependency_rules.md +113 -0
- package/.onto/domains/business/domain_scope.md +240 -0
- package/.onto/domains/business/extension_cases.md +249 -0
- package/.onto/domains/business/logic_rules.md +134 -0
- package/.onto/domains/business/structure_spec.md +114 -0
- package/.onto/domains/finance/competency_qs.md +362 -0
- package/.onto/domains/finance/concepts.md +194 -0
- package/.onto/domains/finance/conciseness_rules.md +155 -0
- package/.onto/domains/finance/dependency_rules.md +171 -0
- package/.onto/domains/finance/domain_scope.md +215 -0
- package/.onto/domains/finance/extension_cases.md +350 -0
- package/.onto/domains/finance/logic_rules.md +191 -0
- package/.onto/domains/finance/structure_spec.md +182 -0
- package/.onto/domains/llm-native-development/competency_qs.md +430 -0
- package/.onto/domains/llm-native-development/concepts.md +242 -0
- package/.onto/domains/llm-native-development/conciseness_rules.md +163 -0
- package/.onto/domains/llm-native-development/dependency_rules.md +216 -0
- package/.onto/domains/llm-native-development/domain_scope.md +197 -0
- package/.onto/domains/llm-native-development/extension_cases.md +474 -0
- package/.onto/domains/llm-native-development/logic_rules.md +123 -0
- package/.onto/domains/llm-native-development/prompt_interface.md +49 -0
- package/.onto/domains/llm-native-development/structure_spec.md +245 -0
- package/.onto/domains/market-intelligence/competency_qs.md +274 -0
- package/.onto/domains/market-intelligence/concepts.md +233 -0
- package/.onto/domains/market-intelligence/conciseness_rules.md +165 -0
- package/.onto/domains/market-intelligence/dependency_rules.md +197 -0
- package/.onto/domains/market-intelligence/domain_scope.md +231 -0
- package/.onto/domains/market-intelligence/extension_cases.md +425 -0
- package/.onto/domains/market-intelligence/logic_rules.md +247 -0
- package/.onto/domains/market-intelligence/structure_spec.md +209 -0
- package/.onto/domains/ontology/competency_qs.md +394 -0
- package/.onto/domains/ontology/concepts.md +172 -0
- package/.onto/domains/ontology/conciseness_rules.md +134 -0
- package/.onto/domains/ontology/dependency_rules.md +125 -0
- package/.onto/domains/ontology/domain_scope.md +114 -0
- package/.onto/domains/ontology/extension_cases.md +501 -0
- package/.onto/domains/ontology/logic_rules.md +114 -0
- package/.onto/domains/ontology/problem_framing_profile.md +67 -0
- package/.onto/domains/ontology/structure_spec.md +115 -0
- package/.onto/domains/palantir-foundry/RESEARCH_NOTES.md +911 -0
- package/.onto/domains/palantir-foundry/competency_qs.md +191 -0
- package/.onto/domains/palantir-foundry/competitive_comparison.md +329 -0
- package/.onto/domains/palantir-foundry/concepts.md +197 -0
- package/.onto/domains/palantir-foundry/conciseness_rules.md +245 -0
- package/.onto/domains/palantir-foundry/dependency_rules.md +135 -0
- package/.onto/domains/palantir-foundry/domain_scope.md +395 -0
- package/.onto/domains/palantir-foundry/extension_cases.md +210 -0
- package/.onto/domains/palantir-foundry/logic_rules.md +172 -0
- package/.onto/domains/palantir-foundry/structure_spec.md +291 -0
- package/.onto/domains/software-engineering/competency_qs.md +538 -0
- package/.onto/domains/software-engineering/concepts.md +238 -0
- package/.onto/domains/software-engineering/conciseness_rules.md +167 -0
- package/.onto/domains/software-engineering/dependency_rules.md +216 -0
- package/.onto/domains/software-engineering/domain_scope.md +183 -0
- package/.onto/domains/software-engineering/extension_cases.md +551 -0
- package/.onto/domains/software-engineering/logic_rules.md +240 -0
- package/.onto/domains/software-engineering/problem_framing_profile.md +68 -0
- package/.onto/domains/software-engineering/structure_spec.md +185 -0
- package/.onto/domains/ui-design/competency_qs.md +567 -0
- package/.onto/domains/ui-design/concepts.md +194 -0
- package/.onto/domains/ui-design/conciseness_rules.md +190 -0
- package/.onto/domains/ui-design/dependency_rules.md +323 -0
- package/.onto/domains/ui-design/domain_scope.md +340 -0
- package/.onto/domains/ui-design/extension_cases.md +563 -0
- package/.onto/domains/ui-design/logic_rules.md +349 -0
- package/.onto/domains/ui-design/structure_spec.md +252 -0
- package/.onto/domains/visual-design/competency_qs.md +472 -0
- package/.onto/domains/visual-design/concepts.md +147 -0
- package/.onto/domains/visual-design/conciseness_rules.md +186 -0
- package/.onto/domains/visual-design/dependency_rules.md +282 -0
- package/.onto/domains/visual-design/domain_scope.md +290 -0
- package/.onto/domains/visual-design/extension_cases.md +480 -0
- package/.onto/domains/visual-design/logic_rules.md +232 -0
- package/.onto/domains/visual-design/structure_spec.md +213 -0
- package/.onto/principles/llm-native-development-guideline.md +401 -0
- package/.onto/principles/llm-runtime-interface-principles.md +665 -0
- package/.onto/principles/non-specialist-communication-guideline.md +74 -0
- package/.onto/principles/ontology-as-code-guideline.md +243 -0
- package/.onto/principles/ontology-as-code-naming-charter.md +130 -0
- package/.onto/principles/product-locality-principle.md +129 -0
- package/.onto/principles/productization-charter.md +569 -0
- package/.onto/processes/evolve/material-kind-adapter-contract.md +113 -0
- package/.onto/processes/reconstruct/reconstruct-boundary-contract.md +366 -0
- package/.onto/processes/reconstruct/source-profile-contract.md +107 -0
- package/.onto/processes/reconstruct/source-profiles/code.md +72 -0
- package/.onto/processes/reconstruct/source-profiles/database.md +74 -0
- package/.onto/processes/reconstruct/source-profiles/document.md +71 -0
- package/.onto/processes/reconstruct/source-profiles/spreadsheet.md +79 -0
- package/.onto/processes/review/binding-contract.md +270 -0
- package/.onto/processes/review/execution-preparation-artifacts.md +281 -0
- package/.onto/processes/review/interpretation-contract.md +245 -0
- package/.onto/processes/review/issue-stance-deliberation-contract.md +761 -0
- package/.onto/processes/review/lens-prompt-contract.md +402 -0
- package/.onto/processes/review/lens-registry.md +127 -0
- package/.onto/processes/review/pre-dispatch-contracts.md +428 -0
- package/.onto/processes/review/productized-live-path.md +398 -0
- package/.onto/processes/review/prompt-execution-runner-contract.md +187 -0
- package/.onto/processes/review/record-contract.md +427 -0
- package/.onto/processes/review/record-field-mapping.md +337 -0
- package/.onto/processes/review/review-context-manifest-contract.md +356 -0
- package/.onto/processes/review/review-execution-ux-contract.md +809 -0
- package/.onto/processes/review/review-target-profile-contract.md +259 -0
- package/.onto/processes/review/shared-phenomenon-contract.md +129 -0
- package/.onto/processes/review/synthesize-prompt-contract.md +343 -0
- package/.onto/processes/shared/target-material-kind-contract.md +198 -0
- package/.onto/roles/axiology.md +81 -0
- package/.onto/roles/conciseness.md +36 -0
- package/.onto/roles/coverage.md +34 -0
- package/.onto/roles/dependency.md +37 -0
- package/.onto/roles/evolution.md +35 -0
- package/.onto/roles/logic.md +104 -0
- package/.onto/roles/pragmatics.md +32 -0
- package/.onto/roles/semantics.md +36 -0
- package/.onto/roles/structure.md +33 -0
- package/.onto/roles/synthesize.md +92 -0
- package/AGENTS.md +240 -0
- package/CLAUDE.md +39 -0
- package/README.md +287 -0
- package/bin/onto +92 -0
- package/dist/cli.js +101 -0
- package/dist/core-api/reconstruct-api.js +222 -0
- package/dist/core-api/review-api.js +1271 -0
- package/dist/core-runtime/cli/assemble-review-record.js +431 -0
- package/dist/core-runtime/cli/bootstrap-review-binding.js +186 -0
- package/dist/core-runtime/cli/codex-nested-dispatch.js +226 -0
- package/dist/core-runtime/cli/codex-nested-dispatch.test.js +390 -0
- package/dist/core-runtime/cli/codex-nested-teamlead-executor.js +464 -0
- package/dist/core-runtime/cli/codex-nested-teamlead-executor.test.js +335 -0
- package/dist/core-runtime/cli/codex-review-unit-executor.js +228 -0
- package/dist/core-runtime/cli/complete-review-session.js +64 -0
- package/dist/core-runtime/cli/complexity-assessment.js +153 -0
- package/dist/core-runtime/cli/coordinator-helpers.js +583 -0
- package/dist/core-runtime/cli/coordinator-state-machine-deliberation.test.js +167 -0
- package/dist/core-runtime/cli/coordinator-state-machine.js +794 -0
- package/dist/core-runtime/cli/e2e-codex-multi-agent-fixes.test.js +615 -0
- package/dist/core-runtime/cli/e2e-start-review-session.test.js +312 -0
- package/dist/core-runtime/cli/health.js +44 -0
- package/dist/core-runtime/cli/inline-http-review-unit-executor.js +656 -0
- package/dist/core-runtime/cli/inline-http-review-unit-executor.test.js +567 -0
- package/dist/core-runtime/cli/materialize-review-execution-preparation.js +104 -0
- package/dist/core-runtime/cli/materialize-review-prompt-packets.js +952 -0
- package/dist/core-runtime/cli/migrate-session-roots.js +118 -0
- package/dist/core-runtime/cli/mock-review-unit-executor.js +285 -0
- package/dist/core-runtime/cli/onto-tools.js +369 -0
- package/dist/core-runtime/cli/prepare-review-session.js +272 -0
- package/dist/core-runtime/cli/render-review-final-output.js +350 -0
- package/dist/core-runtime/cli/repo-layout-migration-replace.smoke.test.js +106 -0
- package/dist/core-runtime/cli/review-invoke-auto-resolution.test.js +268 -0
- package/dist/core-runtime/cli/review-invoke-coordinator-topology.test.js +136 -0
- package/dist/core-runtime/cli/review-invoke-resolver-caching.test.js +201 -0
- package/dist/core-runtime/cli/review-invoke-topology-dispatch.test.js +192 -0
- package/dist/core-runtime/cli/review-invoke.js +2030 -0
- package/dist/core-runtime/cli/run-review-prompt-execution.js +2152 -0
- package/dist/core-runtime/cli/session-root-guard.js +168 -0
- package/dist/core-runtime/cli/spawn-watcher.js +173 -0
- package/dist/core-runtime/cli/spawn-watcher.test.js +457 -0
- package/dist/core-runtime/cli/start-review-session.js +68 -0
- package/dist/core-runtime/cli/strip-wrapping-code-fence.js +56 -0
- package/dist/core-runtime/cli/strip-wrapping-code-fence.test.js +79 -0
- package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.js +412 -0
- package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.test.js +351 -0
- package/dist/core-runtime/cli/topology-executor-mapping.js +139 -0
- package/dist/core-runtime/cli/topology-executor-mapping.test.js +173 -0
- package/dist/core-runtime/cli/write-review-interpretation.js +81 -0
- package/dist/core-runtime/config/onto-config-cli.js +278 -0
- package/dist/core-runtime/config/onto-config-key-path.js +288 -0
- package/dist/core-runtime/config/onto-config-key-path.test.js +195 -0
- package/dist/core-runtime/config/onto-config-preview.js +108 -0
- package/dist/core-runtime/config/onto-config-preview.test.js +132 -0
- package/dist/core-runtime/discovery/config-chain.js +118 -0
- package/dist/core-runtime/discovery/config-chain.test.js +103 -0
- package/dist/core-runtime/discovery/config-profile.js +199 -0
- package/dist/core-runtime/discovery/config-profile.test.js +233 -0
- package/dist/core-runtime/discovery/host-detection.js +33 -0
- package/dist/core-runtime/discovery/host-detection.test.js +186 -0
- package/dist/core-runtime/discovery/installation-paths.js +21 -0
- package/dist/core-runtime/discovery/installation-paths.test.js +65 -0
- package/dist/core-runtime/discovery/lens-registry.js +60 -0
- package/dist/core-runtime/discovery/lens-registry.test.js +81 -0
- package/dist/core-runtime/discovery/onto-home.js +71 -0
- package/dist/core-runtime/discovery/path-normalization.js +28 -0
- package/dist/core-runtime/discovery/path-normalization.test.js +22 -0
- package/dist/core-runtime/discovery/plugin-path.js +72 -0
- package/dist/core-runtime/discovery/plugin-path.test.js +95 -0
- package/dist/core-runtime/discovery/project-root.js +47 -0
- package/dist/core-runtime/discovery/settings-chain.js +353 -0
- package/dist/core-runtime/discovery/walk-up.js +17 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.js +344 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.test.js +915 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile.js +564 -0
- package/dist/core-runtime/evolve/adapters/code-product/compile/compile.test.js +708 -0
- package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.js +165 -0
- package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.test.js +227 -0
- package/dist/core-runtime/evolve/adapters/code-product/validators/validate.js +59 -0
- package/dist/core-runtime/evolve/adapters/code-product/validators/validate.test.js +205 -0
- package/dist/core-runtime/evolve/adapters/methodology/adapter.js +16 -0
- package/dist/core-runtime/evolve/adapters/methodology/adapter.test.js +9 -0
- package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.js +298 -0
- package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.test.js +70 -0
- package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.js +46 -0
- package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.test.js +73 -0
- package/dist/core-runtime/evolve/adapters/registry.js +47 -0
- package/dist/core-runtime/evolve/adapters/registry.test.js +67 -0
- package/dist/core-runtime/evolve/cli.js +256 -0
- package/dist/core-runtime/evolve/commands/align.js +194 -0
- package/dist/core-runtime/evolve/commands/align.test.js +82 -0
- package/dist/core-runtime/evolve/commands/apply.js +161 -0
- package/dist/core-runtime/evolve/commands/apply.test.js +138 -0
- package/dist/core-runtime/evolve/commands/close.js +39 -0
- package/dist/core-runtime/evolve/commands/close.test.js +99 -0
- package/dist/core-runtime/evolve/commands/defer.js +40 -0
- package/dist/core-runtime/evolve/commands/defer.test.js +134 -0
- package/dist/core-runtime/evolve/commands/draft.js +323 -0
- package/dist/core-runtime/evolve/commands/draft.test.js +178 -0
- package/dist/core-runtime/evolve/commands/e2e-evolve-full-cycle.test.js +208 -0
- package/dist/core-runtime/evolve/commands/error-messages.js +125 -0
- package/dist/core-runtime/evolve/commands/error-messages.test.js +167 -0
- package/dist/core-runtime/evolve/commands/propose-align.js +222 -0
- package/dist/core-runtime/evolve/commands/propose-align.test.js +136 -0
- package/dist/core-runtime/evolve/commands/reconstruct.js +330 -0
- package/dist/core-runtime/evolve/commands/reconstruct.test.js +278 -0
- package/dist/core-runtime/evolve/commands/shared.js +22 -0
- package/dist/core-runtime/evolve/commands/stale-check.js +103 -0
- package/dist/core-runtime/evolve/commands/stale-check.test.js +84 -0
- package/dist/core-runtime/evolve/commands/start.js +887 -0
- package/dist/core-runtime/evolve/commands/start.test.js +396 -0
- package/dist/core-runtime/evolve/config/project-config.js +99 -0
- package/dist/core-runtime/evolve/config/project-config.test.js +170 -0
- package/dist/core-runtime/evolve/renderers/align-packet.js +280 -0
- package/dist/core-runtime/evolve/renderers/align-packet.test.js +332 -0
- package/dist/core-runtime/evolve/renderers/draft-packet.js +303 -0
- package/dist/core-runtime/evolve/renderers/draft-packet.test.js +377 -0
- package/dist/core-runtime/evolve/renderers/format.js +5 -0
- package/dist/core-runtime/evolve/renderers/scope-md.js +237 -0
- package/dist/core-runtime/evolve/renderers/scope-md.test.js +306 -0
- package/dist/core-runtime/govern/cli.js +369 -0
- package/dist/core-runtime/govern/cli.test.js +314 -0
- package/dist/core-runtime/govern/drift-engine.js +103 -0
- package/dist/core-runtime/govern/drift-engine.test.js +319 -0
- package/dist/core-runtime/govern/promote-principle.js +206 -0
- package/dist/core-runtime/govern/promote-principle.test.js +368 -0
- package/dist/core-runtime/govern/queue.js +81 -0
- package/dist/core-runtime/govern/types.js +16 -0
- package/dist/core-runtime/install/cli.js +530 -0
- package/dist/core-runtime/install/detect.js +128 -0
- package/dist/core-runtime/install/detect.test.js +155 -0
- package/dist/core-runtime/install/gitignore-update.js +74 -0
- package/dist/core-runtime/install/gitignore-update.test.js +64 -0
- package/dist/core-runtime/install/install-integration.test.js +373 -0
- package/dist/core-runtime/install/prompts.js +389 -0
- package/dist/core-runtime/install/prompts.test.js +293 -0
- package/dist/core-runtime/install/types.js +26 -0
- package/dist/core-runtime/install/validation.js +295 -0
- package/dist/core-runtime/install/validation.test.js +313 -0
- package/dist/core-runtime/install/writer.js +254 -0
- package/dist/core-runtime/install/writer.test.js +218 -0
- package/dist/core-runtime/learning/extractor.js +461 -0
- package/dist/core-runtime/learning/feedback.js +179 -0
- package/dist/core-runtime/learning/health-report.js +165 -0
- package/dist/core-runtime/learning/health-report.test.js +169 -0
- package/dist/core-runtime/learning/loader.js +388 -0
- package/dist/core-runtime/learning/loader.test.js +102 -0
- package/dist/core-runtime/learning/promote/apply-state.js +240 -0
- package/dist/core-runtime/learning/promote/audit-obligation.js +195 -0
- package/dist/core-runtime/learning/promote/collector.js +432 -0
- package/dist/core-runtime/learning/promote/degraded-state.js +125 -0
- package/dist/core-runtime/learning/promote/domain-doc-proposer.js +166 -0
- package/dist/core-runtime/learning/promote/e2e-promote.test.js +6385 -0
- package/dist/core-runtime/learning/promote/health-snapshot.js +150 -0
- package/dist/core-runtime/learning/promote/insight-reclassifier.js +544 -0
- package/dist/core-runtime/learning/promote/judgment-auditor.js +517 -0
- package/dist/core-runtime/learning/promote/panel-reviewer.js +1158 -0
- package/dist/core-runtime/learning/promote/promote-executor.js +1675 -0
- package/dist/core-runtime/learning/promote/promoter.js +307 -0
- package/dist/core-runtime/learning/promote/retirement.js +122 -0
- package/dist/core-runtime/learning/promote/types.js +23 -0
- package/dist/core-runtime/learning/prompt-sections.js +51 -0
- package/dist/core-runtime/learning/shared/artifact-registry-init.js +45 -0
- package/dist/core-runtime/learning/shared/artifact-registry.js +254 -0
- package/dist/core-runtime/learning/shared/audit-obligation-kernel.js +73 -0
- package/dist/core-runtime/learning/shared/audit-state.js +99 -0
- package/dist/core-runtime/learning/shared/duplicate-check.js +28 -0
- package/dist/core-runtime/learning/shared/llm-caller.js +831 -0
- package/dist/core-runtime/learning/shared/llm-caller.test.js +601 -0
- package/dist/core-runtime/learning/shared/llm-tool-loop.js +393 -0
- package/dist/core-runtime/learning/shared/mode.js +25 -0
- package/dist/core-runtime/learning/shared/paths.js +84 -0
- package/dist/core-runtime/learning/shared/paths.test.js +79 -0
- package/dist/core-runtime/learning/shared/patterns.js +37 -0
- package/dist/core-runtime/learning/shared/recoverability.js +355 -0
- package/dist/core-runtime/learning/shared/recovery-context.js +374 -0
- package/dist/core-runtime/learning/shared/scope.js +1 -0
- package/dist/core-runtime/learning/shared/semantic-classifier.js +94 -0
- package/dist/core-runtime/learning/shared/specs/apply-execution-state-spec.js +42 -0
- package/dist/core-runtime/learning/shared/specs/audit-state-spec.js +37 -0
- package/dist/core-runtime/learning/shared/specs/backup-metadata-spec.js +39 -0
- package/dist/core-runtime/learning/shared/specs/emergency-log-spec.js +41 -0
- package/dist/core-runtime/learning/shared/specs/layout-version-spec.js +38 -0
- package/dist/core-runtime/learning/shared/specs/promote-decisions-spec.js +43 -0
- package/dist/core-runtime/learning/shared/specs/promote-report-spec.js +113 -0
- package/dist/core-runtime/learning/shared/specs/prune-log-spec.js +36 -0
- package/dist/core-runtime/learning/shared/specs/recovery-resolution-spec.js +48 -0
- package/dist/core-runtime/learning/shared/specs/restore-manifest-spec.js +43 -0
- package/dist/core-runtime/learning/shared/specs/spec-helpers.js +64 -0
- package/dist/core-runtime/learning/usage-tracker.js +190 -0
- package/dist/core-runtime/learning/usage-tracker.test.js +176 -0
- package/dist/core-runtime/llm/llm-caller.js +649 -0
- package/dist/core-runtime/llm/llm-tool-loop.js +401 -0
- package/dist/core-runtime/llm/model-switcher.js +62 -0
- package/dist/core-runtime/logger.js +22 -0
- package/dist/core-runtime/onboard/detect-review-axes.js +122 -0
- package/dist/core-runtime/onboard/detect-review-axes.test.js +127 -0
- package/dist/core-runtime/onboard/write-review-block.js +188 -0
- package/dist/core-runtime/onboard/write-review-block.test.js +240 -0
- package/dist/core-runtime/readers/brownfield-builder.js +150 -0
- package/dist/core-runtime/readers/brownfield-builder.test.js +136 -0
- package/dist/core-runtime/readers/code-chunk-collector.js +53 -0
- package/dist/core-runtime/readers/code-chunk-collector.test.js +136 -0
- package/dist/core-runtime/readers/file-utils.js +240 -0
- package/dist/core-runtime/readers/file-utils.test.js +146 -0
- package/dist/core-runtime/readers/lexicon-citation-check.js +93 -0
- package/dist/core-runtime/readers/lexicon-citation-check.test.js +77 -0
- package/dist/core-runtime/readers/mcp-figma.js +30 -0
- package/dist/core-runtime/readers/mcp-figma.test.js +82 -0
- package/dist/core-runtime/readers/mcp-generic.js +31 -0
- package/dist/core-runtime/readers/mcp-generic.test.js +76 -0
- package/dist/core-runtime/readers/ontology-index.js +148 -0
- package/dist/core-runtime/readers/ontology-index.test.js +245 -0
- package/dist/core-runtime/readers/ontology-query.js +168 -0
- package/dist/core-runtime/readers/ontology-query.test.js +311 -0
- package/dist/core-runtime/readers/ontology-resolve.js +48 -0
- package/dist/core-runtime/readers/ontology-resolve.test.js +48 -0
- package/dist/core-runtime/readers/patterns/index.js +7 -0
- package/dist/core-runtime/readers/review-log.js +213 -0
- package/dist/core-runtime/readers/review-log.test.js +313 -0
- package/dist/core-runtime/readers/scan-local.js +102 -0
- package/dist/core-runtime/readers/scan-local.test.js +102 -0
- package/dist/core-runtime/readers/scan-tarball.js +121 -0
- package/dist/core-runtime/readers/scan-tarball.test.js +283 -0
- package/dist/core-runtime/readers/scan-vault.js +34 -0
- package/dist/core-runtime/readers/scan-vault.test.js +81 -0
- package/dist/core-runtime/readers/types.js +42 -0
- package/dist/core-runtime/readers/types.test.js +94 -0
- package/dist/core-runtime/readers/viewpoint-collectors.js +229 -0
- package/dist/core-runtime/reconstruct/artifact-types.js +1 -0
- package/dist/core-runtime/reconstruct/directive-validation.js +123 -0
- package/dist/core-runtime/reconstruct/materialize-preparation.js +251 -0
- package/dist/core-runtime/reconstruct/record.js +198 -0
- package/dist/core-runtime/reconstruct/run.js +578 -0
- package/dist/core-runtime/reconstruct/seed-candidate-validation.js +356 -0
- package/dist/core-runtime/reconstruct/source-observations.js +62 -0
- package/dist/core-runtime/reconstruct/source-profiles.js +73 -0
- package/dist/core-runtime/release-channel/release-channel.js +90 -0
- package/dist/core-runtime/review/artifact-types.js +13 -0
- package/dist/core-runtime/review/citation-audit.js +204 -0
- package/dist/core-runtime/review/citation-audit.test.js +165 -0
- package/dist/core-runtime/review/controlled-lens-deliberation.js +125 -0
- package/dist/core-runtime/review/execution-plan-resolver.js +247 -0
- package/dist/core-runtime/review/execution-plan-resolver.test.js +243 -0
- package/dist/core-runtime/review/execution-topology-resolver-axis-first.test.js +246 -0
- package/dist/core-runtime/review/execution-topology-resolver.js +401 -0
- package/dist/core-runtime/review/execution-topology-resolver.test.js +315 -0
- package/dist/core-runtime/review/failure-records.js +57 -0
- package/dist/core-runtime/review/inline-context-embedder.js +141 -0
- package/dist/core-runtime/review/inline-context-embedder.test.js +154 -0
- package/dist/core-runtime/review/issue-artifact-runtime.js +859 -0
- package/dist/core-runtime/review/legacy-mode-policy.js +88 -0
- package/dist/core-runtime/review/lens-completion-policy.js +17 -0
- package/dist/core-runtime/review/materializers-effort-persist.test.js +79 -0
- package/dist/core-runtime/review/materializers.js +963 -0
- package/dist/core-runtime/review/ontology-path-classifier.js +179 -0
- package/dist/core-runtime/review/ontology-path-classifier.test.js +216 -0
- package/dist/core-runtime/review/packet-boundary-policy.js +215 -0
- package/dist/core-runtime/review/packet-boundary-policy.test.js +107 -0
- package/dist/core-runtime/review/participating-lens-paths.js +61 -0
- package/dist/core-runtime/review/participating-lens-paths.test.js +73 -0
- package/dist/core-runtime/review/review-artifact-utils.js +287 -0
- package/dist/core-runtime/review/review-config-legacy-translate.js +244 -0
- package/dist/core-runtime/review/review-config-legacy-translate.test.js +161 -0
- package/dist/core-runtime/review/review-config-validator.js +289 -0
- package/dist/core-runtime/review/review-config-validator.test.js +236 -0
- package/dist/core-runtime/review/review-execution-profile.js +193 -0
- package/dist/core-runtime/review/review-execution-route.js +52 -0
- package/dist/core-runtime/review/review-progress-contract.js +123 -0
- package/dist/core-runtime/review/review-record-validation.js +251 -0
- package/dist/core-runtime/review/review-result-classification.js +379 -0
- package/dist/core-runtime/review/review-state-machine.js +39 -0
- package/dist/core-runtime/review/route-visibility.js +125 -0
- package/dist/core-runtime/review/shape-pipeline-audit.test.js +311 -0
- package/dist/core-runtime/review/shape-to-topology-id.js +117 -0
- package/dist/core-runtime/review/shape-to-topology-id.test.js +132 -0
- package/dist/core-runtime/review/topology-shape-derivation.js +155 -0
- package/dist/core-runtime/review/topology-shape-derivation.test.js +195 -0
- package/dist/core-runtime/scope-runtime/constants.js +12 -0
- package/dist/core-runtime/scope-runtime/constraint-pool.js +166 -0
- package/dist/core-runtime/scope-runtime/constraint-pool.test.js +674 -0
- package/dist/core-runtime/scope-runtime/domain-validation-log.js +135 -0
- package/dist/core-runtime/scope-runtime/domain-validation-log.test.js +156 -0
- package/dist/core-runtime/scope-runtime/eval-persistence.js +65 -0
- package/dist/core-runtime/scope-runtime/eval-persistence.test.js +84 -0
- package/dist/core-runtime/scope-runtime/event-pipeline.js +64 -0
- package/dist/core-runtime/scope-runtime/event-pipeline.test.js +450 -0
- package/dist/core-runtime/scope-runtime/event-store.js +39 -0
- package/dist/core-runtime/scope-runtime/event-store.test.js +95 -0
- package/dist/core-runtime/scope-runtime/gate-guard.js +348 -0
- package/dist/core-runtime/scope-runtime/gate-guard.test.js +1047 -0
- package/dist/core-runtime/scope-runtime/hash.js +4 -0
- package/dist/core-runtime/scope-runtime/hash.test.js +33 -0
- package/dist/core-runtime/scope-runtime/id.js +4 -0
- package/dist/core-runtime/scope-runtime/id.test.js +17 -0
- package/dist/core-runtime/scope-runtime/reducer.js +297 -0
- package/dist/core-runtime/scope-runtime/reducer.test.js +759 -0
- package/dist/core-runtime/scope-runtime/scope-manager.js +161 -0
- package/dist/core-runtime/scope-runtime/state-machine.js +309 -0
- package/dist/core-runtime/scope-runtime/state-machine.test.js +704 -0
- package/dist/core-runtime/scope-runtime/types.js +116 -0
- package/dist/core-runtime/scope-runtime/types.test.js +69 -0
- package/dist/core-runtime/target-material-kind.js +256 -0
- package/dist/core-runtime/translate/render-for-user.js +169 -0
- package/dist/core-runtime/translate/render-for-user.test.js +122 -0
- package/dist/mcp/server.js +1011 -0
- package/dist/mcp/tool-schemas.js +93 -0
- package/dist/providers/capability-contract.js +1 -0
- package/package.json +68 -0
- package/settings.example.json +33 -0
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
# Review Synthesize Prompt Contract
|
|
2
|
+
|
|
3
|
+
> 상태: Active
|
|
4
|
+
> 목적: 현재 `onto` 프로토타입의 `종합 단계 (synthesize)`가 따라야 하는 `종합 프롬프트 계약 (SynthesizePromptContract)`을 고정한다.
|
|
5
|
+
> 기준 문서:
|
|
6
|
+
> - `.onto/processes/review/lens-registry.md`
|
|
7
|
+
> - `.onto/processes/review/lens-prompt-contract.md`
|
|
8
|
+
> - `.onto/processes/review/issue-stance-deliberation-contract.md`
|
|
9
|
+
> - `.onto/authority/core-lexicon.yaml`
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 1. Position
|
|
14
|
+
|
|
15
|
+
`종합 프롬프트 계약 (SynthesizePromptContract)`은
|
|
16
|
+
`synthesize`가 lens finding을 읽고 final review output을 만드는 단계의 공통 실행 계약이다.
|
|
17
|
+
|
|
18
|
+
이 계약의 source material은 아래다.
|
|
19
|
+
|
|
20
|
+
- `.onto/roles/synthesize.md`
|
|
21
|
+
- `src/core-runtime/cli/materialize-review-prompt-packets.ts`의 synthesize packet materializer
|
|
22
|
+
- `.onto/processes/review/productized-live-path.md`의 canonical review flow
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## 2. Core Role
|
|
27
|
+
|
|
28
|
+
`synthesize`는 독립 lens가 아니다.
|
|
29
|
+
다만 실행 realization은 필요에 따라
|
|
30
|
+
**맥락 격리 추론 단위 (ContextIsolatedReasoningUnit)** 일 수 있다.
|
|
31
|
+
|
|
32
|
+
역할은 아래다.
|
|
33
|
+
|
|
34
|
+
1. lens finding을 읽는다
|
|
35
|
+
2. consensus를 정리한다
|
|
36
|
+
3. disagreement를 보존한다
|
|
37
|
+
4. overlooked premises를 드러낸다
|
|
38
|
+
5. immediate actions와 recommendations를 정리한다
|
|
39
|
+
6. final review output을 작성한다
|
|
40
|
+
|
|
41
|
+
단, purpose/value 관점에서의 추가 검토 관점 제안(`New Perspectives`)은
|
|
42
|
+
`axiology`의 책임이다.
|
|
43
|
+
`synthesize`는 그것이 명시적으로 제시된 경우에만 보존/배치할 수 있다.
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## 2.1 Language Policy
|
|
48
|
+
|
|
49
|
+
Synthesis markdown body 는 **English 고정**이다. 본 body 는 `ReviewRecord` 의 source 이며 audit 의 입력이 되므로 runtime translation path를 두지 않는다.
|
|
50
|
+
|
|
51
|
+
Synthesize 프롬프트 템플릿에는 language setting을 주입하지 않는다. Principal-facing 설명은 synthesis 이후 final output에서 bounded summary와 comprehensive explanation으로 제공한다.
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
## 3. Required Inputs
|
|
56
|
+
|
|
57
|
+
`종합 프롬프트 계약 (SynthesizePromptContract)`의 최소 입력은 아래다.
|
|
58
|
+
|
|
59
|
+
1. participating lens list
|
|
60
|
+
2. lens result file paths
|
|
61
|
+
3. system purpose and principles
|
|
62
|
+
4. resolved review mode
|
|
63
|
+
5. materialized input ref (deliberation 시 evidence 재읽기 대상)
|
|
64
|
+
6. `synthesis_output_path`
|
|
65
|
+
7. contracted context refs
|
|
66
|
+
- participating lens outputs
|
|
67
|
+
- `deliberation.md`
|
|
68
|
+
- execution rule refs
|
|
69
|
+
|
|
70
|
+
### 3.1 Input Expectations (Lens Output Fields)
|
|
71
|
+
|
|
72
|
+
각 lens result file은 `lens-prompt-contract.md` §8 (schema_version: 2)에 따라
|
|
73
|
+
최소 아래 필드를 포함해야 한다. synthesize는 이 필드들의 수신을 필수로 기대한다.
|
|
74
|
+
|
|
75
|
+
- **4-field claim**: `{target, evidence_anchor, claim, lens_id}` — 각 finding별
|
|
76
|
+
- **`upstream_evidence_required`**: 해당 시
|
|
77
|
+
- **`domain_constraints_used`**: 해당 시 (durable provenance 형식)
|
|
78
|
+
- **`domain_context_assumptions`**: 해당 시
|
|
79
|
+
|
|
80
|
+
4필드의 의미와 co-location rule은 `.onto/processes/review/shared-phenomenon-contract.md`가 정의한다.
|
|
81
|
+
이 계약은 수신 필수만 선언하며, 필드 의미를 재정의하지 않는다.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 4. Mandatory Execution Rules
|
|
86
|
+
|
|
87
|
+
`synthesize`는 아래 규칙을 지켜야 한다.
|
|
88
|
+
|
|
89
|
+
1. 새로운 독립 관점을 추가하지 않는다
|
|
90
|
+
2. lens finding을 건너뛰고 ad hoc 결론을 만들지 않는다
|
|
91
|
+
3. unresolved disagreement를 묵살하지 않는다
|
|
92
|
+
4. lens 간 disagreement resolution은 synthesize 이전의 controlled lens deliberation 결과를 따른다
|
|
93
|
+
5. review 이후의 learn/govern surface를 정의하지 않는다
|
|
94
|
+
6. `New Perspectives`를 스스로 invent하지 않는다
|
|
95
|
+
7. `Purpose Alignment Verification`은 독립 판단으로 새로 만들지 않고, `axiology` finding을 보존적으로 반영한다
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## 5. Output Obligation
|
|
100
|
+
|
|
101
|
+
현재 프로토타입 기준의 synthesize output은 markdown 파일이다.
|
|
102
|
+
|
|
103
|
+
최소 아래를 포함해야 한다.
|
|
104
|
+
|
|
105
|
+
또한 output은 YAML frontmatter로 시작해야 하며, 최소 아래 field를 가져야 한다.
|
|
106
|
+
|
|
107
|
+
```yaml
|
|
108
|
+
---
|
|
109
|
+
deliberation_status: performed
|
|
110
|
+
participation:
|
|
111
|
+
expected_lenses: [<lens_id>, ...] # binding 이 active 로 선언한 lens id 목록
|
|
112
|
+
received_lenses: [<lens_id>, ...] # output 을 성공적으로 산출한 lens id
|
|
113
|
+
missing_or_failed_lenses: # expected 에 있으나 received 에 없는 lens
|
|
114
|
+
- { lens_id: <id>, reason: missing | failed | abstained }
|
|
115
|
+
run_status: full | degraded | insufficient
|
|
116
|
+
---
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### 5.1 `deliberation_status` 값 규칙
|
|
120
|
+
|
|
121
|
+
완료된 synthesize output은 `performed`만 선언한다.
|
|
122
|
+
|
|
123
|
+
- `performed`: synthesize 이전에 controlled lens deliberation이 실행되었고 synthesize가 그 결과를 소비한 경우.
|
|
124
|
+
|
|
125
|
+
### 5.2 Participation completeness (IA-2)
|
|
126
|
+
|
|
127
|
+
- `expected_lenses` / `received_lenses` / `missing_or_failed_lenses` / `run_status` 는 `.onto/roles/synthesize.md` §Participation completeness 가 요구하는 측정 결과의 직렬화다
|
|
128
|
+
- `run_status` 매핑: `full` = expected == received. `degraded` = received 가 expected 의 non-empty 부분집합. `insufficient` = received 가 비어있거나 `axiology` 단독
|
|
129
|
+
- `run_status=insufficient` 이면 consensus / disagreement 섹션은 "data insufficient" marker 로 남기고 합의 claim 을 produce 하지 않는다
|
|
130
|
+
- 이 frontmatter 는 degraded run 을 full consensus 로 오독하는 것을 방지하는 audit 근거다
|
|
131
|
+
|
|
132
|
+
### 5.2.1 Internal Body vs Final Review Summary (Output Structural Split)
|
|
133
|
+
|
|
134
|
+
> **Status**: contract established, implementation deferred. 구현 trigger 조건 + scope 는 `.onto/processes/review/lens-prompt-contract.md §8.5` 와 동일 — 본 절은 lens 쪽 contract 의 synthesize 대응을 선언한다.
|
|
135
|
+
|
|
136
|
+
#### 5.2.1.1 두 층의 경계
|
|
137
|
+
|
|
138
|
+
| 층 | 섹션 범위 | 소비자 | 언어 정책 |
|
|
139
|
+
|---|---|---|---|
|
|
140
|
+
| **Internal Body** | §5.3 의 section list (1-12 번) 전체 | ReviewRecord assembler, audit | English 고정 |
|
|
141
|
+
| **Final Review Summary** | §5.3 의 items 중 Principal 직접 소비 가치가 있는 subset 의 prose 요약 | Principal | final output stage에서 제공 |
|
|
142
|
+
|
|
143
|
+
#### 5.2.1.2 Synthesize 특유 rationale
|
|
144
|
+
|
|
145
|
+
Synthesize 는 Principal 이 **primary 소비자**이지만, 구조 (frontmatter + section list + per-item provenance) 는 ReviewRecord와 audit을 위해 고정되어 있다 (§5.3 canonical taxonomy, §5.5 provenance). 두 소비자를 동시에 서빙하려면:
|
|
146
|
+
|
|
147
|
+
- Internal Body 는 §5.3 canonical taxonomy + §5.5 per-item provenance 유지 (machine-readable)
|
|
148
|
+
- Final Review Summary 는 Internal Body 의 key findings 을 prose 로 재진술 (human-readable)
|
|
149
|
+
|
|
150
|
+
본 split 없이 synthesize output 전체를 번역하면 ReviewRecord가 번역된 텍스트 기반이 되어 cross-session 비교가 어려워진다.
|
|
151
|
+
|
|
152
|
+
#### 5.2.1.3 Contract invariant (구현 시)
|
|
153
|
+
|
|
154
|
+
- Internal Body section list (§5.3) 는 변경되지 않음
|
|
155
|
+
- Final Review Summary 는 Internal Body 에 없는 claim 도입 금지 (재진술만)
|
|
156
|
+
- lexicon term 취급: canonical identifier 우선 보존
|
|
157
|
+
|
|
158
|
+
#### 5.2.1.4 ReviewRecord 영향
|
|
159
|
+
|
|
160
|
+
record-contract §4.5 Synthesis Layer 는 Internal Body 만 source. Final Review Summary 는 final output stage에서 생성하므로 ReviewRecord schema 추가 필드 불필요.
|
|
161
|
+
|
|
162
|
+
### 5.3 Section list (canonical taxonomy)
|
|
163
|
+
|
|
164
|
+
아래는 이 contract 가 정하는 **단독 canonical section 명칭** 이다. 동의어는 §5.4 alias map 을 따르며 이 list 로 정규화한다.
|
|
165
|
+
|
|
166
|
+
1. consensus
|
|
167
|
+
2. conditional consensus
|
|
168
|
+
3. disagreement
|
|
169
|
+
4. overlooked premises
|
|
170
|
+
5. axiology-proposed additional perspectives (if any)
|
|
171
|
+
6. purpose alignment verification
|
|
172
|
+
7. immediate actions
|
|
173
|
+
8. recommendations
|
|
174
|
+
9. unique finding tagging
|
|
175
|
+
10. deliberation decision
|
|
176
|
+
11. final review result — principal-facing comprehensive explanation of the bounded review result. It explains what to conclude from the target/boundary, review target profile, root-cause issue clusters, lens agreement and disagreement, controlled deliberation outcome, problem-framing classification, closure/timing/obligation, and practical next step. It must be grounded in lens outputs and issue artifacts and must not introduce independent findings
|
|
177
|
+
12. shared phenomenon summary — 동일 phenomenon에 대한 다중 lens claim이 있는 경우, claim relation 분류 결과를 명시한다 (corroboration / disagreement / partial overlap / dedup). 분류 규칙은 `.onto/processes/review/shared-phenomenon-contract.md` §4를 따른다. 이 계약은 분류 규칙을 재정의하지 않는다
|
|
178
|
+
|
|
179
|
+
### 5.4 Alias map (IA-3)
|
|
180
|
+
|
|
181
|
+
canonical label 과 자주 drift 되는 alias 쌍. synthesis output 은 canonical label 만 사용한다.
|
|
182
|
+
|
|
183
|
+
| Canonical | Alias (금지) |
|
|
184
|
+
|---|---|
|
|
185
|
+
| `disagreement` | `contradiction`, `conflict` (lens 간 의견 차이 의미일 때) |
|
|
186
|
+
| `conditional consensus` | `conditional agreement`, `conditional agreement (with stipulation)` |
|
|
187
|
+
| `immediate actions` | `recommended actions (urgent)`, `required actions` |
|
|
188
|
+
| `recommendations` | `recommended actions (non-urgent)`, `suggestions` |
|
|
189
|
+
| `axiology-proposed additional perspectives` | `axiology-proposed new perspectives`, `new perspectives` (role header 제외) |
|
|
190
|
+
|
|
191
|
+
alias 발견 시 synthesis output 은 canonical 로 정규화한다. prompt packet materializer 는 §5.3 label 만 emit 한다.
|
|
192
|
+
|
|
193
|
+
### 5.5 Per-item provenance (IA-4)
|
|
194
|
+
|
|
195
|
+
sections 1–12 의 각 item 은 아래 provenance 필드를 갖는다. 명시 형식은 markdown 내 bullet 로 기술한다 (직렬 예시 §5.5.1).
|
|
196
|
+
|
|
197
|
+
- **supporting_lenses** — 이 item 의 claim 을 지지한 lens id 목록
|
|
198
|
+
- **contesting_lenses** — 이 item 에 대해 반대 claim 을 제기한 lens id 목록. 없으면 빈 배열
|
|
199
|
+
- **adjudication_basis** — 이견이 해소된 경우 `.onto/roles/synthesize.md` §Adjudication boundary 의 3 경로 중 어느 것 (`cited_lens_output` / `declared_rule_resolved_artifact` / `deliberation_artifact`) + 해당 근거 anchor (파일 경로 / lens output 위치). 미해소 시 `unresolved`
|
|
200
|
+
- **evidence_gaps** — 해소에 부족한 증거 영역 (있는 경우, 1~2 문장)
|
|
201
|
+
|
|
202
|
+
#### 5.5.1 직렬 예시
|
|
203
|
+
|
|
204
|
+
```markdown
|
|
205
|
+
- **consensus-1**: 모든 lens 가 X 접근이 목적 정렬에 부합한다고 판단한다.
|
|
206
|
+
- supporting_lenses: [logic, structure, semantics, dependency, pragmatics, evolution, coverage, conciseness, axiology]
|
|
207
|
+
- contesting_lenses: []
|
|
208
|
+
- adjudication_basis: cited_lens_output (round1/logic.md §3, round1/structure.md §2, ...)
|
|
209
|
+
- evidence_gaps: null
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### 5.6 Immediate actions priority rule (IA-1)
|
|
213
|
+
|
|
214
|
+
§5.3 item 7 `immediate actions` 에 부여되는 priority 는 아래 중 하나의 declared source 에 근거해야 한다.
|
|
215
|
+
|
|
216
|
+
- cited lens output 이 "immediate" 또는 "blocking" 으로 표기한 finding
|
|
217
|
+
- declared rule-resolved artifact (예: `shared-phenomenon-contract` 가 blocking 으로 분류)
|
|
218
|
+
- deliberation artifact 가 priority 를 명시
|
|
219
|
+
|
|
220
|
+
위 source 중 어느 것도 없는 action 은 `recommendations` (§5.3 item 8) 로 분류하거나 priority 없이 `immediate actions` 에 unprioritized marker 와 함께 유지한다. synthesize 가 "합리적 판단" 으로 priority 를 부여하는 것은 §Adjudication boundary 금지 경로다.
|
|
221
|
+
|
|
222
|
+
**Runtime packet과의 정합성**: 위 12개 항목 중 11 (final review result)은 현 runtime packet (`materialize-review-prompt-packets.ts`)에서 별도 heading으로 강제한다. 4 (overlooked premises)와 12 (shared phenomenon summary)는 현 runtime packet이 별도 heading으로 강제하지 않으며, 9개 분류 섹션 (Consensus / Conditional Consensus / Disagreement / Unique Finding Tagging)이 적용하는 Tagging Completeness Rule에 흡수된다. 4와 12를 별도 heading으로 부활시킬지 또는 이 contract에서 제거할지는 packet 갱신 PR이 단일 결정 seat이며, 본 contract는 그 결정 시점까지 12개 enumeration을 conceptual reference로 보존한다.
|
|
223
|
+
|
|
224
|
+
즉 현재 prompt-backed reference path에서는
|
|
225
|
+
`synthesis markdown`이 canonical prompt output이다.
|
|
226
|
+
|
|
227
|
+
later productization에서는 이 output이
|
|
228
|
+
`ReviewRecord`의 human-readable layer source가 된다.
|
|
229
|
+
|
|
230
|
+
aggregate primary artifact는
|
|
231
|
+
`.onto/processes/review/record-contract.md`에서 정의하는 `ReviewRecord`다.
|
|
232
|
+
|
|
233
|
+
---
|
|
234
|
+
|
|
235
|
+
## 6. Deliberation Rule
|
|
236
|
+
|
|
237
|
+
### 6.1 Canonical Deliberation Position
|
|
238
|
+
|
|
239
|
+
Deliberation은 synthesize 내부 동작이 아니다.
|
|
240
|
+
|
|
241
|
+
Review는 Round 1 lens 실행 뒤 synthesize 전에 controlled lens deliberation을 수행하고,
|
|
242
|
+
그 결과를 `{session_root}/deliberation.md`에 기록한다.
|
|
243
|
+
|
|
244
|
+
canonical properties:
|
|
245
|
+
|
|
246
|
+
1. lens별 deliberation response는 fresh bounded context에서 실행된다.
|
|
247
|
+
2. 각 response 입력은 자기 Round 1 출력과 다른 participating lens 출력으로 제한된다.
|
|
248
|
+
3. teamlead-controlled deliberation result가 합의, 조건부 합의, 지속 이견, resolution을 기록한다.
|
|
249
|
+
4. synthesize는 `deliberation.md`를 읽고 보존적으로 최종 review output을 작성한다.
|
|
250
|
+
5. synthesize는 새로운 disagreement resolution을 만들지 않는다.
|
|
251
|
+
|
|
252
|
+
MCP/TS runtime에서는 이 의미론을 provider 독립 packet으로 실현한다.
|
|
253
|
+
|
|
254
|
+
Issue-stance deliberation target에서는 synthesize가 추가로 아래 artifact를 소비한다.
|
|
255
|
+
|
|
256
|
+
- `{session_root}/finding-ledger.yaml`
|
|
257
|
+
- `{session_root}/finding-relation-graph.yaml`
|
|
258
|
+
- `{session_root}/issue-ledger.yaml`
|
|
259
|
+
- `{session_root}/issue-stance-matrix.yaml`
|
|
260
|
+
- `{session_root}/deliberation-plan.yaml`
|
|
261
|
+
- `{session_root}/deliberation.md`
|
|
262
|
+
- `{session_root}/problem-framing.yaml`
|
|
263
|
+
- `{session_root}/execution-preparation/review-target-profile.yaml`
|
|
264
|
+
|
|
265
|
+
이 경우 synthesize는 issue status를 새로 판정하지 않는다.
|
|
266
|
+
`no-deliberation-needed`, `resolved`, `narrowed`, `unresolved-with-reason`은
|
|
267
|
+
`.onto/processes/review/issue-stance-deliberation-contract.md`가 소유한다.
|
|
268
|
+
또한 synthesize는 `problem-framing.yaml`의 common spine, timing, closure, closure obligation, domain axes classification을 변경하지 않는다.
|
|
269
|
+
Domain-specific axes are loaded and applied before synthesize from `.onto/domains/{domain}/problem_framing_profile.md`.
|
|
270
|
+
|
|
271
|
+
### 6.2 frontmatter `deliberation_status`
|
|
272
|
+
|
|
273
|
+
Synthesize output은 `deliberation_status: performed`를 emit해야 한다.
|
|
274
|
+
이 값은 synthesize가 deliberation actor였다는 뜻이 아니라,
|
|
275
|
+
synthesize가 required controlled deliberation artifact를 소비했다는 뜻이다.
|
|
276
|
+
|
|
277
|
+
### 6.3 `deliberation.md` artifact 위상
|
|
278
|
+
|
|
279
|
+
`{session_root}/deliberation.md`는 conflict-resolution authority다.
|
|
280
|
+
|
|
281
|
+
- 존재하지 않으면 completed review로 assemble할 수 없다.
|
|
282
|
+
- frontmatter는 `deliberation_status: performed`를 선언해야 한다.
|
|
283
|
+
- `Deliberation Decision`은 contested point별로 resolved / narrowed / unresolved-with-reason을 기록한다.
|
|
284
|
+
- synthesize output의 `Deliberation Decision` 섹션은 이 artifact를 보존적으로 반영한다.
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
## 7. Example Prompt Skeleton
|
|
289
|
+
|
|
290
|
+
```text
|
|
291
|
+
You are synthesize.
|
|
292
|
+
|
|
293
|
+
[Your Definition]
|
|
294
|
+
{Content of .onto/roles/synthesize.md}
|
|
295
|
+
|
|
296
|
+
[Context Self-Loading]
|
|
297
|
+
{lens outputs / deliberation artifact / execution rules}
|
|
298
|
+
|
|
299
|
+
[Language Policy]
|
|
300
|
+
Respond in English. Reasoning, tool arguments, YAML / markdown emits, and
|
|
301
|
+
hand-offs to other agents stay English-only.
|
|
302
|
+
Final principal-facing explanation is produced after synthesize from bounded
|
|
303
|
+
review artifacts.
|
|
304
|
+
|
|
305
|
+
[Task Directives]
|
|
306
|
+
- Read all lens result files, the materialized input, and `{session_root}/deliberation.md`.
|
|
307
|
+
- Preserve consensus and original lens positions in Disagreement.
|
|
308
|
+
- Preserve the controlled deliberation decisions; do not create a new resolution inside synthesize.
|
|
309
|
+
- Set frontmatter deliberation_status to `performed`.
|
|
310
|
+
- Write the final synthesis output to {synthesis_output_path}.
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
---
|
|
314
|
+
|
|
315
|
+
## 8. What This Contract Must Not Do
|
|
316
|
+
|
|
317
|
+
이 계약은 아래를 하면 안 된다.
|
|
318
|
+
|
|
319
|
+
1. 독립 lens처럼 자기만의 별도 검증 관점을 추가한다
|
|
320
|
+
2. `axiology`를 대체한다
|
|
321
|
+
3. lens evidence 없이 결론을 덮어쓴다
|
|
322
|
+
4. `New Perspectives`를 독자적으로 제안한다
|
|
323
|
+
|
|
324
|
+
즉 `synthesize`는
|
|
325
|
+
새로운 검증자가 아니라 `구조 보존형 종합 단계`다.
|
|
326
|
+
|
|
327
|
+
가능한 realization 예와 deliberation 경로 (§6.1):
|
|
328
|
+
|
|
329
|
+
| Realization | Deliberation 경로 |
|
|
330
|
+
|---|---|
|
|
331
|
+
| `worker + codex` | bounded deliberation packet |
|
|
332
|
+
| `direct-call + provider` | bounded deliberation packet |
|
|
333
|
+
|
|
334
|
+
모든 realization은 synthesize 전에 같은 `deliberation.md` artifact를 생성한다.
|
|
335
|
+
|
|
336
|
+
---
|
|
337
|
+
|
|
338
|
+
## 9. Immediate Follow-up
|
|
339
|
+
|
|
340
|
+
다음 단계는 아래다.
|
|
341
|
+
|
|
342
|
+
1. provider별 controlled deliberation conformance harness를 확장한다
|
|
343
|
+
2. `learn` / `govern`의 MCP-native surface를 별도 설계한다
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
# Target Material Kind Contract
|
|
2
|
+
|
|
3
|
+
> Status: design goal contract, partially registered in core lexicon.
|
|
4
|
+
> Purpose: define the cross-process goal for material-aware target handling
|
|
5
|
+
> across `review`, `reconstruct`, and future `evolve`.
|
|
6
|
+
|
|
7
|
+
## 1. Goal Statement
|
|
8
|
+
|
|
9
|
+
Establish a material-aware runtime contract so `review`, `reconstruct`, and
|
|
10
|
+
future `evolve` can classify non-code targets and route them to appropriate
|
|
11
|
+
observation, validation, artifact, and UX contracts without collapsing material
|
|
12
|
+
type into domain, medium, target input kind, or semantic interpretation.
|
|
13
|
+
|
|
14
|
+
In product terms:
|
|
15
|
+
|
|
16
|
+
```text
|
|
17
|
+
Targets are not assumed to be code.
|
|
18
|
+
Runtime first classifies how the target must be read.
|
|
19
|
+
LLM then interprets what the target means for the declared purpose.
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## 2. Scope Boundary
|
|
23
|
+
|
|
24
|
+
This goal includes:
|
|
25
|
+
|
|
26
|
+
- the shared `target_material_kind` axis
|
|
27
|
+
- review target profile schema alignment
|
|
28
|
+
- reconstruct source profile and source observation alignment
|
|
29
|
+
- material-aware unsupported/fail-loud behavior
|
|
30
|
+
- artifact refs that preserve the detected material kind
|
|
31
|
+
- user-facing presentation of material support and limitations
|
|
32
|
+
|
|
33
|
+
This goal excludes:
|
|
34
|
+
|
|
35
|
+
- automatic ontology Seed generation by runtime
|
|
36
|
+
- full spreadsheet, document, database, or code semantic parsing
|
|
37
|
+
- full `evolve` implementation
|
|
38
|
+
- MCP exposure before runtime contracts and conformance tests exist
|
|
39
|
+
- material-specific expert engines beyond the minimum adapter contract
|
|
40
|
+
|
|
41
|
+
## 3. Shared Axis
|
|
42
|
+
|
|
43
|
+
`target_material_kind` is owned by `.onto/authority/core-lexicon.yaml`.
|
|
44
|
+
|
|
45
|
+
Allowed values:
|
|
46
|
+
|
|
47
|
+
| Value | Meaning |
|
|
48
|
+
|---|---|
|
|
49
|
+
| `code` | Source code, package, service, script, test, config, schema, or implementation bundle. |
|
|
50
|
+
| `spreadsheet` | Workbook, sheet, CSV, accounting schedule, formula model, report, or tabular calculation artifact. |
|
|
51
|
+
| `document` | Prose, requirements, policy, guide, report, contract, PDF, DOCX, Markdown, or similar textual artifact. |
|
|
52
|
+
| `database` | Database connection, schema, migration, SQL file, warehouse model, table, view, or query artifact. |
|
|
53
|
+
| `mixed` | Bundle containing more than one material kind. Each member needs its own material classification. |
|
|
54
|
+
| `unknown` | Runtime cannot classify the material safely. Adapter execution must halt or ask for clarification. |
|
|
55
|
+
|
|
56
|
+
The axis is separate from:
|
|
57
|
+
|
|
58
|
+
| Axis | Question answered |
|
|
59
|
+
|---|---|
|
|
60
|
+
| `domain` | What is the target about? |
|
|
61
|
+
| `medium` | Which cross-product implementation or reference frame accumulates reusable learning? |
|
|
62
|
+
| `target_input_kind` | How did the target enter runtime? |
|
|
63
|
+
| `artifact_roles` | What responsibility does the artifact carry in this run? |
|
|
64
|
+
| review context `source_kind` | Which context-source artifact is being admitted into prompt packets? |
|
|
65
|
+
|
|
66
|
+
## 4. Cross-Process Alignment
|
|
67
|
+
|
|
68
|
+
| Process | Required alignment |
|
|
69
|
+
|---|---|
|
|
70
|
+
| `review` | `review-target-profile.yaml` records `target_material_kind`; review must not claim material-aware validation before per-material validators exist. |
|
|
71
|
+
| `reconstruct` | Source profiles, source adapters, source observations, and directive validation must be keyed by `target_material_kind`. |
|
|
72
|
+
| `evolve` | Future adapters must not assume code-product inputs; adapter selection should start from `target_material_kind` as defined in `.onto/processes/evolve/material-kind-adapter-contract.md`. |
|
|
73
|
+
|
|
74
|
+
## 5. Artifact Contract Additions
|
|
75
|
+
|
|
76
|
+
| Artifact | Required change |
|
|
77
|
+
|---|---|
|
|
78
|
+
| `review-target-profile.yaml` | Preserve `target_material_kind`, detection confidence, confidence basis, and unsupported-material state. |
|
|
79
|
+
| `target-material-profile.yaml` | New reconstruct runtime artifact for material candidates, selected material kind, selected profiles, and support state. |
|
|
80
|
+
| `source-inventory.yaml` | Preserve material-specific inventory units and scan boundaries. |
|
|
81
|
+
| `source-observations.yaml` | Include stable observation ids, material kind, adapter id, location, and structural data. |
|
|
82
|
+
| `source-observation-directive-validation.yaml` | Preserve runtime validation of LLM-selected observation refs against `source-observations.yaml`. |
|
|
83
|
+
| `seed-candidate-validation.yaml` | Preserve runtime validation that LLM-authored Seed claims cite selected runtime observations without runtime generating ontology meaning. |
|
|
84
|
+
| `reconstruct-record.yaml` | Preserve refs to material profile, inventory, observations, directives, metrics, and final disposition. |
|
|
85
|
+
| future `evolve-target-profile.yaml` | Preserve target refs, `target_material_kind`, support status, and boundary refs before any evolve adapter dispatch. |
|
|
86
|
+
|
|
87
|
+
Artifact names remain contract-owned. Runtime implementation must either match
|
|
88
|
+
these shapes or update the owning contract before code lands.
|
|
89
|
+
|
|
90
|
+
## 6. Runtime Replacement Steps
|
|
91
|
+
|
|
92
|
+
Implementation should proceed in this order:
|
|
93
|
+
|
|
94
|
+
| Step | Status |
|
|
95
|
+
|---|---|
|
|
96
|
+
| Add a shared `target_material_kind` detection helper. | implemented |
|
|
97
|
+
| Extend `review-target-profile.yaml` schema and materializer. | implemented |
|
|
98
|
+
| Add reconstruct source profile loader. | implemented |
|
|
99
|
+
| Add unsupported/fail-loud behavior for `unknown` and unsupported formats. | implemented for the current minimal adapter contract: unknown and unsupported refs are recorded and skipped without adapter dispatch |
|
|
100
|
+
| Implement one minimal source adapter, preferably `document` or `spreadsheet`. | implemented: minimal structural observers write source observations for concrete material refs |
|
|
101
|
+
| Define `source-observations.yaml` schema with stable observation ids. | implemented for preparation helper |
|
|
102
|
+
| Validate directive evidence refs against observation ids. | implemented for `SourceObservationDirective` |
|
|
103
|
+
| Validate Seed candidate claims against selected observation evidence refs. | implemented for `SeedCandidateDirective` helper |
|
|
104
|
+
| Assemble reconstruct artifact refs into `reconstruct-record.yaml`. | implemented as record helper |
|
|
105
|
+
| Add a reconstruct Core API facade over bounded runtime helpers. | implemented for preparation, profile listing, directive validation, and record assembly |
|
|
106
|
+
| Add MCP schemas only after runtime contracts and tests exist. | implemented for `onto.list_source_profiles`, `onto.observe_source`, and `onto.validate_reconstruct_directive`; metrics remain future |
|
|
107
|
+
|
|
108
|
+
Each step should replace one deterministic boundary. LLM-owned semantic
|
|
109
|
+
judgment remains outside the runtime replacement steps.
|
|
110
|
+
|
|
111
|
+
## 7. Validation Rules
|
|
112
|
+
|
|
113
|
+
Runtime must validate:
|
|
114
|
+
|
|
115
|
+
- `target_material_kind` is one of the allowed values
|
|
116
|
+
- `unknown` does not dispatch a material adapter
|
|
117
|
+
- `mixed` records per-member material kinds
|
|
118
|
+
- unsupported formats halt or degrade explicitly
|
|
119
|
+
- source observations do not claim ontology facts such as entity, relation,
|
|
120
|
+
business rule, aggregate root, or policy meaning
|
|
121
|
+
- LLM-authored directives reference existing observation ids
|
|
122
|
+
- evidence refs preserve source location and material kind
|
|
123
|
+
- MCP results expose bounded facts and artifact refs, not semantic repairs
|
|
124
|
+
|
|
125
|
+
## 8. Prompt-Backed Reference Runs
|
|
126
|
+
|
|
127
|
+
Before full runtime implementation, at least one prompt-backed reference run
|
|
128
|
+
must produce the planned artifact shapes and an acceptance observation.
|
|
129
|
+
|
|
130
|
+
Recommended reference targets:
|
|
131
|
+
|
|
132
|
+
| Target | Purpose |
|
|
133
|
+
|---|---|
|
|
134
|
+
| Spreadsheet reconstruct | Prove material observation without accounting-meaning inference. |
|
|
135
|
+
| Document reconstruct | Prove section/quote/reference observation without business-rule inference. |
|
|
136
|
+
| Mixed bundle review or reconstruct | Prove per-member material classification and cross-material refs. |
|
|
137
|
+
|
|
138
|
+
Reference runs must preserve invocation/binding, material profiling, evidence
|
|
139
|
+
refs, unsupported states, and user-facing result separation.
|
|
140
|
+
|
|
141
|
+
Current evidence:
|
|
142
|
+
|
|
143
|
+
- `development-records/reference/20260527-target-material-kind-reference-evidence.md`
|
|
144
|
+
records a spreadsheet review reference run proving the first material-aware
|
|
145
|
+
review target profile step.
|
|
146
|
+
- `development-records/reference/20260527-reconstruct-material-kind-reference-evidence.md`
|
|
147
|
+
records a spreadsheet reconstruct reference slice proving material profiling,
|
|
148
|
+
source observation, LLM-authored directive evidence validation, and
|
|
149
|
+
`reconstruct-record.yaml` assembly. MCP conformance now covers the initial
|
|
150
|
+
reconstruct tool surface. The reference does not close user confirmation,
|
|
151
|
+
metrics, revision, full reconstruct workflow, or evolve runtime integration.
|
|
152
|
+
|
|
153
|
+
## 9. UX Output Contract
|
|
154
|
+
|
|
155
|
+
Opening output should expose:
|
|
156
|
+
|
|
157
|
+
- selected environment, process, model, and domain
|
|
158
|
+
- requested target and detected `target_material_kind`
|
|
159
|
+
- planned material reading strategy
|
|
160
|
+
- unsupported or partial-support status
|
|
161
|
+
- runtime responsibilities and LLM responsibilities
|
|
162
|
+
|
|
163
|
+
Progress output should expose:
|
|
164
|
+
|
|
165
|
+
- material detection result
|
|
166
|
+
- inventory completion
|
|
167
|
+
- observation counts by material kind
|
|
168
|
+
- directive validation status
|
|
169
|
+
- unsupported, unknown, or skipped material members
|
|
170
|
+
|
|
171
|
+
Result output should separate:
|
|
172
|
+
|
|
173
|
+
- material observations collected
|
|
174
|
+
- semantic claims promoted by LLM directives
|
|
175
|
+
- evidence gaps
|
|
176
|
+
- unsupported or out-of-scope material
|
|
177
|
+
- next action candidates
|
|
178
|
+
|
|
179
|
+
The output contract should be rendered by the host LLM from runtime facts or by
|
|
180
|
+
existing CLI/MCP status surfaces. Do not add a separate HTML implementation just
|
|
181
|
+
to display this progress.
|
|
182
|
+
|
|
183
|
+
## 10. Goal Completion Conditions
|
|
184
|
+
|
|
185
|
+
This design goal is implementation-ready when:
|
|
186
|
+
|
|
187
|
+
1. `target_material_kind` is present in core lexicon and process contracts.
|
|
188
|
+
2. Review and reconstruct contracts agree on the axis and naming boundaries.
|
|
189
|
+
3. `source_kind` is not overloaded for material classification.
|
|
190
|
+
4. Legacy `fact_type` is not used for new source observations.
|
|
191
|
+
5. Artifact additions and validation rules are documented.
|
|
192
|
+
6. The prompt-backed reference-run requirement is documented.
|
|
193
|
+
7. Runtime replacement steps are small enough to implement and verify one by
|
|
194
|
+
one.
|
|
195
|
+
|
|
196
|
+
It is implementation-complete only when the corresponding runtime schemas,
|
|
197
|
+
materializers, adapters, validators, tests, and MCP surfaces have been added for
|
|
198
|
+
the selected product slice.
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
# axiology
|
|
2
|
+
|
|
3
|
+
## Perspective
|
|
4
|
+
|
|
5
|
+
이 lens는 대상 시스템을 **가치 정렬과 목적 부합**의 관점에서 본다. 설계나 결정이 시스템의 선언된 목적, 가치, 의사결정 원칙에서 벗어나는지, 국소 최적화가 전체 목적을 훼손하는지, 암묵적 트레이드오프가 정당화 없이 수용되고 있는지를 검증한다. 이 lens의 관심은 "목적과 가치에 정렬되어 있는가"이다.
|
|
6
|
+
|
|
7
|
+
이 관점은 가치/목적 정렬에만 초점을 둔다. 다른 모든 lens finding 을 집계하여 최종 결과를 만드는 것은 `synthesize` 의 역할이며 axiology 로 이동하지 않는다. 형식 논리적 모순 · 구조적 · 의존성 결함의 1차 탐지는 별도 관점의 범위이고, axiology 는 그러한 결함이 가치·목적에 미치는 영향을 평가한다. 본 review 1 회 실행에서 active lens set 은 확정되어 있으며, axiology 는 본 role 단독으로 신규 독립 lens 를 추가할 수 없다 (§New Perspectives 는 현재 lens set 을 변경하지 않는다).
|
|
8
|
+
|
|
9
|
+
### Observation focus
|
|
10
|
+
|
|
11
|
+
가치 충돌, 목적 drift, 규범적으로 정렬되지 않은 트레이드오프, 국소 최적화로 인한 전체 목적 훼손, 당연시되지만 목적과 무관한 전제, 현재 lens set 이 놓치고 있는 purpose-critical 관점.
|
|
12
|
+
|
|
13
|
+
### Assertion type
|
|
14
|
+
|
|
15
|
+
가치 정렬 진술: "이 결정은 시스템의 선언된 목적에서 벗어난다", "국소 최적화가 X 가치 약속을 훼손한다".
|
|
16
|
+
|
|
17
|
+
## Core questions
|
|
18
|
+
|
|
19
|
+
- 이 설계나 결정이 시스템의 선언된 목적에서 벗어나는가?
|
|
20
|
+
- 국소 최적화가 더 넓은 가치 충돌이나 목적 drift 를 만드는가?
|
|
21
|
+
- 명시적 정당화 없이 수용되고 있는 숨겨진 트레이드오프가 있는가?
|
|
22
|
+
- 대상이 중요한 이해관계자, 경계, 가치 약속을 불리하게 하는가?
|
|
23
|
+
- 당연시되는 전제가 실제로는 시스템 목적과 무관한가?
|
|
24
|
+
- 현재 lens set 이 아직 고려하지 않았지만 목적/가치 정렬상 고려해야 할 추가 검토 관점이 있는가?
|
|
25
|
+
|
|
26
|
+
## Authoritative alignment input
|
|
27
|
+
|
|
28
|
+
이 lens 의 모든 value judgment 는 reviewer 의 개인 해석이 아니라 onto 의 canonical authority chain 에 근거한다. axiology 실행 전 execution preparation 단계에서 아래 authority 가 명시적으로 바인딩된 후 lens prompt 에 주입된다.
|
|
29
|
+
|
|
30
|
+
### Authority source set
|
|
31
|
+
|
|
32
|
+
| 순위 | 출처 | 성격 |
|
|
33
|
+
|---|---|---|
|
|
34
|
+
| 1 | `.onto/authority/core-lexicon.yaml` | 개념 SSOT. 각 entity · relation · principle 의 canonical 의미 |
|
|
35
|
+
| 2 | `.onto/principles/productization-charter.md` | 제품 방향. 시스템이 왜 존재하는가 |
|
|
36
|
+
| 2 | `.onto/principles/ontology-as-code-guideline.md` | OaC 원칙 |
|
|
37
|
+
| 2 | `.onto/principles/llm-native-development-guideline.md` | LLM-native 원칙 |
|
|
38
|
+
| 2 | `.onto/principles/product-locality-principle.md` | product 우선 원칙 |
|
|
39
|
+
| 3 | `development-records/evolve/<onto-direction>.md` 최신 정본 | 상위 목표 · 4 축 · 완료 기준 |
|
|
40
|
+
| 4 | 세션 binding `session_domain` 이 non-none 이면 해당 `.onto/domains/{domain}/` 의 purpose-critical 규정 | domain-specific 가치 commitments |
|
|
41
|
+
|
|
42
|
+
이 순위는 동일 주제에서 충돌 시 낮은 번호 우선. 동순위 내 충돌은 `CLAUDE.md` authority 위계표의 원칙을 따른다 (동일 순위 파일 중복 금지 + 예외 cross-reference).
|
|
43
|
+
|
|
44
|
+
### Binding timing
|
|
45
|
+
|
|
46
|
+
- execution preparation 이 위 authority 파일을 자동으로 lens prompt 의 Context Self-Loading 영역에 주입한다
|
|
47
|
+
- authority 파일 미존재 또는 읽기 실패 → finding 은 `insufficient evidence` + `upstream_evidence_required=true`. 개인 가치관에 기반한 판단은 금지
|
|
48
|
+
- `session_domain: none` 이어도 순위 1~3 은 항상 바인딩. 순위 4 만 조건부
|
|
49
|
+
|
|
50
|
+
## Finding evidence requirements
|
|
51
|
+
|
|
52
|
+
각 axiology finding 은 일반 output schema (`.onto/processes/review/lens-prompt-contract.md` §8.1) 에 더해 아래 axiology-specific 필드를 포함한다.
|
|
53
|
+
|
|
54
|
+
- `value_authority_anchor` — 판단 근거로 인용한 authority 의 정확한 seat. 형식: `{source: <file path>, anchor: <§번호 | term id | line range>, excerpt: <판단에 직접 사용한 문장 1~2 줄>}`. 복수 가능
|
|
55
|
+
- `value_type` — 판단이 다룬 가치 범주 중 하나: `purpose` / `stakeholder` / `principle` / `boundary` / `tradeoff` / `commitment`
|
|
56
|
+
- `alignment_direction` — finding 이 authority 와 정렬되어 있음을 주장하는지 (`aligned`), 위반/drift 를 지적하는지 (`misaligned`), 또는 판단 불가인지 (`indeterminate`)
|
|
57
|
+
|
|
58
|
+
`value_authority_anchor` 가 빈 finding 은 produce 하지 않는다. 인용할 authority 가 없다면 그 finding 자체가 axiology 관할이 아니다.
|
|
59
|
+
|
|
60
|
+
## New Perspectives (axiology-exclusive canonical slot)
|
|
61
|
+
|
|
62
|
+
현재 lens set 에 빠진 purpose-critical 관점을 이 lens 가 발견하면 여기서 직접 제안한다. `synthesize` 는 이 제안을 보존할 수 있으나 독자적으로 발명할 수 없다. 이 slot 은 axiology 만 사용할 수 있는 의도적 canonical asymmetry 이다.
|
|
63
|
+
|
|
64
|
+
New Perspectives 제안 시 최소 필수 필드:
|
|
65
|
+
|
|
66
|
+
1. **trigger condition** — 제안을 촉발한 증거 (대상 · 관찰 · authority 미커버 영역)
|
|
67
|
+
2. **proposed perspective** — 무엇을 평가할 것인가 (1~2 문장 perspective 요약)
|
|
68
|
+
3. **insufficiency argument** — 기존 9 lens 각각이 이 관점을 왜 커버하지 못하는지 명시
|
|
69
|
+
4. **intended receiving seat** — 제안이 착지해야 할 위치 (현재 review 의 `synthesize` 보존 / 후속 lens governance / axiology 내부 sub-check 등). 착지 seat 미지정 제안은 orphaned 로 간주하여 `synthesize` 가 거부할 수 있다
|
|
70
|
+
|
|
71
|
+
New Perspectives 제안은 현재 리뷰 실행의 active lens set 을 변경하지 않는다. 실제 lens set 확장은 별도 governance 경로를 통한다.
|
|
72
|
+
|
|
73
|
+
## Domain examples
|
|
74
|
+
|
|
75
|
+
- Software: 최적화가 지역 성능을 개선하지만 안전성·유지보수성 약속을 약화
|
|
76
|
+
- Product/process: KPI 개선이 제품의 실제 목적을 왜곡
|
|
77
|
+
- Ontology: 분류가 깔끔해 보이지만 시스템의 의도된 용도와 가치 경계를 위반
|
|
78
|
+
|
|
79
|
+
## Domain document
|
|
80
|
+
|
|
81
|
+
none. 이 lens 는 시스템 목적 · 원칙 (§Authoritative alignment input 의 순위 1~3) 과 선택된 도메인 맥락 (순위 4, 조건부) 을 주요 판단 근거로 사용하며, 전용 도메인 규칙 문서를 두지 않는다.
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# conciseness
|
|
2
|
+
|
|
3
|
+
## Perspective
|
|
4
|
+
|
|
5
|
+
> **Scope 주의 (UF-2)**: 본 lens 의 `conciseness` 는 **ontology-level parsimony** (개념 공간의 parsimony) 를 의미한다. **prose brevity (문장을 짧게 쓰기) 가 아니다**. lexicon 정의와 동일 scope.
|
|
6
|
+
|
|
7
|
+
이 lens는 대상 시스템을 **간결성**의 관점에서 본다. 불필요한 중복, 과잉 명세, 실질적 차이를 만들지 않는 구분이 존재하는지를 검증한다. 다른 lens들이 "존재해야 할 것이 있는가"와 "있는 것이 올바른가"를 검증하는 반면, 이 lens는 "없어야 할 것이 있는가"를 식별한다.
|
|
8
|
+
|
|
9
|
+
이 관점은 불필요한 중복·과잉 명세의 존재에만 초점을 둔다. 질의 경로 비효율이나 도메인 영역 누락은 별도 관점의 범위이다.
|
|
10
|
+
|
|
11
|
+
### Observation focus
|
|
12
|
+
|
|
13
|
+
동일 또는 유사 개념의 중복 정의, 상위 개념이 보장하는 제약의 하위 재선언(과잉 명세), 실질적 차이 없는 하위 분류, 자식이 하나뿐인 불필요 중간 계층.
|
|
14
|
+
|
|
15
|
+
### Assertion type
|
|
16
|
+
|
|
17
|
+
과잉 진술: "X와 Y는 다른 경로/이름으로 중복 정의되어 있다", "이 하위 분류는 실질적 차이를 만들지 않는다".
|
|
18
|
+
|
|
19
|
+
## Core questions
|
|
20
|
+
|
|
21
|
+
- 동일 또는 유사 개념이 다른 경로/이름으로 중복 정의되어 있는가?
|
|
22
|
+
- 상위 개념이 이미 보장하는 제약을 하위 수준에서 재선언하는 과잉 명세가 있는가?
|
|
23
|
+
- 실질적 차이를 만들지 않는 하위 분류가 존재하는가?
|
|
24
|
+
- 자식이 하나뿐인 불필요한 중간 계층이 있는가?
|
|
25
|
+
|
|
26
|
+
## Domain examples
|
|
27
|
+
|
|
28
|
+
- Software: 다른 경로로 표현된 동일 관계, 사용되지 않는 분류 노드
|
|
29
|
+
- Law: 동일 조항에 대한 중복 규정, 적용 사례가 없는 예외 조항
|
|
30
|
+
- Accounting: 거래가 없는 계정, 상위 계정과 동일한 하위 계정
|
|
31
|
+
|
|
32
|
+
## Domain document
|
|
33
|
+
|
|
34
|
+
`.onto/domains/{domain}/conciseness_rules.md` (`session_domain`이 설정된 경우).
|
|
35
|
+
|
|
36
|
+
`session_domain`이 `none`이면 `.onto/processes/review/lens-prompt-contract.md` §9.3 Domain-None Fallback Rule에 따라 domain document 없이 실행한다.
|