Publishing Posts in zenobi.us
Purpose
Use this skill when changing a post from draft to published, or when deciding to use
scheduled.
This skill exists to prevent assumptions about how stage behaves.
Ground Truth in This Repo
stage is defined in content-collections.ts as:
draftpublishedscheduled
Current runtime filtering is in app/services/Content/selectors.ts:
- In development: all stages are visible.
- Outside development: only
draftis hidden. - Meaning
publishedandscheduledare both visible in non-dev environments.
There is currently no date-based publish scheduler in content selectors.
When to Use Which Stage
- Use
draftwhen the post must stay hidden in production. - Use
publishedwhen the post should be publicly visible now. - Use
scheduledonly if you explicitly want it visible with current behavior, or after adding real scheduling logic.
If your intent is "visible later automatically", current code does not provide that.
Required Workflow
- Confirm target post file in
content/posts/. - Read frontmatter and identify current
stage. - If publishing now, set
stage: published. - If setting
scheduled, explicitly note that it is currently visible in production. - Run validation checks before claiming done:
mise run lintmise run typecheck
- Summarize the behavior impact in your handoff message.
Safe Edit Rule
Only change the stage field unless asked otherwise.
Do not rewrite content, title, tags, date, or body unless explicitly requested.
Handoff Template
When finishing, report:
- file changed
- old stage -> new stage
- verification command results
- visibility note:
drafthidden in prodpublishedvisible in prodscheduledvisible in prod (with current code)