---
title: "Run detail summaries and MCP parent tools"
date: "2026-05-17"
---

<Warning>
**Session creation now requires typed permissions.** `POST /api/v1/sessions` requires `permissions` to be one of `read-only`, `read-write`, or `full`, and session records always return a non-null permissions value.

To migrate:
1. Send an explicit `permissions` value in every `CreateSessionRequest`.
2. Regenerate clients so the generated type uses the `PermissionLevel` enum or union.
3. Clear old local dev session records with `"permissions": null` if they fail to deserialize.
</Warning>

## Run detail overview and children

Run detail now surfaces more run state without forcing you to tab-hop. The Overview tab includes a summary panel for created-by, changes, sandbox, cost, and artifacts, while pull request links are promoted into a header pill that stays visible across tabs.

Parent and child relationships also have a dedicated Children tab. It reuses the run list row layout, shows a zero state when no child runs exist, and includes a refresh action that updates both the child list and the parent count badge.

## MCP run orchestration parity

Fabro MCP tools now understand parent and child run relationships. MCP clients can create child runs, search direct children, link or unlink an existing run's parent, and receive `parent_id` plus `children_count` in run summaries.

MCP clients can also send a bare `interrupt` action through `fabro_run_interact`. This pauses an active API-mode agent round without requiring follow-up steering text in the same tool call.

## More

<Accordion title="API">
- `POST /api/v1/sessions` now rejects missing or invalid `permissions` with `422 Unprocessable Entity`
- Run summaries now include `children_count` for parent-aware UI and MCP tools
- Generated TypeScript clients now expose typed `PermissionLevel`
</Accordion>

<Accordion title="Workflows">
- ACP and workflow template rendering now resolve static MiniJinja `{% include %}` partials relative to the file being rendered
- Manifest validation now bundles static prompt and goal include dependencies so `fabro validate` can resolve them
</Accordion>

<Accordion title="Improvements">
- Provider auth mode, primary auth header policy, billing policy, agent profile, base URLs, and probe markers now live in provider catalog data
- LLM readiness checks now report adapter construction failures without making catalog parsing adapter-specific
- The Children tab uses the wider run detail layout and hides the count badge when the value is zero
</Accordion>

<Accordion title="Fixes">
- Fixed MiniJinja include partials failing with `template not found` when the partial lived next to the rendered prompt or goal file
- Fixed Children tab layout narrowing compared with the rest of run detail
- Fixed zero-count Children tab badges adding visual noise
</Accordion>
