Plan chunk map exports and scene descriptions

This commit is contained in:
2026-07-23 04:33:18 +00:00
parent 250c5c22b8
commit b2c076946b
3 changed files with 78 additions and 611 deletions

View File

@@ -16,28 +16,88 @@ not as committed release dates.
validator, and normalizer development. Treat model-quality review as an
iterative human evaluation aid, not a deterministic correctness gate.
### Expand Sequential D&D Artifacts
### Extract NPC Interactions
- Add narrative extraction for scene summaries, party actions, and NPCs
encountered when that output proves useful beyond the dedicated NPC artifact.
- Use ordered pipeline steps when a later artifact needs an accepted earlier
artifact as context. Keep independent lanes in the same step and do not
introduce a general DAG or concurrent cross-lane reconciliation model.
- Add an ordered NPC-interaction artifact that records how an identifiable NPC
participates in the session without adding occurrence-level state to the
normalized NPC registry. Use `npc-interactions` as the working lane and
product name; the exact artifact kind may be finalized with its contract.
- Keep each record minimal: canonical NPC `name`, one bounded interaction
`kind`, and transcript `source_refs` supporting both the identity and
classification.
- Start with the mutually exclusive vocabulary `mentioned`,
`noncombat_presence`, `dialogue`, `combat_ally`, `combat_opponent`, and
`other`. Define narrow inclusion rules and category precedence before
implementation so overlapping activity does not produce arbitrary labels.
- Model interactions as ordered occurrences rather than one scalar NPC
category. The same NPC may therefore have separate records when the
transcript establishes distinct interactions, such as dialogue followed by
hostile combat.
- Run NPC identity extraction first and provide its accepted names-only
projection to the interaction extractor for grounding. Registry names may
disambiguate identity but never establish that an interaction occurred, and
registry source references must not be copied into interaction evidence.
- Evaluate category agreement, evidence sufficiency, duplicate behavior, and
smaller-model reliability on human-reviewed transcripts before expanding the
enum or adding additional fields.
### Improve D&D Scene Classification
### Export Accepted Chunk Maps
- Extend scene annotations with classifications that downstream extractors can
use, including reliable combat and narrative indicators.
- Strengthen the scene prompt so every scene containing combat turns is marked
as combat, and add validation capable of detecting missing or inconsistent
combat classifications.
- Allow the combat extractor to no-op for chunks that are not classified as
combat, avoiding unnecessary model calls where practical.
- Allow a narrative extractor to select the corresponding scene classification
rather than processing every chunk indiscriminately.
- Add an option to emit the accepted materialized chunk map as a proper,
framework-owned artifact with a documented schema identity, version, media
type, canonical encoding, and source/chunker provenance.
- Export the exact ordered chunks used for lane execution, including stable
chunk IDs and current-source ranges. Do not expose a model's raw boundary
proposal or require a second model call to reconstruct information already
owned by the framework.
- Treat chunk-map export as an output concern rather than an ordinary
extraction lane. Chunking is pipeline-wide and precedes lane extraction; a
pseudo-extractor would duplicate work and obscure that ownership boundary.
- Keep the generic contract independent of D&D interpretation. Namespaced
annotations may be preserved when they are part of the accepted chunk plan,
but downstream applications should not need domain-specific annotations to
understand chunk identity, order, or source coverage.
### Extract D&D Scene Descriptions
- Add a `dnd/scene-descriptions` extractor that runs once for each accepted
scene chunk and explicitly owns the small amount of scene synthesis useful to
downstream applications.
- Keep the private model response to exactly `kind`, `title`, and `summary`.
Use the enum `combat`, `narrative`, `recap`, and `meta`: `narrative` means
current-session in-world gameplay that is not combat, recap, or sustained
out-of-character discussion.
- Treat brief table talk or rules clarification as incidental to the enclosing
gameplay scene. A sustained transition between kinds should normally create
a chunk boundary; define a primary-kind rule for residual mixed chunks before
implementation.
- Deterministically attach the accepted chunk ID and its exact source range
while mapping the private response into the durable artifact. Do not ask the
model to reproduce IDs or segment boundaries, and do not defer required
identity or evidence until normalization.
- Keep normalization limited to stable ordering, exact deduplication, and
canonical invariant enforcement. Titles and summaries are explicit,
source-bounded synthesis owned by this artifact rather than by the chunker.
- Do not add `participants`. Derive participant-oriented views by joining scene
ranges with NPC evidence or, preferably, NPC-interaction occurrences. An NPC
registry reference proves identity, not exhaustive presence in every scene.
### Minimize And Use D&D Scene Chunking
- Reduce the D&D scene chunker toward its narrow responsibility: identifying
coherent scene boundaries. Retain boundary confidence or caveats only when a
demonstrated validator or operator workflow consumes them; move title,
summary, scene kind, and participant duties to dedicated artifacts.
- Allow the combat extractor to no-op for chunks classified as non-combat only
after the scene-description artifact can be supplied through an explicit
ordered dependency. Do not make generic chunk materialization depend on a D&D
classification.
- Use ordered pipeline steps whenever a later artifact needs an accepted
earlier artifact as context. Keep independent lanes in the same step and do
not introduce a general DAG or concurrent cross-lane reconciliation model.
- Reassess whether one shared scene plan provides enough context for NPC,
spell, combat, and narrative pipelines after these extractors have real-world
usage. Add more complex chunking only in response to demonstrated failures.
spell, combat, interaction, and scene-description lanes after real-world use.
Add more complex chunking only in response to demonstrated failures.
## Shared Normalization And Quality Work