Skip to content

feat(nodes-sources): add scheduled unpublishedAt expiration field - #463

Draft
eliot488995568 wants to merge 3 commits into
developfrom
457-unpublishedat-nodestypes
Draft

feat(nodes-sources): add scheduled unpublishedAt expiration field#463
eliot488995568 wants to merge 3 commits into
developfrom
457-unpublishedat-nodestypes

Conversation

@eliot488995568

Copy link
Copy Markdown
Member

Add a built-in, nullable unpublishedAt datetime on NodesSources, symmetrical to publishedAt, so editors can schedule content expiration. Content is public only when publishedAt <= now AND (unpublishedAt IS NULL OR unpublishedAt > now).

  • NodeType: new opt-in unpublishable flag (entity, config, tree DTO)
  • Entity: unpublishedAt column + indexes, isPublished()/isUnpublishable()
  • Repository + API Platform (nodes-sources, node, tags) visibility filtering
  • Solr: index unpublished_at_dt and exclude expired content from default search
  • Rozier: form field, node-tree badge (threaded through tree DTOs), fr/en labels
  • EntityGenerator: isUnpublishable() proxy; regenerated NS entities
  • Bump roadiz/nodetype-contracts to ^4.0.0 (isUnpublishable interface method)
  • Core migration adds the column/indexes (guarded); docs + UPGRADE guidance

Add a built-in, nullable unpublishedAt datetime on NodesSources, symmetrical
to publishedAt, so editors can schedule content expiration. Content is public
only when publishedAt <= now AND (unpublishedAt IS NULL OR unpublishedAt > now).

- NodeType: new opt-in `unpublishable` flag (entity, config, tree DTO)
- Entity: unpublishedAt column + indexes, isPublished()/isUnpublishable()
- Repository + API Platform (nodes-sources, node, tags) visibility filtering
- Solr: index unpublished_at_dt and exclude expired content from default search
- Rozier: form field, node-tree badge (threaded through tree DTOs), fr/en labels
- EntityGenerator: isUnpublishable() proxy; regenerated NS entities
- Bump roadiz/nodetype-contracts to ^4.0.0 (isUnpublishable interface method)
- Core migration adds the column/indexes (guarded); docs + UPGRADE guidance
@eliot488995568 eliot488995568 self-assigned this Jul 28, 2026
@eliot488995568
eliot488995568 marked this pull request as draft July 28, 2026 10:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant