Skip to content

docs: specify the scene format as a protocol-level contract#5

Merged
jamiesun merged 1 commit into
mainfrom
scene-protocol-spec
Jul 19, 2026
Merged

docs: specify the scene format as a protocol-level contract#5
jamiesun merged 1 commit into
mainfrom
scene-protocol-spec

Conversation

@jamiesun

Copy link
Copy Markdown
Contributor

What

Elevates the scene format from "documented YAML" to a protocol-level contract, with a new normative docs-site chapter: scene-protocol.md.

The scene file is the wire format between a composing agent and the compiler — the input half of the machine contract, as machine-interface.md is the invocation half.

Chapter contents

  • Protocol stance — five committed properties: strict unknown-field rejection, deterministic compile semantics, no dead fields, machine discoverability (scorekit schema), text-native.
  • Versioning & stability — versioned by the binary's semver; within a major version: additive-only, no repurposing, old scenes compile byte-identically forever; new-scene-on-old-binary fails loudly with a field path. Deliberately no in-file version field (strict rejection already detects skew at compile time).
  • Extension gates — one-sentence deterministic semantic, free-sound-source achievable, absent-field byte-identity, same-change E2E + acceptance-matrix row.
  • Normative compile semantics — full field tables (incl. M10 pan/reverb/glide), channel allocation, the five pattern algorithms, transform order, and the canonical event ordering that is the byte-determinism guarantee.
  • Error contract and what the protocol will not carry (mood/state fields, renderer paths, macros/includes).

Wiring

  • SUMMARY.md: new chapter after Quick Start
  • machine-interface.md: stability contract now references the scene protocol
  • skills/scorekit/reference.md: points to the normative spec (and bumps "verified against" to v0.2)
  • docs/roadmap.md: capability list notes the protocol-level contract

Docs-only change; mdbook build docs-site passes locally. All facts cross-checked against scorekit schema output and src/schema.rs/src/composer.rs.

New docs-site chapter (scene-protocol.md): protocol stance (strict
unknown-field rejection, deterministic semantics, no dead fields,
machine discoverability, text-native), semver-bound stability rules
(additive-only, no repurposing, byte-identical output for existing
scenes), extension gates, normative compile semantics (channels,
patterns, transform order, event ordering), and the error contract.

Wire it into SUMMARY, the machine-interface stability contract, the
agent skill reference, and the roadmap capability list.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@jamiesun
jamiesun merged commit 3e576dd into main Jul 19, 2026
1 check passed
@jamiesun
jamiesun deleted the scene-protocol-spec branch July 19, 2026 03:25
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