{"id":"@lssm-tech/integration.growth-persistence","slug":"integration.growth-persistence","name":"@lssm-tech/integration.growth-persistence","version":"2.1.5","path":"packages/integrations/growth-persistence","manifestPath":"packages/integrations/growth-persistence/package.json","manifestBlobSha":"61b831f0d59f39383c3c35a513fc52ba2708e527","layer":"integrations","physicalArea":null,"primaryArea":"content-and-growth","classification":{"privateDeclared":null,"catalogFamily":"integrations","catalogKind":"integration","catalogStatus":"active","adoptionMode":"adoptable","stability":"experimental"},"description":"Tenant-scoped transactional persistence for GrowthOS referral and affiliate state.","descriptionOrigin":"package.json","catalog":{"family":"integrations","kind":"integration","status":"active","adoptionMode":"adoptable","stability":"experimental","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./ddl","./drizzle-schema","./memory","./pglite","./types","./marketing"],"documentation":[{"title":"Integration Growth Persistence documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fintegration.growth-persistence","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.integration.growth.persistence","title":"Integration Growth Persistence","description":"Tenant-scoped transactional persistence for GrowthOS referral and affiliate state.","status":"active","useCases":["Adopt tenant-scoped transactional persistence for growthos referral and affiliate state"],"aliases":["integration","growth","persistence"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/integration.growth-persistence","symbols":[]},{"from":"@lssm-tech/integration.growth-persistence/ddl","symbols":[]},{"from":"@lssm-tech/integration.growth-persistence/drizzle-schema","symbols":[]},{"from":"@lssm-tech/integration.growth-persistence/memory","symbols":[]},{"from":"@lssm-tech/integration.growth-persistence/pglite","symbols":[]},{"from":"@lssm-tech/integration.growth-persistence/types","symbols":[]}],"constraints":{"platforms":["server"],"runtimes":["node"],"avoidWhen":["The @lssm-tech/integration.growth-persistence package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.integration.growth.persistence","from":"@lssm-tech/integration.growth-persistence","symbols":[]},{"capabilityId":"package.lssm.tech.integration.growth.persistence","from":"@lssm-tech/integration.growth-persistence/ddl","symbols":[]},{"capabilityId":"package.lssm.tech.integration.growth.persistence","from":"@lssm-tech/integration.growth-persistence/drizzle-schema","symbols":[]},{"capabilityId":"package.lssm.tech.integration.growth.persistence","from":"@lssm-tech/integration.growth-persistence/memory","symbols":[]},{"capabilityId":"package.lssm.tech.integration.growth.persistence","from":"@lssm-tech/integration.growth-persistence/pglite","symbols":[]},{"capabilityId":"package.lssm.tech.integration.growth.persistence","from":"@lssm-tech/integration.growth-persistence/types","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:check":"node ../../../scripts/biome.cjs check .","lint:fix":"node ../../../scripts/biome.cjs check --write .","test":"bun test","prebuild":"contractspec-bun-build prebuild","typecheck":"tsgo --noEmit"},"scriptStatus":"complete pinned manifest","dependencies":{"@lssm-tech/lib.contracts-runtime-core":"workspace:^","@lssm-tech/lib.growth-spec":"workspace:^","@lssm-tech/lib.surface-runtime":"workspace:^","drizzle-orm":"catalog:data","@lssm-tech/lib.contracts-integrations":"workspace:^","@lssm-tech/lib.advertising-runtime":"workspace:^","@lssm-tech/lib.growth-runtime":"workspace:^","@lssm-tech/lib.content-analysis-spec":"workspace:^","zod":"catalog:","@lssm-tech/lib.self-improving-system-runtime":"workspace:^"},"devDependencies":{"@electric-sql/pglite":"catalog:data","@lssm-tech/tool.bun":"workspace:*","@lssm-tech/tool.typescript":"workspace:*","typescript":"catalog:","@lssm-tech/lib.content-gen":"workspace:^"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./ddl":"./src/ddl.ts","./drizzle-schema":"./src/drizzle-schema.ts","./marketing":"./src/marketing/index.ts","./marketing/advertising-store":"./src/marketing/advertising-store.ts","./marketing/content-rights-invariants":"./src/marketing/content-rights-invariants.ts","./marketing/content-rights-store":"./src/marketing/content-rights-store.ts","./marketing/conversion-store":"./src/marketing/conversion-store.ts","./marketing/ddl":"./src/marketing/ddl.ts","./marketing/editorial-git-failures":"./src/marketing/editorial-git-failures.ts","./marketing/editorial-git-store":"./src/marketing/editorial-git-store.ts","./marketing/editorial-list-store":"./src/marketing/editorial-list-store.ts","./marketing/editorial-store":"./src/marketing/editorial-store.ts","./marketing/linkedin-media-job-store":"./src/marketing/linkedin-media-job-store.ts","./marketing/media-store":"./src/marketing/media-store.ts","./marketing/observation-evidence-store":"./src/marketing/observation-evidence-store.ts","./marketing/observation-store":"./src/marketing/observation-store.ts","./marketing/optimization-evidence-store":"./src/marketing/optimization-evidence-store.ts","./marketing/optimization-lifecycle-store":"./src/marketing/optimization-lifecycle-store.ts","./marketing/planning-approval-store":"./src/marketing/planning-approval-store.ts","./marketing/proposal-store":"./src/marketing/proposal-store.ts","./marketing/social-continuation":"./src/marketing/social-continuation.ts","./marketing/social-intent-schema":"./src/marketing/social-intent-schema.ts","./marketing/social-intent-store":"./src/marketing/social-intent-store.ts","./marketing/social-leases":"./src/marketing/social-leases.ts","./marketing/social-schedule-store":"./src/marketing/social-schedule-store.ts","./marketing/store":"./src/marketing/store.ts","./marketing/withdrawal-queue":"./src/marketing/withdrawal-queue.ts","./marketing/x-publication-store":"./src/marketing/x-publication-store.ts","./marketing/x-upload-store":"./src/marketing/x-upload-store.ts","./memory":"./src/memory.ts","./pglite":"./src/pglite.ts","./types":"./src/types.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"},"./ddl":{"types":"./dist/ddl.d.ts","browser":"./dist/browser/ddl.js","bun":"./dist/ddl.js","node":"./dist/node/ddl.js","default":"./dist/ddl.js"},"./drizzle-schema":{"types":"./dist/drizzle-schema.d.ts","browser":"./dist/browser/drizzle-schema.js","bun":"./dist/drizzle-schema.js","node":"./dist/node/drizzle-schema.js","default":"./dist/drizzle-schema.js"},"./marketing":{"types":"./dist/marketing/index.d.ts","browser":"./dist/browser/marketing/index.js","bun":"./dist/marketing/index.js","node":"./dist/node/marketing/index.js","default":"./dist/marketing/index.js"},"./marketing/advertising-store":{"types":"./dist/marketing/advertising-store.d.ts","browser":"./dist/browser/marketing/advertising-store.js","bun":"./dist/marketing/advertising-store.js","node":"./dist/node/marketing/advertising-store.js","default":"./dist/marketing/advertising-store.js"},"./marketing/content-rights-invariants":{"types":"./dist/marketing/content-rights-invariants.d.ts","browser":"./dist/browser/marketing/content-rights-invariants.js","bun":"./dist/marketing/content-rights-invariants.js","node":"./dist/node/marketing/content-rights-invariants.js","default":"./dist/marketing/content-rights-invariants.js"},"./marketing/content-rights-store":{"types":"./dist/marketing/content-rights-store.d.ts","browser":"./dist/browser/marketing/content-rights-store.js","bun":"./dist/marketing/content-rights-store.js","node":"./dist/node/marketing/content-rights-store.js","default":"./dist/marketing/content-rights-store.js"},"./marketing/conversion-store":{"types":"./dist/marketing/conversion-store.d.ts","browser":"./dist/browser/marketing/conversion-store.js","bun":"./dist/marketing/conversion-store.js","node":"./dist/node/marketing/conversion-store.js","default":"./dist/marketing/conversion-store.js"},"./marketing/ddl":{"types":"./dist/marketing/ddl.d.ts","browser":"./dist/browser/marketing/ddl.js","bun":"./dist/marketing/ddl.js","node":"./dist/node/marketing/ddl.js","default":"./dist/marketing/ddl.js"},"./marketing/editorial-git-failures":{"types":"./dist/marketing/editorial-git-failures.d.ts","browser":"./dist/browser/marketing/editorial-git-failures.js","bun":"./dist/marketing/editorial-git-failures.js","node":"./dist/node/marketing/editorial-git-failures.js","default":"./dist/marketing/editorial-git-failures.js"},"./marketing/editorial-git-store":{"types":"./dist/marketing/editorial-git-store.d.ts","browser":"./dist/browser/marketing/editorial-git-store.js","bun":"./dist/marketing/editorial-git-store.js","node":"./dist/node/marketing/editorial-git-store.js","default":"./dist/marketing/editorial-git-store.js"},"./marketing/editorial-list-store":{"types":"./dist/marketing/editorial-list-store.d.ts","browser":"./dist/browser/marketing/editorial-list-store.js","bun":"./dist/marketing/editorial-list-store.js","node":"./dist/node/marketing/editorial-list-store.js","default":"./dist/marketing/editorial-list-store.js"},"./marketing/editorial-store":{"types":"./dist/marketing/editorial-store.d.ts","browser":"./dist/browser/marketing/editorial-store.js","bun":"./dist/marketing/editorial-store.js","node":"./dist/node/marketing/editorial-store.js","default":"./dist/marketing/editorial-store.js"},"./marketing/linkedin-media-job-store":{"types":"./dist/marketing/linkedin-media-job-store.d.ts","browser":"./dist/browser/marketing/linkedin-media-job-store.js","bun":"./dist/marketing/linkedin-media-job-store.js","node":"./dist/node/marketing/linkedin-media-job-store.js","default":"./dist/marketing/linkedin-media-job-store.js"},"./marketing/media-store":{"types":"./dist/marketing/media-store.d.ts","browser":"./dist/browser/marketing/media-store.js","bun":"./dist/marketing/media-store.js","node":"./dist/node/marketing/media-store.js","default":"./dist/marketing/media-store.js"},"./marketing/observation-evidence-store":{"types":"./dist/marketing/observation-evidence-store.d.ts","browser":"./dist/browser/marketing/observation-evidence-store.js","bun":"./dist/marketing/observation-evidence-store.js","node":"./dist/node/marketing/observation-evidence-store.js","default":"./dist/marketing/observation-evidence-store.js"},"./marketing/observation-store":{"types":"./dist/marketing/observation-store.d.ts","browser":"./dist/browser/marketing/observation-store.js","bun":"./dist/marketing/observation-store.js","node":"./dist/node/marketing/observation-store.js","default":"./dist/marketing/observation-store.js"},"./marketing/optimization-evidence-store":{"types":"./dist/marketing/optimization-evidence-store.d.ts","browser":"./dist/browser/marketing/optimization-evidence-store.js","bun":"./dist/marketing/optimization-evidence-store.js","node":"./dist/node/marketing/optimization-evidence-store.js","default":"./dist/marketing/optimization-evidence-store.js"},"./marketing/optimization-lifecycle-store":{"types":"./dist/marketing/optimization-lifecycle-store.d.ts","browser":"./dist/browser/marketing/optimization-lifecycle-store.js","bun":"./dist/marketing/optimization-lifecycle-store.js","node":"./dist/node/marketing/optimization-lifecycle-store.js","default":"./dist/marketing/optimization-lifecycle-store.js"},"./marketing/planning-approval-store":{"types":"./dist/marketing/planning-approval-store.d.ts","browser":"./dist/browser/marketing/planning-approval-store.js","bun":"./dist/marketing/planning-approval-store.js","node":"./dist/node/marketing/planning-approval-store.js","default":"./dist/marketing/planning-approval-store.js"},"./marketing/proposal-store":{"types":"./dist/marketing/proposal-store.d.ts","browser":"./dist/browser/marketing/proposal-store.js","bun":"./dist/marketing/proposal-store.js","node":"./dist/node/marketing/proposal-store.js","default":"./dist/marketing/proposal-store.js"},"./marketing/social-continuation":{"types":"./dist/marketing/social-continuation.d.ts","browser":"./dist/browser/marketing/social-continuation.js","bun":"./dist/marketing/social-continuation.js","node":"./dist/node/marketing/social-continuation.js","default":"./dist/marketing/social-continuation.js"},"./marketing/social-intent-schema":{"types":"./dist/marketing/social-intent-schema.d.ts","browser":"./dist/browser/marketing/social-intent-schema.js","bun":"./dist/marketing/social-intent-schema.js","node":"./dist/node/marketing/social-intent-schema.js","default":"./dist/marketing/social-intent-schema.js"},"./marketing/social-intent-store":{"types":"./dist/marketing/social-intent-store.d.ts","browser":"./dist/browser/marketing/social-intent-store.js","bun":"./dist/marketing/social-intent-store.js","node":"./dist/node/marketing/social-intent-store.js","default":"./dist/marketing/social-intent-store.js"},"./marketing/social-leases":{"types":"./dist/marketing/social-leases.d.ts","browser":"./dist/browser/marketing/social-leases.js","bun":"./dist/marketing/social-leases.js","node":"./dist/node/marketing/social-leases.js","default":"./dist/marketing/social-leases.js"},"./marketing/social-schedule-store":{"types":"./dist/marketing/social-schedule-store.d.ts","browser":"./dist/browser/marketing/social-schedule-store.js","bun":"./dist/marketing/social-schedule-store.js","node":"./dist/node/marketing/social-schedule-store.js","default":"./dist/marketing/social-schedule-store.js"},"./marketing/store":{"types":"./dist/marketing/store.d.ts","browser":"./dist/browser/marketing/store.js","bun":"./dist/marketing/store.js","node":"./dist/node/marketing/store.js","default":"./dist/marketing/store.js"},"./marketing/withdrawal-queue":{"types":"./dist/marketing/withdrawal-queue.d.ts","browser":"./dist/browser/marketing/withdrawal-queue.js","bun":"./dist/marketing/withdrawal-queue.js","node":"./dist/node/marketing/withdrawal-queue.js","default":"./dist/marketing/withdrawal-queue.js"},"./marketing/x-publication-store":{"types":"./dist/marketing/x-publication-store.d.ts","browser":"./dist/browser/marketing/x-publication-store.js","bun":"./dist/marketing/x-publication-store.js","node":"./dist/node/marketing/x-publication-store.js","default":"./dist/marketing/x-publication-store.js"},"./marketing/x-upload-store":{"types":"./dist/marketing/x-upload-store.d.ts","browser":"./dist/browser/marketing/x-upload-store.js","bun":"./dist/marketing/x-upload-store.js","node":"./dist/node/marketing/x-upload-store.js","default":"./dist/marketing/x-upload-store.js"},"./memory":{"types":"./dist/memory.d.ts","browser":"./dist/browser/memory.js","bun":"./dist/memory.js","node":"./dist/node/memory.js","default":"./dist/memory.js"},"./pglite":{"types":"./dist/pglite.d.ts","browser":"./dist/browser/pglite.js","bun":"./dist/pglite.js","node":"./dist/node/pglite.js","default":"./dist/pglite.js"},"./types":{"types":"./dist/types.d.ts","browser":"./dist/browser/types.js","bun":"./dist/types.js","node":"./dist/node/types.js","default":"./dist/types.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/integration.growth-persistence","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"packages/integrations/growth-persistence/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./ddl","importPath":"@lssm-tech/integration.growth-persistence/ddl","target":"./src/ddl.ts","targets":[{"conditions":[],"target":"./src/ddl.ts","sourcePath":"packages/integrations/growth-persistence/src/ddl.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/ddl.ts","sourceStatus":"verified source file"}]},{"subpath":"./drizzle-schema","importPath":"@lssm-tech/integration.growth-persistence/drizzle-schema","target":"./src/drizzle-schema.ts","targets":[{"conditions":[],"target":"./src/drizzle-schema.ts","sourcePath":"packages/integrations/growth-persistence/src/drizzle-schema.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/drizzle-schema.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing","importPath":"@lssm-tech/integration.growth-persistence/marketing","target":"./src/marketing/index.ts","targets":[{"conditions":[],"target":"./src/marketing/index.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/advertising-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/advertising-store","target":"./src/marketing/advertising-store.ts","targets":[{"conditions":[],"target":"./src/marketing/advertising-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/advertising-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/advertising-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/content-rights-invariants","importPath":"@lssm-tech/integration.growth-persistence/marketing/content-rights-invariants","target":"./src/marketing/content-rights-invariants.ts","targets":[{"conditions":[],"target":"./src/marketing/content-rights-invariants.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/content-rights-invariants.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/content-rights-invariants.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/content-rights-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/content-rights-store","target":"./src/marketing/content-rights-store.ts","targets":[{"conditions":[],"target":"./src/marketing/content-rights-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/content-rights-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/content-rights-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/conversion-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/conversion-store","target":"./src/marketing/conversion-store.ts","targets":[{"conditions":[],"target":"./src/marketing/conversion-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/conversion-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/conversion-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/ddl","importPath":"@lssm-tech/integration.growth-persistence/marketing/ddl","target":"./src/marketing/ddl.ts","targets":[{"conditions":[],"target":"./src/marketing/ddl.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/ddl.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/ddl.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/editorial-git-failures","importPath":"@lssm-tech/integration.growth-persistence/marketing/editorial-git-failures","target":"./src/marketing/editorial-git-failures.ts","targets":[{"conditions":[],"target":"./src/marketing/editorial-git-failures.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/editorial-git-failures.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/editorial-git-failures.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/editorial-git-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/editorial-git-store","target":"./src/marketing/editorial-git-store.ts","targets":[{"conditions":[],"target":"./src/marketing/editorial-git-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/editorial-git-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/editorial-git-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/editorial-list-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/editorial-list-store","target":"./src/marketing/editorial-list-store.ts","targets":[{"conditions":[],"target":"./src/marketing/editorial-list-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/editorial-list-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/editorial-list-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/editorial-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/editorial-store","target":"./src/marketing/editorial-store.ts","targets":[{"conditions":[],"target":"./src/marketing/editorial-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/editorial-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/editorial-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/linkedin-media-job-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/linkedin-media-job-store","target":"./src/marketing/linkedin-media-job-store.ts","targets":[{"conditions":[],"target":"./src/marketing/linkedin-media-job-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/linkedin-media-job-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/linkedin-media-job-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/media-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/media-store","target":"./src/marketing/media-store.ts","targets":[{"conditions":[],"target":"./src/marketing/media-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/media-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/media-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/observation-evidence-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/observation-evidence-store","target":"./src/marketing/observation-evidence-store.ts","targets":[{"conditions":[],"target":"./src/marketing/observation-evidence-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/observation-evidence-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/observation-evidence-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/observation-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/observation-store","target":"./src/marketing/observation-store.ts","targets":[{"conditions":[],"target":"./src/marketing/observation-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/observation-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/observation-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/optimization-evidence-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/optimization-evidence-store","target":"./src/marketing/optimization-evidence-store.ts","targets":[{"conditions":[],"target":"./src/marketing/optimization-evidence-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/optimization-evidence-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/optimization-evidence-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/optimization-lifecycle-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/optimization-lifecycle-store","target":"./src/marketing/optimization-lifecycle-store.ts","targets":[{"conditions":[],"target":"./src/marketing/optimization-lifecycle-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/optimization-lifecycle-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/optimization-lifecycle-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/planning-approval-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/planning-approval-store","target":"./src/marketing/planning-approval-store.ts","targets":[{"conditions":[],"target":"./src/marketing/planning-approval-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/planning-approval-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/planning-approval-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/proposal-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/proposal-store","target":"./src/marketing/proposal-store.ts","targets":[{"conditions":[],"target":"./src/marketing/proposal-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/proposal-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/proposal-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/social-continuation","importPath":"@lssm-tech/integration.growth-persistence/marketing/social-continuation","target":"./src/marketing/social-continuation.ts","targets":[{"conditions":[],"target":"./src/marketing/social-continuation.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/social-continuation.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/social-continuation.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/social-intent-schema","importPath":"@lssm-tech/integration.growth-persistence/marketing/social-intent-schema","target":"./src/marketing/social-intent-schema.ts","targets":[{"conditions":[],"target":"./src/marketing/social-intent-schema.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/social-intent-schema.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/social-intent-schema.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/social-intent-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/social-intent-store","target":"./src/marketing/social-intent-store.ts","targets":[{"conditions":[],"target":"./src/marketing/social-intent-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/social-intent-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/social-intent-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/social-leases","importPath":"@lssm-tech/integration.growth-persistence/marketing/social-leases","target":"./src/marketing/social-leases.ts","targets":[{"conditions":[],"target":"./src/marketing/social-leases.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/social-leases.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/social-leases.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/social-schedule-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/social-schedule-store","target":"./src/marketing/social-schedule-store.ts","targets":[{"conditions":[],"target":"./src/marketing/social-schedule-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/social-schedule-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/social-schedule-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/store","importPath":"@lssm-tech/integration.growth-persistence/marketing/store","target":"./src/marketing/store.ts","targets":[{"conditions":[],"target":"./src/marketing/store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/withdrawal-queue","importPath":"@lssm-tech/integration.growth-persistence/marketing/withdrawal-queue","target":"./src/marketing/withdrawal-queue.ts","targets":[{"conditions":[],"target":"./src/marketing/withdrawal-queue.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/withdrawal-queue.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/withdrawal-queue.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/x-publication-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/x-publication-store","target":"./src/marketing/x-publication-store.ts","targets":[{"conditions":[],"target":"./src/marketing/x-publication-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/x-publication-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/x-publication-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./marketing/x-upload-store","importPath":"@lssm-tech/integration.growth-persistence/marketing/x-upload-store","target":"./src/marketing/x-upload-store.ts","targets":[{"conditions":[],"target":"./src/marketing/x-upload-store.ts","sourcePath":"packages/integrations/growth-persistence/src/marketing/x-upload-store.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/marketing/x-upload-store.ts","sourceStatus":"verified source file"}]},{"subpath":"./memory","importPath":"@lssm-tech/integration.growth-persistence/memory","target":"./src/memory.ts","targets":[{"conditions":[],"target":"./src/memory.ts","sourcePath":"packages/integrations/growth-persistence/src/memory.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/memory.ts","sourceStatus":"verified source file"}]},{"subpath":"./pglite","importPath":"@lssm-tech/integration.growth-persistence/pglite","target":"./src/pglite.ts","targets":[{"conditions":[],"target":"./src/pglite.ts","sourcePath":"packages/integrations/growth-persistence/src/pglite.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/pglite.ts","sourceStatus":"verified source file"}]},{"subpath":"./types","importPath":"@lssm-tech/integration.growth-persistence/types","target":"./src/types.ts","targets":[{"conditions":[],"target":"./src/types.ts","sourcePath":"packages/integrations/growth-persistence/src/types.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/src/types.ts","sourceStatus":"verified source file"}]}],"entryCount":33,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Integration Growth Persistence documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fintegration.growth-persistence","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/integration.growth-persistence.txt"},"readme":{"status":"available","body":"# `@lssm-tech/integration.growth-persistence`\n\nServer-only persistence for GrowthOS referral and affiliate state. It provides a serialized in-memory adapter for tests, a structural PgLite/Postgres adapter, and matching Drizzle table exports with tenant, entity, external conversion, link-code, reward-rule/beneficiary, webhook-event, and idempotency constraints.\n\nEvery mutation runs inside a transaction. Ledger entries and webhook receipts are immutable, payout items remain separately addressable, and duplicate conversions or rewards are rejected. Provider credentials and raw acquisition tokens are not persisted.\n\nThe optional `./marketing` subpath provides `SqlMarketingExecutionStore`,\n`SqlEditorialStore` and `SqlMediaGenerationStore` using the same pinned-transaction\nSQL client. Each exposes an additive `migrate()` for host-owned migrations in the\nprivate `marketing_execution` schema. Revision updates append history atomically.\nBudget reservations serialize by brand scope, unknown dispatches retain liability,\nand definitive failures release their reservation. Media history stores provider\njob IDs and durable artifact references, never temporary download URLs.\n\n`SqlMarketingProposalStore` persists goal-plan requests and immutable result history.\nIt permits one generating-to-result transition per request, protects the original\ngoal/brand binding, and isolates records by tenant, workspace and brand.\n\n`SqlMarketingConversionStore` persists conversion revisions and append-only receipt\nhistory in the private marketing_execution schema. Call migrate() before mounting the\nconversion service. Accepted history is immutable, corrections are ordered, and CAS\nclaims prevent concurrent workers from dispatching the same revision twice.\n\n`SqlMarketingObservationStore` preserves immutable snapshots partitioned by campaign,\nplatform, account and tenant/workspace/brand. Late polls cannot replace newer snapshots;\nconflicting same-timestamp writes fail. `SqlMarketingObservationEvidenceStore` retains\nsanitized provider responses for replay and rejects credential-bearing artifacts. Run\nboth stores' migrate() methods before mounting the observation service.\n\n\nSocial scheduling adapters (`SqlSocialScheduleStore`, `SqlSocialIntentStore`,\n`SqlSocialRecoveryLeases`) implement library-owned contracts with SQL history, CAS,\nserver-clock lease expiry and monotonically fenced recovery. Call their migrate()\nmethods before starting workers. Canonical intent creation verifies the publication-key\nbinding and rejects changed payloads; recovery claims require the matching live lease.\nGrant verification, policy evaluation, provider bindings and audit delivery remain\nhost-owned requirements. The adapters never supply an allowing authority.\n\n`SqlXPublicationStore` persists immutable reviewed thread plans, per-part CAS claims and\nappend-only history. It verifies canonical root identity, scoped native request digests,\npredecessor IDs and confirmation author/media/reply facts. `SqlSocialIntentStore` supports\nfenced continuation of reconciled parent intents without changing their publication keys.\n\n\n`SqlXUploadStore` persists immutable asset/chunk manifests and sequential native upload\nclaims with transactional history. Migrate before starting upload workers. It rejects\nplan changes, altered native identity, reset uncertain steps and terminal-state rewrites.\nSource media bytes and credentials remain outside the store.\n\n\n`SqlLinkedInMediaJobStore` persists scoped image/video plans, exact dispatch claims,\npart receipts and immutable history. Private upload capabilities are stored separately\nthrough `LinkedInSecretSessionVault`; the SQL payload contains only versioned references.\nMigrate before running the bounded native upload worker.\n\n\nSqlPlanningApprovalStore persists private planning quotes, immutable issued receipts,\nrevocation and revision history. Its consume method implements the canonical nonce\nstore with atomic SQL uniqueness. Run migrate first and retain nonce rows through their\nexpiry. Receipt records are private authority evidence, never analytics or public assets.\n\n\nSqlMarketingOptimizationEvidenceStore records immutable assessed experiment documents,\nrecomputes assessments before writes, and returns canonical SHA-256 artifact references.\nUse `record` for the marketing promotion wrapper's recordEvidence callback. Reads require\nexplicit marketing scope and verify stored content against the artifact digest. Host\nauthorization remains mandatory before storage access.\n\n\nSqlMarketingOptimizationLifecycleStore implements the shared lifecycle store with an\nexplicit marketing scope/program binding. Candidates are immutable; receipt appends\nserialize per candidate and validate canonical replay before committing. Duplicate\nreceipts must match exactly; changed identities, digest chains and sequence gaps fail.\nIt reconstructs current state from durable history. Effect adapters must separately honor\nthe lifecycle idempotency key and expected state/sequence before external actions.\n\n\nSqlContentRightsStore serializes rights grants and registered uses per tenant/workspace\nand appends immutable snapshots. Revocation and withdrawal queue creation share one\ntransaction. Supply it to ContentRightsService; provider removal and confirmation evidence\nremain separate execution responsibilities.\n\n\nRights invariants are also enforced at the storage boundary: revoked grants cannot be\nreactivated, registered-use identities cannot change, confirmed withdrawals cannot be\nrewritten, and revocation cannot commit while existing uses lack withdrawal obligations.\nA failed invariant rolls back the entire scope transaction.\n\n\nTerminal withdrawal jobs must commit with matching registered-use state and evidence.\nAn unavailable automated attempt may later be resolved by separately evidenced manual\nconfirmation; a confirmed job cannot leave its use pending.\n\n\nSqlContentWithdrawalQueue supplies durable pending-use discovery and batch-result\ntracking. Migrate the rights store first, then the queue. Discovery selects pending uses\nwithin its authorized scope and processes never-attempted/least-recently-attempted items\nfirst, so unresolved removals do not starve later revocations. Terminal result records\nmust agree with authoritative use state. Bind loadPending/recordResults to the installation\nwithdrawal worker's callbacks.\n\n\n`SqlEditorialStore.listRecovery` reads scoped publishing/unknown claims ordered by update time and ID. Reconciled terminal records disappear from discovery; publication is never resubmitted by this read.\n\n\n`SqlEditorialGitStore` provides additive scoped Git dispatch persistence with revision CAS. Compiler artifacts cannot change after dispatch, and confirmed commit identity cannot be rewritten. Run its migration before enabling a Git publisher.\n\n\nRun the updated `SqlEditorialGitStore.migrate()` before enabling preparation-failure handling. Additive claim-lock and failure tables serialize failure versus dispatch, retain immutable receipts and fence failed claims. Preserve one canonical writer while upgrading. Confirmed preparation failure permits the editorial article to be revised under a new publication claim.\n\n\n`SqlEditorialStore.listPage` supports bounded keyset discovery with a C-collation ID index and parameterized filters. Run migrate to install the additive listing index. The runtime authorizes rows and emits summaries without Markdown.\n\n\n`SqlEditorialStore.listHistory` reads existing append-only editorial_history records with exact scope, revision bounds and pagination. It does not modify or reconstruct prior revisions.\n\n\nMedia generation persistence rejects removal or replacement of existing artifact references. Each imported output may add a running-state history revision before final success.\n\n\nMedia persistence enforces immutable expected output counts and requires succeeded jobs to contain exactly that many durable artifact references when the count is known.\n","sourcePath":"packages/integrations/growth-persistence/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/integrations/growth-persistence/README.md","blobSha":"cbe2c02bb0d812e7a413a6d17deae7a958cfecd0","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":"content-and-growth","areaTitle":"Content, growth and creator operations","displayName":"integration.growth-persistence","runtimes":["node"],"platforms":["server"],"kind":"integration","scope":"Package manifest","canonicalRoute":"/docs/packages/integration.growth-persistence/","contextUrl":"/docs/packages/integration.growth-persistence.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}