examples/multi_repo_dummy/README.md

# Multi-Repo Dummy Example

This example demonstrates four prompts that target the same two repositories
(alpha and beta) and write a commit in each repo:

- Prompt 01 runs with Codex.
- Prompt 02 runs with Claude and only allows the Bash tool to write the files.
- Prompt 03 runs with Amp.
- Prompt 04 runs with Gemini.

The standalone runner installs the local `prompt_runner_sdk` checkout plus
`agent_session_manager`; provider execution still goes through ASM core lane,
with no provider SDK packages.

## 1) Create the dummy repos

Run the setup script. It recreates two clean git repos under
`examples/multi_repo_dummy/repos`.

```bash
bash examples/multi_repo_dummy/setup.sh
```

## 2) Run the prompts

**From the project root:**

```bash
mix run run_prompts.exs --config examples/multi_repo_dummy/runner_config.exs --list
mix run run_prompts.exs --config examples/multi_repo_dummy/runner_config.exs --run 01
mix run run_prompts.exs --config examples/multi_repo_dummy/runner_config.exs --run 02
mix run run_prompts.exs --config examples/multi_repo_dummy/runner_config.exs --run 03
mix run run_prompts.exs --config examples/multi_repo_dummy/runner_config.exs --run 04
```

**From the example directory (standalone):**

```bash
cd examples/multi_repo_dummy
elixir run_prompts.exs --list
elixir run_prompts.exs --run 01
elixir run_prompts.exs --run 02
elixir run_prompts.exs --run 03
elixir run_prompts.exs --run 04
```

After each run, you should see:
- `examples/multi_repo_dummy/repos/alpha/NOTES.md`
- `examples/multi_repo_dummy/repos/beta/NOTES.md`
- separate commits in each repo

## 3) Clean up

```bash
bash examples/multi_repo_dummy/cleanup.sh
```

## Recovery Notes

This multi-repo pack is also the manual proof lane for provider-session recovery across a prompt
that spans more than one repo. The hardened runner now keeps provider-native recovery metadata in
the same execution path instead of replaying the full prompt blindly after a recoverable runtime
failure.