Appearance
Current capabilities and limitations
Scope: Creator Source Package v1 compiled by the current local_owner_synthetic_preview target
This page prevents target-design ideas from being mistaken for fields that work today. For exact syntax, use the generated v1 field reference.
Source capability is not runtime availability
Most rows below describe what Creator Source Package v1 can encode and what the compiler validates. They do not mean that every mechanism is already executable in the current application. The latest local owner preview supports ordinary model-backed conversation, a minimal process-local turn trace, one explicit owner checkpoint, a character-owned bounded decision, a deterministic outcome, and a public wait state. Current application code also implements a second explicit owner checkpoint that publishes a validated proactive return, one package-approved static outcome visual, a structured Journal entry, and a public-safe causal timeline. Progression is manual: there is no ambient scheduling, external notification, or live image generation. A successful compile also does not install or activate an arbitrary new package in that preview.
Capability matrix
| Area | Current v1 support | Important boundary |
|---|---|---|
| Package shape | One manifest plus six fixed, required YAML modules and declared assets | No optional module filenames, plugin modules, or partial-package compile |
| Character | One primary character with identity, values, contradiction, goals, portrayal limits, knowledge, disclosure posture, voice, and refusal guidance | No package-authored model prompt or private mutable runtime state |
| Relationship | Remote-confidant channel, semantic influence vocabulary, durable episodes, optional invented shared context, and optional reciprocal promise | User has no physical presence or direct NPC channel and cannot mutate character/world state |
| World and arc | One bounded arc with facts, locations, NPCs, narrative time/deadline, typed decision eligibility, decision envelopes, deterministic outcomes, and follow-ups | Character Actor chooses only inside the authored space; World/GM owns outcomes |
| Progression | Terminal Arc Progression V1 with initial scalar beliefs, accepted-influence predicates, deadline-position predicates, one horizon, silence semantics, and close-unresolved guidance | The current CLI target requires progression even though the base source model marks it optional |
| Conversation availability | Immediate conversation and optional declared deferred follow-up with bounded wake, cutoff, expiry, and return decision | Operational timing does not become narrative time; consumer pacing remains open |
| Dialogue | Exact opening, guided ordinary conversation, exact terminal recovery anchor, guided degraded recovery, semantic-lock follow-ups/expiry, and exact Journal copy | No arbitrary new dialogue mode and no raw-text routing |
| Disclosure | Knowledge limits, disclosable facts, dialogue exclusions, observed-fact gates, follow-up reveal/withhold options, and visual exclusions | No typed multi-turn probe threshold or persistent staged-secret progression |
| Visuals | One existing portrait and one existing outcome asset per outcome, with visual intent, provenance, alt text, and fact guards | No live image generation; source provenance is not approval |
| Acceptance evidence | Semantic cases and paraphrase ranges tied to influence and decision IDs | Evidence does not directly route runtime behavior and the authoring CLI does not run a full Creator evaluation workflow |
| Compilation | Deterministic full-package lowering to canonical IR and content-addressed runtime bundle; reproducibility check | Compiler does not call an LLM, approve, qualify, publish, or activate |
| Application today | Local ordinary conversation, minimal turn trace, two manual checkpoints, bounded character decision, deterministic outcome/wait state, then validated return, approved static visual, Journal, and public-safe timeline | No ambient scheduling, external notification, live image generation, or tester, consumer, public, remote, or third-party data authorization |
Locale behavior
The current platform presentation catalog contains exactly two supported locale entries:
en-USzh-CN
One package version chooses one package.default_locale. The compiler uses it to select platform-owned unavailable and phase copy. All CHAT_ONLY and DEGRADED_CHAT recovery declarations must use the same locale.
arc.progression.decision_phase.no_eligible_guidance.public_projection.text is a locale map. It must contain the package default and may contain both en-US and zh-CN.
Most other Creator-authored copy—including the display name, character guidance, exact opening, semantic obligations, Journal, and alt text—is a single string, not a locale map. Therefore:
- an
en-USpackage can compile and receive English platform copy; - a
zh-CNpackage can compile and receive Chinese platform copy; - one source version does not automatically provide a complete bilingual experience; and
- the current compiler does not translate, check translation parity, or select localized variants for those single-string fields.
Do not add ad hoc translations, locale_variants, or parallel localized fields; the closed schema rejects them. A complete dual-language authoring and release strategy remains a product/schema decision. The documentation itself is bilingual so both English- and Chinese-speaking collaborators can author against the same current contract.
Progressive disclosure
The v1 source contract can encode, and the compiler can validate, coarse and outcome-aware withholding:
- say what the character may know and ordinarily reveal;
- mark initial world facts
user_disclosable: falsewhere appropriate; - list fact IDs ordinary or follow-up dialogue must not disclose;
- commit outcome facts, then separately define what the character observes;
- give each follow-up bounded reveal/withhold options; and
- prevent private facts from appearing in outcome art.
It does not provide typed persistent stages such as “unmentioned → hinted after a gentle probe → partially admitted after trust → fully disclosed,” and the current application does not record that the user has learned one of those stages. The broad authoring proposal discusses richer disclosure intent, but that is not permission to invent fields today. Until a new accepted schema/runtime contract lands, use current fact guards only for the boundaries they actually enforce and call the richer behavior unsupported.
Current compiler constraints that are easy to miss
source-package.yamlplus all six modules are required, and their filenames are fixed.- The package ID is one lowercase/hyphenated path segment; package ID and version must match both directory and manifest.
- Every model is closed: extra fields are errors.
- Values must be canonical. Floats, non-string mapping keys, non-JavaScript-safe integers, duplicate YAML keys, and unsafe values are rejected.
- Source roots, modules, and assets cannot use symlinks or path traversal.
- Visual assets must use
.avif,.gif,.jpeg,.jpg,.png,.svg, or.webp; the compiler binds their bytes and provenance into the bundle. - Provider, prompt, operational, approval, release, and raw-text routing fields are forbidden anywhere in Creator YAML, including disguised key spellings and routing constructs embedded in strings.
- One world deadline and Arc Progression V1 are required by the current build target.
- Every decision must map one-to-one to an outcome. Every outcome must have at least one arc follow-up option and exactly one visual depiction; every follow-up ID must have one dialogue entry, and every outcome has one Journal statement.
- The Journal additionally needs exactly one statement per influence kind and decision.
- The current CLI compiles only
full_packageforlocal_owner_synthetic_preview. - The constructive-refusal style anchor used as exact
CHAT_ONLYrecovery text cannot exceed 8,000 Unicode code points. opening.generated_reply_suggestionsis structurally a boolean, but the current pilot examples keep it false and accepted decisions leave broader suggested-reply enablement open. Successful compilation oftruewould not grant product-release authority.
See the semantic guide for the larger reference graph and the quickstart troubleshooting table for common error families.
Internal and synthetic examples are not templates
An internal Chinese reference package exercises more optional mechanisms than a first package needs. Its identity, source content, and assets are not part of this public guide.
The Orbital Garden Relay package is a smaller English portability canary and demonstrates package-local assets, typed progression, deferred follow-up, and localized no-eligible guidance. It is synthetic test material, not production content, Creator approval, or a rights assertion.
Neither is a scaffold. Preserve their structure only when it matches the new story's authored meaning.
Provenance role boundary
The v1 provenance[].role field accepts only:
historical_hybridgoverning_product_decisionsemantic_normalization_authoritysynthetic_fixture_origin
That vocabulary is sufficient for the existing historical normalization and synthetic canary, but it is not a general model for original manuscripts, licenses, visual sources, or Creator corrections. Do not label a real source inaccurately merely to satisfy the schema. If none of these roles is truthful, record the contract gap and extend the contract through review before relying on the new source. A provenance reference records traceability; it does not by itself prove rights, consent, Creator approval, or asset approval.
Proposed or open—not current v1
The following may appear in product/specification discussions but are not current authoring-CLI capabilities:
- a Creator Portal that gathers intent without exposing raw YAML;
- ingestion of arbitrary IP documents into a reviewed draft package;
- a general schema for fully localized package copy and translation parity;
- typed multi-turn, trust/probe-gated progressive disclosure;
- Creator-selectable model, prompt, image-generation, or training recipes;
- live media generation;
- automatic rights, consent, or asset-approval adjudication;
- a package command that publishes or activates its output;
- tester/consumer use, public release, or production proactive delivery; and
- every dialogue, reward, ending, sharing, scheduling, or memory feature described as open in broader proposals.
The broader Creator authoring proposal is valuable design context, but its proposed and historical sections are not a field reference. A material new capability needs an explicit product decision, typed contract, compiler/runtime enforcement, tests, and documentation before an author can rely on it.