# Backlog: Gateway artifacts + tool result rendering in AbstractAssistant

## Summary
Render tool outputs and artifacts from gateway runs, and provide clear UX for file outputs and workspace constraints.

## Why
- Users need to see tool results and file outputs to trust gateway execution.
- Gateway workspace policies can block writes; the UI must surface this clearly.
- Artifacts are the durable output channel in gateway‑first mode.

## Scope
### In scope
- Display tool call results and errors in the chat history (non‑silent).
- Fetch and render gateway artifacts (text + downloadable binaries) in the UI.
- Show actionable guidance when workspace policies block file writes.

### Out of scope
- Full artifact gallery or advanced file preview UX.
- Automated workspace mount configuration.

## Dependencies
- Gateway artifact endpoints and ledger tool result records.
- Existing message rendering pipeline in `QtChatBubble`.

## Expected outcomes
- Tool outputs are visible and traceable in the UI.
- Files generated by tools are easy to retrieve.
- Workspace restriction failures are clear and actionable.

## Full report
### What changed
- Tool results from gateway ledgers now render as visible chat bubbles (`ui_kind=tool_result`).
- Tool outputs carry artifact references that show up as clickable chips; artifact download happens on click.
- Added workspace restriction hints for file‑write errors.

### Files touched
- `abstractassistant/gateway/history_seed.py`
- `abstractassistant/gateway/adapter.py`
- `abstractassistant/gateway/client.py`
- `abstractassistant/core/transcript_summary.py`
- `abstractassistant/ui/qt_bubble.py`
- `abstractassistant/ui/history_dialog.py`
- `abstractassistant/tests/basic/test_transcript_summary.py`
- `abstractassistant/docs/faq.md`

### Tests
- `python -m pytest abstractassistant/tests`
- Gateway E2E (OpenAI / gpt-5-mini) on `http://127.0.0.1:8081` (run id `df63e6f7-9b96-4736-a20d-9e89a7bc5624`, model `gpt-5-mini-2025-08-07`)

### Results
- Passed: 65
- Skipped: 7
- Warnings: 36 (existing warnings)
