[integrations] Chrome capture: skip per-turn LLM classification on bulk sync - #450
Conversation
…lk sync Bulk sync captures (Claude/ChatGPT/Gemini backfill, captureMode 'sync') now send skip_classification: true on the /ingest payload. Smart-ingest gateways use the flag to skip the per-item classification LLM call, so a 400-turn backfill fires ~400 fewer LLM calls. Manual captures (user clicked Capture on one exchange) still classify. Gateways that don't support the flag ignore the extra field. All three bulk paths funnel through the shared payload builder in processCaptureRequest, and the retry queue re-sends the stored payload whole, so the flag survives retries. Bumps manifest to 0.6.1 with a README changelog entry. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LxP7M99m4EF5Ve7rn3SNKH
OB1 PR Gate✅ Folder structure — All files are in allowed directories Result: All 15 checks passed! Ready for human review. Post-Merge TasksThese don't block merge — they're reminders for admins after this PR lands.
|
What
Bulk sync captures from the Chrome capture extension now send
skip_classification: trueon the/ingestpayload. Manual captures are unchanged and still classify.Why
All three bulk-sync paths (Claude, ChatGPT, Gemini) funnel every turn through the gateway's smart-ingest pipeline. Without the flag, a 400-turn backfill fires ~400 per-item classification LLM calls on top of extraction — pure cost, since sync-mode turns arrive with full source provenance already attached (
extension_platform, conversation IDs, page URL, client fingerprint).Verified against a live smart-ingest deployment: A/B dry-runs of the same conversational turn with and without the flag produce identical extraction results (the flag only gates the later per-item classification pass), so no capture behavior changes other than skipping that call.
How
One line in the shared payload builder in
processCaptureRequest(background/service-worker.js):captureMode: 'sync'; manual clicks arrive as'manual'→ flag isfalse.Also bumps
manifest.jsonto 0.6.1, adds a README changelog entry, and updatesmetadata.json(1.1.2 / 2026-07-14).Testing
node --checkon service-worker.js; JSON validity on manifest/metadata.extracted_countwith/without the flag; provenance metadata persisted; dedup statuses unaffected.🤖 Generated with Claude Code
https://claude.ai/code/session_01LxP7M99m4EF5Ve7rn3SNKH