Skip to content

✨ A write records the scene it happened in, as it was perceived - #120

Open
ebigunso wants to merge 8 commits into
feature/2026-09-21/scene-write-turnfrom
feature/2026-09-21/scene-on-writes
Open

ebigunso wants to merge 8 commits into
feature/2026-09-21/scene-write-turnfrom
feature/2026-09-21/scene-on-writes

Conversation

@ebigunso

Copy link
Copy Markdown
Owner

Task_2 of the scene plan (stacked on #118).

  • One public Scene: the time; participants, each with an optional identity key, name and description in any combination; a setting by key, in words, or both; flat custom values the application owns. It is stored once, on the episode, exactly as given: nothing is resolved, normalized, completed or guessed (ADR-D-0029). A key strengthens the perceived words and never replaces them. Words create no notion and no link.
  • The scene's words are indexed with their episode: the embedded text is the summary followed by a labelled Setting: line and one With: line per participant. A description given at recall can therefore reach the scene, and a deployment that perceives only in words still gets situated recall. With no words the embedded text is byte-identical to before; keys and custom values are never embedded.
  • A missing time is never guessed. remember fixes it to the instant the plan is prepared, so a replay is identical; a caller-built episode that states no scene is rejected.
  • Absence is not a claim: no participants recorded does not mean the character was alone, and there is no completeness flag.
  • source_conversation_id becomes the setting key, the participant and start-time hints become the scene, and the correction guard compares original_setting_key. Notions involved but not present, thread affiliations, the end time, and an observation's own time and speaker are distinct facts and stay as they were.
  • The scene carries no activity yet: nothing in this plan reads one, and an always-empty field would read as a claim. It arrives with its cue in the routes plan.

Evidence: internal Tier D review approved with no code findings and judged each added test the sole observer of a distinct outcome; the Tier A review approved the public shape for the retrieval side and for v0.3 after one round (the activity removed, one With: line per participant, blank keyless participants rejected). fmt, check, clippy with warnings denied and the full suite pass for the worker and independently for the reviewer: 386 reported, 382 exercised, 4 opt-in service cases left to CI.

🤖 Generated with Claude Code

ebigunso and others added 7 commits September 21, 2026 05:02
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…09-21/scene-on-writes

# Conflicts:
#	docs/design/database/vector_payload_design.md
@ebigunso
ebigunso added this pull request to stack #149 September 22, 2026 21:15
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