{"id":"@lssm-tech/module.audit-trail","slug":"module.audit-trail","name":"@lssm-tech/module.audit-trail","version":"5.0.4","path":"packages/platform/governance/audit-trail","manifestPath":"packages/platform/governance/audit-trail/package.json","manifestBlobSha":"c78dd8f95f527733099523981a040f3d0d793b70","layer":"platform","physicalArea":"governance","primaryArea":"governance-and-approvals","classification":{"privateDeclared":null,"catalogFamily":"solutions","catalogKind":"module","catalogStatus":"active","adoptionMode":"adoptable","stability":"stable"},"description":"Audit trail module for tracking and querying system events","descriptionOrigin":"package.json","catalog":{"family":"solutions","kind":"module","status":"active","adoptionMode":"adoptable","stability":"stable","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./audit-trail.capability","./audit-trail.feature","./contracts","./contracts/scoped-audit","./entities","./storage","./storage/scoped-append-only"],"documentation":[{"title":"Module Audit Trail documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fmodule.audit-trail","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.module.audit.trail","title":"Module Audit Trail","description":"Audit trail module for tracking and querying system events","status":"active","useCases":["Adopt audit trail module for tracking and querying system events"],"aliases":["contractspec","audit","logging","compliance","events","typescript","module","trail"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/module.audit-trail","symbols":[]},{"from":"@lssm-tech/module.audit-trail/audit-trail.capability","symbols":[]},{"from":"@lssm-tech/module.audit-trail/audit-trail.feature","symbols":[]},{"from":"@lssm-tech/module.audit-trail/contracts","symbols":[]},{"from":"@lssm-tech/module.audit-trail/contracts/scoped-audit","symbols":[]},{"from":"@lssm-tech/module.audit-trail/entities","symbols":[]},{"from":"@lssm-tech/module.audit-trail/storage","symbols":[]},{"from":"@lssm-tech/module.audit-trail/storage/scoped-append-only","symbols":[]}],"constraints":{"platforms":["server"],"runtimes":["node"],"avoidWhen":["The @lssm-tech/module.audit-trail package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail","symbols":[]},{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail/audit-trail.capability","symbols":[]},{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail/audit-trail.feature","symbols":[]},{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail/contracts","symbols":[]},{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail/contracts/scoped-audit","symbols":[]},{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail/entities","symbols":[]},{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail/storage","symbols":[]},{"capabilityId":"package.lssm.tech.module.audit.trail","from":"@lssm-tech/module.audit-trail/storage/scoped-append-only","symbols":[]}],"scripts":{"publish:pkg":"bun publish --tolerate-republish --ignore-scripts --verbose","publish:pkg:canary":"bun publish:pkg --tag canary","build":"contractspec-bun-build build","build:bundle":"contractspec-bun-build transpile","build:types":"contractspec-bun-build types","dev":"contractspec-bun-build dev","clean":"rimraf dist .turbo","lint":"bun lint:fix","lint:fix":"node ../../../../scripts/biome.cjs check --write --unsafe --only=nursery/useSortedClasses . && node ../../../../scripts/biome.cjs check --write .","lint:check":"node ../../../../scripts/biome.cjs check .","prebuild":"contractspec-bun-build prebuild","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/lib.schema":"workspace:^","@lssm-tech/lib.contracts-spec-core":"workspace:^","@lssm-tech/lib.bus":"workspace:^","zod":"catalog:"},"devDependencies":{"@lssm-tech/tool.typescript":"workspace:*","typescript":"catalog:","@lssm-tech/tool.bun":"workspace:*"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./audit-trail.capability":"./src/audit-trail.capability.ts","./audit-trail.feature":"./src/audit-trail.feature.ts","./contracts":"./src/contracts/index.ts","./contracts/scoped-audit":"./src/contracts/scoped-audit.ts","./entities":"./src/entities/index.ts","./storage":"./src/storage/index.ts","./storage/scoped-append-only":"./src/storage/scoped-append-only.ts"},"publishExports":{".":{"types":"./dist/index.d.ts","browser":"./dist/browser/index.js","bun":"./dist/index.js","node":"./dist/node/index.js","default":"./dist/index.js"},"./audit-trail.capability":{"types":"./dist/audit-trail.capability.d.ts","browser":"./dist/browser/audit-trail.capability.js","bun":"./dist/audit-trail.capability.js","node":"./dist/node/audit-trail.capability.js","default":"./dist/audit-trail.capability.js"},"./audit-trail.feature":{"types":"./dist/audit-trail.feature.d.ts","browser":"./dist/browser/audit-trail.feature.js","bun":"./dist/audit-trail.feature.js","node":"./dist/node/audit-trail.feature.js","default":"./dist/audit-trail.feature.js"},"./contracts":{"types":"./dist/contracts/index.d.ts","browser":"./dist/browser/contracts/index.js","bun":"./dist/contracts/index.js","node":"./dist/node/contracts/index.js","default":"./dist/contracts/index.js"},"./contracts/scoped-audit":{"types":"./dist/contracts/scoped-audit.d.ts","browser":"./dist/browser/contracts/scoped-audit.js","bun":"./dist/contracts/scoped-audit.js","node":"./dist/node/contracts/scoped-audit.js","default":"./dist/contracts/scoped-audit.js"},"./entities":{"types":"./dist/entities/index.d.ts","browser":"./dist/browser/entities/index.js","bun":"./dist/entities/index.js","node":"./dist/node/entities/index.js","default":"./dist/entities/index.js"},"./storage":{"types":"./dist/storage/index.d.ts","browser":"./dist/browser/storage/index.js","bun":"./dist/storage/index.js","node":"./dist/node/storage/index.js","default":"./dist/storage/index.js"},"./storage/scoped-append-only":{"types":"./dist/storage/scoped-append-only.d.ts","browser":"./dist/browser/storage/scoped-append-only.js","bun":"./dist/storage/scoped-append-only.js","node":"./dist/node/storage/scoped-append-only.js","default":"./dist/storage/scoped-append-only.js"}},"types":"./dist/index.d.ts","files":["dist","README.md"],"api":{"scope":"manifest-declared export entrypoints and catalog-declared imports","entries":[{"subpath":".","importPath":"@lssm-tech/module.audit-trail","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"packages/platform/governance/audit-trail/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./audit-trail.capability","importPath":"@lssm-tech/module.audit-trail/audit-trail.capability","target":"./src/audit-trail.capability.ts","targets":[{"conditions":[],"target":"./src/audit-trail.capability.ts","sourcePath":"packages/platform/governance/audit-trail/src/audit-trail.capability.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/audit-trail.capability.ts","sourceStatus":"verified source file"}]},{"subpath":"./audit-trail.feature","importPath":"@lssm-tech/module.audit-trail/audit-trail.feature","target":"./src/audit-trail.feature.ts","targets":[{"conditions":[],"target":"./src/audit-trail.feature.ts","sourcePath":"packages/platform/governance/audit-trail/src/audit-trail.feature.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/audit-trail.feature.ts","sourceStatus":"verified source file"}]},{"subpath":"./contracts","importPath":"@lssm-tech/module.audit-trail/contracts","target":"./src/contracts/index.ts","targets":[{"conditions":[],"target":"./src/contracts/index.ts","sourcePath":"packages/platform/governance/audit-trail/src/contracts/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/contracts/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./contracts/scoped-audit","importPath":"@lssm-tech/module.audit-trail/contracts/scoped-audit","target":"./src/contracts/scoped-audit.ts","targets":[{"conditions":[],"target":"./src/contracts/scoped-audit.ts","sourcePath":"packages/platform/governance/audit-trail/src/contracts/scoped-audit.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/contracts/scoped-audit.ts","sourceStatus":"verified source file"}]},{"subpath":"./entities","importPath":"@lssm-tech/module.audit-trail/entities","target":"./src/entities/index.ts","targets":[{"conditions":[],"target":"./src/entities/index.ts","sourcePath":"packages/platform/governance/audit-trail/src/entities/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/entities/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./storage","importPath":"@lssm-tech/module.audit-trail/storage","target":"./src/storage/index.ts","targets":[{"conditions":[],"target":"./src/storage/index.ts","sourcePath":"packages/platform/governance/audit-trail/src/storage/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/storage/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./storage/scoped-append-only","importPath":"@lssm-tech/module.audit-trail/storage/scoped-append-only","target":"./src/storage/scoped-append-only.ts","targets":[{"conditions":[],"target":"./src/storage/scoped-append-only.ts","sourcePath":"packages/platform/governance/audit-trail/src/storage/scoped-append-only.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/src/storage/scoped-append-only.ts","sourceStatus":"verified source file"}]}],"entryCount":8,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Module Audit Trail documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fmodule.audit-trail","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/module.audit-trail.txt"},"readme":{"status":"available","body":"# @lssm-tech/module.audit-trail\n\nWebsite: https://contractspec.io\n\n**Audit trail module for tracking and querying system events.**\n\n## What It Provides\n\n- **Layer**: module.\n- **Consumers**: bundles (library, contractspec-studio), apps (web-landing).\n- `src/contracts/` contains contract specs, operations, entities, and registry exports.\n- Related ContractSpec packages include `@lssm-tech/lib.bus`, `@lssm-tech/lib.contracts-spec`, `@lssm-tech/lib.schema`, `@lssm-tech/tool.bun`, `@lssm-tech/tool.typescript`.\n- `src/contracts/` contains contract specs, operations, entities, and registry exports.\n\n## Installation\n\n`npm install @lssm-tech/module.audit-trail`\n\nor\n\n`bun add @lssm-tech/module.audit-trail`\n\n## Usage\n\nImport the root entrypoint from `@lssm-tech/module.audit-trail`, or choose a documented subpath when you only need one part of the package surface.\n\nFor application-facing evidence, use `ScopedAppendOnlyAuditPort` from the\n`./storage` subpath. Every append and query requires both `tenantId` and\n`workspaceId`; the port deliberately exposes no update, delete, or clear method.\n`InMemoryScopedAppendOnlyAuditStore` is the development and contract-test\nreference adapter. Administrative retention remains on the legacy storage\nadapter and must not be exposed as an application mutation path.\n\n## Architecture\n\n- `src/audit-trail.capability.ts` defines a capability surface.\n- `src/audit-trail.feature.ts` defines a feature entrypoint.\n- `src/contracts/` contains contract specs, operations, entities, and registry exports.\n- `src/entities/` contains domain entities and value objects.\n- `src/index.ts` is the root public barrel and package entrypoint.\n- `src/storage/` contains persistence adapters and storage implementations.\n\n## Public Entry Points\n\n- Export `.` resolves through `./src/index.ts`.\n- Export `./audit-trail.capability` resolves through `./src/audit-trail.capability.ts`.\n- Export `./audit-trail.feature` resolves through `./src/audit-trail.feature.ts`.\n- Export `./contracts` resolves through `./src/contracts/index.ts`.\n- Export `./entities` resolves through `./src/entities/index.ts`.\n- Export `./storage` resolves through `./src/storage/index.ts`.\n\n## Local Commands\n\n- `bun run dev` — contractspec-bun-build dev\n- `bun run build` — contractspec-bun-build build\n- `bun run lint` — bun lint:fix\n- `bun run lint:check` — biome check .\n- `bun run lint:fix` — biome check --write --unsafe --only=nursery/useSortedClasses . && biome check --write .\n- `bun run typecheck` — tsgo --noEmit\n- `bun run publish:pkg` — bun publish --tolerate-republish --ignore-scripts --verbose\n- `bun run publish:pkg:canary` — bun publish:pkg --tag canary\n- `bun run clean` — rimraf dist .turbo\n- `bun run build:bundle` — contractspec-bun-build transpile\n- `bun run build:types` — contractspec-bun-build types\n- `bun run prebuild` — contractspec-bun-build prebuild\n\n## Recent Updates\n\n- Add strict tenant/workspace-scoped append and query contracts plus an\n  append-only reference storage port.\n- Replace eslint+prettier by biomejs to optimize speed.\n\n## Notes\n\n- Depends on `lib.bus` for event dispatch -- never emit events outside the bus.\n- Audit records are append-only; mutations or deletions break compliance invariants.\n- Storage adapters must implement the store interface; do not bypass it.\n","sourcePath":"packages/platform/governance/audit-trail/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/platform/governance/audit-trail/README.md","blobSha":"0b93dd61205deca19c22f3e77d07a98aeac2311b","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","origin":"README recovered byte-for-byte from pinned aggregate guide","integrity":"exact Git blob match","executionStatus":"not executed"},"provenance":{"repository":"lssm-tech/contractspec","sourcePin":"bcc79fcc27c4d801c2119bef81ddcce7b4e86498","manifestOrigin":"pinned GitHub manifest fetch","manifestComplete":true,"publicationPolicyApplied":false},"areaSlug":"governance-and-approvals","areaTitle":"Governance, decisions and approvals","displayName":"module.audit-trail","runtimes":["node"],"platforms":["server"],"kind":"module","scope":"Package manifest","canonicalRoute":"/docs/packages/module.audit-trail/","contextUrl":"/docs/packages/module.audit-trail.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}