Editorial module
Reusable editorial workflow module.
Use it to
- Compose editorial workflows
Requires
- TypeScript
Choose another boundary when
- The target does not need editorial workflows.
@lssm-tech/module.editorial
Dans toute la famille de sites · Contexte utile · Modifiez cette vue quand vous le souhaitez.
Versioned editorial review and publication workflows.
@lssm-tech/module.editorialSource snapshot bcc79fcc · Declared package version 0.2.4. This page combines the checked-in package guide and manifest; commands and runtime behavior were not executed in this review.
Follow a declared connection, inspect an import, then open the source guide when you need the detail.
Arrows point from a package to its direct dependency. Each count is derived from the captured manifests.
Bind ten standard editorial operations (plus optional listing, recovery discovery and reviewed preparation resume) into an existing ContractSpec registry with
registerEditorialOperations. The module composes only library contracts and runtimes; publishers and storage are supplied by the host bundle.
Create → revise → submit → review → schedule → publish. Every accepted revision has immutable history. Edits invalidate review and scheduling. Publication claims the record with CAS before calling an injected CMS or social publisher; unknown outcomes are reconciled without re-dispatch. Published items require a separate withdrawal workflow before removal.
The authority port verifies current actor rights, review evidence, brand claims, asset rights and destination access. The host supplies HandlerCtx authentication and scoped approval receipts for publication. No default permitting authority or publication provider is supplied. The SQL store lives in growth-persistence/marketing.
/marketing/editorial/due lists bounded scheduled work due at the server clock. Discovery and individual records require read authorization; invalid scope/schedule output is rejected. It does not invoke publication or imply publication approval.
The optional /marketing/editorial/recovery REST/MCP operation is registered only when the injected store implements listRecovery. It discovers unsettled claims for the existing reconcile operation; minimum age defaults to 60 seconds.
The optional /marketing/editorial/resume-preparation command is registered only for publishers advertising preparation recovery. Fresh exact-input approval is mandatory; it does not change ordinary reconciliation into a write-capable action.
/marketing/editorial/list and editorial_list are available when the store implements listPage. Discovery is read-only and supports agent/workspace browsing without a known record ID.
The revise handler maps a runtime revision conflict to the canonical REVISION_CONFLICT response (409), including conflicts at the compare-and-swap write.
Submission revision conflicts now use canonical HTTP 409 responses, matching revision-save conflict behavior.
Review decision revision conflicts are mapped to canonical HTTP 409 without weakening reviewer/current-authority checks.
Scheduling revision conflicts return canonical HTTP 409 responses.
Existing editorial creation IDs now return canonical ALREADY_EXISTS / HTTP 409 without changing the stored record.
Archival revision conflicts use canonical HTTP 409. Provider withdrawal remains a separate workflow for published or uncertain content.
History REST/MCP registration is conditional on store.listHistory. Missing support remains unavailable.
Reusable editorial workflow module.
@lssm-tech/module.editorial
These are package-manifest entry points. Named symbols listed above come from the capability catalogue; this is not an exhaustive TypeScript symbol reference.
1 import
@lssm-tech/module.editorialNo export paths match this search.
Commands declared by this package. Review its setup requirements before running them; no command here was executed by this review.
contractspec-bun-build buildcontractspec-bun-build transpilecontractspec-bun-build typesnode ../../../../scripts/biome.cjs check .contractspec-bun-build prebuildtsgo --noEmitbun publish --tolerate-republish --ignore-scripts --verbose