Kairos Academy Tech
Super Admin · Content · Publishing
🔔5
User avatar
System Owner
Global Admin
Superadmin · Content · Governance gate

Publishing

Govern review, validation, readiness, scope, and downstream visibility across Kairos canonical content.

🚦 Governed publication-readiness review Lessons: publish/unpublish/archive · others read-only

Publishing Queue reviews canonical content readiness across Lessons, Standardized Exams, and Templates — the same three content types Content Library governs. Operational Assignments, Learning Pathways nodes, Repository assets, and Import jobs are not queue sources: none of them has a canonical, server-governed publishing lifecycle today (see docs/architecture/superadmin-publishing-queue-a4.md).

Publication states are draft → in_review → changes_requested → ready_to_publish → published → archived. Readiness is computed server-side (listSuperadminPublishingQueueV1) from grounded fields only — title, grade, subject, course, language, and sequence where declared. No requirement is guessed from field-sniffing heuristics.

Listing and readiness are read-only for every content type. Lesson rows additionally carry Publish / Unpublish / Archive actions through the governed setLibraryResourcePublicationV1 writer (superadmin-only, audited) — the same action Lesson Studio's own Publishing tab uses. Standardized Exams and Templates have no governed publish writer yet, so their rows stay read-only.

🪪Metadata validation
Gate

Title, grade, subject, course, and language present — server-computed, one blocker code per missing field (MISSING_TITLE, MISSING_GRADE, MISSING_SUBJECT, MISSING_COURSE, MISSING_LANGUAGE).

🔢Sequence validation
Conditional gate

Only required when a Lesson already declares a lesson_code but has no lesson_order (MISSING_SEQUENCE). Legacy Lessons with no sequencing intent are never flagged.

📚Downstream visibility
Outcome

Once published, canonical content surfaces to Tetrahedron / Cube runtime per its existing publication flow — unchanged by this queue, which is read-only.

Total loadedcurrent content type
Blockedreadiness gate failed
Incompleteno blocker, not fully authored
Reviewablein review, gates clear
Readyall gates clear
Publishedlive downstream

📋 Publishing queue Governed · Read-only

Loading…
Publishing queue: canonical content readiness for the selected content type.
Title Content type Publication state Readiness Blockers Grade Subject Course Language Artifacts Updated Open Publication action

✅ Publishing readiness checklist Server-computed gates

Every check below is computed by listSuperadminPublishingQueueV1 from fields Content Library already exposes — nothing is guessed from content-type-specific heuristics.

Title presentMISSING_TITLE
Grade assignedMISSING_GRADE
Subject assignedMISSING_SUBJECT
Course assignedMISSING_COURSE
Language assignedMISSING_LANGUAGE
Sequence assigned, when declaredMISSING_SEQUENCE — only when a lesson_code is already present

Not yet implemented (documented, not fabricated): required-artifact enforcement per content type, and a governed publish/unpublish writer for Standardized Exams and Templates (Lessons already have one — setLibraryResourcePublicationV1).

🔁 Downstream visibility

How a published candidate moves from canonical governance to runtime surfaces.

📚Tetrahedron Library
Authoring

Lessons, Assignments, Standardized Exams, and Learning Pathways become discoverable to teachers.

🎓Cube Student Runtime
Delivery

Students consume published lessons, assignments, and exams via online or paper delivery.

🔍OCR & Exams
Scan + grade

Response sheets and exam packages drive OCR Review and grading flows.

🗂️Repository
Asset governance

Published assets are linked into Repository for reuse and license / source tracking.

📊Octahedron Reporting
Insights

Per-student outcomes, mastery, and readiness signals feed partner / tutor reporting.

Technical context
callable
listSuperadminPublishingQueueV1
content type shown
loaded (this content type)
filters applied
none
last outcome
Firestore mode
governed callable only — no direct client reads
writes on this page
Lesson rows only, via setLibraryResourcePublicationV1 (publish/unpublish/archive)
Sources
Lessons · ExamTemplates · ContentTemplates only (Assignments and other operational/ungoverned collections are never queried)
Authority boundary
Server-side canonical Superadmin authorization (authorizeCanonicalSuperadmin); this page never writes publication state.