Catalog defines products → Content creates the reusable substrate → Production turns it into media → Platform runs and governs it, with agents automating the work. Click a domain to expand its card.
Catalog & Brand
Expand
Define what Pearl Prime publishes and how it looks: books, brands, series, covers, and marketing.
A catalog listing contains metadata. Creating a sellable EPUB requires a separate production step. Operator judgment remains authoritative for subjective visual decisions.
Content
Expand
Create and inspect the reusable content substrate: atoms, stories, exercises, inventories.
Gitea pearlstar_gitea/offline-main is the canonical branch. GitHub CI suspended (frozen 2026-07-28). Gitea CI (act_runner on Pearl Star) is operational; Drift detectors is a required check.
System Rules
Durable invariants. These change rarely and carry no date.
Listings ≠ EPUBs
A catalog listing contains metadata. Creating a sellable EPUB requires a separate production step.
Source
docs/PROGRAM_STATE.md
Waystream covers are unique
Every Waystream title must have a distinct cover. Cover-to-title pairing is enforced during rendering.
Source
docs/PROGRAM_STATE.md
Gitea is canonical
GitHub CI is suspended (origin/main frozen 2026-07-28). Gitea act_runner on Pearl Star is operational; Drift detectors is a required check before any merge.
Source
CLAUDE.md · docs/PROGRAM_STATE.md
Distribution: 4 platforms only
KDP + Apple Books Connect + Google Play Books + B&N Press direct. D2D dropped (wellness ban + AI hostility). Kobo dropped (80% AI rejection). Audible exclusivity permanently banned.
Ruling
OPD-20260930-025 · OPD-20260930-030
Source
CLAUDE.md · docs/PROGRAM_STATE.md
Manga arc = 108 episodes
108 episodes is the canonical planning length for a manga series (replaces 48). Full arc must be planned before scripting. Gate D still applies.
Manga and book episode prose is Claude Sonnet 5 in en_US and every CJK locale. No unattended downgrade. NIM is a second-pass translation tool, never a first-author.
Run offline_main_merge_guard.py as its own command and read the verdict before merging. Never chain guard + merge. stale_base with vs_merge_base=0 is documented safe-to-merge.
Incidents
PR #738 (2026-08-15) · PR #4030 (2026-09-30)
Source
CLAUDE.md rule 0
Current State
Dated evidence. Verify against offline-main before acting on it.
2026-08-09
Layer-4 validation exists
First recorded Layer-4 blind-10 evaluation, Waystream × corporate_managers subset. Recorded result: system working.
act_runner CI is live on Pearl Star. "Drift detectors" is an enforced required check. admin force_merge blocked (HTTP 405). GitHub workflows remain suspended.
OPD
OPD-20260910-MERGE-ENFORCE-01
Source
docs/PROGRAM_STATE.md
2026-09-18
nyc_exec persona retired
nyc_exec deleted; corporate_managers is now the single canonical persona for that slot. ~1,397 stale atom files removed. 17 canonical personas total (13 original + 4 first-responder specialists).
Source
artifacts/coordination/operator_decisions_log.tsv
2026-09-21
Ahjan agent operational
Operator-model agent built from 6,686 messages / 386 sessions. Runs in decide/review/next/brief modes. All operator questions must go through Ahjan first. Mined through 2026-09-13 = freshness ceiling.
Source
.claude/agents/ahjan.md · CLAUDE.md
2026-09-24
light_stream is the catalog build pipeline
run_light_stream_pipeline.py is the forward catalog CLI (Decision-1). Distinct from spine run_pipeline.py. Requires --quality-profile production. Canonical doc: docs/LIGHT_STREAM_PIPELINE.md (PR #3596).
OPD
OPD-20260924-037
Source
docs/LIGHT_STREAM_PIPELINE.md
2026-09-24
Features/knobs audit frozen at pilot-5
Anti-spam + plan-collapse audit frozen. Stage-0 landed (SHA 34bd86e9387). OD-1..OD-7 are policy-direction only; no gate changes until pilot data in hand.
OPD
OPD-20260924-FREEZE-01
Source
artifacts/coordination/operator_decisions_log.tsv
2026-09-30
Distribution routing finalized
D2D and Kobo removed from all pipeline routing. Final set: KDP + Apple Books Connect + Google Play Books + B&N Press direct. 4 accounts per operator. config/governance/distribution_routing.yaml updated (PR #4255).
OPD
OPD-20260930-025 · OPD-20260930-030
Source
docs/PROGRAM_STATE.md
2026-09-30
#4030 deletion incident + guard tightened
NIM wave deleted 77 files and gutted 1 file; guard said ok (77 < 100 threshold). Merged past Ahjan HOLD. Restored from cf7512f521e. Guard threshold tightened to >50 files or any gutted file.
Source
artifacts/coordination/operator_decisions_log.tsv
2026-10-01
Manga 108-episode arc standard
108 episodes = canonical planning length per series. Full arc planned before scripting. HOW_WE_WRITE §3.3 updated. Gate D still applies (operator read before fan-out).