{ "name": "capture.offer — attachment on a monitored type is taken", "description": "Golden fixture. tests/conformance replays this against the real daemon AND the TS client. If either side drifts, this goes red before the lanes ever integrate. url is example.org (RFC 2606), not a real download source: 'take' against a real veloxd (tests/conformance/run.sh) admits a real task and hands it to the engine for real, and no fixture may do that against a real external URL. contentLength is a plausible-but-small 5 MiB rather than a real ISO's size: the 'Programs' category's saveDir is a migration-seeded builtin (~/Downloads/Programs, daemon/src/store/migrations/0001_initial.sql), not something an isolated test run's settings can redirect, so 'take' always sparse-preallocates into that real path on whatever machine runs this suite -- keeping the declared size small keeps that footprint trivial instead of a real ISO's worth of disk. transport is uds only: a real 'take' persists an active task, so replaying this same fixture again on a second live transport against the same daemon would correctly dedupe against it (capture.offer dedupes by exact URL) and get 'ignore' instead -- an artifact of replaying one fixture against one shared daemon over two transports, not a behaviour to golden.", "transport": "uds", "request": { "jsonrpc": "2.0", "id": 42, "method": "capture.offer", "params": { "url": "https://example.org/dl/ubuntu-26.04-desktop-amd64.iso", "method": "GET", "tabUrl": "https://example.org/26.04/", "headers": { "User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:154.0) Gecko/20100101 Firefox/154.0", "Referer": "https://example.org/26.04/", "Accept": "*/*" }, "cookies": [], "contentType": "application/octet-stream", "contentLength": 5242880, "contentDisposition": "attachment; filename=\"ubuntu-26.04-desktop-amd64.iso\"", "filename": "ubuntu-26.04-desktop-amd64.iso", "origin": "moz-extension://11111111-2222-3333-4444-555555555555" } }, "response": { "jsonrpc": "2.0", "id": 42, "result": { "action": "take", "taskId": "$uuid", "reason": null } }, "assertions": [ "response arrives within 750 ms", "a task exists afterwards with state in [queued, connecting, downloading]", "the task's saveDir resolves to the 'Programs' category folder for .iso", "the Referer and User-Agent from params.headers are replayed on the daemon's own request" ] }