Valenar Story Layer Governance
This rule governs the Valenar story layer and the local-agent scaffolding that
authors or audits it. Story files are narrative surfaces, not truth storage.
The story layer is explicitly outside the lore-tree prefix scheme and outside
runtime / .secs / Generated / host / server / client ownership.
Read Order
Before editing or auditing this scope, read these files in order:
examples/valenar/CLAUDE.mdexamples/valenar/docs/lore/adr/ad-0003-story-content-layer-and-agent-audit.mdexamples/valenar/docs/story/README.mdexamples/valenar/docs/story/templates/story-entry-template.md- The relevant files under
examples/valenar/docs/story/indexes/ examples/valenar/docs/implementation/pr-llm-story-authoring-pipeline.md- Every authority file named in
touched_lore, plus any citedlh-*row and any cited caution surface underexamples/valenar/docs/lore/local/
If those files disagree, the story README and ADR 0003 define the boundary, while the cited authority files define what is true and what exposure is legal.
Ownership Boundary
- Story prose is non-canon by default. It may depict rumor, omission, bias, propaganda, partial witnesses, and deliberate concealment.
- Canon truth lives in
ul-*,ud-*,gl-*,lh-*, andgd-*authority files. Story files may cite those authorities but must not silently rewrite them. - Story files must not claim
.secssyntax, Generated provenance, runtime mechanics, compiler lowering, or engine behavior. - Do not move
gd-*files intoexamples/valenar/docs/lore/and do not invent a dedicated story filename prefix in this scope.
Frontmatter And Acceptance Discipline
- Every story entry must follow the field contract in
examples/valenar/docs/story/README.mdand the reusable template inexamples/valenar/docs/story/templates/story-entry-template.md. canon_deltais mandatory on every entry, includingnone.branchis mandatory on every entry, includinglinear.downstream_hooksare mandatory. Flavor-only story artifacts are not ready for acceptance in Valenar's playable-lore chain.accepted/is for story artifacts that passed story, reveal, and branch audits and have their related index rows updated. Acceptance does not promote the artifact's claims into canon by itself.
Reveal Discipline
exposure_tiermust not exceed the citedlh-*authority rows.revealed_to_playerrecords what the player actually learns; it may be lower than the allowed ceiling, but never higher.bible-onlyfacts stay hidden. Story prose may not leak them by tone, implication, or omniscient framing.- When a story file touches a caution surface such as
gl-game1-demon-remains.md,gl-game1-old-hero-traces.md, orgl-game1-false-king.md, the relevant audit notes must explain why the entry stays within the allowed reveal tier.
Branch And Index Discipline
- Every accepted entry must have matching rows in
entity-index.md,timeline-index.md,reveal-ledger.md, andbranch-ledger.md. - If
canon_delta.statusis notnone, the entry also requires a matching row incanon-delta-log.md. - Branch-sensitive entries must name the decision boundary, prerequisites, consequence surfaces, and any rejoin rule. No branch-dependent consequence may remain implicit.
- The story entry, its audit block, and every referenced ledger row must agree
on
entry_id, branch scope, reveal ceiling, and downstream consequences.
Agent And Skill Rules
- Story auditors, reveal auditors, branch auditors, librarians, and verifiers are read-only by instruction and by tool / sandbox shape where the platform supports it.
- Read-only roles report defects; they do not patch them inline.
- If a write-capable story workflow is explicitly requested later, its write
surface is limited to the target story file plus the matching story indexes.
It must not edit
../lore/,gd-*,.secs, Generated, runtime, or tests as part of story acceptance. - Do not create a generic writer agent that both authors story and updates canon. Story drafting and canon promotion are separate responsibilities.
- Do not invent canon names, cosmology facts, deferred proper nouns, runtime mechanics, or provenance just to satisfy a story prompt.
Deferrals And Non-Goals
- Truth-layer updates remain separate lore/design waves.
- Runtime / Journal /
.secs/ Generated support remains separate code waves. - Dedicated automation may be added later, but this scope must remain usable with plain Markdown, local skills, and read-only audit agents.
- Root
AGENTS.mdandCLAUDE.mddo not need story-specific expansion when the local rule, ADR, story README, and Valenar docs already carry the boundary.