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.
Files changed (447) hide show
  1. package/.onto/authority/core-lens-registry.yaml +134 -0
  2. package/.onto/authority/core-lexicon.yaml +1562 -0
  3. package/.onto/authority/diagnostic-codes.yaml +94 -0
  4. package/.onto/domains/accounting/competency_qs.md +384 -0
  5. package/.onto/domains/accounting/concepts.md +186 -0
  6. package/.onto/domains/accounting/conciseness_rules.md +160 -0
  7. package/.onto/domains/accounting/dependency_rules.md +239 -0
  8. package/.onto/domains/accounting/domain_scope.md +213 -0
  9. package/.onto/domains/accounting/extension_cases.md +416 -0
  10. package/.onto/domains/accounting/logic_rules.md +226 -0
  11. package/.onto/domains/accounting/structure_spec.md +298 -0
  12. package/.onto/domains/accounting-kr/competency_qs.md +562 -0
  13. package/.onto/domains/accounting-kr/concepts.md +187 -0
  14. package/.onto/domains/accounting-kr/conciseness_rules.md +125 -0
  15. package/.onto/domains/accounting-kr/dependency_rules.md +93 -0
  16. package/.onto/domains/accounting-kr/domain_scope.md +140 -0
  17. package/.onto/domains/accounting-kr/extension_cases.md +343 -0
  18. package/.onto/domains/accounting-kr/logic_rules.md +160 -0
  19. package/.onto/domains/accounting-kr/structure_spec.md +85 -0
  20. package/.onto/domains/business/competency_qs.md +263 -0
  21. package/.onto/domains/business/concepts.md +200 -0
  22. package/.onto/domains/business/conciseness_rules.md +135 -0
  23. package/.onto/domains/business/dependency_rules.md +113 -0
  24. package/.onto/domains/business/domain_scope.md +240 -0
  25. package/.onto/domains/business/extension_cases.md +249 -0
  26. package/.onto/domains/business/logic_rules.md +134 -0
  27. package/.onto/domains/business/structure_spec.md +114 -0
  28. package/.onto/domains/finance/competency_qs.md +362 -0
  29. package/.onto/domains/finance/concepts.md +194 -0
  30. package/.onto/domains/finance/conciseness_rules.md +155 -0
  31. package/.onto/domains/finance/dependency_rules.md +171 -0
  32. package/.onto/domains/finance/domain_scope.md +215 -0
  33. package/.onto/domains/finance/extension_cases.md +350 -0
  34. package/.onto/domains/finance/logic_rules.md +191 -0
  35. package/.onto/domains/finance/structure_spec.md +182 -0
  36. package/.onto/domains/llm-native-development/competency_qs.md +430 -0
  37. package/.onto/domains/llm-native-development/concepts.md +242 -0
  38. package/.onto/domains/llm-native-development/conciseness_rules.md +163 -0
  39. package/.onto/domains/llm-native-development/dependency_rules.md +216 -0
  40. package/.onto/domains/llm-native-development/domain_scope.md +197 -0
  41. package/.onto/domains/llm-native-development/extension_cases.md +474 -0
  42. package/.onto/domains/llm-native-development/logic_rules.md +123 -0
  43. package/.onto/domains/llm-native-development/prompt_interface.md +49 -0
  44. package/.onto/domains/llm-native-development/structure_spec.md +245 -0
  45. package/.onto/domains/market-intelligence/competency_qs.md +274 -0
  46. package/.onto/domains/market-intelligence/concepts.md +233 -0
  47. package/.onto/domains/market-intelligence/conciseness_rules.md +165 -0
  48. package/.onto/domains/market-intelligence/dependency_rules.md +197 -0
  49. package/.onto/domains/market-intelligence/domain_scope.md +231 -0
  50. package/.onto/domains/market-intelligence/extension_cases.md +425 -0
  51. package/.onto/domains/market-intelligence/logic_rules.md +247 -0
  52. package/.onto/domains/market-intelligence/structure_spec.md +209 -0
  53. package/.onto/domains/ontology/competency_qs.md +394 -0
  54. package/.onto/domains/ontology/concepts.md +172 -0
  55. package/.onto/domains/ontology/conciseness_rules.md +134 -0
  56. package/.onto/domains/ontology/dependency_rules.md +125 -0
  57. package/.onto/domains/ontology/domain_scope.md +114 -0
  58. package/.onto/domains/ontology/extension_cases.md +501 -0
  59. package/.onto/domains/ontology/logic_rules.md +114 -0
  60. package/.onto/domains/ontology/problem_framing_profile.md +67 -0
  61. package/.onto/domains/ontology/structure_spec.md +115 -0
  62. package/.onto/domains/palantir-foundry/RESEARCH_NOTES.md +911 -0
  63. package/.onto/domains/palantir-foundry/competency_qs.md +191 -0
  64. package/.onto/domains/palantir-foundry/competitive_comparison.md +329 -0
  65. package/.onto/domains/palantir-foundry/concepts.md +197 -0
  66. package/.onto/domains/palantir-foundry/conciseness_rules.md +245 -0
  67. package/.onto/domains/palantir-foundry/dependency_rules.md +135 -0
  68. package/.onto/domains/palantir-foundry/domain_scope.md +395 -0
  69. package/.onto/domains/palantir-foundry/extension_cases.md +210 -0
  70. package/.onto/domains/palantir-foundry/logic_rules.md +172 -0
  71. package/.onto/domains/palantir-foundry/structure_spec.md +291 -0
  72. package/.onto/domains/software-engineering/competency_qs.md +538 -0
  73. package/.onto/domains/software-engineering/concepts.md +238 -0
  74. package/.onto/domains/software-engineering/conciseness_rules.md +167 -0
  75. package/.onto/domains/software-engineering/dependency_rules.md +216 -0
  76. package/.onto/domains/software-engineering/domain_scope.md +183 -0
  77. package/.onto/domains/software-engineering/extension_cases.md +551 -0
  78. package/.onto/domains/software-engineering/logic_rules.md +240 -0
  79. package/.onto/domains/software-engineering/problem_framing_profile.md +68 -0
  80. package/.onto/domains/software-engineering/structure_spec.md +185 -0
  81. package/.onto/domains/ui-design/competency_qs.md +567 -0
  82. package/.onto/domains/ui-design/concepts.md +194 -0
  83. package/.onto/domains/ui-design/conciseness_rules.md +190 -0
  84. package/.onto/domains/ui-design/dependency_rules.md +323 -0
  85. package/.onto/domains/ui-design/domain_scope.md +340 -0
  86. package/.onto/domains/ui-design/extension_cases.md +563 -0
  87. package/.onto/domains/ui-design/logic_rules.md +349 -0
  88. package/.onto/domains/ui-design/structure_spec.md +252 -0
  89. package/.onto/domains/visual-design/competency_qs.md +472 -0
  90. package/.onto/domains/visual-design/concepts.md +147 -0
  91. package/.onto/domains/visual-design/conciseness_rules.md +186 -0
  92. package/.onto/domains/visual-design/dependency_rules.md +282 -0
  93. package/.onto/domains/visual-design/domain_scope.md +290 -0
  94. package/.onto/domains/visual-design/extension_cases.md +480 -0
  95. package/.onto/domains/visual-design/logic_rules.md +232 -0
  96. package/.onto/domains/visual-design/structure_spec.md +213 -0
  97. package/.onto/principles/llm-native-development-guideline.md +401 -0
  98. package/.onto/principles/llm-runtime-interface-principles.md +665 -0
  99. package/.onto/principles/non-specialist-communication-guideline.md +74 -0
  100. package/.onto/principles/ontology-as-code-guideline.md +243 -0
  101. package/.onto/principles/ontology-as-code-naming-charter.md +130 -0
  102. package/.onto/principles/product-locality-principle.md +129 -0
  103. package/.onto/principles/productization-charter.md +569 -0
  104. package/.onto/processes/evolve/material-kind-adapter-contract.md +113 -0
  105. package/.onto/processes/reconstruct/reconstruct-boundary-contract.md +366 -0
  106. package/.onto/processes/reconstruct/source-profile-contract.md +107 -0
  107. package/.onto/processes/reconstruct/source-profiles/code.md +72 -0
  108. package/.onto/processes/reconstruct/source-profiles/database.md +74 -0
  109. package/.onto/processes/reconstruct/source-profiles/document.md +71 -0
  110. package/.onto/processes/reconstruct/source-profiles/spreadsheet.md +79 -0
  111. package/.onto/processes/review/binding-contract.md +270 -0
  112. package/.onto/processes/review/execution-preparation-artifacts.md +281 -0
  113. package/.onto/processes/review/interpretation-contract.md +245 -0
  114. package/.onto/processes/review/issue-stance-deliberation-contract.md +761 -0
  115. package/.onto/processes/review/lens-prompt-contract.md +402 -0
  116. package/.onto/processes/review/lens-registry.md +127 -0
  117. package/.onto/processes/review/pre-dispatch-contracts.md +428 -0
  118. package/.onto/processes/review/productized-live-path.md +398 -0
  119. package/.onto/processes/review/prompt-execution-runner-contract.md +187 -0
  120. package/.onto/processes/review/record-contract.md +427 -0
  121. package/.onto/processes/review/record-field-mapping.md +337 -0
  122. package/.onto/processes/review/review-context-manifest-contract.md +356 -0
  123. package/.onto/processes/review/review-execution-ux-contract.md +809 -0
  124. package/.onto/processes/review/review-target-profile-contract.md +259 -0
  125. package/.onto/processes/review/shared-phenomenon-contract.md +129 -0
  126. package/.onto/processes/review/synthesize-prompt-contract.md +343 -0
  127. package/.onto/processes/shared/target-material-kind-contract.md +198 -0
  128. package/.onto/roles/axiology.md +81 -0
  129. package/.onto/roles/conciseness.md +36 -0
  130. package/.onto/roles/coverage.md +34 -0
  131. package/.onto/roles/dependency.md +37 -0
  132. package/.onto/roles/evolution.md +35 -0
  133. package/.onto/roles/logic.md +104 -0
  134. package/.onto/roles/pragmatics.md +32 -0
  135. package/.onto/roles/semantics.md +36 -0
  136. package/.onto/roles/structure.md +33 -0
  137. package/.onto/roles/synthesize.md +92 -0
  138. package/AGENTS.md +240 -0
  139. package/CLAUDE.md +39 -0
  140. package/README.md +287 -0
  141. package/bin/onto +92 -0
  142. package/dist/cli.js +101 -0
  143. package/dist/core-api/reconstruct-api.js +222 -0
  144. package/dist/core-api/review-api.js +1271 -0
  145. package/dist/core-runtime/cli/assemble-review-record.js +431 -0
  146. package/dist/core-runtime/cli/bootstrap-review-binding.js +186 -0
  147. package/dist/core-runtime/cli/codex-nested-dispatch.js +226 -0
  148. package/dist/core-runtime/cli/codex-nested-dispatch.test.js +390 -0
  149. package/dist/core-runtime/cli/codex-nested-teamlead-executor.js +464 -0
  150. package/dist/core-runtime/cli/codex-nested-teamlead-executor.test.js +335 -0
  151. package/dist/core-runtime/cli/codex-review-unit-executor.js +228 -0
  152. package/dist/core-runtime/cli/complete-review-session.js +64 -0
  153. package/dist/core-runtime/cli/complexity-assessment.js +153 -0
  154. package/dist/core-runtime/cli/coordinator-helpers.js +583 -0
  155. package/dist/core-runtime/cli/coordinator-state-machine-deliberation.test.js +167 -0
  156. package/dist/core-runtime/cli/coordinator-state-machine.js +794 -0
  157. package/dist/core-runtime/cli/e2e-codex-multi-agent-fixes.test.js +615 -0
  158. package/dist/core-runtime/cli/e2e-start-review-session.test.js +312 -0
  159. package/dist/core-runtime/cli/health.js +44 -0
  160. package/dist/core-runtime/cli/inline-http-review-unit-executor.js +656 -0
  161. package/dist/core-runtime/cli/inline-http-review-unit-executor.test.js +567 -0
  162. package/dist/core-runtime/cli/materialize-review-execution-preparation.js +104 -0
  163. package/dist/core-runtime/cli/materialize-review-prompt-packets.js +952 -0
  164. package/dist/core-runtime/cli/migrate-session-roots.js +118 -0
  165. package/dist/core-runtime/cli/mock-review-unit-executor.js +285 -0
  166. package/dist/core-runtime/cli/onto-tools.js +369 -0
  167. package/dist/core-runtime/cli/prepare-review-session.js +272 -0
  168. package/dist/core-runtime/cli/render-review-final-output.js +350 -0
  169. package/dist/core-runtime/cli/repo-layout-migration-replace.smoke.test.js +106 -0
  170. package/dist/core-runtime/cli/review-invoke-auto-resolution.test.js +268 -0
  171. package/dist/core-runtime/cli/review-invoke-coordinator-topology.test.js +136 -0
  172. package/dist/core-runtime/cli/review-invoke-resolver-caching.test.js +201 -0
  173. package/dist/core-runtime/cli/review-invoke-topology-dispatch.test.js +192 -0
  174. package/dist/core-runtime/cli/review-invoke.js +2030 -0
  175. package/dist/core-runtime/cli/run-review-prompt-execution.js +2152 -0
  176. package/dist/core-runtime/cli/session-root-guard.js +168 -0
  177. package/dist/core-runtime/cli/spawn-watcher.js +173 -0
  178. package/dist/core-runtime/cli/spawn-watcher.test.js +457 -0
  179. package/dist/core-runtime/cli/start-review-session.js +68 -0
  180. package/dist/core-runtime/cli/strip-wrapping-code-fence.js +56 -0
  181. package/dist/core-runtime/cli/strip-wrapping-code-fence.test.js +79 -0
  182. package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.js +412 -0
  183. package/dist/core-runtime/cli/teamcreate-lens-deliberation-executor.test.js +351 -0
  184. package/dist/core-runtime/cli/topology-executor-mapping.js +139 -0
  185. package/dist/core-runtime/cli/topology-executor-mapping.test.js +173 -0
  186. package/dist/core-runtime/cli/write-review-interpretation.js +81 -0
  187. package/dist/core-runtime/config/onto-config-cli.js +278 -0
  188. package/dist/core-runtime/config/onto-config-key-path.js +288 -0
  189. package/dist/core-runtime/config/onto-config-key-path.test.js +195 -0
  190. package/dist/core-runtime/config/onto-config-preview.js +108 -0
  191. package/dist/core-runtime/config/onto-config-preview.test.js +132 -0
  192. package/dist/core-runtime/discovery/config-chain.js +118 -0
  193. package/dist/core-runtime/discovery/config-chain.test.js +103 -0
  194. package/dist/core-runtime/discovery/config-profile.js +199 -0
  195. package/dist/core-runtime/discovery/config-profile.test.js +233 -0
  196. package/dist/core-runtime/discovery/host-detection.js +33 -0
  197. package/dist/core-runtime/discovery/host-detection.test.js +186 -0
  198. package/dist/core-runtime/discovery/installation-paths.js +21 -0
  199. package/dist/core-runtime/discovery/installation-paths.test.js +65 -0
  200. package/dist/core-runtime/discovery/lens-registry.js +60 -0
  201. package/dist/core-runtime/discovery/lens-registry.test.js +81 -0
  202. package/dist/core-runtime/discovery/onto-home.js +71 -0
  203. package/dist/core-runtime/discovery/path-normalization.js +28 -0
  204. package/dist/core-runtime/discovery/path-normalization.test.js +22 -0
  205. package/dist/core-runtime/discovery/plugin-path.js +72 -0
  206. package/dist/core-runtime/discovery/plugin-path.test.js +95 -0
  207. package/dist/core-runtime/discovery/project-root.js +47 -0
  208. package/dist/core-runtime/discovery/settings-chain.js +353 -0
  209. package/dist/core-runtime/discovery/walk-up.js +17 -0
  210. package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.js +344 -0
  211. package/dist/core-runtime/evolve/adapters/code-product/compile/compile-defense.test.js +915 -0
  212. package/dist/core-runtime/evolve/adapters/code-product/compile/compile.js +564 -0
  213. package/dist/core-runtime/evolve/adapters/code-product/compile/compile.test.js +708 -0
  214. package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.js +165 -0
  215. package/dist/core-runtime/evolve/adapters/code-product/parsers/brief-parser.test.js +227 -0
  216. package/dist/core-runtime/evolve/adapters/code-product/validators/validate.js +59 -0
  217. package/dist/core-runtime/evolve/adapters/code-product/validators/validate.test.js +205 -0
  218. package/dist/core-runtime/evolve/adapters/methodology/adapter.js +16 -0
  219. package/dist/core-runtime/evolve/adapters/methodology/adapter.test.js +9 -0
  220. package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.js +298 -0
  221. package/dist/core-runtime/evolve/adapters/methodology/perspectives/authority-consistency.test.js +70 -0
  222. package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.js +46 -0
  223. package/dist/core-runtime/evolve/adapters/methodology/scope-types/process.test.js +73 -0
  224. package/dist/core-runtime/evolve/adapters/registry.js +47 -0
  225. package/dist/core-runtime/evolve/adapters/registry.test.js +67 -0
  226. package/dist/core-runtime/evolve/cli.js +256 -0
  227. package/dist/core-runtime/evolve/commands/align.js +194 -0
  228. package/dist/core-runtime/evolve/commands/align.test.js +82 -0
  229. package/dist/core-runtime/evolve/commands/apply.js +161 -0
  230. package/dist/core-runtime/evolve/commands/apply.test.js +138 -0
  231. package/dist/core-runtime/evolve/commands/close.js +39 -0
  232. package/dist/core-runtime/evolve/commands/close.test.js +99 -0
  233. package/dist/core-runtime/evolve/commands/defer.js +40 -0
  234. package/dist/core-runtime/evolve/commands/defer.test.js +134 -0
  235. package/dist/core-runtime/evolve/commands/draft.js +323 -0
  236. package/dist/core-runtime/evolve/commands/draft.test.js +178 -0
  237. package/dist/core-runtime/evolve/commands/e2e-evolve-full-cycle.test.js +208 -0
  238. package/dist/core-runtime/evolve/commands/error-messages.js +125 -0
  239. package/dist/core-runtime/evolve/commands/error-messages.test.js +167 -0
  240. package/dist/core-runtime/evolve/commands/propose-align.js +222 -0
  241. package/dist/core-runtime/evolve/commands/propose-align.test.js +136 -0
  242. package/dist/core-runtime/evolve/commands/reconstruct.js +330 -0
  243. package/dist/core-runtime/evolve/commands/reconstruct.test.js +278 -0
  244. package/dist/core-runtime/evolve/commands/shared.js +22 -0
  245. package/dist/core-runtime/evolve/commands/stale-check.js +103 -0
  246. package/dist/core-runtime/evolve/commands/stale-check.test.js +84 -0
  247. package/dist/core-runtime/evolve/commands/start.js +887 -0
  248. package/dist/core-runtime/evolve/commands/start.test.js +396 -0
  249. package/dist/core-runtime/evolve/config/project-config.js +99 -0
  250. package/dist/core-runtime/evolve/config/project-config.test.js +170 -0
  251. package/dist/core-runtime/evolve/renderers/align-packet.js +280 -0
  252. package/dist/core-runtime/evolve/renderers/align-packet.test.js +332 -0
  253. package/dist/core-runtime/evolve/renderers/draft-packet.js +303 -0
  254. package/dist/core-runtime/evolve/renderers/draft-packet.test.js +377 -0
  255. package/dist/core-runtime/evolve/renderers/format.js +5 -0
  256. package/dist/core-runtime/evolve/renderers/scope-md.js +237 -0
  257. package/dist/core-runtime/evolve/renderers/scope-md.test.js +306 -0
  258. package/dist/core-runtime/govern/cli.js +369 -0
  259. package/dist/core-runtime/govern/cli.test.js +314 -0
  260. package/dist/core-runtime/govern/drift-engine.js +103 -0
  261. package/dist/core-runtime/govern/drift-engine.test.js +319 -0
  262. package/dist/core-runtime/govern/promote-principle.js +206 -0
  263. package/dist/core-runtime/govern/promote-principle.test.js +368 -0
  264. package/dist/core-runtime/govern/queue.js +81 -0
  265. package/dist/core-runtime/govern/types.js +16 -0
  266. package/dist/core-runtime/install/cli.js +530 -0
  267. package/dist/core-runtime/install/detect.js +128 -0
  268. package/dist/core-runtime/install/detect.test.js +155 -0
  269. package/dist/core-runtime/install/gitignore-update.js +74 -0
  270. package/dist/core-runtime/install/gitignore-update.test.js +64 -0
  271. package/dist/core-runtime/install/install-integration.test.js +373 -0
  272. package/dist/core-runtime/install/prompts.js +389 -0
  273. package/dist/core-runtime/install/prompts.test.js +293 -0
  274. package/dist/core-runtime/install/types.js +26 -0
  275. package/dist/core-runtime/install/validation.js +295 -0
  276. package/dist/core-runtime/install/validation.test.js +313 -0
  277. package/dist/core-runtime/install/writer.js +254 -0
  278. package/dist/core-runtime/install/writer.test.js +218 -0
  279. package/dist/core-runtime/learning/extractor.js +461 -0
  280. package/dist/core-runtime/learning/feedback.js +179 -0
  281. package/dist/core-runtime/learning/health-report.js +165 -0
  282. package/dist/core-runtime/learning/health-report.test.js +169 -0
  283. package/dist/core-runtime/learning/loader.js +388 -0
  284. package/dist/core-runtime/learning/loader.test.js +102 -0
  285. package/dist/core-runtime/learning/promote/apply-state.js +240 -0
  286. package/dist/core-runtime/learning/promote/audit-obligation.js +195 -0
  287. package/dist/core-runtime/learning/promote/collector.js +432 -0
  288. package/dist/core-runtime/learning/promote/degraded-state.js +125 -0
  289. package/dist/core-runtime/learning/promote/domain-doc-proposer.js +166 -0
  290. package/dist/core-runtime/learning/promote/e2e-promote.test.js +6385 -0
  291. package/dist/core-runtime/learning/promote/health-snapshot.js +150 -0
  292. package/dist/core-runtime/learning/promote/insight-reclassifier.js +544 -0
  293. package/dist/core-runtime/learning/promote/judgment-auditor.js +517 -0
  294. package/dist/core-runtime/learning/promote/panel-reviewer.js +1158 -0
  295. package/dist/core-runtime/learning/promote/promote-executor.js +1675 -0
  296. package/dist/core-runtime/learning/promote/promoter.js +307 -0
  297. package/dist/core-runtime/learning/promote/retirement.js +122 -0
  298. package/dist/core-runtime/learning/promote/types.js +23 -0
  299. package/dist/core-runtime/learning/prompt-sections.js +51 -0
  300. package/dist/core-runtime/learning/shared/artifact-registry-init.js +45 -0
  301. package/dist/core-runtime/learning/shared/artifact-registry.js +254 -0
  302. package/dist/core-runtime/learning/shared/audit-obligation-kernel.js +73 -0
  303. package/dist/core-runtime/learning/shared/audit-state.js +99 -0
  304. package/dist/core-runtime/learning/shared/duplicate-check.js +28 -0
  305. package/dist/core-runtime/learning/shared/llm-caller.js +831 -0
  306. package/dist/core-runtime/learning/shared/llm-caller.test.js +601 -0
  307. package/dist/core-runtime/learning/shared/llm-tool-loop.js +393 -0
  308. package/dist/core-runtime/learning/shared/mode.js +25 -0
  309. package/dist/core-runtime/learning/shared/paths.js +84 -0
  310. package/dist/core-runtime/learning/shared/paths.test.js +79 -0
  311. package/dist/core-runtime/learning/shared/patterns.js +37 -0
  312. package/dist/core-runtime/learning/shared/recoverability.js +355 -0
  313. package/dist/core-runtime/learning/shared/recovery-context.js +374 -0
  314. package/dist/core-runtime/learning/shared/scope.js +1 -0
  315. package/dist/core-runtime/learning/shared/semantic-classifier.js +94 -0
  316. package/dist/core-runtime/learning/shared/specs/apply-execution-state-spec.js +42 -0
  317. package/dist/core-runtime/learning/shared/specs/audit-state-spec.js +37 -0
  318. package/dist/core-runtime/learning/shared/specs/backup-metadata-spec.js +39 -0
  319. package/dist/core-runtime/learning/shared/specs/emergency-log-spec.js +41 -0
  320. package/dist/core-runtime/learning/shared/specs/layout-version-spec.js +38 -0
  321. package/dist/core-runtime/learning/shared/specs/promote-decisions-spec.js +43 -0
  322. package/dist/core-runtime/learning/shared/specs/promote-report-spec.js +113 -0
  323. package/dist/core-runtime/learning/shared/specs/prune-log-spec.js +36 -0
  324. package/dist/core-runtime/learning/shared/specs/recovery-resolution-spec.js +48 -0
  325. package/dist/core-runtime/learning/shared/specs/restore-manifest-spec.js +43 -0
  326. package/dist/core-runtime/learning/shared/specs/spec-helpers.js +64 -0
  327. package/dist/core-runtime/learning/usage-tracker.js +190 -0
  328. package/dist/core-runtime/learning/usage-tracker.test.js +176 -0
  329. package/dist/core-runtime/llm/llm-caller.js +649 -0
  330. package/dist/core-runtime/llm/llm-tool-loop.js +401 -0
  331. package/dist/core-runtime/llm/model-switcher.js +62 -0
  332. package/dist/core-runtime/logger.js +22 -0
  333. package/dist/core-runtime/onboard/detect-review-axes.js +122 -0
  334. package/dist/core-runtime/onboard/detect-review-axes.test.js +127 -0
  335. package/dist/core-runtime/onboard/write-review-block.js +188 -0
  336. package/dist/core-runtime/onboard/write-review-block.test.js +240 -0
  337. package/dist/core-runtime/readers/brownfield-builder.js +150 -0
  338. package/dist/core-runtime/readers/brownfield-builder.test.js +136 -0
  339. package/dist/core-runtime/readers/code-chunk-collector.js +53 -0
  340. package/dist/core-runtime/readers/code-chunk-collector.test.js +136 -0
  341. package/dist/core-runtime/readers/file-utils.js +240 -0
  342. package/dist/core-runtime/readers/file-utils.test.js +146 -0
  343. package/dist/core-runtime/readers/lexicon-citation-check.js +93 -0
  344. package/dist/core-runtime/readers/lexicon-citation-check.test.js +77 -0
  345. package/dist/core-runtime/readers/mcp-figma.js +30 -0
  346. package/dist/core-runtime/readers/mcp-figma.test.js +82 -0
  347. package/dist/core-runtime/readers/mcp-generic.js +31 -0
  348. package/dist/core-runtime/readers/mcp-generic.test.js +76 -0
  349. package/dist/core-runtime/readers/ontology-index.js +148 -0
  350. package/dist/core-runtime/readers/ontology-index.test.js +245 -0
  351. package/dist/core-runtime/readers/ontology-query.js +168 -0
  352. package/dist/core-runtime/readers/ontology-query.test.js +311 -0
  353. package/dist/core-runtime/readers/ontology-resolve.js +48 -0
  354. package/dist/core-runtime/readers/ontology-resolve.test.js +48 -0
  355. package/dist/core-runtime/readers/patterns/index.js +7 -0
  356. package/dist/core-runtime/readers/review-log.js +213 -0
  357. package/dist/core-runtime/readers/review-log.test.js +313 -0
  358. package/dist/core-runtime/readers/scan-local.js +102 -0
  359. package/dist/core-runtime/readers/scan-local.test.js +102 -0
  360. package/dist/core-runtime/readers/scan-tarball.js +121 -0
  361. package/dist/core-runtime/readers/scan-tarball.test.js +283 -0
  362. package/dist/core-runtime/readers/scan-vault.js +34 -0
  363. package/dist/core-runtime/readers/scan-vault.test.js +81 -0
  364. package/dist/core-runtime/readers/types.js +42 -0
  365. package/dist/core-runtime/readers/types.test.js +94 -0
  366. package/dist/core-runtime/readers/viewpoint-collectors.js +229 -0
  367. package/dist/core-runtime/reconstruct/artifact-types.js +1 -0
  368. package/dist/core-runtime/reconstruct/directive-validation.js +123 -0
  369. package/dist/core-runtime/reconstruct/materialize-preparation.js +251 -0
  370. package/dist/core-runtime/reconstruct/record.js +198 -0
  371. package/dist/core-runtime/reconstruct/run.js +578 -0
  372. package/dist/core-runtime/reconstruct/seed-candidate-validation.js +356 -0
  373. package/dist/core-runtime/reconstruct/source-observations.js +62 -0
  374. package/dist/core-runtime/reconstruct/source-profiles.js +73 -0
  375. package/dist/core-runtime/release-channel/release-channel.js +90 -0
  376. package/dist/core-runtime/review/artifact-types.js +13 -0
  377. package/dist/core-runtime/review/citation-audit.js +204 -0
  378. package/dist/core-runtime/review/citation-audit.test.js +165 -0
  379. package/dist/core-runtime/review/controlled-lens-deliberation.js +125 -0
  380. package/dist/core-runtime/review/execution-plan-resolver.js +247 -0
  381. package/dist/core-runtime/review/execution-plan-resolver.test.js +243 -0
  382. package/dist/core-runtime/review/execution-topology-resolver-axis-first.test.js +246 -0
  383. package/dist/core-runtime/review/execution-topology-resolver.js +401 -0
  384. package/dist/core-runtime/review/execution-topology-resolver.test.js +315 -0
  385. package/dist/core-runtime/review/failure-records.js +57 -0
  386. package/dist/core-runtime/review/inline-context-embedder.js +141 -0
  387. package/dist/core-runtime/review/inline-context-embedder.test.js +154 -0
  388. package/dist/core-runtime/review/issue-artifact-runtime.js +859 -0
  389. package/dist/core-runtime/review/legacy-mode-policy.js +88 -0
  390. package/dist/core-runtime/review/lens-completion-policy.js +17 -0
  391. package/dist/core-runtime/review/materializers-effort-persist.test.js +79 -0
  392. package/dist/core-runtime/review/materializers.js +963 -0
  393. package/dist/core-runtime/review/ontology-path-classifier.js +179 -0
  394. package/dist/core-runtime/review/ontology-path-classifier.test.js +216 -0
  395. package/dist/core-runtime/review/packet-boundary-policy.js +215 -0
  396. package/dist/core-runtime/review/packet-boundary-policy.test.js +107 -0
  397. package/dist/core-runtime/review/participating-lens-paths.js +61 -0
  398. package/dist/core-runtime/review/participating-lens-paths.test.js +73 -0
  399. package/dist/core-runtime/review/review-artifact-utils.js +287 -0
  400. package/dist/core-runtime/review/review-config-legacy-translate.js +244 -0
  401. package/dist/core-runtime/review/review-config-legacy-translate.test.js +161 -0
  402. package/dist/core-runtime/review/review-config-validator.js +289 -0
  403. package/dist/core-runtime/review/review-config-validator.test.js +236 -0
  404. package/dist/core-runtime/review/review-execution-profile.js +193 -0
  405. package/dist/core-runtime/review/review-execution-route.js +52 -0
  406. package/dist/core-runtime/review/review-progress-contract.js +123 -0
  407. package/dist/core-runtime/review/review-record-validation.js +251 -0
  408. package/dist/core-runtime/review/review-result-classification.js +379 -0
  409. package/dist/core-runtime/review/review-state-machine.js +39 -0
  410. package/dist/core-runtime/review/route-visibility.js +125 -0
  411. package/dist/core-runtime/review/shape-pipeline-audit.test.js +311 -0
  412. package/dist/core-runtime/review/shape-to-topology-id.js +117 -0
  413. package/dist/core-runtime/review/shape-to-topology-id.test.js +132 -0
  414. package/dist/core-runtime/review/topology-shape-derivation.js +155 -0
  415. package/dist/core-runtime/review/topology-shape-derivation.test.js +195 -0
  416. package/dist/core-runtime/scope-runtime/constants.js +12 -0
  417. package/dist/core-runtime/scope-runtime/constraint-pool.js +166 -0
  418. package/dist/core-runtime/scope-runtime/constraint-pool.test.js +674 -0
  419. package/dist/core-runtime/scope-runtime/domain-validation-log.js +135 -0
  420. package/dist/core-runtime/scope-runtime/domain-validation-log.test.js +156 -0
  421. package/dist/core-runtime/scope-runtime/eval-persistence.js +65 -0
  422. package/dist/core-runtime/scope-runtime/eval-persistence.test.js +84 -0
  423. package/dist/core-runtime/scope-runtime/event-pipeline.js +64 -0
  424. package/dist/core-runtime/scope-runtime/event-pipeline.test.js +450 -0
  425. package/dist/core-runtime/scope-runtime/event-store.js +39 -0
  426. package/dist/core-runtime/scope-runtime/event-store.test.js +95 -0
  427. package/dist/core-runtime/scope-runtime/gate-guard.js +348 -0
  428. package/dist/core-runtime/scope-runtime/gate-guard.test.js +1047 -0
  429. package/dist/core-runtime/scope-runtime/hash.js +4 -0
  430. package/dist/core-runtime/scope-runtime/hash.test.js +33 -0
  431. package/dist/core-runtime/scope-runtime/id.js +4 -0
  432. package/dist/core-runtime/scope-runtime/id.test.js +17 -0
  433. package/dist/core-runtime/scope-runtime/reducer.js +297 -0
  434. package/dist/core-runtime/scope-runtime/reducer.test.js +759 -0
  435. package/dist/core-runtime/scope-runtime/scope-manager.js +161 -0
  436. package/dist/core-runtime/scope-runtime/state-machine.js +309 -0
  437. package/dist/core-runtime/scope-runtime/state-machine.test.js +704 -0
  438. package/dist/core-runtime/scope-runtime/types.js +116 -0
  439. package/dist/core-runtime/scope-runtime/types.test.js +69 -0
  440. package/dist/core-runtime/target-material-kind.js +256 -0
  441. package/dist/core-runtime/translate/render-for-user.js +169 -0
  442. package/dist/core-runtime/translate/render-for-user.test.js +122 -0
  443. package/dist/mcp/server.js +1011 -0
  444. package/dist/mcp/tool-schemas.js +93 -0
  445. package/dist/providers/capability-contract.js +1 -0
  446. package/package.json +68 -0
  447. package/settings.example.json +33 -0
@@ -0,0 +1,343 @@
1
+ ---
2
+ version: 2
3
+ last_updated: "2026-03-30"
4
+ source: create-domain
5
+ status: reviewed
6
+ ---
7
+
8
+ # accounting-korea Domain -- 확장 시나리오
9
+
10
+ evolution 에이전트가 각 시나리오를 시뮬레이션하여 기존 시스템의 깨짐 여부를 검증한다.
11
+
12
+ ---
13
+
14
+ ## Case 1: K-GAAP -> K-IFRS 전환 (IPO 준비)
15
+
16
+ ### 상황 설명
17
+
18
+ 비상장기업이 코스닥/코스피 상장(IPO)을 추진하면서 K-GAAP에서 K-IFRS로 회계기준을 전환한다. 외부감사법에 따라 상장법인은 K-IFRS를 의무 적용해야 하므로, 상장 전 전환이 필수이다. 전환일 기준 재무상태표(opening balance sheet)를 K-IFRS로 재작성하며, 비교 재무제표를 포함하여 최소 2개 사업연도의 K-IFRS 재무제표가 필요하다.
19
+
20
+ 스타트업·벤처기업의 경우 RCPS(상환전환우선주, Redeemable Convertible Preferred Stock)가 핵심 쟁점이다. K-GAAP에서는 RCPS 발행금액을 법적 형식에 따라 자본금+자본잉여금으로 분류하지만, K-IFRS에서는 실질에 따라 상환의무가 있는 부분을 금융부채로, 전환권을 확정대확정(fixed-for-fixed) 요건 충족 여부에 따라 자본 또는 파생상품부채로 분류한다. 리픽싱(refixing) 조항, IPO 공모가 연동 조항이 있으면 전환권도 부채로 분류되며 매 보고기간 공정가치 재평가 대상이 된다.
21
+
22
+ 실제 사례: 데이원컴퍼니(2024년) -- 자본총계 마이너스 638억원 완전자본잠식 상태에서 RCPS 보통주 전환으로 해소. 알지노믹스(2025년) -- 자본총계 마이너스 1,828억원에서 RCPS/CPS 보통주 전환으로 부채->자본 재분류.
23
+
24
+ ### K-IFRS/K-GAAP 공통 영향
25
+
26
+ 공통 원칙 중 가장 먼저 영향받는 것은 **자산=부채+자본 항등식**이다. RCPS의 부채 재분류로 부채가 급증하고 자본이 급감하면서, 항등식 자체는 유지되지만 자본잠식(부채>자산)이 발생할 수 있다. **발생기준 원칙**에는 직접 영향이 없으나, 전환 과정에서 과거 기간의 수익/비용을 K-IFRS 기준으로 소급 재작성해야 하므로 **기간 귀속**이 변경될 수 있다. **세무조정**은 K-IFRS 전환 자체가 세무상 영향을 주지 않지만(세법은 독립 체계), 전환으로 인한 장부금액 변동이 일시적차이를 변경시켜 이연법인세 재측정이 필요하다.
27
+
28
+ ### 검증 항목
29
+
30
+ - 재무상태표 항등식(자산=부채+자본) 유지 여부 -- 전환 전후 모두
31
+ - RCPS 재분류 후 자본잠식 발생 여부 및 상장 적격성 영향
32
+ - 운용리스 -> 사용권자산/리스부채 인식 후 재무상태표 양측 균형
33
+ - 금융상품 4분류(K-GAAP) -> 3분류(K-IFRS) 재분류 정합성
34
+ - 수익 인식 방법 변경(실현주의 -> 5단계 모델) 후 누적 효과의 이익잉여금 반영
35
+ - 전환일 opening balance sheet와 비교 재무제표 간 기초-기말 잔액 연속성
36
+ - 이연법인세 재측정: 전환으로 인한 일시적차이 변동 반영
37
+ - 재무제표 간 4개 연결(당기순이익, 기말자본, 현금변동, 기타포괄손익) 무결성
38
+
39
+ ### 영향 파일
40
+
41
+ | 파일 | 영향 내용 |
42
+ |------|-----------|
43
+ | structure_spec.md | 재무상태표 항등식 검증, 비교 재무제표 구조(3개 시점 재무상태표 표시 가능성) |
44
+ | logic_rules.md | K-GAAP vs K-IFRS 차이 로직 전면 활성화, 수익인식 5단계 모델 적용, 리스 재인식 로직 |
45
+ | dependency_rules.md | 기간 의존(소급 적용), 회계-세무 간 연결(이연법인세 재측정), 기준 간 의존(전환 경과규정) |
46
+ | concepts.md | RCPS, 사용권자산, 리스부채, 파생상품부채, 확정대확정 요건 등 용어 참조 |
47
+ | conciseness_rules.md | K-IFRS/K-GAAP 이원 체계 중복(MUST-ALLOW) 적용 -- 전환 기간 중 양 기준 병행 설명 필요 |
48
+ | domain_scope.md | K-IFRS 전환(해당 시) 영역 활성화 |
49
+
50
+ ---
51
+
52
+ ## Case 2: K-IFRS 기준서 개정
53
+
54
+ ### 상황 설명
55
+
56
+ K-IFRS 기준서가 개정되어 기존 회계처리 방법이 변경된다. 개정의 적용 방법은 소급 적용(retrospective application)과 전진 적용(prospective application)으로 나뉜다. 소급 적용은 과거 재무제표를 새 기준으로 재작성하는 것이고, 전진 적용은 개정 시행일 이후 거래부터 새 기준을 적용하는 것이다. 어떤 방식을 적용할지는 개정 기준서의 경과규정(transitional provisions)이 지정한다.
57
+
58
+ 대표적 최근 개정 사례:
59
+ - **K-IFRS 제1118호(재무제표의 표시와 공시)**: 2027년 1월 1일 의무 적용(2026년 조기 적용 가능). 손익계산서를 영업/투자/재무/법인세/중단영업 5개 범주로 재구조화. 영업이익 정의가 '잔여(residual)' 개념으로 변경 -- 투자·재무 범주가 아닌 모든 수익·비용이 영업손익에 포함. 무형자산 손상차손, 유형자산 처분손익, 외화환산손익 등이 영업범주로 이동. 비교 재무제표 재작성 필요.
60
+ - **K-IFRS 제1109호/제1107호 개정**: 재생에너지 전력구매계약(PPA) 관련 회계처리 불확실성 해소 목적.
61
+
62
+ ### K-IFRS/K-GAAP 공통 영향
63
+
64
+ 기준서 개정은 **재무제표 표시(structure_spec.md)** 에 직접 영향을 준다. K-IFRS 1118호의 경우 손익계산서의 범주 구조 자체가 변경되므로, 계정과목 체계의 분류 기준이 바뀐다. **비교가능성 원칙** -- 비교 재무제표 재작성이 필요하므로 전기 재무제표의 기간 의존이 영향받는다. 세무 측면에서는 회계 표시 방법이 바뀌더라도 과세소득 산출에는 영향이 없다(표시 변경 ≠ 인식·측정 변경). 단, 인식·측정이 변경되는 개정이면 세무조정 항목이 추가·변경될 수 있다.
65
+
66
+ ### 검증 항목
67
+
68
+ - 소급 적용 vs 전진 적용 판단 근거(경과규정 확인)
69
+ - 소급 적용 시 비교 재무제표 재작성 범위(최소 전기, 경우에 따라 3개 시점 재무상태표)
70
+ - 계정과목 체계 변경 시 기존 분개의 재매핑 필요성
71
+ - 영업이익 정의 변경에 따른 경영 성과 지표 영향(K-IFRS 1118호)
72
+ - 주석 공시 요건 변경 사항
73
+ - 세무조정 영향 여부(인식·측정 변경 개정인 경우)
74
+ - 이연법인세 재측정 필요 여부(인식·측정 변경으로 일시적차이 변동 시)
75
+ - XBRL 택소노미 매핑 갱신 필요성(DART 공시 시스템)
76
+
77
+ ### 영향 파일
78
+
79
+ | 파일 | 영향 내용 |
80
+ |------|-----------|
81
+ | structure_spec.md | 손익계산서 범주 구조 재정의, 계정과목 체계 재매핑 |
82
+ | logic_rules.md | 인식·측정 변경 시 해당 로직 갱신, 세무조정 영향 검토 |
83
+ | dependency_rules.md | 기간 의존(비교 재무제표 소급 재작성), 외부 의존(K-IFRS 기준서 개정 추적) |
84
+ | concepts.md | 영업이익 정의 변경 등 용어 갱신 |
85
+ | domain_scope.md | K-IFRS 핵심 기준서 목록 갱신(신규 기준서 추가, 폐지 기준서 제거) |
86
+
87
+ ---
88
+
89
+ ## Case 3: 세법 개정 (세율 변경, 공제 한도 변경)
90
+
91
+ ### 상황 설명
92
+
93
+ 매년 기획재정부는 7월경 세법개정안을 발표하고, 국회 의결(12월)을 거쳐 다음 해 1월 1일부터 시행한다. 시행령은 2월경, 시행규칙은 그 이후에 공포된다.
94
+
95
+ **2025년 세법개정안 (2026년 시행) 주요 내용**:
96
+ - **법인세율 전 구간 1%p 인상**: 2억 이하 9%->10%, 2억~200억 19%->20%, 200억~3천억 21%->22%, 3천억 초과 24%->25% (2022년 수준 환원, 2026.1.1 이후 개시 사업연도~)
97
+ - **증권거래세율 환원**: 코스피 0%->0.05%, 코스닥/K-OTC 0.15%->0.20%
98
+ - **교육세 세율 인상**: 금융·보험업자 수익금액 1조 이하 0.5%, 1조 초과 1.0%
99
+ - **투자·상생협력 촉진세제**: 미환류소득 공제 대상에 배당금 추가, 적용 기한 2028년까지 연장
100
+ - **글로벌최저한세(15%)**: 다국적기업의 실효세율이 15% 미만인 경우 부족분을 국내에서 우선 과세
101
+
102
+ ### K-IFRS/K-GAAP 공통 영향
103
+
104
+ 세율 변경이 가장 먼저 영향을 주는 것은 **이연법인세 재측정**이다. K-IFRS 1012호에 따라 이연법인세는 일시적차이가 소멸될 것으로 예상되는 기간의 세율로 측정한다. 세율이 변경되면 기존 이연법인세자산·부채를 새 세율로 재측정해야 하며, 이 변동은 당기 법인세비용에 반영된다. 이는 K-GAAP 적용 기업에도 동일하게 적용된다(이연법인세를 인식하는 경우). **법인세비용 = 당기법인세 + 이연법인세 변동**이므로, 세율 변경은 포괄손익계산서의 법인세비용과 재무상태표의 이연법인세자산·부채 양쪽에 영향을 준다. 또한 법인지방소득세(법인세의 10%)도 연동하여 변경된다.
105
+
106
+ ### 검증 항목
107
+
108
+ - 이연법인세 재측정: 기존 일시적차이에 새 세율 적용 여부
109
+ - 법인세비용 산출 경로 갱신: 당기법인세(새 세율 적용) + 이연법인세 변동
110
+ - 법인지방소득세 연동 반영(법인세의 10%)
111
+ - 과세표준 구간 변경 여부 확인(이번 개정은 구간 불변, 세율만 변경)
112
+ - 세무조정 항목 변경 여부(공제 한도, 감면 대상 추가/삭제)
113
+ - 이월결손금 공제 한도 변경 여부
114
+ - 중간예납 세액 산출 시 적용 세율 확인
115
+ - 세법 시행 시기와 사업연도 시작일 간 적용 판단
116
+
117
+ ### 영향 파일
118
+
119
+ | 파일 | 영향 내용 |
120
+ |------|-----------|
121
+ | logic_rules.md | 세무조정 로직 내 세율 갱신, 이연법인세 로직 내 재측정 규칙 |
122
+ | dependency_rules.md | 외부 의존(세법 개정 추적, 세율 연혁 갱신), 회계-세무 간 연결(법인세비용 재산출) |
123
+ | structure_spec.md | 법인세 신고서 양식 변경 여부, 세액계산서 세율 항목 갱신 |
124
+ | concepts.md | 세율 연혁 정보 갱신 |
125
+ | domain_scope.md | 세무 회계 영역 내 세율 정보 갱신 |
126
+
127
+ ---
128
+
129
+ ## Case 4: 새로운 사업 유형 추가 (수익원 다변화)
130
+
131
+ ### 상황 설명
132
+
133
+ 교육·콘텐츠 기업(day1company와 유사)이 기존 사업에 새로운 수익원을 추가하는 경우이다. 구체적 시나리오:
134
+
135
+ **시나리오 4-1: 구독형 서비스 도입**
136
+ 기존 개별 강의 판매에서 월정액 구독 모델(무제한 수강권, 올패스 등)로 전환. K-IFRS 1115 5단계 모델 적용 시 수행의무 식별이 변경된다. 개별 강의는 강의별 수행의무였으나, 구독형은 "접근권(access right) 제공"이 단일 수행의무가 되며, 기간에 걸쳐(over time) 정액 인식한다. 변동대가(사용량 기반 과금)가 포함되면 거래가격 산정이 복잡해진다.
137
+
138
+ **시나리오 4-2: 해외 진출**
139
+ 해외 시장 진출 시 외화 거래가 발생한다. 수강료를 외화로 수취하면 K-IFRS 1021에 따라 거래일 환율로 최초 인식, 보고기간 말 마감일 환율로 화폐성 항목 재측정한다. 해외 종속기업 설립 시 기능통화 결정, 연결 시 환산 차이 처리(P&L vs OCI 분류)가 추가된다. 세무 측면에서는 외화환산손익의 익금/손금 산입 시점, 이전가격세제(transfer pricing) 적용이 필요하다.
140
+
141
+ **시나리오 4-3: IP 라이선스 수익**
142
+ 자체 제작 콘텐츠를 타사에 라이선스하는 경우. K-IFRS 1115에서 라이선스는 '접근권(access right)' vs '사용권(right to use)' 구분이 핵심이다. 접근권은 기간 인식, 사용권은 시점 인식. 콘텐츠가 라이선스 기간 중 변경·갱신되면 접근권, 특정 시점의 콘텐츠를 그대로 사용하면 사용권이다. 무형자산(K-IFRS 1038) 인식 요건 -- 내부 창출 무형자산은 개발 단계에서만 자산화 가능(연구 단계는 즉시 비용).
143
+
144
+ ### K-IFRS/K-GAAP 공통 영향
145
+
146
+ 새로운 수익원은 **수익 인식(K-IFRS 1115)** 의 수행의무 식별과 거래가격 배분에 직접 영향을 준다. 이것은 K-GAAP에서도 수익 인식 판단이 변경된다는 점에서 공통이다(K-GAAP은 5단계 모델을 명시하지 않지만, 실현주의·가득주의 기반 판단이 동일하게 필요). **발생기준 기간 귀속** 패턴이 추가된다: 구독형은 선수수익->기간 인식, 라이선스는 유형에 따라 기간/시점 인식. **세무조정**은 회계상 수익 인식 시점과 세법상 익금 귀속 시기(법인세법 제40조)의 차이로 새로운 조정 항목이 발생할 수 있다. 해외 진출 시 **외화 거래** 처리가 새로운 관심사로 추가된다.
147
+
148
+ ### 검증 항목
149
+
150
+ - 구독형: 수행의무 식별(접근권 vs 개별 강의), 기간 인식 충족 요건, 변동대가 추정
151
+ - 구독형: 선수수익(계약부채) 인식 패턴, 중도 해지 시 환불 처리
152
+ - 해외 진출: 기능통화 결정 기준, 거래일 환율 적용, 마감일 환율 재측정
153
+ - 해외 진출: 연결 시 해외 종속기업 환산 차이의 OCI 분류
154
+ - 해외 진출: 이전가격세제 적용, 외화환산손익 세무조정
155
+ - IP 라이선스: 접근권 vs 사용권 분류 판단
156
+ - IP 라이선스: 내부 창출 무형자산의 자산화 vs 비용화 판단(연구 vs 개발 단계)
157
+ - 부가가치세: 해외 용역 제공 시 영세율 적용, 전자적 용역 부가세 과세(역외 사업자)
158
+ - 증빙 체계: 해외 거래 시 세금계산서 대신 인보이스(invoice) 처리
159
+
160
+ ### 영향 파일
161
+
162
+ | 파일 | 영향 내용 |
163
+ |------|-----------|
164
+ | logic_rules.md | 수익 인식 로직 확장(구독형, 라이선스), 외화 거래 로직 추가 |
165
+ | structure_spec.md | 계정과목 추가(사용권자산 외 외화 관련 계정, 라이선스수익 계정), 증빙 체계 확장 |
166
+ | dependency_rules.md | 기준 간 의존 추가(K-IFRS 1021, 1038), 부가세-회계 간 연결(영세율) |
167
+ | concepts.md | 접근권, 사용권, 기능통화, 표시통화, 이전가격 등 용어 추가 |
168
+ | domain_scope.md | 외화 거래(해당 시) 활성화, 수익 인식 하위 유형 추가 |
169
+
170
+ ---
171
+
172
+ ## Case 5: 종속기업 취득·처분 (연결 범위 변동)
173
+
174
+ ### 상황 설명
175
+
176
+ 기업이 다른 기업의 지분을 취득하여 지배력을 획득하거나, 기존 종속기업 지분을 처분하여 지배력을 상실하는 경우이다.
177
+
178
+ **취득(사업결합, K-IFRS 1103)**: 취득법(acquisition method)을 적용한다. 이전대가를 공정가치로 측정하고, 피취득자의 식별 가능한 자산·부채를 취득일 공정가치로 재측정한다. 이전대가가 식별 가능한 순자산 공정가치를 초과하는 금액이 영업권(goodwill)이다. 영업권은 상각하지 않고 매년 손상검사를 수행한다. 이전대가가 순자산 공정가치 미만이면 염가매수차익(bargain purchase gain)을 당기손익으로 인식한다.
179
+
180
+ **연결(K-IFRS 1110)**: 지배력 3요소 -- (1) 피투자자에 대한 힘, (2) 변동이익에 대한 노출·권리, (3) 힘을 이용하여 변동이익에 영향을 미칠 수 있는 능력. 3요소를 모두 충족해야 지배력 존재. 비지배지분은 종속기업의 순자산 중 지배기업에 귀속되지 않는 부분으로, 자본 내 별도 표시한다.
181
+
182
+ **처분(지배력 상실)**: 종속기업 지분 처분으로 지배력을 상실하면 연결에서 제외한다. 잔여 지분은 공정가치로 재측정하고, 처분손익을 당기손익으로 인식한다.
183
+
184
+ ### K-IFRS/K-GAAP 공통 영향
185
+
186
+ 연결 범위 변동은 **재무제표 구조** 자체를 변경한다. 개별재무제표만 작성하던 기업이 연결재무제표를 추가로 작성해야 하거나, 반대로 연결 범위가 축소될 수 있다. **내부거래 제거** -- 연결 범위 내 기업 간 매출·매입, 채권·채무, 미실현이익을 제거한다. 이는 연결 범위 변동 시 제거 대상이 추가·삭제됨을 의미한다. **이연법인세** -- 연결 조정에서 발생하는 일시적차이(내부거래 미실현이익 제거 등)에 대해 이연법인세를 인식한다. K-GAAP에서도 연결재무제표를 작성하지만, 지배력 판단 기준과 연결 절차에 차이가 있다.
187
+
188
+ ### 검증 항목
189
+
190
+ - 지배력 3요소 충족 여부 판단
191
+ - 취득법 적용: 이전대가 공정가치 측정, 식별 가능 순자산 공정가치 재측정
192
+ - 영업권 산출 정합성(이전대가 - 순자산 공정가치)
193
+ - 영업권 손상검사 수행(매년 또는 손상 징후 발생 시)
194
+ - 비지배지분 산출 및 자본 내 별도 표시
195
+ - 내부거래 제거 범위 변경(매출·매입, 채권·채무, 미실현이익)
196
+ - 연결 재무제표의 재무제표 간 4개 연결 무결성
197
+ - 연결 범위 변동 시 비교 재무제표 재작성 필요성 판단
198
+ - 처분 시 잔여 지분 공정가치 재측정, 처분손익 인식
199
+
200
+ ### 영향 파일
201
+
202
+ | 파일 | 영향 내용 |
203
+ |------|-----------|
204
+ | structure_spec.md | 연결재무제표 구조 추가, 비지배지분 표시 항목 추가 |
205
+ | logic_rules.md | 사업결합 취득법 로직, 영업권 손상검사 로직, 내부거래 제거 로직 추가 |
206
+ | dependency_rules.md | 기준 간 의존(K-IFRS 1103, 1110 추가), 참조 무결성(연결-개별 간) |
207
+ | concepts.md | 영업권, 비지배지분, 지배력, 내부거래 제거 등 용어 추가 |
208
+ | domain_scope.md | 연결회계(해당 시) 활성화 |
209
+ | conciseness_rules.md | 연결-개별 재무제표 간 교차 참조 허용 범위 정의 |
210
+
211
+ ---
212
+
213
+ ## Case 6: 해외 거래 증가 (외화 거래·해외 종속기업)
214
+
215
+ ### 상황 설명
216
+
217
+ 기업의 해외 거래가 증가하여 외화 거래 처리가 일상적 업무가 되거나, 해외 종속기업을 설립·운영하는 경우이다.
218
+
219
+ **외화 거래(K-IFRS 1021)**: 기능통화(functional currency)로 측정·보고한다. 기능통화는 영업활동이 이루어지는 주된 경제환경의 통화이다. 외화 거래는 거래일 환율로 최초 인식하고, 보고기간 말에 화폐성 항목은 마감일 환율로 재측정(환산차이->당기손익), 비화폐성 항목은 역사적 환율 유지(공정가치 측정 항목은 공정가치 결정일 환율)한다.
220
+
221
+ **해외 종속기업 환산**: 해외 종속기업의 기능통화가 지배기업의 표시통화와 다를 때, 자산·부채는 마감일 환율, 수익·비용은 거래일 환율(실무적으로 평균 환율 사용 가능)로 환산한다. 환산 차이는 기타포괄손익(OCI)으로 인식하고, 해외사업장 처분 시 당기손익으로 재분류한다.
222
+
223
+ **세무 영향**: 외화환산손익은 법인세법상 익금/손금 산입 시점이 K-IFRS와 다를 수 있다. 세법은 실현 기준을 더 엄격하게 적용하는 경향이 있어 세무조정이 발생한다. 해외 종속기업의 이익에 대해서는 이중과세 방지를 위한 외국납부세액 공제가 적용된다.
224
+
225
+ ### K-IFRS/K-GAAP 공통 영향
226
+
227
+ 외화 거래 증가는 **재무상태표의 화폐성 항목** 재측정으로 매 보고기간 자산·부채 금액이 환율에 따라 변동한다는 점에서 **자산=부채+자본 항등식** 유지에 영향을 준다(항등식은 유지되지만 구성 금액이 변동). **포괄손익계산서**에서 외환차이의 분류가 중요하다: 영업 관련 외환차이는 영업손익, 금융 관련은 금융손익, 해외사업장 환산 차이는 기타포괄손익. K-IFRS 1118호 적용 시 이 분류 기준이 더 명확해진다. **세무조정**은 외화환산손익의 회계-세무 간 인식 시점 차이로 일시적차이가 발생하며, 이연법인세 인식이 필요하다.
228
+
229
+ ### 검증 항목
230
+
231
+ - 기능통화 결정의 적정성(경제환경 요소 기반 판단)
232
+ - 거래일 환율 vs 마감일 환율 적용 정합성(화폐성/비화폐성 구분)
233
+ - 해외 종속기업 환산 차이의 OCI 인식 및 처분 시 P&L 재분류
234
+ - 외화환산손익의 세무조정(회계-세법 간 인식 시점 차이)
235
+ - 외국납부세액 공제 적용
236
+ - 이전가격세제 적용(특수관계자 간 국제거래)
237
+ - 재무제표 간 연결: 현금흐름표의 외화 환산 효과 별도 표시
238
+
239
+ ### 영향 파일
240
+
241
+ | 파일 | 영향 내용 |
242
+ |------|-----------|
243
+ | logic_rules.md | 외화 거래 인식·재측정 로직, 환산 차이 분류 로직 추가 |
244
+ | structure_spec.md | 현금흐름표 외화 환산 효과 표시, 기타포괄손익 내 환산 차이 항목 추가 |
245
+ | dependency_rules.md | K-IFRS 1021 의존 추가, 세무조정(외화환산손익) 연결 추가 |
246
+ | concepts.md | 기능통화, 표시통화, 화폐성/비화폐성 항목, 외국납부세액 공제 등 용어 추가 |
247
+ | domain_scope.md | 외화 거래(해당 시) 활성화 |
248
+
249
+ ---
250
+
251
+ ## Case 7: 전자공시·세무 신고 요건 변경
252
+
253
+ ### 상황 설명
254
+
255
+ 전자공시(DART) 서식이나 세무 신고 요건이 변경되는 경우이다. 회계처리 자체가 변경되지 않더라도, 보고·신고 양식의 변경은 시스템 대응이 필요하다.
256
+
257
+ **XBRL 택소노미 변경**: K-IFRS 1118호 시행(2027년)에 맞추어 금감원은 DART 시스템의 XBRL 재무제표 작성기를 전면 개편 중이다. 손익계산서 범주 구조가 변경되므로 택소노미(계정과목 분류 코드) 체계가 재정의된다. 자산 2조원 이상 금융회사는 2026년 8월부터 XBRL 반기보고서 제출 의무, 2조원 미만은 2027년부터 의무이다.
258
+
259
+ **전자세금계산서 의무 확대**: 개인사업자 의무발행 기준금액이 단계적으로 하향되었다 -- 2022년 2억원, 2023년 1억원, 2024년 8,000만원. 직전 연도 공급가액(과세+면세) 합계 8,000만원 이상 개인사업자가 의무 대상이다. 미발행 시 공급가액 1%의 가산세가 부과된다.
260
+
261
+ **법인세 신고서 양식 변경**: 세법 개정에 따라 세무조정계산서, 각종 조정명세서의 양식이 변경될 수 있다. 새로운 세액공제·감면 항목이 추가되면 관련 명세서가 추가된다.
262
+
263
+ ### K-IFRS/K-GAAP 공통 영향
264
+
265
+ 공시·신고 요건 변경은 회계처리의 인식·측정에는 영향을 주지 않지만, **보고 체계(structure_spec.md)** 에 직접 영향을 준다. 이것은 K-IFRS/K-GAAP 공통 원칙 중 **완전한 공시(full disclosure)** 의무와 관련된다. 증빙 체계(전자세금계산서) 변경은 **부가세-회계 간 연결**에 영향을 주며, 의무 대상 확대는 더 많은 거래에 대해 증빙-장부 일치 검증이 필요함을 의미한다.
266
+
267
+ ### 검증 항목
268
+
269
+ - XBRL 택소노미 매핑 갱신: 기존 계정과목 -> 신규 택소노미 코드 대응 확인
270
+ - DART 공시 서식 변경 사항 반영(사업보고서, 분기·반기보고서)
271
+ - 전자세금계산서 의무 대상 변경 시 미발행 건 식별 및 가산세 리스크
272
+ - 법인세 신고서 양식 변경 시 세무조정명세서 갱신
273
+ - 지급명세서 제출 기한·양식 변경 여부
274
+ - 비교 공시 시 전기 자료의 신규 서식 재매핑 필요성
275
+
276
+ ### 영향 파일
277
+
278
+ | 파일 | 영향 내용 |
279
+ |------|-----------|
280
+ | structure_spec.md | 전자공시 구조(XBRL 택소노미, DART 서식), 세무 신고 구조(양식 변경), 증빙 체계(의무 대상 기준) |
281
+ | dependency_rules.md | 참조 무결성(DART 공시-감사보고서 수치 일치), 부가세-회계 간 연결(증빙 범위 확대) |
282
+ | domain_scope.md | 전자공시·신고 영역 내 기준 갱신 |
283
+
284
+ ---
285
+
286
+ ## Case 8: 내부회계관리제도 적용 확대
287
+
288
+ ### 상황 설명
289
+
290
+ 내부회계관리제도(ICFR, Internal Control over Financial Reporting)의 적용 범위가 단계적으로 확대되고 있다. 핵심 변화는 두 가지이다.
291
+
292
+ **검토->감사 전환**: 2018년 신 외부감사법 도입 이후, 상장법인의 내부회계관리제도에 대한 외부 인증이 '검토(review)'에서 '감사(audit)'로 상향되었다. 별도 재무제표 기준 단계별 시행: 2019년 자산 2조 이상, 2020년 5천억 이상, 2022년 1천억 이상, 2023년 1천억 미만(검토 수준). 감사는 통제의 설계와 운영 효과를 평가하고, 미비점·중요한 취약점을 보고한다. 검토는 질문과 분석 절차 위주로 감사보다 제한적이다. 전환 준비에 약 6개월 이상 소요된다.
293
+
294
+ **연결 내부회계관리제도**: 연결 기준 내부회계관리제도는 종속기업을 포함한 연결 범위의 내부통제를 평가한다. 자산 2조 이상 상장사는 2023년부터 시행. 자산 5,000억~2조 미만은 2029년, 5,000억 미만은 2030년까지 유예되었다(당초 2024년, 2025년에서 각 5년 유예).
295
+
296
+ ### K-IFRS/K-GAAP 공통 영향
297
+
298
+ 내부회계관리제도는 **재무제표 신뢰성 확보**를 위한 내부통제이므로, K-IFRS/K-GAAP 어느 기준을 적용하든 재무보고의 정확성을 담보하는 공통 기반이다. 검토->감사 전환은 통제 평가의 깊이와 범위가 확대됨을 의미하며, 이는 **회계추정의 근거**, **세무조정의 문서화**, **증빙 관리의 완전성** 등 모든 회계처리의 통제 수준에 영향을 준다. 연결 내부회계관리제도는 종속기업의 회계 처리가 지배기업과 동일한 통제 수준을 갖추어야 함을 의미하므로, Case 5(연결 범위 변동)와 연결된다.
299
+
300
+ ### 검증 항목
301
+
302
+ - 자산 규모별 감사/검토 적용 기준 확인(별도/연결 구분)
303
+ - 통제환경·위험평가·통제활동·정보와전달·모니터링 5대 구성요소 평가 범위
304
+ - 검토->감사 전환 시 추가되는 평가 절차(통제 운영 효과 테스트)
305
+ - 연결 범위 종속기업의 내부통제 평가 방법(직접 평가 vs 구성단위 감사인 활용)
306
+ - 미비점(deficiency)·중요한 취약점(material weakness) 보고 기준
307
+ - 경영진 운영실태보고서 작성 범위 확대 여부
308
+ - 내부회계관리제도 감사 의견이 감사보고서에 포함되므로 DART 공시에 영향
309
+
310
+ ### 영향 파일
311
+
312
+ | 파일 | 영향 내용 |
313
+ |------|-----------|
314
+ | structure_spec.md | 내부회계관리제도 구조(적용 대상 기준 갱신, 연결 범위 확대) |
315
+ | domain_scope.md | 감사·내부통제 영역 내 적용 범위 갱신 |
316
+ | dependency_rules.md | 외부감사법-회계기준 간 의존(감사 의견이 공시에 반영) |
317
+
318
+ ---
319
+
320
+ ## 시나리오 간 연결 관계
321
+
322
+ 확장 시나리오는 독립적이지 않으며, 실제로는 복수의 시나리오가 동시에 발생한다.
323
+
324
+ | 선행 시나리오 | 후행 시나리오 | 연결 이유 |
325
+ |---------------|---------------|-----------|
326
+ | Case 1 (K-IFRS 전환) | Case 8 (내부회계관리제도) | IPO 시 상장법인으로서 내부회계관리제도 의무 적용 |
327
+ | Case 1 (K-IFRS 전환) | Case 2 (기준서 개정) | 전환 직후 기준서 개정 적용 시 이중 변경 부담 |
328
+ | Case 4 (신규 사업) | Case 6 (해외 거래) | 해외 진출은 Case 4의 하위 시나리오이자 Case 6의 트리거 |
329
+ | Case 5 (종속기업) | Case 6 (해외 거래) | 해외 종속기업 취득 시 외화 환산 처리 필요 |
330
+ | Case 5 (종속기업) | Case 8 (내부회계관리제도) | 연결 범위 변동은 연결 내부회계관리제도 범위에 직접 영향 |
331
+ | Case 3 (세법 개정) | Case 1~8 전체 | 세율 변경은 이연법인세 재측정을 통해 모든 시나리오에 영향 |
332
+ | Case 2 (기준서 개정) | Case 7 (공시 변경) | 기준서 개정은 XBRL 택소노미·DART 서식 변경을 수반 |
333
+
334
+ ---
335
+
336
+ ## Related Documents
337
+ - structure_spec.md -- 재무제표 구조, 계정과목 체계
338
+ - dependency_rules.md -- 기준 간 의존, 재무제표 간 연결
339
+ - logic_rules.md -- 인식·측정·세무조정 로직
340
+ - domain_scope.md -- 이 시나리오가 적용되는 범위
341
+ - concepts.md -- 관련 용어 정의
342
+ - competency_qs.md -- 역량 질문
343
+ - conciseness_rules.md -- 간결성 규칙
@@ -0,0 +1,160 @@
1
+ ---
2
+ version: 1
3
+ last_updated: "2026-03-30"
4
+ source: create-domain
5
+ status: reviewed
6
+ ---
7
+
8
+ # accounting-korea Domain — 로직 규칙
9
+
10
+ 분류 축: **규범 체계(normative system)** — 로직이 속한 규범·기준 체계별 분류.
11
+
12
+ ## 회계의 기본 로직 (K-IFRS/K-GAAP 공통)
13
+
14
+ K-IFRS와 K-GAAP에 공통으로 적용되는 로직이다. 개별 기준서의 세부 규정에 앞서 이 로직이 먼저 적용되며, 실무에서 발생하는 거의 대부분의 회계처리는 이 공통 로직에 의해 결정된다.
15
+
16
+ ### 복식부기 균형 로직
17
+
18
+ - 모든 거래에서 차변 합계 = 대변 합계. 이 균형이 깨지면 분개 자체가 무효
19
+ - 계정 유형별 증감 방향:
20
+ - 자산: 증가=차변, 감소=대변
21
+ - 부채: 증가=대변, 감소=차변
22
+ - 자본: 증가=대변, 감소=차변
23
+ - 수익: 발생=대변 (자본 증가 방향)
24
+ - 비용: 발생=차변 (자본 감소 방향)
25
+ - 시산표 불균형(차변 합계 ≠ 대변 합계)은 전기 오류의 신호. 단, 차변·대변이 균형이어도 계정 분류 오류(예: 비용을 자산으로 잘못 기록)는 탐지되지 않음
26
+ - 검증 규칙: 분개 시 차변 합계 = 대변 합계 → 전기 후 원장 잔액 합계 → 시산표 차변 합계 = 대변 합계. 각 단계에서 균형 확인
27
+
28
+ ### 인식 로직 (Recognition Logic)
29
+
30
+ 재무제표에 항목을 포함시키기 위한 판단 기준. 정의 충족 + 인식 요건 충족이 모두 필요하다 (정의: concepts.md '재무제표 5요소' 참조).
31
+
32
+ - 자산 인식: (1) 미래 경제적 효익 유입 가능성이 있음(probable) AND (2) 원가 또는 가치를 신뢰성 있게 측정 가능. 두 조건 모두 충족해야 자산으로 인식. 하나라도 불충족 시 비용 처리 또는 주석 공시
33
+ - 부채 인식: (1) 과거 사건으로 인한 현재 의무가 존재 AND (2) 경제적 효익이 유출될 가능성이 있음 AND (3) 금액을 신뢰성 있게 측정 가능. 세 조건 모두 충족해야 부채 인식. 가능성은 있으나 금액 추정이 불가능하면 우발부채로 주석 공시
34
+ - 수익 인식 공통 원칙: "경제적 효익의 유입 가능성이 높음"이 공통 요건. K-IFRS는 통제 이전(K-IFRS 1115 5단계 모델)을, K-GAAP은 실현·가득 기준(realized/earned)을 구체적 판단 기준으로 사용. 양쪽 모두 현금 수취 시점이 아닌 경제적 실질에 따라 인식
35
+ - 비용 인식: 관련 수익과의 대응(matching)이 원칙. 직접 대응 가능한 비용(예: 매출원가)은 관련 수익과 같은 기간에 인식. 직접 대응이 불가능한 비용(예: 관리비)은 발생한 기간에 즉시 인식. 여러 기간에 걸쳐 효익을 제공하는 지출(예: 감가상각 대상 자산)은 체계적 배분
36
+ - 인식 중단(Derecognition): 자산의 경제적 효익이 더 이상 유입되지 않거나, 부채의 의무가 소멸·면제·만료되면 재무제표에서 제거
37
+
38
+ ### 측정 로직 (Measurement Logic)
39
+
40
+ - 최초 인식: 원칙적으로 거래가격(원가)으로 측정. 예외: 공정가치로 최초 측정하는 항목(예: FVTPL 금융자산, 사업결합 취득 자산)
41
+ - 후속 측정: 원가 모델(취득원가 - 감가상각누계액 - 손상차손누계액) 또는 공정가치 모델(매 보고일 공정가치 재측정) 중 회계정책으로 선택. 선택한 모델은 동일 자산군 내에서 일관 적용 필수 — 같은 자산군에 두 모델 혼용 불가
42
+ - 감가상각/상각 로직: 감가상각대상금액(취득원가 - 잔존가치)을 내용연수에 걸쳐 체계적으로 배분. 상각방법(정액법·정률법·생산량비례법)은 자산의 경제적 효익 소비 패턴을 반영하여 선택. 잔존가치, 내용연수, 상각방법은 매 보고기간 말에 재검토하며, 변경 시 회계추정의 변경으로 전진 적용
43
+ - 손상(Impairment) 로직: 장부금액 > 회수가능액(순공정가치와 사용가치 중 큰 금액) → 그 차이만큼 손상차손 인식. 손상 징후가 있을 때 검토(K-IFRS). 영업권·비한정 내용연수 무형자산은 매년 의무 검토
44
+
45
+ ### 기간 귀속 로직 (Period Allocation Logic)
46
+
47
+ 발생기준 회계에서 현금 수수 시점과 경제적 실질의 시점이 다를 때, 올바른 기간에 수익·비용을 귀속시키기 위한 4가지 핵심 수정분개 패턴 (정의: concepts.md '발생기준 전환 패턴' 참조):
48
+
49
+ - 선수수익(Unearned Revenue / Contract Liability): 현금 수취 완료 + 의무 미이행 상태 → 부채로 인식. 의무 이행 시 부채를 감소시키고 수익을 인식. 분개: (이행 시) 차변 선수수익 / 대변 수익
50
+ - 미수수익(Accrued Revenue / Contract Asset): 의무 이행 완료 + 현금 미수취 상태 → 자산으로 인식하고 수익을 인식. 현금 수취 시 자산 해소. 분개: (이행 시) 차변 미수수익 / 대변 수익
51
+ - 선급비용(Prepaid Expense): 현금 지급 완료 + 효익 미소비 상태 → 자산으로 인식. 효익 소비에 따라 자산을 감소시키고 비용을 인식. 분개: (소비 시) 차변 비용 / 대변 선급비용
52
+ - 미지급비용(Accrued Expense): 효익 소비 완료 + 현금 미지급 상태 → 부채로 인식하고 비용을 인식. 현금 지급 시 부채 해소. 분개: (발생 시) 차변 비용 / 대변 미지급비용
53
+ - 이 4가지 패턴은 발생기준과 현금기준의 차이를 조정하는 핵심 메커니즘이다. 현금 흐름과 경제적 실질의 시점 차이가 있는 모든 거래에 적용
54
+
55
+ ### 마감 로직 (Closing Logic)
56
+
57
+ - 임시 계정(수익·비용)과 영구 계정(자산·부채·자본)의 구분:
58
+ - 수익·비용 계정 = 임시 계정. 한 회계기간의 경영성과만 측정. 기말에 잔액을 집합손익 계정으로 대체한 후, 집합손익의 잔액(당기순이익 또는 당기순손실)을 이익잉여금으로 대체. 마감 후 수익·비용 계정 잔액 = 0
59
+ - 자산·부채·자본 계정 = 영구 계정. 마감분개 없이 기말 잔액이 그대로 차기 기초 잔액으로 이월(carry forward)
60
+ - 마감 후 시산표(Post-Closing Trial Balance): 영구 계정만 남은 상태에서 차변 합계 = 대변 합계 확인. 이것이 차기 기초 재무상태표의 출발점
61
+ - 마감 순서: (1) 수익 계정 → 집합손익 대변 (2) 비용 계정 → 집합손익 차변 (3) 집합손익 잔액 → 이익잉여금 (4) 배당 등 자본 감소 항목 → 이익잉여금
62
+
63
+ ### 오류 수정 로직
64
+
65
+ - 당기 발견 당기 오류: 일반 분개로 수정
66
+ - 전기 이전 오류 중 중요한 오류: 소급 재작성(retrospective restatement). 비교 표시 재무제표를 수정하고, 가장 이른 비교기간의 기초 이익잉여금을 조정
67
+ - 회계추정의 변경(예: 내용연수 변경)은 오류가 아님. 전진 적용(prospective application) — 변경 기간 이후부터만 반영
68
+
69
+ ## K-IFRS 수익 인식 로직 (K-IFRS 1115)
70
+
71
+ - 수익 인식은 5단계 모델을 따른다: (1) 계약 식별 → (2) 수행의무 식별 → (3) 거래가격 산정 → (4) 거래가격 배분 → (5) 수익 인식
72
+ - 수행의무는 '구별 가능한' 재화·용역 단위로 식별한다. 묶음 판매 시 각 구성요소가 별도 수행의무인지 판단 필요
73
+ - 거래가격 배분은 개별 판매가격(standalone selling price) 비례 배분이 원칙. 변동대가는 특정 수행의무에만 관련되면 해당 수행의무에만 배분 가능
74
+ - 기간 인식(over time) 요건: (a) 이행에 따라 고객이 효익을 동시에 수취·소비하거나, (b) 이행이 자산을 창출·가치증가시키고 고객이 이를 통제하거나, (c) 이행이 대체 용도 없는 자산을 만들고 완료 부분에 대한 대가청구권이 있는 경우
75
+ - 위 요건 중 하나도 충족하지 못하면 시점 인식(at a point in time). 통제 이전 지표: 물리적 점유 이전, 법적 소유권 이전, 대금 청구권, 위험과 보상 이전, 고객의 인수
76
+
77
+ ## K-GAAP vs K-IFRS 차이 로직
78
+
79
+ - K-GAAP은 5단계 모델을 명시적으로 요구하지 않는다. 실현주의·가득주의(earned and realized/realizable) 기반 수익 인식
80
+ - K-GAAP 금융상품: 단기매매/만기보유/매도가능/대여금및수취채권 4분류. K-IFRS 1109의 사업모형+SPPI 기준과 다른 분류 체계
81
+ - K-GAAP 리스: 운용리스는 임차료를 비용 처리(자산·부채 인식 없음). K-IFRS 1116은 소액·단기 면제 외 모든 리스에 사용권자산·리스부채 인식
82
+ - RCPS(상환전환우선주): K-GAAP은 대부분 자본으로 분류(계약 조건에 따라 예외 가능). K-IFRS는 상환 의무 등 계약상 의무 포함 시 금융부채로 분리 인식. IPO 전환 시 자본잠식 리스크(상당수의 기업)
83
+ - K-GAAP에서 K-IFRS 전환 시: 전환일 재무상태표를 K-IFRS 기준으로 재작성. 소급 적용 원칙. 전환 효과는 이익잉여금(또는 적절한 자본 항목)에 반영
84
+
85
+ ## 금융상품 로직 (K-IFRS 1109)
86
+
87
+ - 금융자산 분류 판단: (1) 사업모형 평가(현금흐름 수취 / 수취+매도 / 기타) → (2) SPPI 테스트(원금+이자만으로 구성?)
88
+ - ECL 3단계: Stage 1(최초 인식 후 신용위험 유의적 증가 없음, 12개월 ECL) → Stage 2(SICR 발생, 전체기간 ECL) → Stage 3(신용손상 객관적 증거, 전체기간 ECL)
89
+ - 매출채권·계약자산: 간편법(simplified approach) 적용 가능 — 최초 인식 시점부터 전체기간 ECL 적용
90
+ - 공정가치 서열: Level 1(동일 자산 시장가격) > Level 2(유사 자산 또는 관측 가능 투입변수) > Level 3(관측 불가 투입변수). 하위 수준일수록 추정 불확실성 증가
91
+
92
+ ## 리스 로직 (K-IFRS 1116)
93
+
94
+ - 리스이용자: 모든 리스에 사용권자산·리스부채 인식 (소액리스·단기리스 면제 선택 가능)
95
+ - 리스부채 측정: 미지급 리스료의 현재가치. 할인율: 내재이자율 또는 증분차입이자율
96
+ - 사용권자산 측정: 리스부채 + 선급리스료 + 직접원가 - 리스 인센티브
97
+ - 후속 측정: 리스부채는 유효이자율법, 사용권자산은 정액법 감가상각 (원칙)
98
+ - K-GAAP과의 차이: K-GAAP은 운용리스를 비용 처리(자산·부채 미인식). K-IFRS 전환 시 운용리스의 사용권자산·리스부채 인식 필요 (정의: concepts.md 참조)
99
+
100
+ ## 세무조정 로직
101
+
102
+ - 세무조정의 출발점은 K-IFRS 또는 K-GAAP 기준 당기순이익이다. 이를 법인세법 기준 과세소득으로 전환한다
103
+ - 세무조정 4유형 (정의: concepts.md '세무 회계 용어' 참조):
104
+ - 익금산입·손금불산입: 과세소득 증가 방향 (소득가산)
105
+ - 익금불산입·손금산입: 과세소득 감소 방향 (소득차감)
106
+ - 적용 순서: 당기순이익 + 익금산입 + 손금불산입 - 익금불산입 - 손금산입 = 각 사업연도 소득
107
+ - 이월결손금 공제: 발생 후 15년간 공제 가능. 한도: 각 사업연도 소득의 80%. 중소기업·회생기업은 100% 공제
108
+ - 법인세 세율: 9%/19%/21%/24% (2023년 사업연도~). 과세표준 4구간(2억/200억/3천억 기준)
109
+
110
+ ## 이연법인세 로직 (K-IFRS 1012)
111
+
112
+ - 일시적차이 = 자산·부채의 장부금액 - 세무기준액. 가산할 일시적차이(→이연법인세부채) / 차감할 일시적차이(→이연법인세자산)
113
+ - 이연법인세부채: 가산할 일시적차이에 대해 원칙적으로 모두 인식
114
+ - 이연법인세자산: 차감할 일시적차이·이월결손금·이월세액공제에 대해 인식. 단, 미래 과세소득이 충분할 가능성이 높을 때만 인식
115
+ - 영구적차이(접대비 한도초과, 벌과금 등): 이연법인세 발생하지 않음
116
+ - 측정: 일시적차이 소멸 예상 기간의 세율 적용. 세율 변경 시 이연법인세 재측정
117
+ - 법인세비용 = 당기법인세(세무조정 후 산출세액) + 이연법인세 변동
118
+
119
+ ## 부가가치세 로직
120
+
121
+ - 납부세액 = 매출세액 - 매입세액. 매입세액이 더 크면 환급 (정의: concepts.md '부가가치세 용어' 참조)
122
+ - 과세표준 = 공급가액(부가세 제외). 부가세 포함 금액에서 역산: 공급가액 = 총액 / 1.1
123
+ - 세금계산서 발행 시기: 재화는 인도일, 용역은 역무 제공 완료일. 공급시기 전 대가 수취 시 수취일에 발행 가능(공급시기 특례)
124
+ - 매입세액 불공제 항목: (1) 세금계산서 미수취·부실기재, (2) 사업 무관 지출, (3) 비영업용 소형 승용차, (4) 접대비, (5) 면세사업 관련, (6) 토지 관련, (7) 사업자등록 전 매입
125
+ - 간이과세자(공급대가 4,800만원 이상)로부터 세금계산서 수취 시 매입세액 공제 가능
126
+
127
+ ## 원천징수 로직
128
+
129
+ - 원천징수 의무자: 소득을 지급하는 자. 지급 시점에 원천징수하여 다음 달 10일까지 납부
130
+ - 근로소득: 간이세액표 기반 매월 원천징수 → 연말정산으로 정산. 일용근로자는 6% 분리과세(일급 15만원 공제 후 55% 근로소득세액공제 적용, 실효세율 약 2.7%)
131
+ - 사업소득: 3%(지방세 포함 3.3%) 원천징수. 프리랜서 등 독립적 용역 제공자 대상
132
+ - 기타소득: 필요경비율 적용 후 기타소득금액의 22%(소득세 20%+지방소득세 2%). 총지급액 대비 실효세율 8.8%(필요경비율 60% 기준) (정의: concepts.md '원천징수 용어' 참조)
133
+ - 원천징수와 법인세의 관계: 원천징수세액은 지급법인의 비용(인건비 등)에 포함되지 않음. 수취자의 소득세 선납
134
+
135
+ ## 기간 귀속 로직 (발생기준 전환)
136
+
137
+ - 현금→발생기준 전환의 4+1 패턴 (정의: concepts.md '발생기준 전환 패턴' 참조):
138
+ - 선수수익 → 수행의무 충족 시 수익 인식. 충족률 측정 방법: 산출법(output method) 또는 투입법(input method)
139
+ - 미수수익 → 수행의무 충족 시점에 자산 인식. 대가 청구권 확정 시 매출채권으로 재분류
140
+ - 선급비용 → 효익 소비에 따라 비용 인식. 소비 패턴에 따라 정액 또는 비례 배분
141
+ - 미지급비용 → 효익 소비 시점에 부채·비용 동시 인식. 지급 시 부채 해소
142
+ - 감가상각 → 자산 취득원가를 내용연수에 걸쳐 체계적 배분. 상각방법: 정액법·정률법·생산량비례법
143
+ - 월말 마감: 당월 말일 기준 경과분 수익·비용 인식, 미경과분 이연
144
+
145
+ ## 제약조건 충돌 검사
146
+
147
+ - K-IFRS와 법인세법이 동일 거래에 다른 처리를 요구할 때: 재무보고는 K-IFRS, 세무 신고는 법인세법. 하나로 통합은 논리적 오류
148
+ - K-IFRS와 K-GAAP 기준을 동일 기업에 혼용 적용: 하나의 기업은 하나의 기준만 적용. 혼용은 기준 위반
149
+ - 세금계산서 발행 시점과 수익 인식 시점 불일치: 부가세법은 공급 시기 기준, K-IFRS는 통제 이전 기준. 불일치 자체는 정상
150
+ - K-GAAP 적용 기업의 세무조정: K-GAAP 당기순이익이 출발점. K-IFRS와의 차이가 세무조정 내용에 영향
151
+ - 공정가치 측정과 원가 측정이 동일 자산에 공존: 측정 모델 선택은 회계정책으로 일관 적용. 같은 자산군에 혼용 불가
152
+
153
+ ## Related Documents
154
+ - concepts.md — 세무조정, 부가세, 수익 인식, 금융상품, 리스, 원천징수, 발생기준 전환 관련 용어 정의
155
+ - dependency_rules.md — 기준 간 의존, 세무-회계 연결
156
+ - competency_qs.md — 로직 검증 질문
157
+ - structure_spec.md — 재무제표 구조 규칙
158
+ - domain_scope.md — 이 로직이 적용되는 범위
159
+ - extension_cases.md — 확장 시나리오
160
+ - conciseness_rules.md — 간결성 규칙
@@ -0,0 +1,85 @@
1
+ ---
2
+ version: 1
3
+ last_updated: "2026-03-30"
4
+ source: create-domain
5
+ status: reviewed
6
+ ---
7
+
8
+ # accounting-korea Domain — 구조 명세
9
+
10
+ 분류 축: **보고 체계(reporting system)** — 구조가 속한 보고·신고 체계별 분류.
11
+
12
+ ## K-IFRS 재무제표 구조 필수 요소
13
+
14
+ - **재무상태표**: 자산(유동/비유동), 부채(유동/비유동), 자본 3구간. 자산 = 부채 + 자본 항등식 준수
15
+ - **포괄손익계산서**: 매출액 → 매출원가 → 매출총이익 → 판관비 → 영업이익 → 기타수익/기타비용 → 금융수익/비용 → 법인세비용 → 당기순이익 → 기타포괄손익 → 총포괄이익
16
+ - **현금흐름표**: 영업/투자/재무활동 3구간. 기초현금 + 변동 = 기말현금. 직접법 또는 간접법
17
+ - **자본변동표**: 자본금, 자본잉여금, 이익잉여금, 기타포괄손익누계액 등 자본 구성요소별 변동
18
+ - **주석**: 유의적 회계정책, 추정 불확실성, 세부 내역, 특수관계자 거래
19
+
20
+ ## K-GAAP 재무제표 구조 차이
21
+
22
+ - K-GAAP은 포괄손익계산서 대신 손익계산서 사용 가능 (기타포괄손익 별도 표시 불요)
23
+ - K-GAAP은 자본변동표 대신 이익잉여금처분계산서 작성 가능
24
+ - K-GAAP 주석 공시 요구 수준이 K-IFRS 대비 간소화
25
+ - K-GAAP은 운용리스를 재무상태표에 인식하지 않음 (K-IFRS는 사용권자산·리스부채 인식)
26
+
27
+ ## 세무 신고 구조
28
+
29
+ - **법인세 신고서**: 세무조정계산서(소득금액조정합계표, 각종 조정명세서), 재무제표, 세액계산서. 사업연도 종료일이 속하는 달의 말일부터 3개월 이내 제출 (법인세법 제60조)
30
+ - **부가가치세 신고서**: 과세표준·매출세액, 매입세액, 차가감 납부(환급)세액. 법인사업자 연 4회 신고: 1기 예정(1~3월, 4/25까지), 1기 확정(4~6월, 7/25까지), 2기 예정(7~9월, 10/25까지), 2기 확정(10~12월, 다음해 1/25까지). 개인사업자 연 2회 신고(예정신고 없이 예정고지): 1기 확정(1~6월, 7/25까지), 2기 확정(7~12월, 다음해 1/25까지)
31
+ - **원천징수 이행상황 신고서**: 소득 유형별 지급건수·지급총액·세액. 월별(지급일 다음 달 10일) 또는 반기별
32
+ - **지급명세서**: 소득 지급 내역. 제출 기한: 근로·퇴직·사업소득·종교인소득 다음 해 3월 10일, 이자·배당·기타소득 다음 해 2월 말일
33
+
34
+ ## 증빙 체계 구조
35
+
36
+ - **전자세금계산서**: 공급자 → 국세청(전송) → 공급받는 자. 발행일 기준 부가세 신고 귀속. 발행 의무: 직전 연도 공급가액(과세분+면세분) 8,000만원 이상 개인사업자(2024년 7월~), 모든 법인사업자(2011년 1월~) (정의: concepts.md 참조)
37
+ - **전자계산서**: 면세 거래 증빙. 전자세금계산서와 동일 발행·전송 체계 (정의: concepts.md 참조)
38
+ - **신용카드 매출전표**: 세금계산서 대체 증빙 효력. 매입세액 공제 가능
39
+ - **현금영수증**: 현금 거래 시 국세청 전송 증빙. 소비자용(소득공제)/사업자용(매입세액공제). 의무발행업종 미발행 시 가산세 (정의: concepts.md 참조)
40
+ - **증빙 → 분개 → 원장 → 재무제표**: 증빙이 거래의 출발점. 증빙 없는 거래는 감사 증거 부재
41
+
42
+ ## 전자공시 구조
43
+
44
+ - **DART 공시**: 사업보고서(연간, 사업연도 종료 후 90일 이내), 분기·반기보고서(해당 기간 경과 후 45일 이내), 주요사항보고서(사유 발생 당일), 공정공시 (자본시장법 제159조, 제160조)
45
+ - **제출 대상**: 주권상장법인 등. 외부감사 대상 기준: 자산총액 500억 이상 또는 매출액 500억 이상(단독 해당), 또는 복합기준(자산 120억·부채 70억·매출 100억·종업원 100명) 중 2개 이상 해당 (외부감사법 시행령 제5조)
46
+ - **XBRL 태깅**: 재무제표 항목을 한국 XBRL 택소노미에 매핑
47
+
48
+ ## 계정과목 체계
49
+
50
+ - Level 1: 자산(1), 부채(2), 자본(3), 수익(4), 비용(5) — 5대 분류
51
+ - Level 2: 유동자산(11), 비유동자산(12), 유동부채(21), 비유동부채(22) 등 — 성격별 분류
52
+ - Level 3: 개별 계정과목 — 거래 기록 단위
53
+ - 보조원장: 계정과목의 거래처별·자산별 세부 내역
54
+ - 유동/비유동 분류 기준: 보고기간 후 12개월 이내 실현·결제 예상 여부. 영업주기가 12개월 초과 시 영업주기 기준
55
+
56
+ ## 내부회계관리제도 구조
57
+
58
+ - **적용 대상**: 상장법인 + 자산총액 1천억 이상 비상장법인. 자산 1천억 이상 상장사 '감사', 1천억 미만 상장사 '검토'
59
+ - **구성**: 통제환경, 위험평가, 통제활동, 정보와 전달, 모니터링
60
+ - **보고**: 경영진 운영실태보고서 + 감사인(또는 검토인)의 의견
61
+ - **별도 재무제표 감사 단계별 시행**: 2019년(자산 2조 이상) → 2020년(5천억 이상) → 2022년(1천억 이상) → 2023년(1천억 미만, 검토 수준). 연결 재무제표 감사는 자산 2조 미만 상장사 대상 2029년까지 유예
62
+
63
+ ## 필수 관계
64
+
65
+ - 모든 분개에는 최소 1개 차변 계정과 1개 대변 계정이 있어야 한다
66
+ - 모든 계정은 5대 분류 중 정확히 하나에 속해야 한다
67
+ - 재무제표 간 교차 검증점이 존재해야 한다 (당기순이익, 현금 변동, 기타포괄손익, 기말자본)
68
+ - 세금계산서의 공급가액 합계와 부가세 신고서의 과세표준은 조정 후 일치해야 한다
69
+ - 법인세 신고서의 당기순이익은 감사 후 재무제표 당기순이익과 일치해야 한다
70
+
71
+ ## 고립 노드 금지
72
+
73
+ - 어떤 분개에도 사용되지 않는 계정 → 경고 (미사용 계정)
74
+ - 재무제표에 표시되지 않는 원장 잔액 → 경고 (누락 보고 항목)
75
+ - 세금계산서가 발행되었으나 대응 분개가 없는 거래 → 경고 (증빙-장부 불일치)
76
+ - 재무제표에 주요 항목이 있으나 주석 참조가 없는 경우(중요성 충족 시) → 경고 (공시 누락)
77
+
78
+ ## Related Documents
79
+ - concepts.md — 계정, 재무제표, 증빙, 세무 관련 용어 정의
80
+ - dependency_rules.md — 재무제표 간 연결, 기준 간 의존
81
+ - logic_rules.md — 인식·측정·세무조정 로직
82
+ - competency_qs.md — 구조 검증 질문
83
+ - domain_scope.md — 이 구조가 적용되는 범위
84
+ - extension_cases.md — 확장 시나리오
85
+ - conciseness_rules.md — 간결성 규칙