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,155 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: 1
|
|
3
|
+
last_updated: "2026-03-29"
|
|
4
|
+
source: bundled-domain-baseline
|
|
5
|
+
status: established
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Conciseness Rules (finance)
|
|
9
|
+
|
|
10
|
+
This document contains the domain-specific rules that conciseness references during conciseness verification.
|
|
11
|
+
It is organized in the order: **type (allow/remove) -> verification criteria -> role boundaries -> measurement methods**.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Allowed Redundancy
|
|
16
|
+
|
|
17
|
+
Each rule is tagged with a severity level:
|
|
18
|
+
- **[MUST-ALLOW]**: Redundancy that breaks the system if removed. Must be retained.
|
|
19
|
+
- **[MAY-ALLOW]**: Redundancy kept for convenience. Can be consolidated, but only remove when the benefit clearly outweighs the consolidation cost.
|
|
20
|
+
|
|
21
|
+
### Reporting Unit Related
|
|
22
|
+
|
|
23
|
+
- [MUST-ALLOW] Parallel consolidated and separate financial statements — the same account (e.g., revenue) exists in both consolidated and separate bases. The consolidated scope includes subsidiary aggregation and intercompany elimination, so the figures and meaning differ from separate. Removing either makes inter-reporting-unit comparison and consolidation adjustment verification impossible.
|
|
24
|
+
- [MUST-ALLOW] Parallel segment reporting and consolidated totals — segment-level revenue and operating income are components of consolidated totals, but intercompany transactions between segments and unallocated items mean they do not simply sum to the total. Removing segment figures makes divisional performance analysis impossible.
|
|
25
|
+
|
|
26
|
+
### Temporal Attribute Related
|
|
27
|
+
|
|
28
|
+
- [MUST-ALLOW] Dual classification of instant/duration attributes — even for the same account, instant (point-in-time) and duration (period) items have different temporal attribution. Example: Cash and cash equivalents is expressed as instant (closing balance) on the Statement of Financial Position and as duration (period change) on the Cash Flow Statement. Consolidating into a single attribute causes loss of temporal dimension information.
|
|
29
|
+
- [MAY-ALLOW] Parallel presentation of opening and closing balances for Statement of Financial Position items — prior period-end (opening) and current period-end (closing) balances are displayed simultaneously for comparison purposes. The same figures can be referenced from prior period financial statements, but retain for comparison readability purposes.
|
|
30
|
+
|
|
31
|
+
### Account Classification Related
|
|
32
|
+
|
|
33
|
+
- [MUST-ALLOW] Dual existence of the same account due to current/non-current classification — other financial assets split into current and non-current are separate Facts because their maturity/recovery periods differ. Consolidation makes liquidity analysis impossible.
|
|
34
|
+
- [MAY-ALLOW] Parallel presentation of labels and taxonomy element IDs — the taxonomy element ID is the primary identifier, but labels are retained for human readability. If only labels exist without taxonomy IDs, they are removal targets.
|
|
35
|
+
|
|
36
|
+
### External Reference Related
|
|
37
|
+
|
|
38
|
+
- [MUST-ALLOW] Parallel IFRS taxonomy mapping and FIBO mapping — the same concept is mapped to both IFRS taxonomy and FIBO. The two standards have different purposes (financial reporting vs. financial industry ontology) and structures, so they cannot be consolidated into a single mapping.
|
|
39
|
+
- [MAY-ALLOW] Parallel company extension accounts and standard taxonomy accounts — per the original preservation principle, company-specific labels are retained while also mapped to canonical names. However, if the extension account is completely identical to the standard account with no additional information, consolidation is possible.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## 2. Removal Target Patterns
|
|
44
|
+
|
|
45
|
+
Each rule is tagged with a severity level:
|
|
46
|
+
- **[MUST-REMOVE]**: Redundancy whose mere existence causes errors or incorrect inferences.
|
|
47
|
+
- **[SHOULD-REMOVE]**: Redundancy that is not very harmful but adds unnecessary complexity.
|
|
48
|
+
|
|
49
|
+
### Taxonomy Redundancy
|
|
50
|
+
|
|
51
|
+
- [MUST-REMOVE] Duplicate definition of multiple labels for the same taxonomy element as separate concepts — when several labels (e.g., "Revenue," "Sales," "Operating revenue") for a single taxonomy element ID are registered as separate concepts, use the synonym mappings in concepts.md to retain only the canonical name. Treating multiple labels as separate concepts causes double-counting in aggregation and comparison.
|
|
52
|
+
- [MUST-REMOVE] Creating extension accounts that duplicate accounts already existing in the standard taxonomy — when an extension element exists with the same meaning and constraints as a standard element, mapping inconsistencies arise. Use the standard element first.
|
|
53
|
+
|
|
54
|
+
### Relation Redundancy
|
|
55
|
+
|
|
56
|
+
- [MUST-REMOVE] Multiple path aggregation between the same accounts — example: when both a current assets subtotal -> total assets path and individual current asset items -> total assets direct path exist simultaneously, aggregation logic is applied twice, causing amount inconsistencies.
|
|
57
|
+
- [SHOULD-REMOVE] Explicit redeclaration of relationships already guaranteed by accounting identities — when Assets = Liabilities + Equity is guaranteed in logic_rules.md, there is no need to separately redefine "equity is assets minus liabilities" as a separate relationship on individual nodes.
|
|
58
|
+
|
|
59
|
+
### Classification Redundancy
|
|
60
|
+
|
|
61
|
+
- [SHOULD-REMOVE] Intermediate classification nodes with only 1 child account — example: when only a single item exists under "Other non-current assets," merge the intermediate node with the parent. However, retain if reserved for future expansion (see extension_cases.md).
|
|
62
|
+
- [SHOULD-REMOVE] Classification nodes with no actual amount data (Facts) — empty account classifications unused by any reporting entity should be removed. However, retain if they are mandatory elements of the standard taxonomy.
|
|
63
|
+
|
|
64
|
+
### Definition Redundancy
|
|
65
|
+
|
|
66
|
+
- [MUST-REMOVE] Multiple calculation path definitions for the same derived metric — example: when ROE is simultaneously defined as "net income / total equity" and "net income / average equity," the results differ. Designate one definition as the authoritative version.
|
|
67
|
+
- [SHOULD-REMOVE] Same verification logic (e.g., identity verification) copied across multiple financial statement modules — extraction to a common verification module is needed.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## 3. Minimum Granularity Criteria
|
|
72
|
+
|
|
73
|
+
A sub-classification is permitted only if it satisfies **at least one** of the following. If none are satisfied, merge with the parent.
|
|
74
|
+
|
|
75
|
+
1. **Competency question difference**: Does it generate a different answer to a question in competency_qs.md?
|
|
76
|
+
2. **Constraint difference**: Do different constraints (temporal attribute, current/non-current classification, normal balance direction, cardinality) apply?
|
|
77
|
+
3. **Dependency difference**: Does it belong to a different financial statement, segment, or reporting unit, or map to a different taxonomy element?
|
|
78
|
+
|
|
79
|
+
Examples:
|
|
80
|
+
- `Current other financial assets` and `Non-current other financial assets` are justified as separate classifications because different constraints (1-year maturity criterion, liquidity classification) apply.
|
|
81
|
+
- If `Total assets` and `Assets total` both map to the same taxonomy element (ifrs:Assets) with the same constraints, they are candidates for merging.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 4. Boundaries — Domain-Specific Application Cases
|
|
86
|
+
|
|
87
|
+
The authoritative source for boundary definitions is `roles/conciseness.md`. This section describes only the specific application cases in the finance domain.
|
|
88
|
+
|
|
89
|
+
### pragmatics boundary
|
|
90
|
+
|
|
91
|
+
- conciseness: Does an unnecessary element **exist**? (structural level)
|
|
92
|
+
- pragmatics: Does unnecessary information **hinder** query execution? (execution level)
|
|
93
|
+
- Example: Unused note items are included in financial statement query responses -> pragmatics. Unused accounts are defined in the taxonomy structure -> conciseness.
|
|
94
|
+
|
|
95
|
+
### coverage boundary
|
|
96
|
+
|
|
97
|
+
- conciseness: Does something exist that should not? (reduction direction)
|
|
98
|
+
- coverage: Is something missing that should exist? (expansion direction)
|
|
99
|
+
- Example: Notes system is missing, making accounting policy disclosure impossible -> coverage. The same accounting policy is duplicated across multiple notes -> conciseness.
|
|
100
|
+
|
|
101
|
+
### logic boundary (predecessor/successor relationship)
|
|
102
|
+
|
|
103
|
+
- logic predecessor: determines logical equivalence (entailment)
|
|
104
|
+
- conciseness successor: decides whether to remove after equivalence is confirmed
|
|
105
|
+
- Example: The accounting identity (Assets = Liabilities + Equity) already entails the definition of equity -> logic determines equivalence -> conciseness determines "separate calculation relationship redeclaration for equity is unnecessary."
|
|
106
|
+
|
|
107
|
+
### semantics boundary (predecessor/successor relationship)
|
|
108
|
+
|
|
109
|
+
- semantics predecessor: determines semantic identity (synonym status)
|
|
110
|
+
- conciseness successor: decides whether merging is needed after synonym confirmation
|
|
111
|
+
- Example: "Revenue"/"Sales"/"Operating revenue" are the same taxonomy element -> semantics determines they are synonyms -> conciseness determines "consolidate to a single canonical name."
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## 5. Quantitative Criteria
|
|
116
|
+
|
|
117
|
+
Domain-observed thresholds for conciseness judgment. Each threshold is a review signal, not an automatic removal trigger.
|
|
118
|
+
|
|
119
|
+
### Taxonomy Redundancy Thresholds
|
|
120
|
+
|
|
121
|
+
- **Multiple labels per element**: same taxonomy element ID with 3+ different labels → consolidate to canonical name. Two labels may reflect legitimate regional variation; three almost certainly duplicates. (concepts.md §Core Synonym Mappings)
|
|
122
|
+
- **Extension account ratio**: if >30% of an entity's accounts are extensions, review for over-extension. Many extensions may map to existing standard elements. (concepts.md §Extension Account Handling)
|
|
123
|
+
- **Unused standard elements**: if >50% of standard taxonomy elements in a jurisdiction have zero usage across all entities → informational (valid placeholders, not removal targets)
|
|
124
|
+
|
|
125
|
+
### Structural Redundancy Thresholds
|
|
126
|
+
|
|
127
|
+
- **Intermediate hierarchy nodes**: node with exactly 1 child for >2 reporting periods → merge candidate. Exception: reserved by taxonomy standard
|
|
128
|
+
- **Duplicate aggregation paths**: if the same account is reachable through 2+ aggregation paths → review for path consolidation. One canonical path must be designated
|
|
129
|
+
- **Orphan notes**: notes extracted but linked to zero FinancialFacts → review for linkage error or removal. Notes from unstructured sources are most prone to this
|
|
130
|
+
|
|
131
|
+
### Derived Metric Redundancy
|
|
132
|
+
|
|
133
|
+
- **Multiple formula definitions**: same derived metric (e.g., ROE) defined with 2+ different formulas → consolidate to one authoritative definition. Document the formula choice rationale. (logic_rules.md §Derived Metric Calculation Rules)
|
|
134
|
+
- **Cached vs computed metrics**: if a derived metric is stored both as a precomputed value and computable from underlying data → prefer on-demand computation. Store only when computation cost is prohibitive
|
|
135
|
+
|
|
136
|
+
### Cross-Tier Duplication
|
|
137
|
+
|
|
138
|
+
- **Tier-2/Tier-3 overlap**: same metric defined as both a taxonomy element (Tier-2) and an analytical convention (Tier-3) → consolidate to Tier-2 when the taxonomy element matches exactly. Retain Tier-3 separately only when the computation differs (e.g., "adjusted EBITDA" vs taxonomy operating income)
|
|
139
|
+
|
|
140
|
+
### Review Output Conciseness
|
|
141
|
+
|
|
142
|
+
- **Finding deduplication**: 3+ findings citing the same root cause (e.g., multiple extension accounts mapping to the same standard element) → consolidate into 1 finding with root cause + all affected accounts
|
|
143
|
+
- **Cross-file deduplication**: issue flagged by both conciseness and a preceding agent (logic or semantics) → defer to the preceding agent's finding; add only the consolidation recommendation
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## Related Documents
|
|
148
|
+
|
|
149
|
+
- `concepts.md` — Term definitions, synonym mappings, homonym lists, extension account handling (semantic criteria for redundancy determination)
|
|
150
|
+
- `structure_spec.md` — Isolated node rules, required relationships, ID system (structural removal criteria)
|
|
151
|
+
- `competency_qs.md` — CQ-ID sections for minimum granularity judgment
|
|
152
|
+
- `domain_scope.md` — Normative system classification (Tier system), cross-cutting concerns
|
|
153
|
+
- `dependency_rules.md` — External standard reference rules, source of truth management (basis for allowing parallel mappings)
|
|
154
|
+
- `logic_rules.md` — Accounting identities, derived metric formulas (criteria for logical equivalence determination)
|
|
155
|
+
- `extension_cases.md` — Taxonomy change and extension account scenarios (basis for classification node retain/remove decisions)
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: 2
|
|
3
|
+
last_updated: "2026-04-16"
|
|
4
|
+
source: manual
|
|
5
|
+
status: established
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Finance Domain — Dependency Rules
|
|
9
|
+
|
|
10
|
+
Classification axis: **Dependency type** — rules classified by the nature of the relationship constraint.
|
|
11
|
+
|
|
12
|
+
## Acyclic Rules
|
|
13
|
+
|
|
14
|
+
No cycles are permitted in these relationship paths. Cycles indicate structural defects in the ontology.
|
|
15
|
+
|
|
16
|
+
| ID | Rule | Description | Violation Handling |
|
|
17
|
+
|---|---|---|---|
|
|
18
|
+
| AC01 | No cycles in Entity → Statement → FinancialFact path | Unidirectional from reporting entity to financial figures | Block |
|
|
19
|
+
| AC02 | No cycles in Concept hierarchy | Superordinate account → subordinate account hierarchy | Block |
|
|
20
|
+
| AC03 | No cycles in Note → FinancialFact references | Notes reference main statements; main statements do not back-reference notes | Block |
|
|
21
|
+
| AC04 | No cycles in Segment → Entity attribution | Segments belong to entities; entities do not belong to segments | Block |
|
|
22
|
+
|
|
23
|
+
> **AC03 rationale:** Notes explain and supplement main statement items. If main statements referenced notes, a circular dependency would arise: the meaning of a figure depends on a note that depends on the figure. Notes annotate; figures do not annotate notes.
|
|
24
|
+
|
|
25
|
+
### Intentional Bidirectional Patterns (Not Cycles)
|
|
26
|
+
|
|
27
|
+
- **FinancialFact ↔ Period:** A Fact belongs to a Period (IN_PERIOD); a Period contains many Facts. This is a managed 1:N relationship, not a cycle. The Period is the source of truth for temporal context
|
|
28
|
+
- **Concept ↔ FinancialFact:** A Concept defines the meaning (HAS_CONCEPT); many Facts instantiate the Concept. The Concept is the source of truth for semantics
|
|
29
|
+
- **Cross-Statement Appearance:** Cash and cash equivalents appears in both BS and CF. This is intentional (DM01 allows it) — the same Fact can belong to multiple Statements
|
|
30
|
+
|
|
31
|
+
## Direction Rules
|
|
32
|
+
|
|
33
|
+
| ID | Relationship | Allowed Direction | Prohibited Direction | Violation Handling |
|
|
34
|
+
|---|---|---|---|---|
|
|
35
|
+
| DR01 | REPORTED_BY | Fact → Entity | Entity → Fact | Block |
|
|
36
|
+
| DR02 | BELONGS_TO | Fact → Statement | Statement → Fact | Block |
|
|
37
|
+
| DR03 | HAS_CONCEPT | Fact → Concept | Concept → Fact | Block |
|
|
38
|
+
| DR04 | IN_PERIOD | Fact → Period | Period → Fact | Block |
|
|
39
|
+
| DR05 | ANNOTATES | Note → Fact | Fact → Note | Block |
|
|
40
|
+
| DR06 | IS_CHILD_OF | Child Concept → Parent Concept | — | Warning |
|
|
41
|
+
| DR07 | DISCLOSES_POLICY | Note → Policy | Policy → Note | Block |
|
|
42
|
+
| DR08 | IN_SEGMENT | Fact → Segment | Segment → Fact | Block |
|
|
43
|
+
| DR09 | PART_OF | Segment → Entity | Entity → Segment | Warning |
|
|
44
|
+
|
|
45
|
+
> **DR06 Warning:** The reverse direction (Parent → Child, i.e., HAS_CHILD) can be separately defined as a convenience relationship. It is not prohibited, but it must be derived from IS_CHILD_OF, not independently maintained. Independent maintenance creates synchronization risk.
|
|
46
|
+
|
|
47
|
+
### Direction Rule Rationale
|
|
48
|
+
|
|
49
|
+
The direction rules encode the ontology's semantic model:
|
|
50
|
+
- **Facts are attributed** (to entities, statements, concepts, periods) — they are the "leaf" data
|
|
51
|
+
- **Notes annotate** (facts and policies) — they provide supplementary context
|
|
52
|
+
- **Concepts classify** (facts) — they define what the fact represents
|
|
53
|
+
- **Segments partition** (facts within an entity) — they provide dimensional analysis
|
|
54
|
+
|
|
55
|
+
Reversing any direction would change the semantic relationship. "Revenue is reported by Samsung" ≠ "Samsung is reported by Revenue."
|
|
56
|
+
|
|
57
|
+
## Diamond Rules
|
|
58
|
+
|
|
59
|
+
| ID | Situation | Allowed? | Rationale |
|
|
60
|
+
|---|---|---|---|
|
|
61
|
+
| DM01 | Same Fact belongs to multiple Statements | **Allowed** | Cash appears in both BS and CF — this is correct per IFRS |
|
|
62
|
+
| DM02 | Same Concept used by multiple Entities | **Allowed** | ifrs:Revenue is shared across all companies — the concept is universal |
|
|
63
|
+
| DM03 | Same Fact attributed to multiple Periods | **Prohibited** | A single financial figure belongs to exactly one period/point-in-time. Multiple periods = data duplication error |
|
|
64
|
+
| DM04 | Same Fact attributed to multiple Entities | **Prohibited** | A fact is reported by one entity. Intercompany items are separate facts with separate entity attribution |
|
|
65
|
+
| DM05 | Same Concept appears at multiple hierarchy levels | **Prohibited** | A concept has one parent in the hierarchy. Multiple parents = taxonomy structure error |
|
|
66
|
+
|
|
67
|
+
### DM01 Resolution Protocol
|
|
68
|
+
|
|
69
|
+
When the same Fact appears in multiple Statements (e.g., cash in BS and CF):
|
|
70
|
+
- The Fact node is created once
|
|
71
|
+
- Multiple BELONGS_TO edges point to different Statement nodes
|
|
72
|
+
- The values must be identical — if BS cash ≠ CF closing cash, this is a cross-statement linkage violation (XL02 in logic_rules.md)
|
|
73
|
+
|
|
74
|
+
## Referential Integrity
|
|
75
|
+
|
|
76
|
+
| ID | Rule | Description | Violation Handling |
|
|
77
|
+
|---|---|---|---|
|
|
78
|
+
| RI01 | FinancialFact's HAS_CONCEPT target must exist | Referencing a non-existent account is prohibited | Block |
|
|
79
|
+
| RI02 | Note's ANNOTATES target must exist | Referencing a non-existent note target is prohibited | Block |
|
|
80
|
+
| RI03 | Temporary IDs treated as "warning" until converted to canonical | Reflects ID instability from unstructured sources | Warning |
|
|
81
|
+
| RI04 | Period node must have valid date format (ISO 8601) | Start/end dates must be parseable and logically consistent | Block |
|
|
82
|
+
| RI05 | Entity code must be a recognized identifier (stock code, LEI, etc.) | Prevents orphan entities without external linkage | Warning |
|
|
83
|
+
|
|
84
|
+
> **RI03 real-world context:** Notes extracted from PDFs via OCR may not have stable identifiers across different extraction runs. Temporary IDs are assigned during extraction. When the same note is obtained from a structured source (XBRL), convert to the canonical ID and elevate to Block level (same as RI02).
|
|
85
|
+
|
|
86
|
+
### Referential Integrity Verification Pipeline
|
|
87
|
+
|
|
88
|
+
1. **At ingestion:** RI01 (concept exists), RI04 (date valid), RI05 (entity recognized)
|
|
89
|
+
2. **After normalization:** RI03 upgrade (temporary → canonical IDs)
|
|
90
|
+
3. **At query time:** RI02 (note targets exist), cross-statement consistency
|
|
91
|
+
4. **Periodic audit:** orphan node detection (structure_spec.md §Isolated Node Prohibition)
|
|
92
|
+
|
|
93
|
+
## Source Dependencies
|
|
94
|
+
|
|
95
|
+
### Source of Truth Transition Rules
|
|
96
|
+
|
|
97
|
+
| Priority | Source Type | Condition | Description | Data Quality |
|
|
98
|
+
|---|---|---|---|---|
|
|
99
|
+
| 1 | Structured (XBRL, API) | Structure complete and parsing successful | Machine-readable, taxonomy-tagged | Highest |
|
|
100
|
+
| 2 | Semi-structured (HTML, tables) | Structured source incomplete or parsing failed | Requires parsing/extraction | Medium |
|
|
101
|
+
| 3 | Unstructured (PDF, images) | Semi-structured not available | Requires OCR/NLP extraction | Lowest |
|
|
102
|
+
|
|
103
|
+
- Source transitions are common: structured XBRL may be incomplete (e.g., notes not tagged), requiring fallback to semi-structured HTML or unstructured PDF for supplementary data
|
|
104
|
+
- **SPOF risk:** When semi-structured is the sole source for a critical data element, a single parsing failure produces complete data loss. Mitigation: maintain at least 2 extraction methods for critical items
|
|
105
|
+
- **ID system unification** must precede source transitions — if different sources assign different IDs to the same concept, referential integrity breaks during transition
|
|
106
|
+
|
|
107
|
+
### Source Quality Metadata
|
|
108
|
+
|
|
109
|
+
Every FinancialFact should carry source metadata:
|
|
110
|
+
- **source_type:** XBRL / HTML / PDF / API
|
|
111
|
+
- **source_confidence:** high (structured) / medium (semi-structured) / low (unstructured)
|
|
112
|
+
- **extraction_date:** when the data was extracted
|
|
113
|
+
- **filing_id:** the specific regulatory filing the data came from
|
|
114
|
+
- **audit_status:** audited / reviewed / unaudited
|
|
115
|
+
|
|
116
|
+
### Taxonomy/Instance Separation
|
|
117
|
+
|
|
118
|
+
- **Taxonomy** (Concept hierarchy definitions) and **instances** (actual financial figures/Facts) have separate dependency paths
|
|
119
|
+
- Taxonomy changes affect only Concept nodes; instance changes affect only FinancialFact nodes
|
|
120
|
+
- When both change simultaneously (e.g., IFRS taxonomy update concurrent with new filing), referential integrity of HAS_CONCEPT relationships must be re-verified
|
|
121
|
+
- Taxonomy version must be tracked per entity-period — different filings may use different taxonomy versions
|
|
122
|
+
|
|
123
|
+
## Cross-Entity Dependencies
|
|
124
|
+
|
|
125
|
+
### Entity Hierarchy
|
|
126
|
+
|
|
127
|
+
- Parent entity → Subsidiary entity → Sub-subsidiary entity
|
|
128
|
+
- Consolidation scope depends on control (IFRS 10): holding >50% voting rights or effective control
|
|
129
|
+
- Associate: significant influence (typically 20-50% ownership) → equity method accounting
|
|
130
|
+
- Joint venture: joint control → equity method (IFRS 11)
|
|
131
|
+
- Changes in ownership percentage may trigger reclassification (subsidiary → associate or vice versa), which changes the consolidation method
|
|
132
|
+
|
|
133
|
+
### Intercompany Transaction Dependency
|
|
134
|
+
|
|
135
|
+
- Intercompany transactions must be eliminated in consolidation
|
|
136
|
+
- Dependency chain: Intercompany Transaction Identified → Elimination Entry → Consolidated Figure Adjusted
|
|
137
|
+
- Failure mode: intercompany sales not eliminated → revenue double-counted in consolidated IS
|
|
138
|
+
- Verification: total intercompany sales in subsidiaries should net to zero in consolidated statements
|
|
139
|
+
|
|
140
|
+
## Circular Dependency Detection
|
|
141
|
+
|
|
142
|
+
### Unintentional Cycles (Defects)
|
|
143
|
+
|
|
144
|
+
- **Concept ↔ Concept:** Concept A is a child of Concept B, and B is a child of A → hierarchy cycle → Block
|
|
145
|
+
- **Entity ↔ Entity:** Entity A is a subsidiary of Entity B, and B is a subsidiary of A → ownership cycle → Block
|
|
146
|
+
- **Fact ↔ Note ↔ Fact:** Fact A is annotated by Note X, which references Fact B, which is annotated by Note Y, which references Fact A → annotation cycle. Resolution: notes annotate facts, not other notes' references
|
|
147
|
+
|
|
148
|
+
### Detection Method
|
|
149
|
+
|
|
150
|
+
1. For Concept hierarchy: topological sort — if sort fails, cycle exists
|
|
151
|
+
2. For Entity hierarchy: ownership graph traversal — if any entity is its own ancestor, cycle exists
|
|
152
|
+
3. For Note-Fact references: ANNOTATES edges form a bipartite graph (Note → Fact) — if Note → Note edges exist, investigate
|
|
153
|
+
|
|
154
|
+
## SE Transfer Verification
|
|
155
|
+
|
|
156
|
+
| SE Pattern | Finance Equivalent | Key Difference |
|
|
157
|
+
|---|---|---|
|
|
158
|
+
| Acyclic Dependencies Principle (module DAG) | Acyclic Rules (AC01-AC04) | Both prohibit cycles; finance adds domain-specific intentional bidirectional patterns |
|
|
159
|
+
| Dependency Inversion (depend on abstractions) | Concept hierarchy (depend on taxonomy, not raw data) | SE uses interfaces; finance uses taxonomy elements as the abstraction |
|
|
160
|
+
| Referential Integrity (FK constraints) | RI01-RI05 | SE enforces at DB level; finance enforces at ontology validation + pipeline level |
|
|
161
|
+
| Source of Truth Management | Source Priority (XBRL > HTML > PDF) | SE has single SoT; finance has hierarchical SoT with fallback chain |
|
|
162
|
+
| Diamond Dependencies (version conflict) | DM01-DM05 | SE resolves with version managers; finance allows some diamonds (DM01, DM02) while prohibiting others |
|
|
163
|
+
|
|
164
|
+
## Related Documents
|
|
165
|
+
|
|
166
|
+
- structure_spec.md — Node and relationship structure where dependency rules apply
|
|
167
|
+
- logic_rules.md — Accounting identities and rules complementing dependency rules
|
|
168
|
+
- domain_scope.md — Source format axis, industry classification, normative tiers
|
|
169
|
+
- concepts.md — Concept mapping system subject to referential integrity
|
|
170
|
+
- extension_cases.md — Extension scenarios requiring dependency rule changes
|
|
171
|
+
- competency_qs.md — Data quality questions (CQ-DQ) testing dependency enforcement
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
---
|
|
2
|
+
version: 2
|
|
3
|
+
last_updated: "2026-04-16"
|
|
4
|
+
source: manual
|
|
5
|
+
status: established
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Finance Domain — Domain Scope Definition
|
|
9
|
+
|
|
10
|
+
This is the reference document used by coverage to identify "what should exist but is missing."
|
|
11
|
+
This domain applies when **reviewing** financial reporting ontologies — structured representations of financial statements, taxonomy elements, accounting relationships, and derived metrics.
|
|
12
|
+
|
|
13
|
+
> **Boundary with accounting domain**: The accounting domain covers transaction-level bookkeeping (journal entries, ledger, trial balance, closing procedures). This domain covers the output of accounting — financial statements, their structure, inter-statement relationships, and analytical use. Journal entry mechanics are accounting's jurisdiction; how financial statements are structured, cross-referenced, and queried is this domain's jurisdiction.
|
|
14
|
+
|
|
15
|
+
> **Boundary with business domain**: The business domain covers business model analysis, strategy, market position, and competitive dynamics. This domain covers the financial data that quantifies business performance. Revenue growth analysis as a financial metric belongs here; revenue growth as a competitive strategy signal belongs to business.
|
|
16
|
+
|
|
17
|
+
## Classification Axes
|
|
18
|
+
|
|
19
|
+
| Axis | Values | Description |
|
|
20
|
+
|---|---|---|
|
|
21
|
+
| Reporting framework | IFRS / US-GAAP / Local GAAP (K-IFRS, J-GAAP, etc.) | Applicable accounting standard |
|
|
22
|
+
| Reporting unit | Consolidated / Separate | Financial statement preparation unit |
|
|
23
|
+
| Reporting frequency | Annual / Semi-annual / Quarterly / Interim | Disclosure frequency |
|
|
24
|
+
| Industry classification | General / Financial (banking, insurance, securities) | Statement structure and chart of accounts differ |
|
|
25
|
+
| Temporal attribute | instant / duration | Time attribution method of financial items |
|
|
26
|
+
| Source format | Structured (XBRL) / Semi-structured (HTML) / Unstructured (PDF) | Data origin format |
|
|
27
|
+
|
|
28
|
+
## Key Sub-Areas
|
|
29
|
+
|
|
30
|
+
Classification axis: **Financial reporting concern** — Classified by the concern that the financial ontology must address.
|
|
31
|
+
|
|
32
|
+
Applicability markers:
|
|
33
|
+
- **(required)**: Must be addressed in any financial reporting ontology review. Absence indicates a fundamental gap
|
|
34
|
+
- **(when applicable)**: Address when the system's scope includes the relevant feature. Condition type: feature existence (binary)
|
|
35
|
+
- **(scale-dependent)**: Becomes required beyond a scale threshold documented per item. Condition type: scale threshold (quantitative boundary crossed)
|
|
36
|
+
|
|
37
|
+
### Financial Statement Structure
|
|
38
|
+
- **Statement Components** (required): Statement of Financial Position (BS), Income Statement (IS), Cash Flow Statement (CF), Statement of Changes in Equity, Statement of Comprehensive Income — components and interrelationships
|
|
39
|
+
- **Statement Linkage** (required): Net income flowing from IS to equity changes, opening/closing balance consistency across BS periods, CF reconciliation to BS cash balances
|
|
40
|
+
- **Financial Industry Statements** (when applicable): Insurance contract liabilities, loan receivables, regulatory capital ratios — additional or differently structured statements for banking, insurance, and securities industries
|
|
41
|
+
|
|
42
|
+
### Chart of Accounts Classification
|
|
43
|
+
- **5-Element Structure** (required): Assets/Liabilities/Equity/Revenue/Expenses hierarchical classification, current/non-current distinction, normal balance direction
|
|
44
|
+
- **Account Hierarchy** (required): Parent-child account relationships, subtotal computation paths, roll-up logic from line items to totals
|
|
45
|
+
- **Extension Accounts** (required): Company-specific taxonomy extensions beyond standard accounts, normalization mapping to canonical names
|
|
46
|
+
|
|
47
|
+
### Accounting Identity and Constraints
|
|
48
|
+
- **Fundamental Identities** (required): Assets = Liabilities + Equity (BS), revenue - expenses = net income (IS), opening cash + CF activities = closing cash (CF)
|
|
49
|
+
- **Cross-Statement Linkage** (required): Net income from IS appears in equity changes, CF reconciles to BS cash balance, comprehensive income components appear in OCI statement
|
|
50
|
+
- **Constraint Conflict Detection** (required): Consolidated ≥ separate total assets (general expectation), identity violations as data quality signals
|
|
51
|
+
|
|
52
|
+
### Period and Point-in-Time
|
|
53
|
+
- **Temporal Attribution** (required): instant (BS items, point-in-time) vs duration (IS/CF items, over-a-period) distinction and enforcement
|
|
54
|
+
- **Period Matching** (required): Same-duration comparison enforcement (quarterly vs quarterly, annual vs annual), cumulative vs single-quarter distinction
|
|
55
|
+
- **Restatement Management** (required): Version tracking for restated figures, final version determination, historical comparison across restatements
|
|
56
|
+
|
|
57
|
+
### Consolidated and Separate Reporting
|
|
58
|
+
- **Consolidation Scope** (required): Subsidiary inclusion criteria, consolidation adjustments, intercompany transaction elimination
|
|
59
|
+
- **Segment Reporting** (required): Business segment and geographic segment dimensions, segment-level P&L, reconciliation to consolidated totals
|
|
60
|
+
- **Associate and Joint Venture** (when applicable): Equity method accounting, proportionate consolidation, significant influence determination
|
|
61
|
+
|
|
62
|
+
### Notes and Disclosure System
|
|
63
|
+
- **Note Structure** (required): Reference relationships between notes and main statement items, note categorization (accounting policies, estimates, contingencies)
|
|
64
|
+
- **Accounting Policy Disclosure** (required): Recognition, measurement, and presentation method choices disclosed per significant policy area
|
|
65
|
+
- **Contingent Liabilities and Commitments** (required): Off-balance-sheet items, guarantees, pending litigation — items not on the main statements but material for analysis
|
|
66
|
+
|
|
67
|
+
### Key Accounting Standards
|
|
68
|
+
- **Revenue Recognition (IFRS 15)** (required): 5-step model (contract → performance obligations → transaction price → allocation → recognition), over-time vs point-in-time, variable consideration
|
|
69
|
+
- **Financial Instruments (IFRS 9)** (required): Classification (amortised cost/FVOCI/FVPL), impairment (3-stage expected credit loss), hedge accounting basics
|
|
70
|
+
- **Leases (IFRS 16)** (required): Right-of-use asset and lease liability recognition, operating/finance lease distinction elimination (lessee), impact on BS and ratios
|
|
71
|
+
- **Business Combinations (IFRS 3)** (when applicable): Acquisition method, goodwill recognition, purchase price allocation, contingent consideration
|
|
72
|
+
- **Impairment (IAS 36)** (when applicable): Cash-generating units, recoverable amount (higher of fair value less costs to sell and value in use), impairment indicators
|
|
73
|
+
- **Fair Value Measurement (IFRS 13)** (when applicable): Fair value hierarchy (Level 1 quoted prices, Level 2 observable inputs, Level 3 unobservable inputs), valuation techniques
|
|
74
|
+
|
|
75
|
+
### Derived Metrics and Analysis
|
|
76
|
+
- **Profitability Metrics** (required): ROE, ROA, operating profit margin, net profit margin, EBITDA margin
|
|
77
|
+
- **Leverage Metrics** (required): Debt ratio, debt-to-equity ratio, interest coverage ratio, net debt
|
|
78
|
+
- **Liquidity Metrics** (required): Current ratio, quick ratio, cash conversion cycle
|
|
79
|
+
- **Market Metrics** (when applicable): EPS, P/E ratio, P/B ratio, dividend yield, market capitalization
|
|
80
|
+
- **Per-Share Metrics** (when applicable): Basic EPS, diluted EPS, book value per share
|
|
81
|
+
|
|
82
|
+
### Regulatory and Compliance
|
|
83
|
+
- **IFRS Compliance** (required): Conformance to applicable IFRS/IAS standards, first-time adoption considerations
|
|
84
|
+
- **Audit Opinion** (required): Unqualified/qualified/adverse/disclaimer classification, going concern emphasis, key audit matters
|
|
85
|
+
- **Disclosure Requirements** (required): Statutory disclosure framework by jurisdiction, mandatory vs voluntary disclosures
|
|
86
|
+
- **Filing Requirements** (when applicable): SEC (10-K, 10-Q), FSC (사업보고서), FCA filings — jurisdiction-specific filing formats and deadlines
|
|
87
|
+
|
|
88
|
+
## Normative System Classification
|
|
89
|
+
|
|
90
|
+
Standards governing financial reporting operate at four distinct tiers.
|
|
91
|
+
|
|
92
|
+
| Tier | Name | Enforcement Mechanism | Change Velocity | Examples |
|
|
93
|
+
|------|------|----------------------|-----------------|---------|
|
|
94
|
+
| Tier-1a | Accounting Standards | **Legal obligation** + auditor enforcement | Slow (years) | IFRS/IAS standards, US-GAAP ASC, local GAAP |
|
|
95
|
+
| Tier-1b | Regulatory Requirements | **Securities regulator** enforcement | Medium (annual) | SEC filing rules, FSC disclosure regulations, stock exchange listing requirements |
|
|
96
|
+
| Tier-2 | Taxonomy and Data Standards | Industry consortium enforcement, regulatory adoption | Medium (annual) | XBRL 2.1, IFRS Taxonomy, FIBO, ESEF |
|
|
97
|
+
| Tier-3 | Industry Practice and Heuristics | Analyst convention, peer comparison | Fast (per analysis) | Non-GAAP metrics (adjusted EBITDA), industry KPIs, analyst consensus methods |
|
|
98
|
+
|
|
99
|
+
**Ordering principle**: Tier-1a > Tier-1b > Tier-2 > Tier-3. Accounting standards override everything; regulatory requirements override data standards and practice; data standards override practice.
|
|
100
|
+
|
|
101
|
+
Tier classification decision tree:
|
|
102
|
+
1. **Tier-1a**: Is this rule from an IFRS/IAS/US-GAAP standard or local GAAP? Would non-conformance produce a qualified audit opinion?
|
|
103
|
+
2. **Tier-1b**: If not Tier-1a, is this rule from a securities regulator (SEC, FSC, FCA)? Would non-conformance produce a filing rejection or regulatory action?
|
|
104
|
+
3. **Tier-2**: If not Tier-1a/1b, is this rule from a data/taxonomy standard (XBRL, IFRS Taxonomy, FIBO)? Is it enforced by filing systems or data consumers?
|
|
105
|
+
4. **Tier-3**: If none of the above, is this an industry practice, analyst convention, or common analytical method?
|
|
106
|
+
|
|
107
|
+
## Cross-Cutting Concerns
|
|
108
|
+
|
|
109
|
+
### Data Quality and Consistency
|
|
110
|
+
|
|
111
|
+
Spans all sub-areas. Financial data must be internally consistent (identities hold, cross-statement linkages match) and externally consistent (comparable across entities and periods).
|
|
112
|
+
|
|
113
|
+
- Internal: logic_rules.md §Accounting Identities + §Cross-Statement Linkage Rules
|
|
114
|
+
- External: concepts.md §Extension Account Handling (normalization for comparability)
|
|
115
|
+
- Temporal: logic_rules.md §Period Rules (period matching for valid comparison)
|
|
116
|
+
|
|
117
|
+
### Source Trustworthiness
|
|
118
|
+
|
|
119
|
+
Spans Financial Statement Structure, Notes System, and Regulatory Compliance. Data from different sources (XBRL, HTML, PDF) has different reliability levels.
|
|
120
|
+
|
|
121
|
+
- Source priority: dependency_rules.md §Source of Truth Transition Rules
|
|
122
|
+
- Audit status: reviewed (quarterly) vs audited (annual) vs unaudited
|
|
123
|
+
- Restatement handling: extension_cases.md §Restatement Processing
|
|
124
|
+
|
|
125
|
+
## Required Concept Categories
|
|
126
|
+
|
|
127
|
+
| Category | Description | Risk if Missing | Example of Failure |
|
|
128
|
+
|---|---|---|---|
|
|
129
|
+
| Reporting entity | Legal entity that prepares financial statements | Cannot attribute financial data to an entity | Revenue figure exists but no entity reference — cannot determine whose revenue it is |
|
|
130
|
+
| Financial item | Monetary information at the account level | No queryable data | Ontology has structure but no actual financial figures loaded |
|
|
131
|
+
| Reporting period | Time range of financial information | Temporal analysis impossible | Revenue figure exists without period — cannot determine which year it belongs to |
|
|
132
|
+
| Accounting policy | Recognition, measurement, and presentation choices | Comparison produces misleading results | Two companies' inventory figures compared without noting one uses FIFO and the other weighted average |
|
|
133
|
+
| Note information | Detailed descriptions of main statement items | Contingent liabilities and off-balance-sheet risks invisible | Material litigation pending but not discoverable because notes are excluded from the ontology |
|
|
134
|
+
| External reference | Taxonomy and standard linkage information | Inter-entity comparison impossible | Each entity's "revenue" stored under different concept IDs with no normalization mapping |
|
|
135
|
+
| Segment information | Business division-level data | Diversified company analysis impossible | Conglomerate's overall revenue is available but cannot break down which division contributes what |
|
|
136
|
+
| Audit status | Audit opinion and assurance level | Data reliability unknown | Restated quarterly figures treated with same confidence as audited annual figures |
|
|
137
|
+
|
|
138
|
+
## Reference Standards
|
|
139
|
+
|
|
140
|
+
This file is the **single source of truth for external standard version information** within the finance domain.
|
|
141
|
+
|
|
142
|
+
| Standard | Version/Year | Application Area | Core Content |
|
|
143
|
+
|----------|-------------|-----------------|--------------|
|
|
144
|
+
| IFRS | 2024 (annual bound volume) | Accounting standards | 17 IFRS + 29 IAS standards governing recognition, measurement, presentation, disclosure |
|
|
145
|
+
| XBRL | 2.1 (2003, maintained) | Data taxonomy | Structured financial reporting specification — instances, taxonomies, linkbases |
|
|
146
|
+
| IFRS Taxonomy | 2024 | Taxonomy elements | ~6,000 elements mapping to IFRS disclosure requirements |
|
|
147
|
+
| FIBO | Ongoing (W3C EDMC) | Financial ontology | Financial Industry Business Ontology — entities, instruments, regulatory concepts |
|
|
148
|
+
| US-GAAP | ASC (codification, updated) | US accounting standards | ~90 topics codified by FASB |
|
|
149
|
+
| ESEF | 2020 (EU regulation) | European filing | European Single Electronic Format — mandatory XBRL tagging for IFRS annual reports in EU |
|
|
150
|
+
| K-IFRS | 2024 (aligned with IFRS) | Korean accounting | Korean adoption of IFRS with local amendments |
|
|
151
|
+
|
|
152
|
+
## Bias Detection Criteria
|
|
153
|
+
|
|
154
|
+
### Coverage Distribution
|
|
155
|
+
|
|
156
|
+
- If more than 70% of questions concentrate on a single financial statement (e.g., BS only) → **statement bias**
|
|
157
|
+
- If only one of consolidated/separate is addressed → **reporting unit gap**
|
|
158
|
+
- If only a single point in time is addressed with no time series → **temporal bias**
|
|
159
|
+
|
|
160
|
+
### System Completeness
|
|
161
|
+
|
|
162
|
+
- If the notes area is completely ignored → **notes absence** (contingent liabilities, policies invisible)
|
|
163
|
+
- If only raw items are addressed with no derived metrics → **analysis gap**
|
|
164
|
+
- If only a single industry (general or financial) is addressed → **industry bias**
|
|
165
|
+
- If source format is not differentiated (XBRL vs PDF treated identically) → **source quality blindness**
|
|
166
|
+
|
|
167
|
+
### Analytical Depth
|
|
168
|
+
|
|
169
|
+
- If no inter-entity comparison capability exists → **comparability absence**
|
|
170
|
+
- If restatement handling is undefined → **version management gap**
|
|
171
|
+
- If segment reporting is absent for multi-segment entities → **segment blindness**
|
|
172
|
+
- If audit opinion/status is not tracked → **assurance level ignorance**
|
|
173
|
+
|
|
174
|
+
## Inter-Document Contract
|
|
175
|
+
|
|
176
|
+
### Rule Ownership
|
|
177
|
+
|
|
178
|
+
| Cross-cutting Topic | Owner File | Other Files |
|
|
179
|
+
|---|---|---|
|
|
180
|
+
| Accounting identities and math | logic_rules.md §Accounting Identities | structure_spec.md (references), dependency_rules.md (references) |
|
|
181
|
+
| Concept definitions and synonyms | concepts.md | All other files reference, do not redefine |
|
|
182
|
+
| Dependency direction rules | dependency_rules.md §Direction Rules | structure_spec.md (references) |
|
|
183
|
+
| Source of Truth priority | dependency_rules.md §Source of Truth Transition Rules | domain_scope.md (tier mapping) |
|
|
184
|
+
| Structural requirements | structure_spec.md §Required Node Types, §Required Relationships | Other files reference |
|
|
185
|
+
| Conciseness criteria | conciseness_rules.md | Other files reference |
|
|
186
|
+
| Competency questions | competency_qs.md | Other files provide inference path targets |
|
|
187
|
+
| Constraint conflict resolution | logic_rules.md §Constraint Conflict Checking | dependency_rules.md (cascading failures) |
|
|
188
|
+
|
|
189
|
+
### Sub-area to CQ Section Mapping
|
|
190
|
+
|
|
191
|
+
| Sub-area | CQ Sections | Coverage |
|
|
192
|
+
|---|---|---|
|
|
193
|
+
| Financial Statement Structure | CQ-FS | Full |
|
|
194
|
+
| Chart of Accounts Classification | CQ-CA | Full |
|
|
195
|
+
| Accounting Identity | CQ-AI | Full |
|
|
196
|
+
| Period/Point-in-Time | CQ-TP | Full |
|
|
197
|
+
| Consolidated/Separate | CQ-CS | Full |
|
|
198
|
+
| Notes and Disclosure | CQ-ND | Full |
|
|
199
|
+
| Key Accounting Standards | CQ-AS | Full |
|
|
200
|
+
| Derived Metrics | CQ-DM | Full |
|
|
201
|
+
| Regulatory and Compliance | CQ-RC | Full |
|
|
202
|
+
|
|
203
|
+
Cross-cutting CQ sections:
|
|
204
|
+
- CQ-IE (Inter-Entity Comparison) — spans Chart of Accounts, Derived Metrics, Consolidated/Separate
|
|
205
|
+
- CQ-TS (Time Series) — spans all sub-areas with temporal dimension
|
|
206
|
+
- CQ-DQ (Data Quality) — spans all sub-areas; enforcement through logic_rules.md identities
|
|
207
|
+
|
|
208
|
+
## Related Documents
|
|
209
|
+
- concepts.md — Synonym mappings, homonyms, interpretation principles, taxonomy element definitions
|
|
210
|
+
- competency_qs.md — Competency questions organized by CQ-ID sections
|
|
211
|
+
- structure_spec.md — Node types, relationships, and structural requirements
|
|
212
|
+
- logic_rules.md — Accounting identities, period rules, IFRS-specific rules
|
|
213
|
+
- dependency_rules.md — Acyclic, direction, diamond, referential integrity rules
|
|
214
|
+
- extension_cases.md — Taxonomy change, new entity, multi-country scenarios
|
|
215
|
+
- conciseness_rules.md — Allowed/prohibited redundancy patterns
|