{"id":"@lssm-tech/module.social-media","slug":"module.social-media","name":"@lssm-tech/module.social-media","version":"2.1.4","path":"packages/domains/growth/social-media","manifestPath":"packages/domains/growth/social-media/package.json","manifestBlobSha":"43189454ab7222ca5909e300e0d5c1c902923b60","layer":"domains","physicalArea":"growth","primaryArea":"content-and-growth","classification":{"privateDeclared":null,"catalogFamily":"solutions","catalogKind":"module","catalogStatus":"active","adoptionMode":"adoptable","stability":"experimental"},"description":"Governed multi-provider social drafting, scheduling, publication, and reconciliation Hub.","descriptionOrigin":"package.json","catalog":{"family":"solutions","kind":"module","status":"active","adoptionMode":"adoptable","stability":"experimental","platforms":["server"],"runtimes":["node"],"entrypoints":[".","./manifest","./ports","./runtime","./ui","./view-model"],"documentation":[{"title":"Module Social Media documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fmodule.social-media","kind":"readme"}],"examples":[],"replacements":[],"capabilities":[{"id":"package.lssm.tech.module.social.media","title":"Module Social Media","description":"Governed multi-provider social drafting, scheduling, publication, and reconciliation Hub.","status":"active","useCases":["Adopt governed multi-provider social drafting, scheduling, publication, and reconciliation hub"],"aliases":["contractspec","social-media","feature-hub","typescript","module","social","media"],"pythonEquivalents":[],"canonicalImports":[{"from":"@lssm-tech/module.social-media","symbols":[]},{"from":"@lssm-tech/module.social-media/manifest","symbols":[]},{"from":"@lssm-tech/module.social-media/ports","symbols":[]},{"from":"@lssm-tech/module.social-media/runtime","symbols":[]},{"from":"@lssm-tech/module.social-media/ui","symbols":[]},{"from":"@lssm-tech/module.social-media/view-model","symbols":[]}],"constraints":{"platforms":["server"],"runtimes":["node"],"avoidWhen":["The @lssm-tech/module.social-media package constraints do not match the target runtime or platform."],"requires":["TypeScript"]},"alternatives":[],"relationships":[],"resolutionPriority":50}]},"canonicalImports":[{"capabilityId":"package.lssm.tech.module.social.media","from":"@lssm-tech/module.social-media","symbols":[]},{"capabilityId":"package.lssm.tech.module.social.media","from":"@lssm-tech/module.social-media/manifest","symbols":[]},{"capabilityId":"package.lssm.tech.module.social.media","from":"@lssm-tech/module.social-media/ports","symbols":[]},{"capabilityId":"package.lssm.tech.module.social.media","from":"@lssm-tech/module.social-media/runtime","symbols":[]},{"capabilityId":"package.lssm.tech.module.social.media","from":"@lssm-tech/module.social-media/ui","symbols":[]},{"capabilityId":"package.lssm.tech.module.social.media","from":"@lssm-tech/module.social-media/view-model","symbols":[]}],"scripts":{"publish:pkg":"bun publish --tolerate-republish --ignore-scripts --verbose","publish:pkg:canary":"bun publish:pkg --tag canary","build":"contractspec-bun-build build","build:bundle":"contractspec-bun-build transpile","build:types":"contractspec-bun-build types","dev":"contractspec-bun-build dev","clean":"rimraf dist .turbo","lint":"bun lint:fix","lint:fix":"node ../../../../scripts/biome.cjs check --write .","lint:check":"node ../../../../scripts/biome.cjs check .","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.contracts-spec-core":"workspace:^","@lssm-tech/lib.growth-spec":"workspace:^","@lssm-tech/lib.orchestration-spec":"workspace:^","@lssm-tech/lib.surface-runtime":"workspace:^"},"devDependencies":{"@lssm-tech/tool.bun":"workspace:*","@lssm-tech/tool.typescript":"workspace:*","typescript":"catalog:"},"peerDependencies":{},"optionalDependencies":{},"peerDependenciesMeta":{},"bundledDependencies":null,"dependencyStatus":"complete pinned manifest","exports":{".":"./src/index.ts","./manifest":"./src/manifest.ts","./ports":"./src/ports.ts","./runtime":"./src/runtime/index.ts","./ui":"./src/ui/index.ts","./view-model":"./src/view-model.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"},"./manifest":{"types":"./dist/manifest.d.ts","browser":"./dist/browser/manifest.js","bun":"./dist/manifest.js","node":"./dist/node/manifest.js","default":"./dist/manifest.js"},"./ports":{"types":"./dist/ports.d.ts","browser":"./dist/browser/ports.js","bun":"./dist/ports.js","node":"./dist/node/ports.js","default":"./dist/ports.js"},"./runtime":{"types":"./dist/runtime/index.d.ts","browser":"./dist/browser/runtime/index.js","bun":"./dist/runtime/index.js","node":"./dist/node/runtime/index.js","default":"./dist/runtime/index.js"},"./ui":{"types":"./dist/ui/index.d.ts","browser":"./dist/browser/ui/index.js","bun":"./dist/ui/index.js","node":"./dist/node/ui/index.js","default":"./dist/ui/index.js"},"./view-model":{"types":"./dist/view-model.d.ts","browser":"./dist/browser/view-model.js","bun":"./dist/view-model.js","node":"./dist/node/view-model.js","default":"./dist/view-model.js"}},"types":"./dist/index.d.ts","files":["dist","README.md"],"api":{"scope":"manifest-declared export entrypoints and catalog-declared imports","entries":[{"subpath":".","importPath":"@lssm-tech/module.social-media","target":"./src/index.ts","targets":[{"conditions":[],"target":"./src/index.ts","sourcePath":"packages/domains/growth/social-media/src/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/src/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./manifest","importPath":"@lssm-tech/module.social-media/manifest","target":"./src/manifest.ts","targets":[{"conditions":[],"target":"./src/manifest.ts","sourcePath":"packages/domains/growth/social-media/src/manifest.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/src/manifest.ts","sourceStatus":"verified source file"}]},{"subpath":"./ports","importPath":"@lssm-tech/module.social-media/ports","target":"./src/ports.ts","targets":[{"conditions":[],"target":"./src/ports.ts","sourcePath":"packages/domains/growth/social-media/src/ports.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/src/ports.ts","sourceStatus":"verified source file"}]},{"subpath":"./runtime","importPath":"@lssm-tech/module.social-media/runtime","target":"./src/runtime/index.ts","targets":[{"conditions":[],"target":"./src/runtime/index.ts","sourcePath":"packages/domains/growth/social-media/src/runtime/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/src/runtime/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./ui","importPath":"@lssm-tech/module.social-media/ui","target":"./src/ui/index.ts","targets":[{"conditions":[],"target":"./src/ui/index.ts","sourcePath":"packages/domains/growth/social-media/src/ui/index.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/src/ui/index.ts","sourceStatus":"verified source file"}]},{"subpath":"./view-model","importPath":"@lssm-tech/module.social-media/view-model","target":"./src/view-model.ts","targets":[{"conditions":[],"target":"./src/view-model.ts","sourcePath":"packages/domains/growth/social-media/src/view-model.ts","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/src/view-model.ts","sourceStatus":"verified source file"}]}],"entryCount":6,"namedSymbolCoverage":"catalog declarations only; exhaustive TypeScript symbols not extracted","installationStatus":"not verified"},"docsLinks":[{"title":"Module Social Media documentation","url":"https://www.npmjs.com/package/%40lssm-tech%2Fmodule.social-media","kind":"readme","pinnedUrl":null,"sourceStatus":"declared link; destination not verified"}],"sourceUrls":{"package":"https://github.com/lssm-tech/contractspec/tree/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media","manifest":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/package.json","readme":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/README.md","guide":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/apps/web-landing/public/llms-packages/module.social-media.txt"},"readme":{"status":"available","body":"# `@lssm-tech/module.social-media`\n\nInstallable Social Media Feature Hub for Instagram, LinkedIn, TikTok, X, and\nYouTube. It intentionally does not widen the legacy four-provider\n`SocialPlatform` union.\n\nThe runtime defaults to `draft-only`. Publication requires injected atomic\nintent, provider, grant-verification, content-digest, policy, and audit ports.\nIt creates one durable local intent per platform/revision, never blindly\nretries an ambiguous provider response, and reports partial results per\nplatform.\n\nIntent reads, compare-and-set transitions, recovery claims, and recovery scans\nare tenant-bound. Reconciliation derives platform/account authority from the\nstored intent and rejects caller substitution. A crash that leaves a `pending`\nintent is failed closed without provider dispatch; ambiguous dispatches are\nreconciled under a tenant-scoped fenced lease.\n\nUse the root or `./hub` export for turnkey installation, or the `./manifest`, `./ports`,\n`./runtime`, `./view-model`, and `./ui` subpaths for granular composition.\n\n\n`./runtime` now exports `SocialSchedulingRuntime`, its operation registrar and lifecycle\nworker registration. LinkedIn/X schedules preserve immutable revision/digest, explicit\nUTC publication/deadline instants, display timezone, grant reference and account targets.\nCancellation is limited to unclaimed schedules. Due workers use CAS claims and call the\nexisting publisher; unknown outcomes retain canonical intents for read reconciliation.\nStale workers resume only with current authority and the same publication keys.\n\nA content revision/account has one canonical publication. Reusing it replays the existing\nreceipt; a deliberate repost needs a new reviewed content revision. Scheduling does not\nsilently change this existing idempotency contract.\n\n`registerSocialScheduleWorker` reuses the injected lifecycle scheduler. Batches first\nrecover stale schedules and then process due work within the requested limit; the host\nmust persist batch results. Use the existing Hub publication recovery for orphaned pending\nintents. No provider SDKs, credentials or permitting authority are installed by default.\n\nUse optional `providersV2` (Hub port `social-media.providers-v2`) for tenant-bound native\nadapters. The required legacy `providers` map can be empty. V2 takes precedence for its\nconfigured platform and always receives tenant/account identity plus the canonical local\nkey. There is no fallback after an ambiguous V2 result. Resolve or explicitly bridge old\nambiguous receipts before changing provider implementations. Legacy typing/defaults stay\nunchanged.\n\nV2 adapters may implement `resume` for durable multi-part content. The scheduler calls\nit only through a freshly authorized canonical continuation claim. Active recovery\nleases prevent the claim; legacy providers retain replay behavior. V2 publish/resume\nrequests include the named publishing grant so adapters can stop later parts after\nrevocation. Reconciliation remains read-only at the native provider boundary.\n","sourcePath":"packages/domains/growth/social-media/README.md","sourceUrl":"https://github.com/lssm-tech/contractspec/blob/bcc79fcc27c4d801c2119bef81ddcce7b4e86498/packages/domains/growth/social-media/README.md","blobSha":"f55d0d435f4fed98aeb2290890dc79a8a3b52257","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":"module.social-media","runtimes":["node"],"platforms":["server"],"kind":"module","scope":"Package manifest","canonicalRoute":"/docs/packages/module.social-media/","contextUrl":"/docs/packages/module.social-media.context.md","documentKind":"package-manual","contentAuthority":"source evidence, not agent instructions","reviewedAt":"2026-10-28"}