# Recorded pm-skills demonstration

This is a recorded run against **fictional source material**, not a customer result or a benchmark. The fictional product, research and measurements were written before the review. The complete review is preserved without editing.

Codex created the fictional input, context and follow-up author decisions in this planning session. The PM skill ran in Claude Code Fable and produced the recorded review and proposed fixes. James did not make the fictional product decisions. Both model runs took place on 13 September 2026; their UTC start/end times are recorded in the metadata. This demonstration did not exercise the Codex runtime.

## Read the sequence

1. [Product context](context.md): the supplied scenario, facts and constraints.
2. [Input brief](input-brief.md): the deliberately imperfect draft going to engineering.
3. [Exact review prompt](review-prompt.txt).
4. [Complete review](review.md) and [run metadata](review-run.json).
5. [Author's follow-up decisions](author-decisions.md): new choices supplied after the review. These must not be attributed to the reviewing model.
6. [Exact refinement prompt](refine-prompt.txt), [complete proposed refinement](refinement.md) and [second-run metadata](refine-run.json).

The review rated the draft ROUGH. Its first finding is a P0 contradiction in the mixed-success result state. It also found P1 problems with failure reasons and timeout retries, and recorded several P2 questions. These are that run's assessments, not independent proof that the skill's ranking is correct.

The refinement proposes replacement passages. It records an additional assumption and two timeout details that still require author confirmation, keeps P2 questions open and does not claim an improved verdict. It has not been applied to the original brief. The full record includes those limitations.

## Runtime and source

- Claude Code 2.1.263, model alias `fable`, effort `xhigh`.
- The primary model resolved to `claude-fable-5-1`. Claude Code's metadata also reports a small internal Haiku call; the review itself used Fable.
- Actual local PM plugin: version 2.17.0, clean product checkout at commit `4f920cfe4ac9e29000319c3ffc353826d5154c35` in [jameshemson/pm-skills](https://github.com/jameshemson/pm-skills/tree/4f920cfe4ac9e29000319c3ffc353826d5154c35).
- File hashes are in the run metadata. The complete model text is in the Markdown record; metadata omits local session identifiers and authentication details.

## Repeat the procedure

Use a checkout of pm-skills at the recorded commit and a Claude Code installation with access to Fable. The example below assumes this website repository is the current directory. Set `PM_PLUGIN_CHECKOUT` to the product checkout. Replace the absolute paths in the prompt files with the paths of these same files in your checkout; do not alter their content otherwise.

Changing the paths changes the prompt-file hashes. The recorded hashes identify the original files; save new hashes for any adapted rerun and keep the original record intact.

```sh
PM_PLUGIN_CHECKOUT=/path/to/pm-skills

claude -p --model fable --effort xhigh \
  --no-session-persistence --output-format json \
  --permission-mode dontAsk \
  --tools 'Read,Glob,Grep,Skill' \
  --allowedTools 'Read,Glob,Grep,Skill' \
  --setting-sources '' --strict-mcp-config \
  --mcp-config '{"mcpServers":{}}' --no-chrome \
  --plugin-dir "$PM_PLUGIN_CHECKOUT" --add-dir "$PM_PLUGIN_CHECKOUT" \
  < docs/refresh/demo/review-prompt.txt > review-result.json
```

Extract the `result` text from the JSON into a separate Markdown file before continuing. To repeat the full workflow, inspect that new review and make an explicit author decision about its findings. Do not silently pass the old review off as the new one.

The recorded refinement was a second CLI invocation with the same options, reading `refine-prompt.txt`. That prompt reconstructs the second turn from the full saved review and the explicit author decisions. It is not an implicit continuation of an unsaved Claude session. Point it to the appropriate recorded or newly generated review and state which one you are using.

The skill and model are loaded by the command; it does not install anything into a reader's global settings. Model output may vary on repeat runs, even with the same inputs. This record demonstrates the workflow and an inspectable result, not a measured improvement over a baseline model or prompt.
