{"id":"@lssm-tech/bundle.personal-os","slug":"bundle.personal-os","name":"@lssm-tech/bundle.personal-os","version":"2.0.5","path":"packages/bundles/personal-os","manifestPath":"packages/bundles/personal-os/package.json","manifestBlobSha":"67682e4b8809def8318f1c90c0b4d5f0d965cb7d","layer":"bundles","physicalArea":null,"primaryArea":"personal-and-learning","classification":{"privateDeclared":null,"catalogFamily":"solutions","catalogKind":"bundle","catalogStatus":"active","adoptionMode":"adoptable","stability":"experimental"},"description":"Evidence-scored PersonalOS product composition and requirements coverage.","descriptionOrigin":"package.json","catalog":{"family":"solutions","kind":"bundle","status":"active","adoptionMode":"adoptable","stability":"experimental","platforms":["web","server"],"runtimes":["node","browser"],"entrypoints":[".","./experience-coverage","./experience-coverage/operator","./experience-coverage/operator.node","./experience-coverage/public","./finance-projection","./index.node","./index.web","./personal-os.feature","./personal-os.feature.node","./personal-os.feature.web","./personal-projections.feature","./personal-projections.feature.node","./personal-projections.feature.web","./projections","./projections/governed","./runtime","./runtime/index.node"],"documentation":[{"title":"Bundle Personal Os documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fbundle.personal-os","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.bundle.personal.os","title":"Bundle Personal Os","description":"Evidence-scored PersonalOS product composition and requirements coverage.","status":"active","useCases":["Adopt evidence-scored personalos product composition and requirements coverage"],"aliases":["bundle","personal"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/bundle.personal-os","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/experience-coverage","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/experience-coverage/operator","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/experience-coverage/operator.node","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/experience-coverage/public","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/finance-projection","symbols":["projectPersonalFinanceBreadthV1"]},{"from":"@lssm-tech/bundle.personal-os/index.node","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/index.web","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/personal-os.feature","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/personal-os.feature.node","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/personal-os.feature.web","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/personal-projections.feature","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/personal-projections.feature.node","symbols":[]},{"from":"@lssm-tech/bundle.personal-os/projections/governed","symbols":[]}],"constraints":{"platforms":["web","server"],"runtimes":["node","browser"],"avoidWhen":["The @lssm-tech/bundle.personal-os package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/experience-coverage","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/experience-coverage/operator","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/experience-coverage/operator.node","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/experience-coverage/public","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/finance-projection","symbols":["projectPersonalFinanceBreadthV1"]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/index.node","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/index.web","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/personal-os.feature","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/personal-os.feature.node","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/personal-os.feature.web","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/personal-projections.feature","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/personal-projections.feature.node","symbols":[]},{"capabilityId":"package.lssm.tech.bundle.personal.os","from":"@lssm-tech/bundle.personal-os/projections/governed","symbols":[]}],"scripts":{"build":"bun run build:bundle && bun run build:types && bun run build:check","build:check":"bun run scripts/check-build-inventory.ts","build:bundle":"contractspec-bun-build transpile","build:types":"contractspec-bun-build types","clean":"rimraf dist .turbo","coverage:generate":"bun run scripts/generate-personal-experience-coverage.ts","lint:check":"node ../../../scripts/biome.cjs check .","lint:fix":"node ../../../scripts/biome.cjs check --write .","prebuild":"contractspec-bun-build prebuild","test":"bun scripts/run-tests.ts","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/lib.contracts-spec":"workspace:^","@lssm-tech/lib.data-exchange-core":"workspace:^","@lssm-tech/lib.data-exchange-server":"workspace:^","@lssm-tech/lib.finance-ops-spec":"workspace:^","@lssm-tech/lib.founder-intelligence-spec":"workspace:^","@lssm-tech/lib.lssm-os-runtime":"workspace:^","@lssm-tech/lib.personal-finance-runtime":"workspace:^","@lssm-tech/lib.personal-finance-spec":"workspace:^","@lssm-tech/lib.personal-health-spec":"workspace:^","@lssm-tech/lib.personal-os-runtime":"workspace:^","@lssm-tech/lib.personal-os-spec":"workspace:^","@lssm-tech/lib.surface-runtime":"workspace:^","@lssm-tech/module.communication-os":"workspace:^","@lssm-tech/module.learning-journey":"workspace:^","@lssm-tech/module.personal-community":"workspace:^","@lssm-tech/module.personal-experience":"workspace:^","@lssm-tech/module.personal-founder-support":"workspace:^","@lssm-tech/module.personal-goals":"workspace:^","@lssm-tech/module.personal-household":"workspace:^","@lssm-tech/module.personal-learning":"workspace:^","@lssm-tech/module.personal-life-admin":"workspace:^","@lssm-tech/module.personal-operations":"workspace:^","@lssm-tech/module.personal-productivity":"workspace:^","@lssm-tech/lib.personal-health-runtime":"workspace:^"},"devDependencies":{"@electric-sql/pglite":"catalog:data","@lssm-tech/lib.contracts-integrations":"workspace:^","@lssm-tech/lib.personalization":"workspace:^","@lssm-tech/integration.personal-os-state-postgres":"workspace:^","@lssm-tech/tool.bun":"workspace:*","@lssm-tech/tool.typescript":"workspace:*","typescript":"catalog:"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":{"types":"./src/index.node.ts","browser":"./src/index.web.ts","node":"./src/index.node.ts","default":"./src/index.node.ts"},"./experience-coverage":"./src/experience-coverage/index.ts","./experience-coverage/operator":{"types":"./src/experience-coverage/operator.node.ts","node":"./src/experience-coverage/operator.node.ts","default":"./src/experience-coverage/operator.node.ts"},"./experience-coverage/operator.node":"./src/experience-coverage/operator.node.ts","./experience-coverage/public":"./src/experience-coverage/public/index.ts","./finance-projection":{"types":"./src/finance-projection.node.ts","node":"./src/finance-projection.node.ts","default":"./src/finance-projection.node.ts"},"./finance-projection.node":"./src/finance-projection.node.ts","./index.node":"./src/index.node.ts","./index.web":"./src/index.web.ts","./personal-os.feature":{"types":"./src/personal-os.feature.node.ts","browser":"./src/personal-os.feature.web.ts","node":"./src/personal-os.feature.node.ts","default":"./src/personal-os.feature.node.ts"},"./personal-os.feature.node":"./src/personal-os.feature.node.ts","./personal-os.feature.web":"./src/personal-os.feature.web.ts","./personal-projections.feature":{"types":"./src/personal-projections.feature.node.ts","browser":"./src/personal-projections.feature.web.ts","node":"./src/personal-projections.feature.node.ts","default":"./src/personal-projections.feature.node.ts"},"./personal-projections.feature.node":"./src/personal-projections.feature.node.ts","./personal-projections.feature.web":"./src/personal-projections.feature.web.ts","./projections":"./src/projections/index.ts","./projections/governed":{"types":"./src/projections/governed/index.node.ts","node":"./src/projections/governed/index.node.ts","default":"./src/projections/governed/index.node.ts"},"./runtime":{"types":"./src/runtime/index.node.ts","node":"./src/runtime/index.node.ts","default":"./src/runtime/index.node.ts"},"./runtime/index.node":"./src/runtime/index.node.ts"},"publishExports":{".":{"types":"./dist/index.node.d.ts","browser":"./dist/browser/index.web.js","bun":"./dist/index.node.js","node":"./dist/node/index.node.js","default":"./dist/index.node.js"},"./experience-coverage":{"types":"./dist/experience-coverage/index.d.ts","browser":"./dist/browser/experience-coverage/index.js","bun":"./dist/experience-coverage/index.js","node":"./dist/node/experience-coverage/index.js","default":"./dist/experience-coverage/index.js"},"./experience-coverage/operator":{"types":"./dist/experience-coverage/operator.node.d.ts","bun":"./dist/experience-coverage/operator.node.js","node":"./dist/node/experience-coverage/operator.node.js","default":"./dist/experience-coverage/operator.node.js"},"./experience-coverage/operator.node":{"types":"./dist/experience-coverage/operator.node.d.ts","bun":"./dist/experience-coverage/operator.node.js","node":"./dist/node/experience-coverage/operator.node.js","default":"./dist/experience-coverage/operator.node.js"},"./experience-coverage/public":{"types":"./dist/experience-coverage/public/index.d.ts","browser":"./dist/browser/experience-coverage/public/index.js","bun":"./dist/experience-coverage/public/index.js","node":"./dist/node/experience-coverage/public/index.js","default":"./dist/experience-coverage/public/index.js"},"./finance-projection":{"types":"./dist/finance-projection.node.d.ts","bun":"./dist/finance-projection.node.js","node":"./dist/node/finance-projection.node.js","default":"./dist/finance-projection.node.js"},"./finance-projection.node":{"types":"./dist/finance-projection.node.d.ts","bun":"./dist/finance-projection.node.js","node":"./dist/node/finance-projection.node.js","default":"./dist/finance-projection.node.js"},"./index.node":{"types":"./dist/index.node.d.ts","bun":"./dist/index.node.js","node":"./dist/node/index.node.js","default":"./dist/index.node.js"},"./index.web":{"types":"./dist/index.web.d.ts","browser":"./dist/browser/index.web.js","bun":"./dist/index.web.js","default":"./dist/index.web.js"},"./personal-os.feature":{"types":"./dist/personal-os.feature.node.d.ts","browser":"./dist/browser/personal-os.feature.web.js","bun":"./dist/personal-os.feature.node.js","node":"./dist/node/personal-os.feature.node.js","default":"./dist/personal-os.feature.node.js"},"./personal-os.feature.node":{"types":"./dist/personal-os.feature.node.d.ts","bun":"./dist/personal-os.feature.node.js","node":"./dist/node/personal-os.feature.node.js","default":"./dist/personal-os.feature.node.js"},"./personal-os.feature.web":{"types":"./dist/personal-os.feature.web.d.ts","browser":"./dist/browser/personal-os.feature.web.js","bun":"./dist/personal-os.feature.web.js","default":"./dist/personal-os.feature.web.js"},"./personal-projections.feature":{"types":"./dist/personal-projections.feature.node.d.ts","browser":"./dist/browser/personal-projections.feature.web.js","bun":"./dist/personal-projections.feature.node.js","node":"./dist/node/personal-projections.feature.node.js","default":"./dist/personal-projections.feature.node.js"},"./personal-projections.feature.node":{"types":"./dist/personal-projections.feature.node.d.ts","bun":"./dist/personal-projections.feature.node.js","node":"./dist/node/personal-projections.feature.node.js","default":"./dist/personal-projections.feature.node.js"},"./personal-projections.feature.web":{"types":"./dist/personal-projections.feature.web.d.ts","browser":"./dist/browser/personal-projections.feature.web.js","bun":"./dist/personal-projections.feature.web.js","default":"./dist/personal-projections.feature.web.js"},"./projections":{"types":"./dist/projections/index.d.ts","browser":"./dist/browser/projections/index.js","bun":"./dist/projections/index.js","node":"./dist/node/projections/index.js","default":"./dist/projections/index.js"},"./projections/governed":{"types":"./dist/projections/governed/index.node.d.ts","bun":"./dist/projections/governed/index.node.js","node":"./dist/node/projections/governed/index.node.js","default":"./dist/projections/governed/index.node.js"},"./runtime":{"types":"./dist/runtime/index.node.d.ts","bun":"./dist/runtime/index.node.js","node":"./dist/node/runtime/index.node.js","default":"./dist/runtime/index.node.js"},"./runtime/index.node":{"types":"./dist/runtime/index.node.d.ts","bun":"./dist/runtime/index.node.js","node":"./dist/node/runtime/index.node.js","default":"./dist/runtime/index.node.js"}},"types":"./dist/index.node.d.ts","files":["dist","README.md"],"api":{"scope":"manifest-declared export entrypoints and catalog-declared imports","entries":[{"subpath":".","importPath":"@lssm-tech/bundle.personal-os","target":{"types":"./src/index.node.ts","browser":"./src/index.web.ts","node":"./src/index.node.ts","default":"./src/index.node.ts"},"targets":[{"conditions":["types"],"target":"./src/index.node.ts","sourcePath":"packages/bundles/personal-os/src/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/index.node.ts","sourceStatus":"verified source file"},{"conditions":["browser"],"target":"./src/index.web.ts","sourcePath":"packages/bundles/personal-os/src/index.web.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/index.web.ts","sourceStatus":"verified source file"},{"conditions":["node"],"target":"./src/index.node.ts","sourcePath":"packages/bundles/personal-os/src/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/index.node.ts","sourceStatus":"verified source file"},{"conditions":["default"],"target":"./src/index.node.ts","sourcePath":"packages/bundles/personal-os/src/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/index.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./experience-coverage","importPath":"@lssm-tech/bundle.personal-os/experience-coverage","target":"./src/experience-coverage/index.ts","targets":[{"conditions":[],"target":"./src/experience-coverage/index.ts","sourcePath":"packages/bundles/personal-os/src/experience-coverage/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/experience-coverage/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./experience-coverage/operator","importPath":"@lssm-tech/bundle.personal-os/experience-coverage/operator","target":{"types":"./src/experience-coverage/operator.node.ts","node":"./src/experience-coverage/operator.node.ts","default":"./src/experience-coverage/operator.node.ts"},"targets":[{"conditions":["types"],"target":"./src/experience-coverage/operator.node.ts","sourcePath":"packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceStatus":"verified source file"},{"conditions":["node"],"target":"./src/experience-coverage/operator.node.ts","sourcePath":"packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceStatus":"verified source file"},{"conditions":["default"],"target":"./src/experience-coverage/operator.node.ts","sourcePath":"packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./experience-coverage/operator.node","importPath":"@lssm-tech/bundle.personal-os/experience-coverage/operator.node","target":"./src/experience-coverage/operator.node.ts","targets":[{"conditions":[],"target":"./src/experience-coverage/operator.node.ts","sourcePath":"packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/experience-coverage/operator.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./experience-coverage/public","importPath":"@lssm-tech/bundle.personal-os/experience-coverage/public","target":"./src/experience-coverage/public/index.ts","targets":[{"conditions":[],"target":"./src/experience-coverage/public/index.ts","sourcePath":"packages/bundles/personal-os/src/experience-coverage/public/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/experience-coverage/public/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./finance-projection","importPath":"@lssm-tech/bundle.personal-os/finance-projection","target":{"types":"./src/finance-projection.node.ts","node":"./src/finance-projection.node.ts","default":"./src/finance-projection.node.ts"},"targets":[{"conditions":["types"],"target":"./src/finance-projection.node.ts","sourcePath":"packages/bundles/personal-os/src/finance-projection.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/finance-projection.node.ts","sourceStatus":"verified source file"},{"conditions":["node"],"target":"./src/finance-projection.node.ts","sourcePath":"packages/bundles/personal-os/src/finance-projection.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/finance-projection.node.ts","sourceStatus":"verified source file"},{"conditions":["default"],"target":"./src/finance-projection.node.ts","sourcePath":"packages/bundles/personal-os/src/finance-projection.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/finance-projection.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./finance-projection.node","importPath":"@lssm-tech/bundle.personal-os/finance-projection.node","target":"./src/finance-projection.node.ts","targets":[{"conditions":[],"target":"./src/finance-projection.node.ts","sourcePath":"packages/bundles/personal-os/src/finance-projection.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/finance-projection.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./index.node","importPath":"@lssm-tech/bundle.personal-os/index.node","target":"./src/index.node.ts","targets":[{"conditions":[],"target":"./src/index.node.ts","sourcePath":"packages/bundles/personal-os/src/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/index.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./index.web","importPath":"@lssm-tech/bundle.personal-os/index.web","target":"./src/index.web.ts","targets":[{"conditions":[],"target":"./src/index.web.ts","sourcePath":"packages/bundles/personal-os/src/index.web.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/index.web.ts","sourceStatus":"verified source file"}]},{"subpath":"./personal-os.feature","importPath":"@lssm-tech/bundle.personal-os/personal-os.feature","target":{"types":"./src/personal-os.feature.node.ts","browser":"./src/personal-os.feature.web.ts","node":"./src/personal-os.feature.node.ts","default":"./src/personal-os.feature.node.ts"},"targets":[{"conditions":["types"],"target":"./src/personal-os.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceStatus":"verified source file"},{"conditions":["browser"],"target":"./src/personal-os.feature.web.ts","sourcePath":"packages/bundles/personal-os/src/personal-os.feature.web.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-os.feature.web.ts","sourceStatus":"verified source file"},{"conditions":["node"],"target":"./src/personal-os.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceStatus":"verified source file"},{"conditions":["default"],"target":"./src/personal-os.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./personal-os.feature.node","importPath":"@lssm-tech/bundle.personal-os/personal-os.feature.node","target":"./src/personal-os.feature.node.ts","targets":[{"conditions":[],"target":"./src/personal-os.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-os.feature.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./personal-os.feature.web","importPath":"@lssm-tech/bundle.personal-os/personal-os.feature.web","target":"./src/personal-os.feature.web.ts","targets":[{"conditions":[],"target":"./src/personal-os.feature.web.ts","sourcePath":"packages/bundles/personal-os/src/personal-os.feature.web.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-os.feature.web.ts","sourceStatus":"verified source file"}]},{"subpath":"./personal-projections.feature","importPath":"@lssm-tech/bundle.personal-os/personal-projections.feature","target":{"types":"./src/personal-projections.feature.node.ts","browser":"./src/personal-projections.feature.web.ts","node":"./src/personal-projections.feature.node.ts","default":"./src/personal-projections.feature.node.ts"},"targets":[{"conditions":["types"],"target":"./src/personal-projections.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceStatus":"verified source file"},{"conditions":["browser"],"target":"./src/personal-projections.feature.web.ts","sourcePath":"packages/bundles/personal-os/src/personal-projections.feature.web.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-projections.feature.web.ts","sourceStatus":"verified source file"},{"conditions":["node"],"target":"./src/personal-projections.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceStatus":"verified source file"},{"conditions":["default"],"target":"./src/personal-projections.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./personal-projections.feature.node","importPath":"@lssm-tech/bundle.personal-os/personal-projections.feature.node","target":"./src/personal-projections.feature.node.ts","targets":[{"conditions":[],"target":"./src/personal-projections.feature.node.ts","sourcePath":"packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-projections.feature.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./personal-projections.feature.web","importPath":"@lssm-tech/bundle.personal-os/personal-projections.feature.web","target":"./src/personal-projections.feature.web.ts","targets":[{"conditions":[],"target":"./src/personal-projections.feature.web.ts","sourcePath":"packages/bundles/personal-os/src/personal-projections.feature.web.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/personal-projections.feature.web.ts","sourceStatus":"verified source file"}]},{"subpath":"./projections","importPath":"@lssm-tech/bundle.personal-os/projections","target":"./src/projections/index.ts","targets":[{"conditions":[],"target":"./src/projections/index.ts","sourcePath":"packages/bundles/personal-os/src/projections/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/projections/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./projections/governed","importPath":"@lssm-tech/bundle.personal-os/projections/governed","target":{"types":"./src/projections/governed/index.node.ts","node":"./src/projections/governed/index.node.ts","default":"./src/projections/governed/index.node.ts"},"targets":[{"conditions":["types"],"target":"./src/projections/governed/index.node.ts","sourcePath":"packages/bundles/personal-os/src/projections/governed/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/projections/governed/index.node.ts","sourceStatus":"verified source file"},{"conditions":["node"],"target":"./src/projections/governed/index.node.ts","sourcePath":"packages/bundles/personal-os/src/projections/governed/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/projections/governed/index.node.ts","sourceStatus":"verified source file"},{"conditions":["default"],"target":"./src/projections/governed/index.node.ts","sourcePath":"packages/bundles/personal-os/src/projections/governed/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/projections/governed/index.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./runtime","importPath":"@lssm-tech/bundle.personal-os/runtime","target":{"types":"./src/runtime/index.node.ts","node":"./src/runtime/index.node.ts","default":"./src/runtime/index.node.ts"},"targets":[{"conditions":["types"],"target":"./src/runtime/index.node.ts","sourcePath":"packages/bundles/personal-os/src/runtime/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/runtime/index.node.ts","sourceStatus":"verified source file"},{"conditions":["node"],"target":"./src/runtime/index.node.ts","sourcePath":"packages/bundles/personal-os/src/runtime/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/runtime/index.node.ts","sourceStatus":"verified source file"},{"conditions":["default"],"target":"./src/runtime/index.node.ts","sourcePath":"packages/bundles/personal-os/src/runtime/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/runtime/index.node.ts","sourceStatus":"verified source file"}]},{"subpath":"./runtime/index.node","importPath":"@lssm-tech/bundle.personal-os/runtime/index.node","target":"./src/runtime/index.node.ts","targets":[{"conditions":[],"target":"./src/runtime/index.node.ts","sourcePath":"packages/bundles/personal-os/src/runtime/index.node.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/src/runtime/index.node.ts","sourceStatus":"verified source file"}]}],"entryCount":19,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Bundle Personal Os documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fbundle.personal-os","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/bundle.personal-os.txt"},"readme":{"status":"available","body":"# `@lssm-tech/bundle.personal-os`\n\nCanonical cross-domain composition for PersonalOS and the personal/non-work\nproduct portfolio. The bundle preserves 103 exact needs across PersonalOS,\nPersonalization, RoleMorph, personal agency, learning, health and wellbeing,\nHCircle, Pactena, life administration, personal finance, and platform quality.\n\nThe server-only `./runtime` entrypoint composes typed mission/goal,\nproductivity, household, health-connection, goal-scoped support, governed\ncoach-lifecycle, private progress-celebration, and rights commands. It recomputes\nthe domain-separated payload digest before authority, requires an exact fully\nbound receipt and authorized encrypted-state digest, hydrates one\nsubject-scoped snapshot, runs pure reducers, and commits the snapshot, receipt,\nevent, idempotency result, and outbox atomically. It then projects a minimized\nworkspace cursor with bounded planning, delegation, goal-scoped support,\nnon-clinical health, reversible coach, and private progress-policy summaries.\nConsent summaries populate a bounded subject-facing dashboard window with\npurpose, known downstream consumers, expiry, and granted/expired/revoked state.\nCounts remain exact when the window is truncated, active records are prioritized,\nand raw evidence plus authority receipts stay server-only.\n\nThe server runtime also composes subject-owned support incidents through a\nseparate exact-subject transaction port. It parses the command, loads current\nstate, computes the before and proposed semantic state digests, obtains\nserver-side authority for that exact transition, independently verifies the\nreceipt, and only then commits. Confirmation and denial create a digest-bound\nno-effect audit; exact replays do not reacquire authority. Public reads expose\nonly minimized status, revision, channel, timestamps, and accessibility need\nidentifiers. The bundle does not accept client-issued authority receipts.\nSupport grant preflight recomputes current household membership, active goals,\nconsent, evidence, and source revision before authority. Grant, revoke, block,\nand categorical report events enter a separately leased outbox destination.\nThat worker validates the complete content-free audience plan before delivery\nand exact event, subject, recipient, window, intent digest, and distinct\nassurance receipts before acknowledgement. Concrete provider credentials,\ncallback reconciliation, manual delivery acceptance, and production canaries\nremain host qualification rather than bundle evidence.\nCoach proposal and\nactivation are presentation-only,\nexpiry- and consent-bound, default to human authority, and retain explanation,\nevidence, authority receipt, undo, and compensation references. Proposal,\nactivation, inspect, undo, and reset validate their hydrated revisions and exact\nfeature/task policy scope before authority; raw behavioral signals, measurements,\nprovider payloads, and credentials never enter the projection. The runtime\nsubpath has no browser condition and is excluded\nfrom fresh browser artifacts.\n\nThe same server-only entrypoint now composes the Personal Life Administration\nmodule through the shared two-phase authority and encrypted atomic state port.\nIt recomputes the complete command and semantic state digests, rejects\nself-consistent idempotency substitutions before authority, persists only\nAES-GCM ciphertext under exact subject/version AAD, and commits the finalized\nreceipt, immutable event, snapshot, idempotency result, and minimized provider\neffect destinations in one forced-RLS PostgreSQL transaction. A local on-disk\nPGlite E2E closes and reopens the database mid-rights-plan, completes a portable\nexport, proves cross-subject isolation and ciphertext privacy, and rejects\ncipher-integrity tampering. A forced outbox failure proves the snapshot, event,\nreceipt, idempotency result, and effects all roll back. Real export/deletion\nprocessors, legal-hold policy and UX, cache/index/analytics/backup propagation,\nmanaged KMS/PostgreSQL recovery, product accessibility, acceptance, and canary\nevidence remain unqualified.\n\nThe server-only runtime also owns durable Personal Finance execution. Five\ncanonical finance commands are parsed and exact-bound to the authenticated\nsubject/version, consent, expected aggregate revision, action risk, evidence,\nidempotency key, and domain-separated action digest. The runtime hydrates only\nan AES-GCM subject snapshot, runs the pure append-only reducer, prepares and\nfinalizes authority against exact before/proposed semantic digests, verifies an\nindependent draft/proposal/receipt proof, and atomically commits ciphertext,\nevent, receipt, idempotency result, and projection/audit outbox entries. An\non-disk PGlite journey completes record, correction, scenario, connection, and\nprovider-page operations across restart; RLS isolation, ciphertext privacy,\nreplay, digest tampering, verified no-effect denial, and forced-outbox rollback\nare covered. Live regulated providers, managed credential/KMS/PostgreSQL\noperations and recovery, finance product UI/accessibility, regulatory review,\nmanual acceptance, and canaries remain external qualification gates.\n\nThe finance host also projects the decrypted exact-subject ledger only after\nrestart into three minimized views: an integrity-bound wealth snapshot with no\ncross-currency total, aggregate cash-flow and budget metadata with no item-level\npayloads, and an expiring family-office view containing opaque encrypted\ndocument references. The projection recomputes the semantic source digest,\nrequires independent source and receipt binding, excludes rejected provenance,\nand never exposes provider payloads or credentials.\n\nA second on-disk PGlite journey persists an owner-assigned household care item,\nreopens the database, and projects it only to the exact current delegated actor.\nActor-version substitution and revoked delegation return no care data, the\nstored snapshot contains ciphertext rather than the care title, and the owner\ncan complete the item after restart. Broader household invitations, abuse-safe\nexit UX, real notifications, manual accessibility, and production canaries\nremain separate qualification gates.\n\nThe workspace runtime also owns subject-controlled guardrails and goal\nconflicts. It validates exact goal scope, consent, evidence, revision, digest,\nand authority receipt before persisting definitions, triggers, resolutions, or\ndecisions. Active pause/block responses immediately pause affected goals and\ndeny later progress before authority. Revoke-sharing immediately blocks scoped\nsupport and denies replacement grants. Legacy encrypted snapshots are accepted\nonly after their original semantic digest verifies and only allowlisted empty\ndomains are hydrated. Workspace projections expose bounded counts and no\nguardrail descriptions or evidence.\n\nThe server runtime also derives `PersonalExperienceProjectionV1` from the\nhydrated workspace plus explicit host-owned consent, sharing, and completed\nrights facts. Pending, failed, revoking, or revoked health records never count\nas connected sources. Export and deletion journey completion is never inferred\nfrom a pending counter; the host must supply verified completion facts.\nThe same server projection now composes the RoleMorph-first presentation cursor:\nall six areas retain authority boundaries, Personalization is presentation-only,\npreferences are attributed and resettable, and delegated actors require the\nexact active `view_shared_projection` grant and one unambiguous current member\nrole. The contract recomputes its domain-separated resolution digest. No policy\nreason, evidence path, component payload, raw behavior, or credential enters\nthe public cursor.\nHosts may also provide the minimized `personalizationIdentity` cursor: an\nopaque tenant digest plus one current consent reference/status. The bundle\nnever derives raw tenant labels or consent evidence, and surface clients bind\nthis cursor to the exact outer subject and actor before any scoped buffer can\ncollect.\n\nThe server-only runtime applies the current RoleMorph presentation as a\nDataView boundary before returning workspace summaries. It strips every domain\nsummary when presentation is missing, invalid, stale, differently bound, or\ndenies any canonical area view or summary component. Only schema-valid cursor\nmetadata remains; the DataView spec and resolution never enter browser builds.\n\nThe runtime owns the legal peer-module composition for Personal Learning. Its\n`createPersonalLearningJourneyAdapterV1()` adapter projects the existing\nlearning-journey engine into the consent-aware Personal Learning port while\nrechecking exact subject versions, journey and command revisions, idempotency,\nstep cardinality, evidence, locale, and bounded due-card reads. The host still\nowns the authoritative catalog, entitlements, export/deletion propagation, and\nproduction UI qualification. `PersonalLearningDurableRuntimeV1` now owns the\nserver-side durable command path: it hydrates the exact encrypted subject\nsnapshot, rejects command-binding and revision drift before authority, invokes\nonly a pure learning transition planner, finalizes two-phase authority against\nthe proposed semantic state digest, and atomically commits the encrypted state,\nimmutable event, receipt, idempotency result, projection work, and minimized\ntelemetry work. Planner failures and consent denials preserve the last durable\ncheckpoint without committing partial progress.\nThe exact local adapter run is recorded in a dated, SHA-256-bound qualification\nartifact; it contributes only contract, implementation, unit, and integration evidence\nand cannot qualify the remaining host or product gates.\n\nThe server-only runtime also composes the HCircle projection consumer through\nthe actual `@lssm-tech/module.personal-community` service. Compiled packets now\ncarry exact subject and community-grantee references. The consumer recomputes a\ncanonical packet or revocation digest, checks every grant, source-consent,\nfield, projection, expiry, actor, and subject-version binding, and acknowledges\nonly an applied or idempotently replayed encrypted community transaction.\nRevocation clears locally readable values and emits the five required purge\nscopes for the host outbox. The injected issuer remains the authority boundary:\nit must resolve the current source grant and issue a fully command-bound human\nreceipt. Real key custody, durable delivery workers, purge-SLA completion,\nHCircle UI/accessibility, provider deployment, and production canaries remain\nunqualified.\nThe exact local consumer run is recorded in\n`generated/qualification/hcircle-consumer-local-qa-2026-08-10.json`; its\nSHA-256-bound contract, implementation, unit, and integration evidence is scoped to the\nlocal service composition and cannot qualify those remaining host gates.\n\nThe server-only `@lssm-tech/bundle.personal-os/projections/governed` entrypoint\nexports `PersonalGovernedProjectionTransportV1`, a `PersonalProjectionTransportPort`\nover the data-exchange governed gateway. Publication requires an exact\nauthority binding (subject, grantee, destination, consumer application, field\nmapping) before it builds the access request, sealed materialization\nauthorization and dispatch; revocation dispatch requires exact revocation\nbindings and acknowledgement watermarks. It is not emitted for browsers and is\nnot yet composed by a production host.\n\nThe server runtime now also composes Pactena projection packets through the\nactual `@lssm-tech/module.personal-founder-support` reducer and encrypted atomic\nstore port. One canonical packet can create idempotent, purpose-bound founder\nhandoffs for an explicitly configured cockpit/portfolio/room destination; the\nhandoff omits subject identifiers, provenance references, and free-form outcome\nnarratives. Exact packet, subject, product-grantee, grant, consent, projection,\ndomain-door, destination, revision, receipt, and digest bindings are rechecked\nbefore storage. Revocation enumerates the exact grant projection ids, marks each\nhandoff revoked, and emits the downstream delivery plus five-scope purge plan.\nReal KMS custody, Pactena delivery/reconciliation, product routes, accessibility,\nmanaged databases, E2E, purge-SLA proof, and canaries remain unqualified.\nThe exact local consumer run is recorded in\n`generated/qualification/pactena-consumer-local-qa-2026-08-10.json`; its\nSHA-256-bound contract, implementation, unit, and integration evidence covers the actual\nfounder-support service composition without widening those host qualification\nclaims.\n\nThe server-only workspace projector also emits bounded outcome summaries from\nencrypted mission-goal state. Each metric exposes its explicit baseline, target,\nunit, window, collection mode, current observed value, confidence, minimized\nevidence identifiers, and correction/removal counts. Prior values and correction\nreasons remain inside the immutable encrypted observation history.\n\n```ts\nimport { PersonalWorkspaceRuntime } from '@lssm-tech/bundle.personal-os/runtime';\n\nconst runtime = new PersonalWorkspaceRuntime({\n\tstore: subjectBoundPostgresStore,\n\tcrypto: kmsEnvelopeCrypto,\n\tauthority: connectBackedPersonalAuthority,\n\tauthorityReceiptVerifier: connectReceiptTrustRoot,\n\tdecisionAudit: subjectBoundDecisionAudit,\n\tids: monotonicPersonalIds,\n});\n```\n\nProvider credentials, raw health payloads, and export artifacts remain behind\ninjected integration ports. Local runtime tests qualify deterministic command\nand persistence boundaries only; they do not qualify a production KMS,\nprovider, AuthOS deployment, restore drill, browser E2E, or canary.\nThe PostgreSQL store supplied here must be constructed with an\n`authorityReceiptVerifier`; production atomic commits fail closed when the\nauthority receipt lacks independent canonical verification evidence.\n`preparePersonalHealthAuthorizationDispatch()` recomputes the immutable\nreceipt, authority-proposal, and dispatch digests before exposing a command to\neffects. `runPersonalHealthAuthorizationDispatchCycle()` then leases a durable,\nsecret-free broker dispatch, executes the normal runtime path, and atomically\nacks, retries, or supersedes it with a freshly issued revision-bound command.\n`createPersonalHealthAuthorizationConnectCommand()` builds that issued or\nreissued `connect_provider` command (high risk, human-required, online-only,\nbound to the request, active consent policy and evidence, and digest-bound to\nits payload); hosts only resolve the active consent.\nOAuth code/state and PKCE material are deleted before this delivery boundary;\nthe workspace reducer retains connection/category/status metadata only.\n\nBrowser and public consumers use the privacy-safe entrypoint:\n\n```ts\nimport {\n\tprojectAcceptedPersonalScope,\n\tprojectPersonalProductHealth,\n} from \"@lssm-tech/bundle.personal-os/experience-coverage\";\n\nconst acceptedP0 = projectAcceptedPersonalScope({ priority: \"P0\" });\nconst important = projectPersonalProductHealth({ criticality: \"important\" });\n```\n\nTrusted Bun or Node operators explicitly opt into the operator-only entrypoint:\n\n```ts\nimport {\n\tlistPersonalGaps,\n\tprojectPersonalOperatorHealth,\n} from \"@lssm-tech/bundle.personal-os/experience-coverage/operator\";\n\nconst gaps = listPersonalGaps({ acceptedScope: true, criticality: \"essential\" });\nconst operatorHealth = projectPersonalOperatorHealth();\n```\n\nThe public and browser artifacts contain only audience-safe rows. They neither\nimport operator modules nor contain repository source references,\nqualification references, or internal blocker text. The build classifies the\noperator entrypoint as server code and excludes it from browser transpilation.\n\nSource discovery is inventory, not readiness. The matrix classifies discovered\nartifacts as `source`, `reference`, or `fixture`. Only qualification evidence\nwith observation and expiry dates, producer/run provenance, and SHA-256\nintegrity can contribute to a requirement score. Mandatory evidence is the\nadditive union of the exact need kind, quality gates, provider canaries, and any\ndeclared layers; exceptions require an explicit approved, expiring waiver.\nFor local evidence, operator validation also hashes the referenced artifact and\nchecks its run schema, producer, environment, observation time, source commit,\nqualified layer allowlist, commands, and passed package results. Evidence can\ncredit only a layer named inside the hashed replay artifact, so a unit run cannot\nbe relabelled as accessibility or canary proof by an overlay. A well-formed but\ninvented digest cannot qualify a row.\n\nThe generated snapshot records bounded local qualification for the implemented\nfoundation, health, cross-surface, learning, life-administration, finance,\ncommunity, founder-support, operations, private progress\ncelebration, and guardrail lifecycle packages: 96 requirements are\n`implemented_unverified`, seven remain `blocked_external`, none remain `stub`,\nand none are `live_verified`, for 66 percent qualified completion. This total\nalso includes the bounded projection publisher and delegated-household support\nruntime. Rows that still lack managed host composition, browser or device E2E,\naccessibility, manual acceptance, provider, regulatory, or production-canary\nlayers retain those gaps explicitly rather than inferring them from source or\nroute existence.\nThe core, health, and golden-journey rows map the exact first-release surface\nset: standalone web, PWA, Expo iOS/Android, and Tauri macOS/Windows/Linux.\nThis scope declaration does not substitute for the still-missing dated device,\naccessibility, manual-acceptance, provider, or canary evidence.\nThe bounded composite native qualification run is recorded in\n`generated/qualification/presentation-surfaces-source-bound-composite-local-qa-2026-08-15.json`.\nIt covers the exact presentation contract and composer plus current shared\ncontracts, API, web, mobile, and desktop lint, type, unit, integration,\nmobile production export, desktop production build, package-inventory, Cargo,\nand Clippy checks. Unchanged package scopes are carried only after an exact\nbyte-identity comparison to the prior replay; the changed web scope and its API\ndependency were replayed at the current source commit. Web lint, typecheck,\nunit, browser-artifact privacy, zero-exit Webpack production build, seven\nbrowser-contract journeys, and the actual API-backed production journey passed.\nThe matrix\ncredits contract, implementation, unit, and integration evidence for the\nbounded RoleMorph and Personalization rows. Browser E2E and automated\naccessibility remain governed by their separate source-bound artifacts rather\nthan being inferred from this package replay. Expo simulator and\nphysical-device runs, VoiceOver/TalkBack, signed installers, Windows/Linux\npackaging, provider accounts, restore drills, manual accessibility, and\ncanaries remain unqualified.\n\nThe current automated cross-surface accessibility composite replay is recorded in\n`generated/qualification/cross-surface-accessibility-source-bound-composite-local-2026-08-15.json`.\nIt credits only the accessibility layer for platform accessibility,\nlocalization, responsive/native presentation, offline continuity, privacy and\nconsent, profile runtime, delegated-support recovery, explicit presentation\npreferences, and the exact RoleMorph resolution, suppression, canonical\npreference, and fail-closed data-view boundaries consumed by the three apps.\nIt also credits the automated accessibility layer for the executable mission,\ngoal, Today plan, habit, check-in, missed-day recovery, and weekly-review\njourneys that each surface builds from the shared command contracts.\nThe health connection consent control and non-clinical minimized wellness view\nalso receive only this automated accessibility credit; live providers and\nprovider canaries remain external blockers.\nThe same bounded credit covers the localized activity, sleep, biometrics, and\nnutrition history categories rendered without raw provider payloads.\nThe human-only export and deletion controls shared by all three apps likewise\ncredit accessibility for the life-administration rights row, while external\nprocessor propagation, manual acceptance, and canaries remain open.\nWeb, mobile, and desktop semantic, label, focus/live-region, localized catalog,\nRTL-readiness, reduced-motion, offline recovery, native-property, production\nbuild/export, package-inventory, and Rust host checks passed. Chromium was\nblocked before test execution by the managed macOS Mach bootstrap sandbox, and\nthe desktop strict TypeScript command was obstructed by unrelated duplicate\nexports in the concurrently dirty main-worktree dependency. Browser/native\nE2E, screen-reader, zoom, contrast, switch/voice, visual regression,\nprofessional localization review, real devices, signed installers, manual\nacceptance, and production canaries remain open.\n\nThe identity and authentication row credits the integrated source-bound AuthOS\nchain in\n`generated/qualification/identity-auth-source-bound-local-qualification-2026-08-14.json`.\nIt covers AuthOS contracts/runtime, reusable lifecycle UI, the Better Auth and\nPersonalOS bridges, health identity binding, and authenticated API composition\nthrough 1,279 tests and 4,049 assertions. Reusable sign-in, verification, MFA,\npasskey, recovery, session, security, audit, and sign-out screens reject\ncritical or serious Axe findings and invalid React nesting while preserving\nfocusable landmarks under reduced motion. The shared-worktree type/declaration\nobstructions are recorded in the artifact rather than reported as passing.\nManaged identity/provider delivery, manual assistive-technology, recovery and\naccount-closure drills, real devices, acceptance, and canaries remain\nunqualified.\n\nThe identity-cohesion E2E composes the real Personal Experience identity\nsession with the real Personalization tracker, in-memory store, and scoped\nsignal emitter. It proves account-switch drain ordering, tenant/consent/sign-out\ndiscard, exact subject/actor/version scope rejection, and fail-closed sign-out\nwhen delivery fails. This local replay does not qualify the separately owned\nCommunicationOS host, manual acceptance, or production canaries.\nThis artifact uses `personal-qualification-run.v2`: its exact source scopes are\nbound to a full Git commit, and local validation rejects the evidence if that\ncommit is missing, a scope is unsafe, or any declared source changed afterward.\nAll credited local artifacts now use v2. Legacy v1 artifacts fail closed because\nthey do not bind exact source scopes or qualified evidence layers.\nThe evidence inventory test also rejects orphaned qualification files that no\ncurrent requirement credits; superseded runs are removed instead of lingering\nas ambiguous release evidence.\n\nThe health and platform qualification is recorded in\n`generated/qualification/health-platform-source-bound-composite-local-qa-2026-08-15.json`.\nIts source-continuous 313-test replay binds the provider-neutral health contracts and\nruntime, strict provider adapter, health module, and current web, mobile, and\ndesktop packages to one full commit. It credits only local implementation,\nunit, and integration layers. Simulated providers and automated semantic checks\ndo not qualify live providers, manual accessibility, real devices, signed\ninstallers, restore drills, regulatory status, or production canaries.\n\nThe Personal Operations qualification is recorded in\n`generated/qualification/operations-source-bound-local-qa-2026-08-10.json`.\nIt is freshly replayed against the entire operations module and uses the same\nv2 source-scope check. It remains bounded to local contracts, pure evaluators,\ntests, and multi-runtime builds; managed RUM, load, restore, support,\naccessibility, manual acceptance, and production-canary evidence remain open.\nThe support-incident row separately credits its encrypted host E2E and the\ncurrent web source accessibility suite from\n`generated/qualification/support-incident-source-bound-composite-local-qa-2026-08-15.json`.\nThe browser process could not be launched in this environment, so browser Axe,\nstaffed accessible-channel acceptance, incident drills, response objectives,\nmanual acceptance, and production canary evidence remain required.\n\nThe core foundation qualification is recorded in\n`generated/qualification/foundation-source-bound-composite-local-qa-2026-08-24.json`.\nIt binds the subject/command contracts, authority runtime, encrypted Postgres\nstate, authenticated API, RoleMorph, Personalization, Personal Calm composer,\ngoals, productivity, household, and their canonical digest prerequisite to one\nsource-continuous 906-test/3,560-assertion replay. Every declared package passed\nlint, strict typecheck, its full test suite, and its production build on the\nbound commit. That current replay also resolves only the exact superseded\nimplementation blocker IDs it proves; deployment, provider, manual, canary,\nreal-device, and deferred CommunicationOS blockers remain open. The\nPersonalization slice includes\ncollection-time consent and retention, ciphertext-only behavior evidence,\ncorrection, export, deletion, expiry purge, and durable retry/dead-letter\ndelivery. The current 227-test encrypted E2E composite is recorded in\n`generated/qualification/personalization-e2e-source-bound-composite-local-qa-2026-08-15.json`.\nIt additionally proves exact scoped queries, minimized telemetry, preference\nlifecycle, receipt policy, advisory aggregate analysis, and identity-buffer\nretirement. A separate receipt-policy E2E run proves exact request/evidence-bound\nreceipt issuance, consent and redaction denial, raw-payload exclusion, and\ndurable digest-only audit without claiming deployed training or canary evidence.\nThe outcome slice includes authenticated record,\nsubstitution denial, correction, removal, immutable encrypted history, and a\nminimized current-value projection. It credits only local implementation, unit, and\nintegration layers; accessibility labs, real devices, provider qualification,\nrestore drills, manual acceptance, and canaries remain open.\n\nThe current private progress-celebration qualification is recorded in\n`generated/qualification/progress-celebration-source-bound-composite-local-qa-2026-08-15.json`.\nThe host rejects missing or abandoned target goals before authority. Its\non-disk PGlite E2E configures an exact owned goal, closes and reopens the\nencrypted workspace, projects deterministic capped private XP with exact\nevidence and authority receipt references, proves RLS subject isolation and\nciphertext privacy, replays idempotently, and disables the policy without\ndeleting the goal or policy history. Automated web accessibility contracts and\nthe production build pass, but no browser process launched in this replay.\nBrowser E2E, manual assistive-technology acceptance, real-device and\nlongitudinal behavior, managed KMS/PostgreSQL recovery, and canary evidence\nremain open and prevent `live_verified` status.\nThe host artifact also uses v2 source-scope binding, so later changes to its\ncontract, digest, reducer, encrypted hydration, or minimized projection paths\ninvalidate the credited evidence until the run is refreshed.\n\nDelegated household support qualification is recorded in\n`generated/qualification/sharing-agency-source-bound-local-qa-2026-08-10.json`.\nIt binds the household authority reducer and minimized projection compiler,\npublisher, acknowledgement, and revocation paths to one fresh local replay.\nThe additional\n`generated/qualification/support-delegation-postgres-source-bound-local-e2e-2026-08-12.json`\nrun executes the subject-owned household, consent, mission, goal, and support\nsequence through two-phase authority and the encrypted Postgres adapter, then\nrehydrates the minimized grant after an on-disk restart. Exact replay and RLS\nisolation pass while private purpose, consent, evidence, and goal text remain\noutside ciphertext inspection and projections. Provider reconciliation,\nproduct-device acceptance, manual accessibility, incident operations, and\nproduction canaries remain open.\n\nThe package test command keeps deterministic non-PGlite tests on a 15-second\nceiling and runs stateful PGlite tests serially with a 60-second functional\nceiling. This prevents local resource contention from masquerading as a domain\nfailure; it does not qualify latency, throughput, load, or production SLOs,\nwhich remain governed by separate performance evidence.\n\nLearning host qualification is recorded in\n`generated/qualification/learning-host-source-bound-composite-local-qa-2026-08-14.json`.\nIt binds the Personal Learning module and bundle host boundary to a source-bound\nlocal replay. The durable runtime additionally has a restartable PGlite journey\ncovering real learning-engine progress, AES-GCM snapshots, exact replay,\nrevision conflict, RLS subject isolation, minimized outbox work, plaintext\nexclusion, and cipher-integrity failure. Authoritative catalog entitlements,\nproduct UI, manual accessibility, device E2E, rights propagation, managed\nrestore drills, and production canaries remain open.\n\nBreadth qualification is split across exact source-bound artifacts for\n`life-admin-source-bound-local-qa-2026-08-13.json`,\n`personal-finance-host-source-bound-local-e2e-2026-08-14.json`,\n`community-source-bound-local-qa-2026-08-14.json`, and\n`founder-support-source-bound-local-qa-2026-08-14.json`. The split prevents a\nchange in one domain from refreshing or invalidating another domain's evidence.\nThe additional\n`life-admin-organize-postgres-source-bound-local-e2e-2026-08-14.json` run\ncredits only local E2E for calendar, encrypted personal files, and knowledge:\nit persists through an on-disk restart, projects/searches metadata without the\ncontent reference, archives safely, replays idempotently, and enforces subject\nRLS. Provider, blob-custody, accessibility, device, manual, managed-restore,\nand canary evidence remain open.\n\nHousehold care now also reaches the authenticated organizer through an\nexact-actor, bounded metadata projection. Local contract/runtime/API/web tests\ncover delegated capability scope, expiry and version denial, cardinality,\nprivate-purpose exclusion, translated empty copy, and semantic list rendering.\nManual assistive-technology acceptance, live providers, managed restore, and\nproduction canaries remain open and are not inferred from this automated run.\n\nLife-administration rights and restore qualification are refreshed separately\nin `life-admin-rights-postgres-source-bound-local-e2e-2026-08-13.json` and\n`postgres-restore-rehearsal-source-bound-local-qa-2026-08-13.json`. The rights\nreplay binds 48 module tests, 42 forced-RLS PostgreSQL tests, and three exact\nbundle PGlite scenarios to their current source scopes. The PostgreSQL suite\npassed its declared serialized 15-second qualification profile; a contended\nfive-second default run timed out two denial-audit cases and is explicitly not\ncounted as passing evidence. Managed recovery, downstream deletion processors,\nmanual acceptance, accessibility certification, and canaries remain open.\nProvider credentials, production encrypted stores, UI, manual accessibility,\ndevices, moderation and support operations, restore drills, formal regulatory\nqualification, and canaries remain open as applicable.\n\nPactena and HCircle integrations use the `./projections` entrypoint. It derives\nallowed destinations from the founder-domain and CommunicationOS read-only\ninventories, compiles only fields named by an active PersonalOS sharing grant,\nand emits no profile, provenance, provider payload, protected trait, or\nconsequential-use authority. The publisher binds acknowledgements to the exact\ngrant, grantee, consumer, and destination. Revocation invalidates local access\nbefore attempting remote delivery; an unavailable remote remains pending and\ncannot reopen access.\n\nThe cross-product projection E2E publishes one exact subject through both the\nactual Community and Founder Support services, replays without duplicate\nwrites, and revokes both consumers with the complete five-scope purge plan.\nPost-revocation recreation fails closed. The replay remains local: durable\ncross-service delivery, managed key custody, purge-SLA completion, manual\nacceptance, and production canaries are still unqualified.\n\nEvery requirement has an explicitly authored journey-semantics catalog entry;\nthere is no generic fallback. Actionable needs require distinct happy,\nrecovery, and denial variants with concrete state transitions and actions.\nRecovery declares resume, repair, rollback, or an alternative plus durable\nno-data-loss and idempotency guarantees. Denial identifies the exact rejected\nauthority, consent, dependency, policy, or validation condition. Non-actionable\nneeds use an observation-only qualification path that cannot mutate personal\nstate. Validation rejects missing, unknown, interpolation-only, and duplicated\nboilerplate entries.\n\nPriorities follow the agreed product program: P0 trust foundation, P1 killer\nproduct, P2 game changers, and P3 breadth. Current out-of-program rows are\nmarked `deferred` with retained blockers as their rationale and resume\nconditions; the ledger does not leave an unmapped stub silently planned. Run\n`bun run coverage:generate` to refresh the deterministic, operator-only\nJSON/Markdown ledger and the safe public catalog.\n\nThe dated web production-composition qualification run exercises the actual\nAPI/runtime path through the ordered household, mission, goals, simulated\nhealth authorization, offline Today replay, habits, check-in, recovery, review,\ncoach reversal, delegation/revocation, and rights journey. Its SHA-256-bound\nartifact credits only the exact contract and E2E layers that ran. The final-page\nAxe scan remains a supporting signal rather than a complete accessibility\nlayer. It does not claim a deployed host, live provider, PostgreSQL, manual WCAG\nreview, device coverage, restore drill, or production canary.\n\n### Health requalification — 2026-09-05\n\nFour health records have fresh source-bound local proofs for history, revocation,\nwellbeing goals and safe insights. The replay passed clean builds, lint,\ntypechecks, package dry runs and 75 tests across three health packages. Previous\nartifacts remain intact. These records credit only their declared local layers;\nother stale foundation/accessibility evidence and live provider/device acceptance\nremain open. Coverage generation retains those gaps rather than restoring old\ncompletion percentages.\n\n### Foundation and personalization replay — 2026-09-05\n\nA new foundation record binds 48 passing checks and 908 tests (3,565 assertions)\nacross 12 package scopes. Four personalization records reuse the same current-source\npackage checks and add clean builds, package inspection and explicit PGlite\nreceipt-policy replay. These five records provide 125 current local layer refs.\nHistorical artifacts remain immutable. Accessibility, device/runtime-specific\nE2E, manual acceptance and production canaries keep their independent gates.\n\n### Automated surface accessibility — 2026-09-05\n\nCurrent-source automated accessibility now covers the web, native mobile build\nand desktop host checks: 264 tests, eight browser journeys with Axe checks,\niOS/Android exports, and locked Rust fmt/check/test/clippy. The record binds the\nnative Babel pin and credits 26 accessibility references. It does not claim\nphysical-device, manual screen-reader, visual-regression or production acceptance.\nOther stale E2E records retain their independent completion gates.\n\n### Qualification archive and current web/analyzer proofs\n\nSuperseded qualification records live in `generated/qualification/archive` with\nunchanged bytes and listed hashes. The active directory contains referenced\nrecords only. September 5 web and analyzer records bind actual local replays;\nfoundation, web and inventory qualification tests pass. This does not certify the\nremaining product matrix or grant production authority.\n","sourcePath":"packages/bundles/personal-os/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/bundles/personal-os/README.md","blobSha":"a8036433d0fc73785caae884cbf7cb65442a8fe7","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":"personal-and-learning","areaTitle":"Personal workflows, learning and progress","displayName":"bundle.personal-os","runtimes":["node","browser"],"platforms":["web","server"],"kind":"bundle","scope":"Package manifest","canonicalRoute":"/docs/packages/bundle.personal-os/","contextUrl":"/docs/packages/bundle.personal-os.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}