apply_product_review_operations First read /docs/mcp/apply_product_review_operations and the run's prompt. Late platforms: add_platforms snapshots platformSetups; follow that entry's prompt and include setupId in report_access/publish_hosted_preview. Record checkout before building; build, upload/start and report ready immediately. After ready, patch whatsNew (max 50 commits) and timings with update_setup_details; do Journal entries, reviews and verification in the background. Qraft records setupTimings.time_to_playable. Static hosting: upload ZIP with root index.html; publish_hosted_preview alone returns createdIds.hostingJob. Read hosting.status until ready/failed before sharing URL. Digest: create tagged cards, complete_digest. Stop the build before reporting stopped. Edit a Product Evaluation tab. Hosted static tests: upload a build ZIP (root index.html, relative paths), then publish_hosted_preview {runId,assetId,checkout?,whatsNew?} alone; read the run for its public short URL and expiry. Guest notes go to the run; ending it removes hosting. Setup: start_setup can select deploymentIds from settings; the run snapshots those options and its output journal in setupPrompt. Follow that prompt: build, upload/start, then immediately report_access {runId, status:ready, links:[{label,url}], url, instructions, checkout:{commit, branch, dirty, capturedAt, repository?}}; after ready, patch whatsNew/timings/instructions with update_setup_details {runId,setupId?,whatsNew?,setupTimings?,instructions?}, and do Journal entries and verification in the background. Qraft records setupTimings.time_to_playable. Choose the first comparisonCandidates entry with a different commit; summarize at most the latest 50 commits in whatsNew, disclosing truncation or unavailable history; capture the actual tested Git checkout before building (full commit; branch null for detached HEAD); omit checkout and explain in instructions only if unavailable (url may be null for device builds; or failed with error). Return every access destination (localhost, friendly LAN, HTTPS fallback, downloads) in links with clear labels. Qraft shows each link with QR/Open/Copy above Setup. url remains the primary link for older clients; instructions contain login, installation and shutdown details. Shutdown: stop it, then report_access status:stopped. add_note {noteId, runId, text, attachments}. Digest: follow the digest's prompt; create cards (apply_kanban_operations) in its target column labelled with the run's tag, then complete_digest {runId, digestId, cards:[{cardId, title, noteIds}]}; if shutDownAfter, shut down after.