CE install follow-ups from end-to-end verification
Found while verifying Jaah CE end to end (Task 10767) on a local install built from develop's tree (compose `build:` blocks, container node).
1. **Transcripts land on orphan session rows.** On CE, each finished task session's row (`sessions.task_id` set) stays `transcript_status = pending`. The uploaded transcript is filed under a separate "Reconstructed from the node" row with no task: the ACP-host session id differs from the Claude session id. Attach the transcript to the task's own session row, so Task → session → transcript opens it and Audit › Sessions shows no orphans.
2. **Checkout-failed question drops git's cause.** The question reads `failed (rc 128): and the repository exists.`, a tail fragment of git's stderr. Show git's `fatal:` line (e.g. `'…/pool-mirrors/1.git' does not appear to be a git repository`) so the operator can act on it.
3. **CE node tries to stop slot stacks with docker it lacks.** `destroy_slot` runs `docker compose -p p1-1 down -v` inside the CE node container, which has no docker. It logs `failed (rc=127)` on every slot release. Skip the stack-stop step where the node has no docker (or no stack), instead of failing it.
4. **CE General settings shows a cloud-only knob.** "CPU profiling … logs its hottest stacks to CloudWatch" appears on CE, which has no CloudWatch. Hide it on CE, or put it behind a feature in `packages/editions/features.toml`.
5. **Stale breadcrumb.** Accounts › Add account reads "Accounts › Brains › New account". Drop the "Brains" crumb.
6. **Runners cannot hand-run `mirrors.yml`.** `jaah-forge` has no workflow-dispatch verb (`run` has list/view/rerun; `api` is GET only). So the AC "hand-run `mirrors.yml` with `mirror: jaah-ce`, no publish" cannot be done by a runner. Add `jaah-forge run dispatch <workflow> --ref <ref> -f key=value`.
Out of scope: publishing any mirror, changing repo visibility, cloud behaviour.
Done means:
- Each numbered item is fixed, or explicitly declined with a reason in the PR body.
- Item 1: on a CE install, a finished task's session shows `transcript_status = uploaded` and its transcript opens from the task.
- Item 6: `jaah-forge run dispatch mirrors.yml --ref develop -f mirror=jaah-ce -f publish=none` starts a run.
Outcome
All 6 CE follow-ups fixed and verified on a local CE install (task transcript now uploaded, no orphan rows); added jaah-forge run dispatch and fixed mirrors.yml ce-tree (branch run green). PR #7196 merged c91f38e; deploy superseded. Filed draft 10830. Memory: none applied.
Artifacts
Activity
- Created
- Run
- Runner started
- Runner ended (done)