# Character Consistency Test ## Status - Task id: `2026-06-24-character-consistency` - Worker profile: `video-slide-production` - Running mode: `prompt and generate` - Status: test complete; `s21-v3`, `s14-v2`, and `s25-v2` accepted by user; continuation mechanism has a duplicate `Agent S-14` defect to fix before scaling - Child session reuse test: reset; start a new child session - Deprecated child session id: `019ef77d-552b-7343-abe4-88921b35d7ea` (do not reuse) - Session-02 child-session id: `019ef7ca-413a-7662-9633-7fb126b7ef35` - Artifact policy: append-only next slide version; overwrite disabled by default - Session-02 resolved version: `s21-v2` (runtime fallback; no prompt/image) - Session-03 resolved version: `s21-v3` - Thread-level child test: `session-03` - Session-03 child thread id: `019ef7d2-1a7f-7a90-8c04-0098239dfe0f` - Session-03 slide-agent thread id: `019ef7d6-3ff6-7213-b68c-fd646e39f1d2` - Session-03 continuation recorded `Agent S-14`: `019ef803-95d7-7411-8d3c-c7f2f68a32e7` - Session-03 duplicate `Agent S-14` observed by parent: `019ef803-328a-7e40-a0b0-0333c6b5fc6c` - Session-03 continuation `Agent S-25`: `019ef803-e757-7041-8f4a-fc9dfce23bbd` ## User Instruction Run the character-consistency workflow as a process and identity-consistency test. Earlier `s05` work exposed two workflow problems: ```text 1. The child session did not start the slide-agent itself. 2. `s05-v1-image.png` was overwritten even though a broad-run candidate already existed. ``` The reset rule for the next run is: - do not reuse child session `019ef77d-552b-7343-abe4-88921b35d7ea`; - start a new child session; - require the new child session to start the single-slide `S-21` agent itself; - use a new slide artifact version resolved from existing `slides/s21/s21-v*-*` files; - do not overwrite existing slide artifacts; - explicitly disable review for this `S-21` test so the workflow can verify that no review file is created when review is disabled. ## Slide Scope Completed previous test: ```text s05 ``` Authorized next: ```text s21 ``` Planned later, only after user confirms `s21`: ```text s14 s25 ``` ## Child Session Split ```text session-01: historical previous attempt; do not reuse session-02: s21 fallback evidence only; no prompt/image session-03: s21 accepted -> s14/s25 accepted; duplicate S-14 worker defect recorded ``` Current `session-03` continuation generated `s14-v2` and `s25-v2` after user accepted `s21-v3-image.png`; user then accepted both images and closed the test. The mechanism result is not a clean pass because two S-14 workers were created for one slide/version. Continuation rule: - use the same child thread `019ef7d2-1a7f-7a90-8c04-0098239dfe0f`; - child thread must start two separate one-shot slide workers: `Agent S-14` and `Agent S-25`; - do not reuse or continue `Agent S-21`; - each worker handles exactly one slide; - each slide resolves the next unused version by scanning existing files; - expected next versions from current scan are `s14-v2` and `s25-v2`; - do not overwrite existing broad-run `v1` images. Session id record: ```text session-01 child session agent id: 019ef77d-552b-7343-abe4-88921b35d7ea (deprecated / do not reuse) session-02 child session agent id: 019ef7ca-413a-7662-9633-7fb126b7ef35 session-03 child thread id: 019ef7d2-1a7f-7a90-8c04-0098239dfe0f session-03 Agent S-21 thread id: 019ef7d6-3ff6-7213-b68c-fd646e39f1d2 session-03 recorded Agent S-14 thread id: 019ef803-95d7-7411-8d3c-c7f2f68a32e7 session-03 duplicate Agent S-14 thread id observed by parent: 019ef803-328a-7e40-a0b0-0333c6b5fc6c session-03 Agent S-25 thread id: 019ef803-e757-7041-8f4a-fc9dfce23bbd ``` Continuation result: - `s14-v2-prompt.md`, `s14-v2-image.png`, and `s14-v2-slide-agent-return.md` exist; no `s14-v2-review.md` exists. - `s25-v2-prompt.md`, `s25-v2-image.png`, and `s25-v2-slide-agent-return.md` exist; no `s25-v2-review.md` exists. - `s14` prompt evidence records `gpt-image-2` Advisor / host-native mode, visible side/front character refs, and style module `B | 高位观察`. - `s25` prompt evidence records `gpt-image-2` Advisor / host-native mode, visible side/front/body refs, and style module `A | 清晨泥泞旷野` adapted for dust/detail. - User accepted both `s14-v2-image.png` and `s25-v2-image.png`. - Defect: child handoff records only `Agent S-14` `019ef803-95d7-7411-8d3c-c7f2f68a32e7`, but parent thread inspection also found duplicate `Agent S-14` `019ef803-328a-7e40-a0b0-0333c6b5fc6c`; the S-14 return/image source path records the duplicate thread folder. Treat step 2 as generated-with-defect, not as workflow pass. ## Shared Context - `AGENTS.md` - `VIDEO_WORKBENCH.md` - `docs/workflows/slide-task-orchestration.md` - `docs/workflows/slide-task-templates.md` - `projects/2026-06-23-在路上/project.md` - `projects/2026-06-23-在路上/execution-plan.md` - `projects/2026-06-23-在路上/visual-system/visual-system.md` - `projects/2026-06-23-在路上/visual-system/style/style-prompt-master.md` - `projects/2026-06-23-在路上/visual-system/characters/character-reference-registry.md` - `projects/2026-06-23-在路上/intake/阶段五-人物一致性单镜.md` - `projects/2026-06-23-在路上/slides/slides.md` - `projects/2026-06-23-在路上/slides/broad-generation-self-audit-v1.md` - `investigations/2026-06-24-s14-reference-capable-generation/reviews/summary-and-rule-implications.md` ## Visual-System Usage - Style continuity must use `visual-system/style/style-prompt-master.md`. - Character continuity must use `visual-system/characters/character-reference-registry.md`. - Reference-capable generation must use the validated host built-in reference-by-visible-context path: - write the prompt/spec through the `gpt-image-2` Skill Advisor workflow; - load the real reference image into the conversation context before generation; - call host `image_gen` with the loaded image assigned a role such as `Image 1`; - record the input path, output path, and reference-path caveat in the review or return. ## Rules - Do not invoke CCPE. - Do not ask GPT V2 for final prompts. - Do not use Minimax MCP or other external review services. - Do not treat old broad-run images as accepted finals. - Do not generate visible-character identity shots from text-only prompts. - Do not use archived character or style references unless explicitly reopened. - Each slide agent handles exactly one slide. - Child sessions and slide agents run sequentially. - One slide/version must have exactly one owning slide-agent. A child session must not create two workers with the same packet and same output targets; prompt/image/return ownership must stay with the same worker id. - Project-specific allocation override for identity-heavy character-consistency work: assign at most 2 visible-character slides per child session. Keep the generic docs default at maximum 3 slides per child session for non-expensive/general slide work. - Child session carrier rule: brief/orchestration child sessions should be Codex child/session threads visible to the user and recorded by thread id. Slide agents inside those child sessions should be internal SubAgent / one-shot workers, not long-lived reusable child sessions. - Main session records the new child session id so later slides can be sent to the same child session after user approval. - Resolve the slide artifact version before each slide run by scanning existing `slides/sNN/sNN-v*-*` files. - Do not overwrite existing slide artifacts. If any planned target file already exists, stop and report an artifact collision. - Do not backfill missing prompt or brief files for old broad-run images as if they were original generation inputs. - For the next `s21` test, review is explicitly disabled. A `s21-vN-review.md` file should not be produced unless the task plan is changed. ## Expected Outputs Task records: ```text projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/task-plan.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/task-log.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-02/child-session-plan.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-02/child-session-handoff.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-02/packets/s21-vN-slide-agent-packet.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-02/returns/s21-vN-slide-agent-return.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-03/child-session-plan.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-03/child-session-handoff.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-03/packets/s21-v3-slide-agent-packet.md projects/2026-06-23-在路上/tasks/2026-06-24-character-consistency/session-03/returns/s21-v3-slide-agent-return.md ``` Slide records: ```text projects/2026-06-23-在路上/slides/s21/s21-vN-brief.md projects/2026-06-23-在路上/slides/s21/s21-vN-prompt.md projects/2026-06-23-在路上/slides/s21/s21-vN-image.png projects/2026-06-23-在路上/slides/s21/s21-v3-brief.md projects/2026-06-23-在路上/slides/s21/s21-v3-prompt.md projects/2026-06-23-在路上/slides/s21/s21-v3-image.png ``` ## User Review / Sampling Plan After `s21` generation, stop and report: - new child session id; - `S-21` slide-agent id; - files written; - resolved output version; - whether the child session started `Agent S-21` itself; - whether review was correctly suppressed; - whether the prompt used `gpt-image-2` Advisor, active character reference, and the D style module; - whether the same child session should receive `s14` and `s25` next. For the `s14` / `s25` continuation, report: - whether the existing child thread continued work; - `Agent S-14` and `Agent S-25` thread ids; - whether the two new agents are separate from `Agent S-21`; - files written for `s14-v2` and `s25-v2`; - whether prompts used `gpt-image-2` Advisor and active character/style references; - whether review files were or were not produced, matching the continuation packet rule; - whether generation completed for both slides. This reporting gate is closed for `session-03`: both images were accepted by the user, review files were correctly absent, and the remaining work is workflow repair before the next batch. ## Stop Conditions - Required reference image cannot be loaded into the conversation context. - `gpt-image-2` mode check no longer returns a host/advisor path. - Host image generation cannot be called. - Generated image cannot be copied into the project slide folder. - Any planned output path already exists and overwrite is not explicitly authorized. - The result clearly fails the side/back dynamic character-continuity purpose.