Context
The ragTech team deletes episode artifacts from deckcreate after each episode is published. The poddedit rewrite (ragTechDev/poddedit) uses transcript.json and camera-profiles.json from real shipped episodes as test fixtures for its compositor (see poddedit#4). Without an explicit archiving step, these files are lost before they can be committed as fixtures.
Known gap: @natashaannn is currently the only team member who still has artifacts from a past episode ("Is AI a Bubble?") in deckcreate. All subsequent editors must archive before deleting — this issue makes that structural rather than relying on memory.
What to add
After merge-doc completes in scripts/wizard.js, add a prompt:
Archive fixtures to poddedit before continuing?
Saves transcript.json + camera-profiles.json to the poddedit repo for use as compositor test fixtures.
(y/N)
If the user selects y:
- Prompt for the episode slug to use as the fixture directory name (default: a slugified version of the episode title from
transcript.json meta, or a timestamp if no title is set).
- Resolve the poddedit repo path — check for a
PODDEDIT_REPO environment variable first, then fall back to prompting the user for the path.
- Copy
public/transcribe/output/transcript.json → {poddedit-path}/tests/fixtures/{slug}/transcript.json
- Copy
public/camera-profiles.json → {poddedit-path}/tests/fixtures/{slug}/camera-profiles.json
- Print:
Fixtures archived to {poddedit-path}/tests/fixtures/{slug}/. Remember to commit them in poddedit.
If the user selects n (default): skip silently and continue.
Acceptance criteria
Given merge-doc has run and the wizard continues
When the archive prompt appears and the user selects y
Then both files are copied to the correct paths in the poddedit repo and a confirmation message is printed with the full path
Given the user selects n or presses enter
When the prompt is dismissed
Then the wizard continues to the next step with no side effects
Given PODDEDIT_REPO is set in the environment
When the user selects y
Then the path is used without prompting — no interactive path entry required
Given the poddedit repo path does not exist or tests/fixtures/ does not exist
When the copy is attempted
Then the wizard prints a clear error and skips the copy — it does not create directories in an unexpected location
Out of scope
- Automatically committing or pushing the files in the poddedit repo — copy only; the editor commits manually
- Modifying or validating the content of the files before archiving
- Archiving any file other than
transcript.json and camera-profiles.json
Hard constraints
- Default answer is n — the prompt must not archive silently or default to yes
- The wizard must continue normally whether or not the user archives — this is never a blocking step
- No new npm dependencies; implement with Node.js built-ins (
fs, path, readline)
Related
- poddedit#4 — the fixture issue this archiving step feeds
scripts/wizard.js — entry point; add the prompt after the merge-doc step
Context
The ragTech team deletes episode artifacts from deckcreate after each episode is published. The poddedit rewrite (ragTechDev/poddedit) uses
transcript.jsonandcamera-profiles.jsonfrom real shipped episodes as test fixtures for its compositor (see poddedit#4). Without an explicit archiving step, these files are lost before they can be committed as fixtures.Known gap: @natashaannn is currently the only team member who still has artifacts from a past episode ("Is AI a Bubble?") in deckcreate. All subsequent editors must archive before deleting — this issue makes that structural rather than relying on memory.
What to add
After
merge-doccompletes inscripts/wizard.js, add a prompt:If the user selects y:
transcript.jsonmeta, or a timestamp if no title is set).PODDEDIT_REPOenvironment variable first, then fall back to prompting the user for the path.public/transcribe/output/transcript.json→{poddedit-path}/tests/fixtures/{slug}/transcript.jsonpublic/camera-profiles.json→{poddedit-path}/tests/fixtures/{slug}/camera-profiles.jsonFixtures archived to {poddedit-path}/tests/fixtures/{slug}/. Remember to commit them in poddedit.If the user selects n (default): skip silently and continue.
Acceptance criteria
Given merge-doc has run and the wizard continues
When the archive prompt appears and the user selects y
Then both files are copied to the correct paths in the poddedit repo and a confirmation message is printed with the full path
Given the user selects n or presses enter
When the prompt is dismissed
Then the wizard continues to the next step with no side effects
Given
PODDEDIT_REPOis set in the environmentWhen the user selects y
Then the path is used without prompting — no interactive path entry required
Given the poddedit repo path does not exist or
tests/fixtures/does not existWhen the copy is attempted
Then the wizard prints a clear error and skips the copy — it does not create directories in an unexpected location
Out of scope
transcript.jsonandcamera-profiles.jsonHard constraints
fs,path,readline)Related
scripts/wizard.js— entry point; add the prompt after themerge-docstep