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,665 @@
|
|
|
1
|
+
# LLM Runtime Interface Principles
|
|
2
|
+
|
|
3
|
+
> 상태: Active
|
|
4
|
+
> 목적: `LLM`과 runtime 사이의 interface를 어떤 원칙과 기준으로 구성할지 고정한다.
|
|
5
|
+
> 기준 문서:
|
|
6
|
+
> - `.onto/principles/productization-charter.md`
|
|
7
|
+
> - `.onto/authority/core-lexicon.yaml`
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 1. Position
|
|
12
|
+
|
|
13
|
+
이 문서는 `LLM`과 runtime 사이의 interface를
|
|
14
|
+
단순한 prompt formatting 문제가 아니라
|
|
15
|
+
`ontology as code`의 핵심 경계 문제로 본다.
|
|
16
|
+
|
|
17
|
+
즉 interface는 아래를 동시에 만족해야 한다.
|
|
18
|
+
|
|
19
|
+
1. `LLM`이 실제로 잘 작동해야 한다
|
|
20
|
+
2. runtime은 semantic drift를 임의로 보정하지 못해야 한다
|
|
21
|
+
3. prompt path와 implementation path가 같은 artifact truth를 봐야 한다
|
|
22
|
+
|
|
23
|
+
한 문장으로 말하면:
|
|
24
|
+
|
|
25
|
+
- runtime은 seat와 gate를 고정하고
|
|
26
|
+
- `LLM`은 그 seat 안에서 의미 판단을 수행한다
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 2. Core Principle
|
|
31
|
+
|
|
32
|
+
runtime은 interface의 `meaning`이 아니라 `shape`를 고정한다.
|
|
33
|
+
`LLM`은 그 shape 안에서 의미 판단을 수행한다.
|
|
34
|
+
|
|
35
|
+
LLM/runtime 소유 분리의 상세 원칙은 `.onto/principles/llm-native-development-guideline.md`가 canonical이다.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 3. Interface Construction Principles
|
|
40
|
+
|
|
41
|
+
### 3.1 declared boundary는 세 가지를 함께 정한다
|
|
42
|
+
|
|
43
|
+
`declared boundary`는 단순히
|
|
44
|
+
“무엇을 넘길 것인가”만 정하는 게 아니다.
|
|
45
|
+
|
|
46
|
+
반드시 아래 세 가지를 함께 정해야 한다.
|
|
47
|
+
|
|
48
|
+
1. 어떤 요소를 선언하는가
|
|
49
|
+
2. 어떤 방식으로 제시하는가
|
|
50
|
+
3. 어떤 방식으로 통제하는가
|
|
51
|
+
|
|
52
|
+
즉 interface boundary는
|
|
53
|
+
`declared inputs + presentation mode + control policy`
|
|
54
|
+
의 조합이다.
|
|
55
|
+
|
|
56
|
+
하지만 실제 제품화에서는 이것을 더 정확히 아래 네 seat로 분리해 다루는 것이 좋다.
|
|
57
|
+
|
|
58
|
+
1. `경계 정책 (BoundaryPolicy)`
|
|
59
|
+
2. `경계 제시 (BoundaryPresentation)`
|
|
60
|
+
3. `경계 강제 프로필 (BoundaryEnforcementProfile)`
|
|
61
|
+
4. `실효 경계 상태 (EffectiveBoundaryState)`
|
|
62
|
+
|
|
63
|
+
### 3.2 declared input은 두 층으로 나뉜다
|
|
64
|
+
|
|
65
|
+
`LLM`이 읽는 입력은 아래 두 층으로 나뉜다.
|
|
66
|
+
|
|
67
|
+
#### 선언형 handoff 입력 (DeclaredHandoffInputs)
|
|
68
|
+
|
|
69
|
+
주체: runtime
|
|
70
|
+
|
|
71
|
+
내용:
|
|
72
|
+
|
|
73
|
+
1. role / task instruction
|
|
74
|
+
2. primary target
|
|
75
|
+
3. required context
|
|
76
|
+
4. output seat
|
|
77
|
+
5. explicit constraints
|
|
78
|
+
6. exploration allowance boundary
|
|
79
|
+
|
|
80
|
+
성격:
|
|
81
|
+
|
|
82
|
+
1. predeclared
|
|
83
|
+
2. artifact-first
|
|
84
|
+
3. deterministic
|
|
85
|
+
4. contract로 고정 가능
|
|
86
|
+
|
|
87
|
+
#### 자율 탐색 입력 (SelfDirectedExplorationInputs)
|
|
88
|
+
|
|
89
|
+
주체: `LLM`
|
|
90
|
+
|
|
91
|
+
내용:
|
|
92
|
+
|
|
93
|
+
1. 추가 파일 탐색
|
|
94
|
+
2. repo 내부 탐색
|
|
95
|
+
3. 필요 시 웹 리서치
|
|
96
|
+
4. 추가 evidence 확보
|
|
97
|
+
5. 근거 재검증
|
|
98
|
+
|
|
99
|
+
성격:
|
|
100
|
+
|
|
101
|
+
1. self-directed
|
|
102
|
+
2. semantic
|
|
103
|
+
3. non-deterministic
|
|
104
|
+
4. 문제 해결 과정의 일부
|
|
105
|
+
|
|
106
|
+
중요한 규칙:
|
|
107
|
+
|
|
108
|
+
- runtime은 첫 번째 층을 제공한다
|
|
109
|
+
- `LLM`은 두 번째 층을 스스로 획득한다
|
|
110
|
+
- runtime은 두 번째 층의 대상 선택을 대신하면 안 된다
|
|
111
|
+
|
|
112
|
+
즉 runtime은
|
|
113
|
+
`무엇을 반드시 줘야 하는가`
|
|
114
|
+
를 고정하고,
|
|
115
|
+
`LLM`은
|
|
116
|
+
`무엇을 더 찾아야 하는가`
|
|
117
|
+
를 판단한다.
|
|
118
|
+
|
|
119
|
+
### 3.3 artifact-first interface
|
|
120
|
+
|
|
121
|
+
`LLM`/runtime interface는 자유 텍스트 conversation이 아니라
|
|
122
|
+
artifact seat를 중심으로 구성한다.
|
|
123
|
+
|
|
124
|
+
즉 interface는 아래 조합으로 정의한다.
|
|
125
|
+
|
|
126
|
+
1. input artifact refs
|
|
127
|
+
2. optional embedded primary content
|
|
128
|
+
3. output artifact seat
|
|
129
|
+
4. bounded execution directives
|
|
130
|
+
|
|
131
|
+
예:
|
|
132
|
+
|
|
133
|
+
- input:
|
|
134
|
+
- `materialized-input.md`
|
|
135
|
+
- `.onto/roles/logic.md`
|
|
136
|
+
- `interpretation.yaml`
|
|
137
|
+
- `binding.yaml`
|
|
138
|
+
- output:
|
|
139
|
+
- `round1/logic.md`
|
|
140
|
+
|
|
141
|
+
### 3.4 declared boundary elements
|
|
142
|
+
|
|
143
|
+
`declared boundary`는 최소한 아래 요소들에 대해 seat와 policy를 가져야 한다.
|
|
144
|
+
|
|
145
|
+
1. instruction boundary
|
|
146
|
+
2. target boundary
|
|
147
|
+
3. required context boundary
|
|
148
|
+
4. output boundary
|
|
149
|
+
5. exploration boundary
|
|
150
|
+
6. write boundary
|
|
151
|
+
7. tool/research boundary
|
|
152
|
+
8. evidence/provenance boundary
|
|
153
|
+
9. degraded/failure boundary
|
|
154
|
+
|
|
155
|
+
각 항목의 뜻은 아래와 같다.
|
|
156
|
+
|
|
157
|
+
#### instruction boundary
|
|
158
|
+
|
|
159
|
+
어떤 역할 정의와 task 지시가 authoritative instruction인지 정한다.
|
|
160
|
+
|
|
161
|
+
예:
|
|
162
|
+
|
|
163
|
+
- `.onto/roles/logic.md`
|
|
164
|
+
- `prompt-packets/logic.prompt.md`
|
|
165
|
+
|
|
166
|
+
#### target boundary
|
|
167
|
+
|
|
168
|
+
이번 reasoning의 primary object가 무엇인지 정한다.
|
|
169
|
+
|
|
170
|
+
예:
|
|
171
|
+
|
|
172
|
+
- `materialized-input.md`
|
|
173
|
+
- `review_target_scope`
|
|
174
|
+
|
|
175
|
+
#### required context boundary
|
|
176
|
+
|
|
177
|
+
반드시 같이 고려해야 하는 supporting artifact를 정한다.
|
|
178
|
+
|
|
179
|
+
예:
|
|
180
|
+
|
|
181
|
+
- `binding.yaml`
|
|
182
|
+
- `interpretation.yaml`
|
|
183
|
+
- `context-candidate-assembly.yaml`
|
|
184
|
+
|
|
185
|
+
#### output boundary
|
|
186
|
+
|
|
187
|
+
결과가 반드시 써져야 하는 seat를 정한다.
|
|
188
|
+
|
|
189
|
+
예:
|
|
190
|
+
|
|
191
|
+
- `round1/logic.md`
|
|
192
|
+
- `synthesis.md`
|
|
193
|
+
|
|
194
|
+
#### exploration boundary
|
|
195
|
+
|
|
196
|
+
`LLM`이 자율 탐색할 수 있는 범위를 정한다.
|
|
197
|
+
|
|
198
|
+
예:
|
|
199
|
+
|
|
200
|
+
- repo 내부 탐색 허용
|
|
201
|
+
- packet에 명시된 ref 우선
|
|
202
|
+
- target 내부 링크 재귀 추적 금지
|
|
203
|
+
|
|
204
|
+
#### write boundary
|
|
205
|
+
|
|
206
|
+
`LLM`이 어디에 써도 되고 어디에 쓰면 안 되는지 정한다.
|
|
207
|
+
|
|
208
|
+
예:
|
|
209
|
+
|
|
210
|
+
- output seat만 write 허용
|
|
211
|
+
- source doc 수정 금지
|
|
212
|
+
|
|
213
|
+
#### tool/research boundary
|
|
214
|
+
|
|
215
|
+
shell, 파일 읽기, 웹 리서치 등 외부 도구 사용 가능 범위를 정한다.
|
|
216
|
+
|
|
217
|
+
예:
|
|
218
|
+
|
|
219
|
+
- repo file read 허용
|
|
220
|
+
- web research 금지 또는 허용
|
|
221
|
+
- patch/write 금지
|
|
222
|
+
|
|
223
|
+
#### evidence/provenance boundary
|
|
224
|
+
|
|
225
|
+
추가 탐색을 했다면 어떤 evidence/provenance를 남겨야 하는지 정한다.
|
|
226
|
+
|
|
227
|
+
예:
|
|
228
|
+
|
|
229
|
+
- external source URL
|
|
230
|
+
- inspected file ref
|
|
231
|
+
- cited section
|
|
232
|
+
|
|
233
|
+
#### degraded/failure boundary
|
|
234
|
+
|
|
235
|
+
입력이 부족하거나 output을 못 만들었을 때 어떤 상태로 끝내야 하는지 정한다.
|
|
236
|
+
|
|
237
|
+
예:
|
|
238
|
+
|
|
239
|
+
- `Unverified`
|
|
240
|
+
- `deliberation required`
|
|
241
|
+
- `fail-close`
|
|
242
|
+
|
|
243
|
+
### 3.5 boundary seat 분리
|
|
244
|
+
|
|
245
|
+
`declared boundary`는 아래처럼 seat를 나눠서 표현하는 것이 좋다.
|
|
246
|
+
|
|
247
|
+
#### `BoundaryPolicy`
|
|
248
|
+
|
|
249
|
+
무엇이 허용/금지/요구되는지를 선언한다.
|
|
250
|
+
|
|
251
|
+
예:
|
|
252
|
+
|
|
253
|
+
```yaml
|
|
254
|
+
boundary_policy:
|
|
255
|
+
web_research_policy: denied
|
|
256
|
+
filesystem_scope:
|
|
257
|
+
allowed_roots:
|
|
258
|
+
- /repo-a
|
|
259
|
+
write_policy:
|
|
260
|
+
allowed_outputs:
|
|
261
|
+
- round1/logic.md
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
#### `BoundaryPresentation`
|
|
265
|
+
|
|
266
|
+
그 정책을 `LLM`에게 어떤 방식으로 드러내는지 선언한다.
|
|
267
|
+
|
|
268
|
+
예:
|
|
269
|
+
|
|
270
|
+
```yaml
|
|
271
|
+
boundary_presentation:
|
|
272
|
+
prompt_packet: declared
|
|
273
|
+
binding_artifact: declared
|
|
274
|
+
capability_notice: optional
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
#### `BoundaryEnforcementProfile`
|
|
278
|
+
|
|
279
|
+
그 정책이 실제 실행 환경에서 어떻게 강제되는지 선언한다.
|
|
280
|
+
|
|
281
|
+
예:
|
|
282
|
+
|
|
283
|
+
```yaml
|
|
284
|
+
boundary_enforcement_profile:
|
|
285
|
+
prompt: declared_only
|
|
286
|
+
filesystem: mcp_scoped
|
|
287
|
+
network: environment_enforced
|
|
288
|
+
write: host_enforced
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
#### `EffectiveBoundaryState`
|
|
292
|
+
|
|
293
|
+
실제로 적용된 최종 상태를 남긴다.
|
|
294
|
+
|
|
295
|
+
예:
|
|
296
|
+
|
|
297
|
+
```yaml
|
|
298
|
+
effective_boundary_state:
|
|
299
|
+
web_research_policy: denied
|
|
300
|
+
filesystem_scope:
|
|
301
|
+
allowed_roots:
|
|
302
|
+
- /repo-a
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
### 3.6 weakest/strongest boundary
|
|
306
|
+
|
|
307
|
+
같은 `BoundaryPolicy`라도 강제 강도는 다를 수 있다.
|
|
308
|
+
|
|
309
|
+
#### 약한 경계
|
|
310
|
+
|
|
311
|
+
- prompt-declared only
|
|
312
|
+
- host가 사실상 신뢰에 기대는 경계
|
|
313
|
+
|
|
314
|
+
#### 강한 경계
|
|
315
|
+
|
|
316
|
+
- host-enforced
|
|
317
|
+
- MCP-scoped
|
|
318
|
+
- environment-enforced
|
|
319
|
+
|
|
320
|
+
현재 productization 단계에서는
|
|
321
|
+
`worker + prompt-declared boundary`로 먼저 작동을 확인할 수 있다.
|
|
322
|
+
|
|
323
|
+
하지만 설계 자체는
|
|
324
|
+
나중에 더 강한 enforcement로 승격될 수 있어야 한다.
|
|
325
|
+
|
|
326
|
+
### 3.7 deny precedence
|
|
327
|
+
|
|
328
|
+
정책과 강제 프로필이 여러 층에 걸쳐 공존할 때는
|
|
329
|
+
기본 우선순위를 아래처럼 둔다.
|
|
330
|
+
|
|
331
|
+
- 가장 강한 `deny`가 승리한다
|
|
332
|
+
|
|
333
|
+
예:
|
|
334
|
+
|
|
335
|
+
1. prompt는 web 허용
|
|
336
|
+
2. host는 web 허용
|
|
337
|
+
3. environment는 network 차단
|
|
338
|
+
|
|
339
|
+
이 경우 `EffectiveBoundaryState`는 `web_research_policy: denied`가 된다.
|
|
340
|
+
|
|
341
|
+
즉 선언보다 실제 적용 상태가 우선이고,
|
|
342
|
+
실제 적용 상태에서는 가장 강한 deny가 authority가 된다.
|
|
343
|
+
|
|
344
|
+
### 3.8 smallest sufficient bundle
|
|
345
|
+
|
|
346
|
+
interface는 `LLM`에게 가장 큰 bundle을 던지는 것이 아니라,
|
|
347
|
+
**가장 작은 충분 집합**을 줘야 한다.
|
|
348
|
+
|
|
349
|
+
원칙:
|
|
350
|
+
|
|
351
|
+
1. primary reasoning object는 우선 제공
|
|
352
|
+
2. secondary context는 ref로 제공
|
|
353
|
+
3. optional context는 정말 필요할 때만 읽게 한다
|
|
354
|
+
4. target 안의 참조를 재귀적으로 계속 따라가게 만들지 않는다
|
|
355
|
+
|
|
356
|
+
즉 좋은 interface는
|
|
357
|
+
`more context`가 아니라 `sharper context`다.
|
|
358
|
+
|
|
359
|
+
### 3.9 declared boundary presentation modes
|
|
360
|
+
|
|
361
|
+
declared boundary는 아래 방식으로 제시할 수 있다.
|
|
362
|
+
|
|
363
|
+
1. embed
|
|
364
|
+
2. ref
|
|
365
|
+
3. seat map
|
|
366
|
+
4. explicit allow/deny rule
|
|
367
|
+
5. bounded policy statement
|
|
368
|
+
|
|
369
|
+
즉 runtime은 단순히 파일 몇 개를 나열하는 것이 아니라,
|
|
370
|
+
각 요소가 어떤 presentation mode를 갖는지까지 정해야 한다.
|
|
371
|
+
|
|
372
|
+
예:
|
|
373
|
+
|
|
374
|
+
- `materialized input` -> embed
|
|
375
|
+
- `binding.yaml` -> ref
|
|
376
|
+
- `round1/logic.md` -> output seat
|
|
377
|
+
- `repo 내부 탐색 허용, web 금지` -> bounded policy statement
|
|
378
|
+
|
|
379
|
+
### 3.10 embed vs ref criteria
|
|
380
|
+
|
|
381
|
+
무엇을 packet에 직접 넣고 무엇을 ref로만 줄지의 기준은 아래다.
|
|
382
|
+
|
|
383
|
+
#### embed해야 하는 것
|
|
384
|
+
|
|
385
|
+
1. 이번 reasoning의 핵심 대상 본문
|
|
386
|
+
2. 한 번의 lens 판단에 반드시 필요한 짧은 canonical instruction
|
|
387
|
+
3. file lookup 비용보다 즉시 가시성이 더 중요한 작은 primary input
|
|
388
|
+
|
|
389
|
+
예:
|
|
390
|
+
|
|
391
|
+
- `materialized input`
|
|
392
|
+
- lens-specific minimal directives
|
|
393
|
+
|
|
394
|
+
#### ref로 넘겨야 하는 것
|
|
395
|
+
|
|
396
|
+
1. 부가 맥락 문서
|
|
397
|
+
2. session metadata
|
|
398
|
+
3. binding/interpretation artifact
|
|
399
|
+
4. context candidate assembly
|
|
400
|
+
5. 다른 lens output seat
|
|
401
|
+
|
|
402
|
+
예:
|
|
403
|
+
|
|
404
|
+
- `interpretation.yaml`
|
|
405
|
+
- `binding.yaml`
|
|
406
|
+
- `context-candidate-assembly.yaml`
|
|
407
|
+
- `round1/{lens}.md`
|
|
408
|
+
|
|
409
|
+
#### embed하면 안 되는 것
|
|
410
|
+
|
|
411
|
+
1. target과 직접 무관한 대형 문서 묶음
|
|
412
|
+
2. target 본문을 다시 감싼 giant repeated payload
|
|
413
|
+
3. 이미 file seat가 있는 artifact 전체를 중복 복사한 packet
|
|
414
|
+
|
|
415
|
+
즉:
|
|
416
|
+
|
|
417
|
+
- primary target content는 embed 가능
|
|
418
|
+
- supporting context는 원칙적으로 ref
|
|
419
|
+
|
|
420
|
+
### 3.11 declared boundary control modes
|
|
421
|
+
|
|
422
|
+
declared boundary의 통제 방식은 최소 아래를 포함해야 한다.
|
|
423
|
+
|
|
424
|
+
1. allowlist
|
|
425
|
+
2. denylist
|
|
426
|
+
3. scope cap
|
|
427
|
+
4. write restriction
|
|
428
|
+
5. provenance obligation
|
|
429
|
+
6. fail-close gate
|
|
430
|
+
|
|
431
|
+
예:
|
|
432
|
+
|
|
433
|
+
- packet에 명시된 파일 우선
|
|
434
|
+
- 문서 내부 링크의 재귀 추적 금지
|
|
435
|
+
- output seat 외 write 금지
|
|
436
|
+
- 웹 리서치 시 URL 증거 남기기
|
|
437
|
+
- required section이 없으면 fail-close
|
|
438
|
+
|
|
439
|
+
즉 boundary는 단순 제시가 아니라
|
|
440
|
+
`allowed / disallowed / required / forbidden`
|
|
441
|
+
을 함께 선언해야 한다.
|
|
442
|
+
|
|
443
|
+
### 3.12 no hidden expansion
|
|
444
|
+
|
|
445
|
+
packet이 가리키는 파일 집합이 interface boundary다.
|
|
446
|
+
|
|
447
|
+
따라서 `LLM`은 아래를 기본으로 해서는 안 된다.
|
|
448
|
+
|
|
449
|
+
1. target 안의 문서 링크를 계속 재귀 추적
|
|
450
|
+
2. packet에 없는 광범위한 repo 탐색
|
|
451
|
+
3. self-directed context expansion
|
|
452
|
+
|
|
453
|
+
예외가 있으려면 packet이나 contract가 그 확장을 명시적으로 허용해야 한다.
|
|
454
|
+
|
|
455
|
+
### 3.13 single-purpose output
|
|
456
|
+
|
|
457
|
+
각 interface call은 단일 목적의 output seat를 가진다.
|
|
458
|
+
|
|
459
|
+
예:
|
|
460
|
+
|
|
461
|
+
- `logic` -> `round1/logic.md`
|
|
462
|
+
- `axiology` -> `round1/axiology.md`
|
|
463
|
+
- `synthesize` -> `synthesis.md`
|
|
464
|
+
|
|
465
|
+
runtime은 이 output seat의 존재/비어있지 않음을 검사할 수는 있지만,
|
|
466
|
+
그 의미를 다시 써서는 안 된다.
|
|
467
|
+
|
|
468
|
+
### 3.14 human-readable source layer와 primary artifact를 분리
|
|
469
|
+
|
|
470
|
+
`LLM` output은 우선 human-readable/source layer로 남을 수 있다.
|
|
471
|
+
|
|
472
|
+
예:
|
|
473
|
+
|
|
474
|
+
- `round1/*.md`
|
|
475
|
+
- `synthesis.md`
|
|
476
|
+
|
|
477
|
+
그 다음 runtime이 deterministic하게 아래를 조립한다.
|
|
478
|
+
|
|
479
|
+
- `final-output.md`
|
|
480
|
+
- `review-record.yaml`
|
|
481
|
+
|
|
482
|
+
즉 interface의 중요한 원칙은:
|
|
483
|
+
|
|
484
|
+
- `LLM`은 reasoning/source layer를 만든다
|
|
485
|
+
- runtime은 primary artifact를 조립한다
|
|
486
|
+
|
|
487
|
+
### 3.15 host/runtime neutrality
|
|
488
|
+
|
|
489
|
+
interface는 특정 host command에 묶이면 안 된다.
|
|
490
|
+
|
|
491
|
+
즉 canonical seat는 아래 두 축으로 본다.
|
|
492
|
+
|
|
493
|
+
1. `실행 실현 방식 (execution_realization)`
|
|
494
|
+
2. `호스트 런타임 (host_runtime)`
|
|
495
|
+
|
|
496
|
+
예:
|
|
497
|
+
|
|
498
|
+
```yaml
|
|
499
|
+
execution_realization: worker
|
|
500
|
+
host_runtime: codex
|
|
501
|
+
```
|
|
502
|
+
|
|
503
|
+
interface contract는 이 두 축을 분리해서 유지해야 한다.
|
|
504
|
+
|
|
505
|
+
### 3.16 process identity preservation
|
|
506
|
+
|
|
507
|
+
prompt path와 implementation path는
|
|
508
|
+
interface의 identity가 같아야 한다.
|
|
509
|
+
|
|
510
|
+
즉 아래가 동일해야 한다.
|
|
511
|
+
|
|
512
|
+
- `declared handoff inputs`
|
|
513
|
+
- `presentation mode`
|
|
514
|
+
- `control policy`
|
|
515
|
+
|
|
516
|
+
허용되지 않는 것:
|
|
517
|
+
|
|
518
|
+
1. target마다 ad hoc prompt로 절차를 바꾸는 것
|
|
519
|
+
2. 설계 문서에 없는 reasoning step을 adapter 내부에서 암묵적으로 추가하는 것
|
|
520
|
+
3. contract에 없는 output field를 사실상 required처럼 쓰는 것
|
|
521
|
+
|
|
522
|
+
---
|
|
523
|
+
|
|
524
|
+
## 4. Interface Gate Principles
|
|
525
|
+
|
|
526
|
+
### 4.1 runtime은 structural gate다
|
|
527
|
+
|
|
528
|
+
runtime이 검사하는 것은 아래다.
|
|
529
|
+
|
|
530
|
+
1. declared input seat 존재 여부
|
|
531
|
+
2. declared output seat 존재 여부
|
|
532
|
+
3. output 비어있지 않음
|
|
533
|
+
4. deterministic field/section extraction 가능 여부
|
|
534
|
+
5. artifact 조립 가능 여부
|
|
535
|
+
|
|
536
|
+
즉 runtime은 `structure`만 gate한다.
|
|
537
|
+
|
|
538
|
+
### 4.2 `LLM`은 semantic gate다
|
|
539
|
+
|
|
540
|
+
`맥락 격리 추론 단위 (ContextIsolatedReasoningUnit)`는
|
|
541
|
+
메인 콘텍스트와 분리된 semantic gate 역할을 한다.
|
|
542
|
+
|
|
543
|
+
즉:
|
|
544
|
+
|
|
545
|
+
1. 메인 콘텍스트 drift를 그대로 따라가지 않는다
|
|
546
|
+
2. lens-specific 관점에서 독립 판단을 한다
|
|
547
|
+
3. disagreement와 uncertainty를 독립적으로 남긴다
|
|
548
|
+
|
|
549
|
+
### 4.3 boundary-constrained degradation
|
|
550
|
+
|
|
551
|
+
경계 때문에 필요한 탐색이나 근거 확보가 불가능해진 경우,
|
|
552
|
+
`LLM`은 억지 결론으로 타협하면 안 된다.
|
|
553
|
+
|
|
554
|
+
이때는 아래 같은 degraded 상태로 끝내야 한다.
|
|
555
|
+
|
|
556
|
+
1. `insufficient_access`
|
|
557
|
+
2. `insufficient_evidence_within_boundary`
|
|
558
|
+
3. `deliberation_required`
|
|
559
|
+
4. `fail-close`
|
|
560
|
+
|
|
561
|
+
즉 boundary는 단순 금지 규칙이 아니라,
|
|
562
|
+
문제를 풀지 못할 때의 종료 posture까지 함께 가져야 한다.
|
|
563
|
+
|
|
564
|
+
---
|
|
565
|
+
|
|
566
|
+
## 5. Review Interface Template
|
|
567
|
+
|
|
568
|
+
현재 `review`에서의 canonical interface template은 아래다.
|
|
569
|
+
|
|
570
|
+
### 5.1 runtime -> lens
|
|
571
|
+
|
|
572
|
+
input:
|
|
573
|
+
|
|
574
|
+
1. `role definition`
|
|
575
|
+
2. `materialized input`
|
|
576
|
+
3. optional refs:
|
|
577
|
+
- `interpretation.yaml`
|
|
578
|
+
- `binding.yaml`
|
|
579
|
+
- `session metadata`
|
|
580
|
+
- `target snapshot`
|
|
581
|
+
- `context candidate assembly`
|
|
582
|
+
4. declared control policy:
|
|
583
|
+
- repo exploration allowance
|
|
584
|
+
- recursive expansion 금지
|
|
585
|
+
- output seat only write
|
|
586
|
+
- provenance requirement if extra exploration occurs
|
|
587
|
+
5. optional boundary seats:
|
|
588
|
+
- `BoundaryPolicy`
|
|
589
|
+
- `BoundaryPresentation`
|
|
590
|
+
- `BoundaryEnforcementProfile`
|
|
591
|
+
- `EffectiveBoundaryState`
|
|
592
|
+
|
|
593
|
+
output:
|
|
594
|
+
|
|
595
|
+
1. `round1/{lens}.md`
|
|
596
|
+
|
|
597
|
+
### 5.2 runtime -> synthesize
|
|
598
|
+
|
|
599
|
+
input:
|
|
600
|
+
|
|
601
|
+
1. `materialized input`
|
|
602
|
+
2. participating `round1/{lens}.md` refs
|
|
603
|
+
3. optional refs:
|
|
604
|
+
- `interpretation.yaml`
|
|
605
|
+
- `binding.yaml`
|
|
606
|
+
- `session metadata`
|
|
607
|
+
4. declared control policy:
|
|
608
|
+
- participating lens outputs만 authoritative input
|
|
609
|
+
- 새 독립 관점 invent 금지
|
|
610
|
+
- output seat only write
|
|
611
|
+
5. optional boundary seats:
|
|
612
|
+
- `BoundaryPolicy`
|
|
613
|
+
- `EffectiveBoundaryState`
|
|
614
|
+
|
|
615
|
+
output:
|
|
616
|
+
|
|
617
|
+
1. `synthesis.md`
|
|
618
|
+
|
|
619
|
+
### 5.3 runtime after LLM
|
|
620
|
+
|
|
621
|
+
input:
|
|
622
|
+
|
|
623
|
+
1. `synthesis.md`
|
|
624
|
+
2. `binding.yaml`
|
|
625
|
+
3. `session-metadata.yaml`
|
|
626
|
+
|
|
627
|
+
output:
|
|
628
|
+
|
|
629
|
+
1. `final-output.md`
|
|
630
|
+
2. `review-record.yaml`
|
|
631
|
+
|
|
632
|
+
---
|
|
633
|
+
|
|
634
|
+
## 6. Interface Design Priority Ordering
|
|
635
|
+
|
|
636
|
+
productization 중간 단계에서는
|
|
637
|
+
runtime deterministicization을 늘리는 것보다
|
|
638
|
+
`LLM`/runtime interface를 더 잘 자르는 것이 우선일 수 있다.
|
|
639
|
+
|
|
640
|
+
interface를 손볼 때의 우선순위는 아래다.
|
|
641
|
+
|
|
642
|
+
1. `LLM`이 실제로 더 잘 작동하도록 bundle을 줄인다
|
|
643
|
+
2. primary target과 output seat를 더 선명하게 한다
|
|
644
|
+
3. supporting context는 ref로 내린다
|
|
645
|
+
4. seat와 artifact truth는 유지한다
|
|
646
|
+
5. 그 다음에만 hardened runtime gate를 더한다
|
|
647
|
+
|
|
648
|
+
즉:
|
|
649
|
+
|
|
650
|
+
- 먼저 `작동하는 review`
|
|
651
|
+
- 그 다음 `더 엄격한 runtime`
|
|
652
|
+
|
|
653
|
+
순서다.
|
|
654
|
+
|
|
655
|
+
---
|
|
656
|
+
|
|
657
|
+
## 7. Immediate Rule Of Thumb
|
|
658
|
+
|
|
659
|
+
실무적으로는 아래 한 줄로 판단한다.
|
|
660
|
+
|
|
661
|
+
- runtime interface는 **seat를 고정하되 bundle은 최소화**하고,
|
|
662
|
+
- `LLM`에게는 **선언형 handoff 입력 + explicit output seat + bounded refs + declared control policy**를 준다.
|
|
663
|
+
|
|
664
|
+
이 기준을 벗어나 giant packet, hidden expansion, semantic repair가 생기면
|
|
665
|
+
interface를 다시 잘라야 한다.
|