Add prompt route smoke checks
This commit is contained in:
@@ -209,7 +209,8 @@ Improve later:
|
||||
Near-term:
|
||||
|
||||
- Add final row hygiene already done through `prompt_hygiene.py`.
|
||||
- Add a metadata invariant checker for rows before return.
|
||||
- Add a metadata smoke checker for representative rows through
|
||||
`tools/prompt_smoke.py`.
|
||||
- Normalize every row with one function before JSON serialization.
|
||||
|
||||
Medium-term:
|
||||
@@ -224,6 +225,8 @@ Near-term:
|
||||
- Normalize pair metadata with one helper.
|
||||
- Confirm pair prompts, captions, and soft/hard rows carry the same sanitized
|
||||
scene/camera/clothing fields.
|
||||
- Keep same-room pair continuity synchronized in both assembled prompt text and
|
||||
`hardcore_row.scene_text`; `tools/prompt_smoke.py` covers this drift case.
|
||||
|
||||
Medium-term:
|
||||
|
||||
@@ -236,8 +239,10 @@ Medium-term:
|
||||
Near-term:
|
||||
|
||||
- Add final prose hygiene already done through `prompt_hygiene.py`.
|
||||
- Add tests for close foreplay, POV oral, POV penetration, aftercare, manual
|
||||
stimulation, and camera-scene preservation.
|
||||
- Add smoke coverage through `tools/prompt_smoke.py` for metadata-driven Krea2
|
||||
formatting across built-in rows, hardcore rows, same-cast pairs, and POV
|
||||
pairs. Expand it next for close foreplay, POV penetration, and camera-scene
|
||||
preservation.
|
||||
|
||||
Medium-term:
|
||||
|
||||
@@ -249,7 +254,8 @@ Medium-term:
|
||||
Near-term:
|
||||
|
||||
- Add final tag hygiene already done through `prompt_hygiene.py`.
|
||||
- Add smoke tests for trigger preservation and duplicate tag removal.
|
||||
- Add smoke tests for trigger preservation and duplicate tag removal through
|
||||
`tools/prompt_smoke.py`.
|
||||
|
||||
Medium-term:
|
||||
|
||||
@@ -260,7 +266,8 @@ Medium-term:
|
||||
Near-term:
|
||||
|
||||
- Add final prose hygiene already done through `prompt_hygiene.py`.
|
||||
- Verify training captions keep trigger exactly once.
|
||||
- Verify training captions keep trigger exactly once through
|
||||
`tools/prompt_smoke.py`.
|
||||
|
||||
Medium-term:
|
||||
|
||||
@@ -293,7 +300,8 @@ Medium-term:
|
||||
|
||||
## Recommended Next Passes
|
||||
|
||||
1. Add metadata invariant checks and small smoke fixtures.
|
||||
1. Expand `tools/prompt_smoke.py` with camera-scene, explicit nude, and
|
||||
different-camera pair fixtures.
|
||||
2. Split Krea action/POV/clothing helpers into separate modules.
|
||||
3. Add category JSON pool reference validation to `tools/prompt_map_audit.py`.
|
||||
4. Extract scene-camera adapters from `prompt_builder.py`.
|
||||
|
||||
@@ -655,6 +655,28 @@ The script does not import ComfyUI. It parses the repo and prints:
|
||||
Use its output to spot doc drift after adding a new node or pool. If a new node
|
||||
or pool appears there but not in this map, update the relevant route table.
|
||||
|
||||
## Behavioral Smoke Helper
|
||||
|
||||
Route behavior should be checked when changing prompt generation, pair assembly,
|
||||
formatter metadata parsing, trigger handling, expression disabling, or scene
|
||||
continuity. Run:
|
||||
|
||||
```bash
|
||||
python tools/prompt_smoke.py
|
||||
```
|
||||
|
||||
The script does not import ComfyUI. It builds representative metadata rows and
|
||||
pair metadata through the core Python APIs, then verifies:
|
||||
|
||||
- generated rows keep prompt, negative prompt, scene, composition, action item,
|
||||
and role graph metadata populated;
|
||||
- Krea2, SDXL, and natural caption routes use metadata instead of text fallback;
|
||||
- SDXL and caption trigger handling keeps one trigger;
|
||||
- negative prompts do not duplicate comma-list items;
|
||||
- same-room Insta/OF continuity keeps prompt text and `hardcore_row.scene_text`
|
||||
synchronized;
|
||||
- expression-disabled rows do not fall back to generated expression text.
|
||||
|
||||
## Editing Cheatsheet
|
||||
|
||||
| Symptom | First file/function to inspect |
|
||||
|
||||
Reference in New Issue
Block a user