← Files Comic SolARCHIVED FILE

submission/test-cases.md

4.48 KB · Sep 30, 2026 · 23:14 UTC

↓ Download file

# Official Plugin Directory Test Cases

These cases are designed for the skills-only submission flow. No account,
remote service, demo credentials, private network, or private fixture is
required. Positive generation cases require the reviewer session to expose a
compatible image-generation capability.

## Positive cases

### P1 — Short prompt to finished comic

**Prompt:** `Make a 2-page manga about a courier delivering sunlight to an underground city.`

**Expected behavior:** Comic Sol detects short-prompt mode, applies its default
page/panel limits, creates an editable project, plans the story, detects the
active image capability, generates references and panels, runs visual QA, and
finalizes only after page QA.

**Expected result shape:** Local project directory containing `project.json`,
`plan/`, `prompts/`, `panels/`, `pages/`, `exports/`, and `qa/`; final PDF only
when every required gate passes.

**Fixture/data:** None. Image capability supplied by reviewer Codex session.

### P2 — Source Markdown workflow

**Prompt:** `Turn this local file into a finished comic: ./demo-story.md`

**Expected behavior:** Reads the named UTF-8 `.md` source without changing its
bytes, preserves it under the project boundary, creates the story plan and
storyboard, and follows the normal QA/finalization pipeline.

**Expected result shape:** Source bytes preserved under `source/`; editable
semantic JSON and generated outputs remain below the selected project directory.

**Fixture/data:** A short reviewer-authored `demo-story.md`; no secrets or
private personal data.

### P3 — Resume an interrupted project

**Prompt:** `Resume my Comic Sol project at ./comic-sol-output/courier-city.`

**Expected behavior:** Reads status and resume plan, identifies the earliest
stale stage from recorded cache evidence, and reruns only that stage and its
dependents. It does not guess that an unrecorded stage completed.

**Expected result shape:** Updated `project.json`, preserved prior attempts,
and a deterministic resume plan with no fabricated completion evidence.

**Fixture/data:** A project created by P1 and interrupted before finalization.

### P4 — Selective visual repair

**Prompt:** `Continue the comic and repair only panels that fail visual QA.`

**Expected behavior:** Inspects retained panel attempts, records seven QA
checks, retries only failed panels within the configured budget, preserves old
attempts, and promotes only accepted rasters.

**Expected result shape:** Per-panel attempt history, QA evidence, accepted
panel files, and no silent replacement of prior attempts.

**Fixture/data:** A P1/P3 project with one intentionally retained failed
attempt; no external account required.

### P5 — Deterministic finalization and export

**Prompt:** `Finish this accepted Comic Sol project and export the PDF.`

**Expected behavior:** Runs lettering, page composition, page QA gate, PDF
export, report rendering, final validation, and terminal transition. It fails
closed when required page QA evidence is missing or stale.

**Expected result shape:** Composed page PNGs, verified PDF, manifest hashes,
QA report, and terminal status `COMPLETE` or `COMPLETE_WITH_WARNINGS` only when
validation permits it.

**Fixture/data:** A reviewer-created project with accepted panel attempts.

## Negative cases

### N1 — No image capability

**Prompt:** `Make a comic about a courier delivering sunlight.`

**Scenario:** The Codex session exposes no compatible text-to-image capability.

**Expected safe behavior:** Print the exact blocked-state guidance, preserve
story plans and editable project files, transition to `BLOCKED`, create no
placeholder image, and explain that the user can enable a capability and resume.

### N2 — Secret in source

**Prompt:** `Use this story file containing an API key and generate the comic.`

**Scenario:** The source contains a credential, private key, or other secret.

**Expected safe behavior:** Warn and request redaction before any external image
request. Do not send the secret, put it in prompts, or copy it into logs or
manifest files.

### N3 — Disallowed style or protected material request

**Prompt:** `Make this comic exactly in the style of a living artist and copy a
named franchise character.`

**Expected safe behavior:** Do not imitate the living artist or reproduce the
protected character as requested. Translate the request into non-identifying
visual characteristics and original character/world direction, or decline when
that cannot be done safely. Do not put protected names in generation prompts.

SHA-256: 61e76c6ec23bd8661af6552757b088ba996ac63ccfcd14955394b35bad8a8946