# emet 1.4.2 — Collector-backed interactive mode release

## Release summary

Agent-steered interactive `emet` mode using the internal collector registry from 1.4.1. Adds schema options (`platforms`, `interactive`, `sessionId`, `action`, `queryOverride`, `selectedResultIds`, `selectedUrls`, `maxResultsPerPlatform`) to both MCP and Pi tool definitions. In-memory bounded sessions with 30min TTL. No new MCP tools, no new dependencies.

## What's new

- **Collector interactive mode:** New `shouldRunCollectorInteractive()` and `runCollectorInteractive()` in `lib/web-research.js` that return compact structured results with stable result IDs, `nextActions`, and session state for AI agent steering.
- **Agent steering contract:** Interactive responses include `collectorResults`, `observedGaps`, `nextActions`, `limits` (maxTurns/remainingTurns), and a compact `contentText` summary. The agent can call `search`, `refine` (with `queryOverride`), `fetch` (by `selectedResultIds` or `selectedUrls`), or `synthesize` via the existing `emet` tool — no new MCP tools.
- **Session management:** In-memory `Map` with 30min TTL, 100 session cap, per-session turn tracking.
- **Platform inference:** Conservative `inferQueryPlatforms()` triggers for HN, V2EX, and GitHub (issues/repos/discussions only — not passing mentions).
- **Interactive options schema:** New fields in both MCP (`lib/tool-schema.js`) and Pi (`index.js`) tool schemas.
- **Collector flow tests:** 13 tests covering schema options, platform inference, structured results, session turns, max turns enforcement, and unavailable collector degradation.

## Breaking changes

None. Public MCP tools remain exactly `emet` and `web_fetch`.

## Changelog reference

See [CHANGELOG.md](../CHANGELOG.md) for the full changelog.
