Root tsconfig core path report
Date: 2026-03-06
Scope
Safe review and narrowing of root-level @kvary/core TypeScript path mappings.
Resolving locale, route permissions, and workspace projection.
Current scope: Guest
Category: 90_stabilization | Version: v1.0.0
Owner: DOCUMENT_CUSTODIAN | Review cycle: 90 days
Approval authority: Unspecified
Documentation portal is read-only. Editing and mutation endpoints are disabled.
Kvary platform is originally created in Georgian. Where a Georgian version exists, Georgian is authoritative for platform UI, documentation, and legal interpretation.
Translations into other languages are provided for convenience. Some records may originate in other languages and carry their own source or legal locale for a specific flow, but where a Georgian version is available, the Georgian version prevails for platform-level wording and interpretation.
Metadata incomplete: Document ID, Version, Status, Owner Role, Last Review Date, Next Review Date, Change Log
Date: 2026-03-06
Safe review and narrowing of root-level @kvary/core TypeScript path mappings.
Primary target:
Observed state:
extend any base configtsconfig*.json files were found to extend root tsconfig.jsonImplication:
@kvary/core/* path mappings were not serving as a shared inherited baseBefore this change, root tsconfig.json contained:
@kvary/core/governance -> packages/core/governance/index.ts@kvary/core/* -> packages/core/*These were raw source mappings into packages/core.
| Consumer/context | Example | Classification | Notes |
| --- | --- | --- | --- |
| web app | apps/web/src/app/.../kes/page.tsx | SAFE_PACKAGE_RESOLUTION | already stabilized separately in web config |
| service code with local tsconfig | services/api/src/tenders/engine.ts | SAFE_PACKAGE_RESOLUTION | service uses its own tsconfig, not root |
| root-run tsx script | scripts/golden.ts | SAFE_PACKAGE_RESOLUTION | works through package-name resolution |
| root-run JS script | scripts/golden.js | TOOLING_ONLY | Node require() uses package exports |
| root-run TS test | tests/governance/governance.replay-determinism.test.ts | SAFE_PACKAGE_RESOLUTION | imports resolve without root paths |
| source-inspection tooling | scripts/verify-governance-consistency.ts | TOOLING_ONLY | uses raw filesystem path to packages/core/governance/types.ts, not @kvary/core/* |
| shell compile script | scripts/run-ledger-v2-golden.sh | TOOLING_ONLY | compiles raw packages/core/*.ts files by path |
| app cache artifact | apps/web/tsconfig.tsbuildinfo | MANUAL_VERIFY_FIRST | cache artifact, not a source consumer |
Smallest safe change:
paths mappings for @kvary/core/governance and @kvary/core/*baseUrl: "." unchangedThis preserves overall root tsconfig shape while eliminating explicit raw-source aliasing for @kvary/core.
Executed:
npm exec -- tsx scripts/golden.ts
Result:
Executed:
npm exec -- tsc --noEmit --traceResolution scripts/golden.ts
npm exec -- tsc --noEmit --traceResolution tests/governance/governance.replay-determinism.test.ts
Observed:
@kvary/core/* still resolves successfullynode_modules/@kvary/core/package.jsonpackages/core/canonical/canonicalSerialize.tspackages/core/governance/appendGovernanceRecord.tspackages/core/governance/types.tsImportant nuance:
paths, root-level TypeScript tooling no longer depends on explicit tsconfig aliasing.ts through the workspace symlink in node_modulesExecuted:
npm --prefix services/api exec -- tsc -p tsconfig.json --noEmit
Observed:
@kvary/core module resolution regressions were introducedSome root-level tsc invocations still surface unrelated app alias errors under apps/web because those commands are not scoped to a single project config. These are not caused by removing root @kvary/core path mappings.
@kvary/core pathsRemaining source-coupled tooling is still present, but not because of root tsconfig paths:
These use raw filesystem paths into packages/core, and should be handled as separate tooling migrations.
packages/core/*.ts filesystem consumers@kvary/core should eventually expose stronger declaration-first resolution for root TypeScript toolingpackages/core/*.js manual-verify cleanup set