{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"file-history-snapshot","messageId":"0f0a07a7-6a8e-4ce3-abb0-e326181f0545","snapshot":{"messageId":"0f0a07a7-6a8e-4ce3-abb0-e326181f0545","trackedFileBackups":{},"timestamp":"2026-06-09T18:07:37.096Z"},"isSnapshotUpdate":false}
{"parentUuid":null,"isSidechain":false,"promptId":"a91f2f5e-a33b-4b8e-8364-88feb48f57cc","type":"user","message":{"role":"user","content":"<local-command-caveat>Caveat: The messages below were generated by the user while running local commands. DO NOT respond to these messages or otherwise consider them in your response unless the user explicitly asks you to.</local-command-caveat>"},"isMeta":true,"uuid":"9bf8a0d3-5eac-4154-b0d1-ed89dee38bc2","timestamp":"2026-06-09T18:07:37.096Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9bf8a0d3-5eac-4154-b0d1-ed89dee38bc2","isSidechain":false,"promptId":"a91f2f5e-a33b-4b8e-8364-88feb48f57cc","type":"user","message":{"role":"user","content":"<command-name>/model</command-name>\n            <command-message>model</command-message>\n            <command-args></command-args>"},"uuid":"0f0a07a7-6a8e-4ce3-abb0-e326181f0545","timestamp":"2026-06-09T18:07:37.096Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0f0a07a7-6a8e-4ce3-abb0-e326181f0545","isSidechain":false,"promptId":"a91f2f5e-a33b-4b8e-8364-88feb48f57cc","type":"user","message":{"role":"user","content":"<local-command-stdout>Set model to \u001b[1mFable 5\u001b[22m and saved as your default for new sessions</local-command-stdout>"},"uuid":"e827da95-5962-40c8-95a9-085117770d6a","timestamp":"2026-06-09T18:07:37.096Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e827da95-5962-40c8-95a9-085117770d6a","isSidechain":false,"type":"system","subtype":"local_command","content":"<command-name>/mcp</command-name>\n            <command-message>mcp</command-message>\n            <command-args></command-args>","level":"info","timestamp":"2026-06-09T18:07:47.825Z","uuid":"64548b30-c5eb-41ba-8d9c-eef95eb0cb3c","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"64548b30-c5eb-41ba-8d9c-eef95eb0cb3c","isSidechain":false,"type":"system","subtype":"local_command","content":"<local-command-stdout>MCP dialog dismissed</local-command-stdout>","level":"info","timestamp":"2026-06-09T18:07:47.825Z","uuid":"cc1f8683-ad7a-4133-870e-68aed0b83df0","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"file-history-snapshot","messageId":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","snapshot":{"messageId":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","trackedFileBackups":{},"timestamp":"2026-06-09T18:14:31.432Z"},"isSnapshotUpdate":false}
{"parentUuid":"cc1f8683-ad7a-4133-870e-68aed0b83df0","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via Pest (unit, and functional tests). You must also additional simulate user behaviour using the Playwright MPC and confirm that all acceptance criterias are met. If you find bugs, you must fix them. The result is a perfect shop system. All requirements are perfectly implemented. All acceptance criterias are met, tested and confirmed by you.\n\nContinuously keep track of the progress in specs/progress.md Commit your progress after every relevant iteration with a meaningful message.\n\nWhen implementation is fully done, then make a full review meeting and showcase all features (customer- and admin-side) to me. In case bugs appear, you must fix them all and restart the review meeting.\n"},"uuid":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","timestamp":"2026-06-09T18:14:31.431Z","permissionMode":"bypassPermissions","promptSource":"typed","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","isSidechain":false,"attachment":{"type":"deferred_tools_delta","addedNames":["CronCreate","CronDelete","CronList","EnterPlanMode","EnterWorktree","ExitPlanMode","ExitWorktree","ListMcpResourcesTool","Monitor","NotebookEdit","PushNotification","ReadMcpResourceTool","RemoteTrigger","SendMessage","TaskCreate","TaskGet","TaskList","TaskOutput","TaskStop","TaskUpdate","TeamCreate","TeamDelete","WebFetch","WebSearch","mcp__claude_ai_Google_Calendar__authenticate","mcp__claude_ai_Google_Calendar__complete_authentication","mcp__herd__get_all_php_versions","mcp__herd__get_all_sites","mcp__herd__get_site_information","mcp__herd__install_php_version","mcp__herd__isolate_or_unisolate_site","mcp__herd__secure_or_unsecure_site","mcp__laravel-boost__application-info","mcp__laravel-boost__browser-logs","mcp__laravel-boost__database-connections","mcp__laravel-boost__database-query","mcp__laravel-boost__database-schema","mcp__laravel-boost__get-absolute-url","mcp__laravel-boost__last-error","mcp__laravel-boost__read-log-entries","mcp__laravel-boost__search-docs","mcp__playwright__browser_click","mcp__playwright__browser_close","mcp__playwright__browser_console_messages","mcp__playwright__browser_drag","mcp__playwright__browser_drop","mcp__playwright__browser_evaluate","mcp__playwright__browser_file_upload","mcp__playwright__browser_fill_form","mcp__playwright__browser_handle_dialog","mcp__playwright__browser_hover","mcp__playwright__browser_navigate","mcp__playwright__browser_navigate_back","mcp__playwright__browser_network_request","mcp__playwright__browser_network_requests","mcp__playwright__browser_press_key","mcp__playwright__browser_resize","mcp__playwright__browser_run_code_unsafe","mcp__playwright__browser_select_option","mcp__playwright__browser_snapshot","mcp__playwright__browser_tabs","mcp__playwright__browser_take_screenshot","mcp__playwright__browser_type","mcp__playwright__browser_wait_for"],"addedLines":["CronCreate","CronDelete","CronList","EnterPlanMode","EnterWorktree","ExitPlanMode","ExitWorktree","ListMcpResourcesTool","Monitor","NotebookEdit","PushNotification","ReadMcpResourceTool","RemoteTrigger","SendMessage","TaskCreate","TaskGet","TaskList","TaskOutput","TaskStop","TaskUpdate","TeamCreate","TeamDelete","WebFetch","WebSearch","mcp__claude_ai_Google_Calendar__authenticate","mcp__claude_ai_Google_Calendar__complete_authentication","mcp__herd__get_all_php_versions","mcp__herd__get_all_sites","mcp__herd__get_site_information","mcp__herd__install_php_version","mcp__herd__isolate_or_unisolate_site","mcp__herd__secure_or_unsecure_site","mcp__laravel-boost__application-info","mcp__laravel-boost__browser-logs","mcp__laravel-boost__database-connections","mcp__laravel-boost__database-query","mcp__laravel-boost__database-schema","mcp__laravel-boost__get-absolute-url","mcp__laravel-boost__last-error","mcp__laravel-boost__read-log-entries","mcp__laravel-boost__search-docs","mcp__playwright__browser_click","mcp__playwright__browser_close","mcp__playwright__browser_console_messages","mcp__playwright__browser_drag","mcp__playwright__browser_drop","mcp__playwright__browser_evaluate","mcp__playwright__browser_file_upload","mcp__playwright__browser_fill_form","mcp__playwright__browser_handle_dialog","mcp__playwright__browser_hover","mcp__playwright__browser_navigate","mcp__playwright__browser_navigate_back","mcp__playwright__browser_network_request","mcp__playwright__browser_network_requests","mcp__playwright__browser_press_key","mcp__playwright__browser_resize","mcp__playwright__browser_run_code_unsafe","mcp__playwright__browser_select_option","mcp__playwright__browser_snapshot","mcp__playwright__browser_tabs","mcp__playwright__browser_take_screenshot","mcp__playwright__browser_type","mcp__playwright__browser_wait_for"],"removedNames":[],"readdedNames":[],"pendingMcpServers":[]},"type":"attachment","uuid":"03ab216b-7c39-4da8-a57a-8a56d1428700","timestamp":"2026-06-09T18:14:31.431Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"03ab216b-7c39-4da8-a57a-8a56d1428700","isSidechain":false,"attachment":{"type":"mcp_instructions_delta","addedNames":["laravel-boost"],"addedBlocks":["## laravel-boost\nLaravel ecosystem MCP server offering database schema access, error logs, semantic documentation search, and more. Boost helps with code generation."],"removedNames":[]},"type":"attachment","uuid":"f12d1952-752b-43e3-aebb-23c2fb22dd88","timestamp":"2026-06-09T18:14:31.431Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f12d1952-752b-43e3-aebb-23c2fb22dd88","isSidechain":false,"attachment":{"type":"skill_listing","content":"- frontend-design: Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.\n- roadmap: Run a structured, multi-round Q&A brainstorming session that turns a rough product idea into a roadmap of vertical-slice epics, written to specs/roadmap.md. Use when the user wants to plan a project or feature roadmap, scope an MVP, or break work into independently verifiable epics before any coding.\n- spec-to-cli: Build a polished TypeScript ESM CLI from an OpenAPI/Swagger spec using codegen plus the fellowship team-mode orchestration pattern. Trigger when the user asks to build a CLI that wraps a REST API, generate commands from swagger/openapi, or replicate the finanzfluss-cli architecture.\n- developing-with-fortify: Laravel Fortify headless authentication backend development. Activate when implementing authentication features including login, registration, password reset, email verification, two-factor authentication (2FA/TOTP), profile updates, headless auth, authentication scaffolding, or auth guards in Laravel applications.\n- fluxui-development: Use this skill for Flux UI development in Livewire applications only. Trigger when working with <flux:*> components, building or customizing Livewire component UIs, creating forms, modals, tables, or other interactive elements. Covers: flux: components (buttons, inputs, modals, forms, tables, date-pickers, kanban, badges, tooltips, etc.), component composition, Tailwind CSS styling, Heroicons/Lucide icon integration, validation patterns, responsive design, and theming. Do not use for non-Livewire frameworks or non-component styling.\n- laravel-best-practices: Apply this skill whenever writing, reviewing, or refactoring Laravel PHP code. This includes creating or modifying controllers, models, migrations, form requests, policies, jobs, scheduled commands, service classes, and Eloquent queries. Triggers for N+1 and query performance issues, caching strategies, authorization and security patterns, validation, error handling, queue and job configuration, route definitions, and architectural decisions. Also use for Laravel code reviews and refactoring existing Laravel code to follow best practices. Covers any task involving Laravel backend PHP code patterns.\n- livewire-development: Use for any task or question involving Livewire. Activate if user mentions Livewire, wire: directives, or Livewire-specific concepts like wire:model, wire:click, wire:sort, or islands, invoke this skill. Covers building new components, debugging reactivity issues, real-time form validation, drag-and-drop, loading states, migrating from Livewire 3 to 4, converting component formats (SFC/MFC/class-based), and performance optimization. Do not use for non-Livewire reactive UI (React, Vue, Alpine-only, Inertia.js) or standard Laravel forms without Livewire.\n- pest-testing: Use this skill for Pest PHP testing in Laravel projects only. Trigger whenever any test is being written, edited, fixed, or refactored — including fixing tests that broke after a code change, adding assertions, converting PHPUnit to Pest, adding datasets, and TDD workflows. Always activate when the user asks how to write something in Pest, mentions test files or directories (tests/Feature, tests/Unit, tests/Browser), or needs browser testing, smoke testing multiple pages for JS errors, or architecture tests. Covers: test()/it()/expect() syntax, datasets, mocking, browser testing (visit/click/fill), smoke testing, arch(), Livewire component tests, RefreshDatabase, and all Pest 4 features. Do not use for factories, seeders, migrations, controllers, models, or non-test PHP code.\n- tailwindcss-development: Always invoke when the user's message includes 'tailwind' in any form. Also invoke for: building responsive grid layouts (multi-column card grids, product grids), flex/grid page structures (dashboards with sidebars, fixed topbars, mobile-toggle navs), styling UI components (cards, tables, navbars, pricing sections, forms, inputs, badges), adding dark mode variants, fixing spacing or typography, and Tailwind v3/v4 work. The core use case: writing or fixing Tailwind utility classes in HTML templates (Blade, JSX, Vue). Skip for backend PHP logic, database queries, API routes, JavaScript with no HTML/CSS component, CSS file audits, build tool configuration, and vanilla CSS.\n- deep-research: Deep research harness — fan-out web searches, fetch sources, adversarially verify claims, synthesize a cited report. - When the user wants a deep, multi-source, fact-checked research report on any topic. BEFORE invoking, check if the question is specific enough to research directly — if underspecified (e.g., \"what car to buy\" without budget/use-case/region), ask 2-3 clarifying questions to narrow scope. Then pass the refined question as args, weaving the answers in.\n- codex:rescue: Delegate investigation, an explicit fix request, or follow-up rescue work to the Codex rescue subagent\n- codex:setup: Check whether the local Codex CLI is ready and optionally toggle the stop-time review gate\n- frontend-design:frontend-design: Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.\n- codex:codex-cli-runtime: Internal helper contract for calling the codex-companion runtime from Claude Code\n- codex:codex-result-handling: Internal guidance for presenting Codex helper output back to the user\n- codex:gpt-5-4-prompting: Internal guidance for composing Codex and GPT-5.4 prompts for coding, review, diagnosis, and research tasks inside the Codex Claude Code plugin\n- update-config: Use this skill to configure the Claude Code harness via settings.json. Automated behaviors (\"from now on when X\", \"each time X\", \"whenever X\", \"before/after X\") require hooks configured in settings.json - the harness executes these, not Claude, so memory/preferences cannot fulfill them. Also use for: permissions (\"allow X\", \"add permission\", \"move permission to\"), env vars (\"set X=Y\"), hook troubleshooting, or any changes to settings.json/settings.local.json files. Examples: \"allow npm commands\", \"add bq permission to global settings\", \"move permission to user settings\", \"set DEBUG=true\", \"when claude stops show X\". For simple settings like theme/model, suggest the /config command.\n- keybindings-help: Use when the user wants to customize keyboard shortcuts, rebind keys, add chord bindings, or modify ~/.claude/keybindings.json. Examples: \"rebind ctrl+s\", \"add a chord shortcut\", \"change the submit key\", \"customize keybindings\".\n- verify: Verify that a code change actually does what it's supposed to by running the app and observing behavior. Use when asked to verify a PR, confirm a fix works, test a change manually, check that a feature works, or validate local changes before pushing.\n- code-review: Review the current diff for correctness bugs and reuse/simplification/efficiency cleanups at the given effort level (low/medium: fewer, high-confidence findings; high→max: broader coverage, may include uncertain findings; ultra: deep multi-agent review in the cloud). Pass --comment to post findings as inline PR comments, or --fix to apply the findings to the working tree after the review.\n- simplify: Review the changed code for reuse, simplification, efficiency, and altitude cleanups, then apply the fixes. Quality only — it does not hunt for bugs; use /code-review for that.\n- fewer-permission-prompts: Scan your transcripts for common read-only Bash and MCP tool calls, then add a prioritized allowlist to project .claude/settings.json to reduce permission prompts.\n- loop: Run a prompt or slash command on a recurring interval (e.g. /loop 5m /foo). Omit the interval to let the model self-pace. - When the user wants to set up a recurring task, poll for status, or run something repeatedly on an interval (e.g. \"check the deploy every 5 minutes\", \"keep running /babysit-prs\"). Do NOT invoke for one-off tasks.\n- schedule: Create, update, list, or run scheduled cloud agents (routines) that execute on a cron schedule. - When the user wants to schedule a recurring cloud agent, set up automated tasks, create a cron job for Claude Code, or manage their scheduled agents/routines. Also use when the user wants a one-time scheduled run (\"run this once at 3pm\", \"remind me to check X tomorrow\").\n- claude-api: Reference for the Claude API / Anthropic SDK — model ids, pricing, params, streaming, tool use, MCP, agents, caching, token counting, model migration.\nTRIGGER — read BEFORE opening the target file; don't skip because it \"looks like a one-liner\" — whenever: the prompt names Claude/Anthropic in any form (Claude, Anthropic, Fable, Opus, Sonnet, Haiku, `anthropic`, `@anthropic-ai`, `claude-*`, `us.anthropic.*`, `[1m]`); the user asks about an LLM (pricing/model choice/limits/caching) — never answer from memory; OR the task is LLM-shaped with provider unstated (agent/MCP/tool-definition/multi-agent/RAG/LLM-judge/computer-use; generate/summarize/extract/classify/rewrite/converse over NL; debugging refusals/cutoffs/streaming/tool-calls/tokens).\nSKIP only when another provider is being worked on (overrides all triggers): OpenAI/GPT/Gemini/Llama/Mistral/Cohere/Ollama named in the query; OR `grep -rE 'openai|langchain_openai|google.generativeai|genai|mistralai|cohere|ollama'` over the project hits (run this grep FIRST if no provider named — don't Read the file).\n- run: Launch and drive this project's app to see a change working. Use when asked to run, start, or screenshot the app, or to confirm a change works in the real app (not just tests). First looks for a project skill that already covers launching the app; otherwise falls back to built-in patterns per project type (CLI, server, TUI, Electron, browser-driven, library).\n- init: Initialize a new CLAUDE.md file with codebase documentation\n- review: Review a pull request\n- security-review: Complete a security review of the pending changes on the current branch","skillCount":29,"isInitial":true,"names":["frontend-design","roadmap","spec-to-cli","developing-with-fortify","fluxui-development","laravel-best-practices","livewire-development","pest-testing","tailwindcss-development","deep-research","codex:rescue","codex:setup","frontend-design:frontend-design","codex:codex-cli-runtime","codex:codex-result-handling","codex:gpt-5-4-prompting","update-config","keybindings-help","verify","code-review","simplify","fewer-permission-prompts","loop","schedule","claude-api","run","init","review","security-review"]},"type":"attachment","uuid":"7c69797d-21a2-494f-93cf-96ef1e05bf39","timestamp":"2026-06-09T18:14:31.431Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"parentUuid":"7c69797d-21a2-494f-93cf-96ef1e05bf39","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Ej1jxNpmQV1PUbSNufjAVD","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISigsKYggOGAIqQA5OdEzmlmll7WHQO4j1tqsVpxFUoieV7OPd8VxQaTsEIDm7jfvbHNQr3f56HlfBZJK8pzB7mVDyTjjwVQt4lMkyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzDkltKsM9haWJJA9EaDAZl9+d+bM5YAkyAsSIwe6pWj/bPkZ9gLScD1PGSChr3Ov4DDknpVGSH1bj40RGkvMroGjlbBTxrfHDbiYqkKtUJLDQ1YPWl7vlTzbjlPBgdDVo92rcFQp91mSWjtcOOm6Py7VBsKqXKYvuXE7lGOMsQbEN3NlqCaD8cpe7geFayrNjJVNf4k5TvoCvjhAyPHGjQsAPsJ+NoMIyqAmAou8qC/piWOdYiLHAlWx5zA9sOAyw29ctZvHftg+M/ADvyCtEG3xMnrkjh0RBWEHrpX5VwKFXYCxAOrJxA+yHAAyzN+KPqnuGzIgaxl3mTOA+CMkX2yrM5/j6WQ0SNCU2ox4FIUk4jABoi5b66SXS63YRDO1ryTKSr5e/T6JnKqu9kUaiT5rZy7zxZFxHvMTepuy3ntY7sGXFpPytkKcPJplF3dL60nlEzIQzYLF9lvYI4D237yjzwsXEAqxIAPml5tmEyC4HiCSo9wLCIaOHGVEqXGbvfQgQoiGY/NCVuwWP06x1V42+ZnMWp37niT7Qw7viAKRNV13GfkWG+TVUfxWWMB4LAkrz7kYC/tsRXUDXrR7oHQMMuR7vtFg7+noHR8aBSseEtoBos/Jp3dE1ZWQspuFGWaGfIqyaQEhggnqxw0LPZEB6cwSLyHfbyRXZPd1t9pVcu1F43yv7PRm9C5XDtn4n19WI1/KJ7tp893M4+k4bpBDB35BPFbY7UM6qOTFIsJyKw2pFnRcntImOayji/p3HBWqFFMPU+vAmvhCjXuAl40MrjXjAouP1KQCWJtBihsWa//N3U4+oVWzUgz+zjfRTBKFZctxUTKeaRhVJYlSxByyqudky3lEcMzOkXYKNt+uPycBnKpShVasolR4vAWjpd7ASgukDtWIatjEh2OVzyfhLi7AGlMRDqss7YEyE5r2WT2i01EKlT7WksMy8AY5kgzoiR6GsnpP7Ceb94dK22Sm3+Z04QAOYFB2aKprwzTZkusb+LU7vacPVeEpTvkJ8QUwCu8dCWMh/FKZZE/T1KFvC0sbEpD40XeupISuJYRJnXiCEJV2asY7Tv2x8+XaMt/IGa/x9ycTmBu5qXvqvcj4C1ZdzYay9cw1vxvzGP+0tbvujYQYcamkwKJp40ekplgnqr1ZBfFPg5b+3NPFzm9U+PC94wucc0ct+Y34aSQ8avBexIu4xEl/V5LwY+BkZe4La5ckXQy3QFzexbfbg3d9OokmpPQp+8cB8BxFJcZn//7uEBQI55lgtJRtUbzSX6QzE6j5OpRyewFTfKmdrnmo5/bRdmcS7Xrzv6U1plV1dsXZzHcaI1QSwA90UgVibYbQVHabNpzUY4DVC99WAj4J2ZLN6h5oEqkZjrldRe3TfTf/uiNbDv67FEC8iEkCcLut5PbBV4BGMBuKodHQZyqWP7mTrujc1oB+VYOOMvgVZ5kT71sowM0UTjVNskw/JmdPE5wv9sEVDdDakPcRo0P0Vq9VcdzY0xnhYcwUtoSSqnatejYcaaxNrg7z0+R0itjpbmRHsnwBGYMASP9WuhG4cVltoSrQMBC+wYhqegr/f1xnuDuh9Ce/8zlybVCMytJc6kon5jwFQJYiEhO93mQlu0vZz2k2yecawuAAJpCef//42nHOpYbBfp3ki6J09/TAz+JcRH/8VHNx/X8pJsFQIbgf0BTWJUDjEO4lgsnC6mGcW20RN/1GN325oacKv/iwupGK5MF4VYe5aXuF/jTtRq+RgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":4626,"cache_creation_input_tokens":27556,"cache_read_input_tokens":0,"output_tokens":778,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":27556,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":4626,"output_tokens":778,"cache_read_input_tokens":0,"cache_creation_input_tokens":27556,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":27556},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt98gTNcY6wrNbqRrPxN","type":"assistant","uuid":"9b6d0fb4-9930-41c2-9a65-30dbdb08f223","timestamp":"2026-06-09T18:14:39.797Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9b6d0fb4-9930-41c2-9a65-30dbdb08f223","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Ej1jxNpmQV1PUbSNufjAVD","type":"message","role":"assistant","content":[{"type":"text","text":"I'll start by getting a full picture: the specs, the current state of the codebase, and what's already in place. Then I'll set up a phased implementation plan and execute it end to end."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":4626,"cache_creation_input_tokens":27556,"cache_read_input_tokens":0,"output_tokens":778,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":27556,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":4626,"output_tokens":778,"cache_read_input_tokens":0,"cache_creation_input_tokens":27556,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":27556},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt98gTNcY6wrNbqRrPxN","type":"assistant","uuid":"d148a48b-7fa2-4c7f-9cb4-71b2937fa532","timestamp":"2026-06-09T18:14:40.714Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d148a48b-7fa2-4c7f-9cb4-71b2937fa532","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Ej1jxNpmQV1PUbSNufjAVD","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01JvzHHn7ocyq3eqyLJ5EG9F","name":"Bash","input":{"command":"ls /Users/fabianwesner/Herd/shop/specs/ && echo \"---\" && ls /Users/fabianwesner/Herd/shop/app/ 2>/dev/null && echo \"---\" && ls /Users/fabianwesner/Herd/shop/app/Models 2>/dev/null && echo \"---\" && git -C /Users/fabianwesner/Herd/shop log --oneline | head -20","description":"List specs and app structure, recent commits"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":4626,"cache_creation_input_tokens":27556,"cache_read_input_tokens":0,"output_tokens":778,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":27556,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":4626,"output_tokens":778,"cache_read_input_tokens":0,"cache_creation_input_tokens":27556,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":27556},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt98gTNcY6wrNbqRrPxN","type":"assistant","uuid":"838579a9-6822-4fc4-9603-6885b5fc50b9","timestamp":"2026-06-09T18:14:43.133Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"838579a9-6822-4fc4-9603-6885b5fc50b9","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Ej1jxNpmQV1PUbSNufjAVD","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PxJubBGSuK4q6ec3HBkcTF","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/specs/09-IMPLEMENTATION-ROADMAP.md"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":4626,"cache_creation_input_tokens":27556,"cache_read_input_tokens":0,"output_tokens":778,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":27556,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":4626,"output_tokens":778,"cache_read_input_tokens":0,"cache_creation_input_tokens":27556,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":27556},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt98gTNcY6wrNbqRrPxN","type":"assistant","uuid":"3d50e413-76c3-47db-bac8-fec3285f97b3","timestamp":"2026-06-09T18:14:43.347Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"838579a9-6822-4fc4-9603-6885b5fc50b9","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01JvzHHn7ocyq3eqyLJ5EG9F","type":"tool_result","content":"01-DATABASE-SCHEMA.md\n02-API-ROUTES.md\n03-ADMIN-UI.md\n04-STOREFRONT-UI.md\n05-BUSINESS-LOGIC.md\n06-AUTH-AND-SECURITY.md\n07-SEEDERS-AND-TEST-DATA.md\n08-PLAYWRIGHT-E2E-PLAN.md\n09-IMPLEMENTATION-ROADMAP.md\n---\nActions\nConcerns\nHttp\nLivewire\nModels\nObservers\nProviders\nServices\nSupport\n---\nUser.php\n---\nfc0e4141 Revert \"Add sonar-project.properties\" - exclusions configured in SonarCloud UI instead\na29d6a2d Add sonar-project.properties to suppress S5332 false positives in tests\n5cd42872 Initial","is_error":false}]},"uuid":"58cd598a-35c3-4dd7-90c0-c45838a79e5a","timestamp":"2026-06-09T18:14:44.441Z","toolUseResult":{"stdout":"01-DATABASE-SCHEMA.md\n02-API-ROUTES.md\n03-ADMIN-UI.md\n04-STOREFRONT-UI.md\n05-BUSINESS-LOGIC.md\n06-AUTH-AND-SECURITY.md\n07-SEEDERS-AND-TEST-DATA.md\n08-PLAYWRIGHT-E2E-PLAN.md\n09-IMPLEMENTATION-ROADMAP.md\n---\nActions\nConcerns\nHttp\nLivewire\nModels\nObservers\nProviders\nServices\nSupport\n---\nUser.php\n---\nfc0e4141 Revert \"Add sonar-project.properties\" - exclusions configured in SonarCloud UI instead\na29d6a2d Add sonar-project.properties to suppress S5332 false positives in tests\n5cd42872 Initial","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"838579a9-6822-4fc4-9603-6885b5fc50b9","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3d50e413-76c3-47db-bac8-fec3285f97b3","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01PxJubBGSuK4q6ec3HBkcTF","type":"tool_result","content":"<system-reminder>[Truncated: PARTIAL view — showing lines 1-961 of 2066 total (45657 tokens, cap 25000). Call Read with offset=962 limit=961 for the next page, or Grep to find a specific section. Do NOT answer from this page alone if the answer may be further in the file.]</system-reminder>\n\n1\t# 09 - Implementation Roadmap and Pest Test Specification\n2\t\n3\t> E-commerce platform - Step-by-step build order and exhaustive test plan for Laravel 12 + Livewire v4 + Flux UI Free + SQLite + Tailwind CSS v4\n4\t\n5\t---\n6\t\n7\t## 1. Technology Decisions (Final)\n8\t\n9\tThese decisions adapt the original PDF spec for a self-contained, benchmarkable Laravel application. All decisions are final and must not be revisited.\n10\t\n11\t| Concern | PDF Default | Our Decision | Rationale |\n12\t|---------|-------------|--------------|-----------|\n13\t| Database | PostgreSQL | SQLite | Self-contained, no external DB, zero config |\n14\t| Cache | Redis | File (Array for tests) | No Redis dependency |\n15\t| Session | Redis | File | No Redis dependency |\n16\t| Queue | Redis + Horizon | Sync (dev) / Database (prod) | No Redis dependency, sync for immediate feedback |\n17\t| Search | Elasticsearch + Scout | SQLite FTS5 | Self-contained, no external service |\n18\t| Storage | S3 | Local filesystem (storage/app/public) | No AWS dependency |\n19\t| Admin UI | React/Vue SPA | Livewire v4 + Flux UI Free | Server-rendered, matches project stack |\n20\t| Storefront | Blade SSR + Vite | Blade + Livewire + Tailwind v4 | Server-rendered, matches project stack |\n21\t| Auth (admin) | Sanctum SPA | Laravel session auth | Standard Livewire auth pattern |\n22\t| Auth (API) | Sanctum tokens | Sanctum personal access tokens | For programmatic API access |\n23\t| Auth (customer) | Separate guard | Custom `customer` guard | Storefront customer auth |\n24\t| OAuth (apps) | Passport | Deferred/Stubbed | Simplifies initial build, can add later |\n25\t| Payments | Stripe + PayPal | Mock PSP (in-process) | No external API calls. MockPaymentProvider handles credit card, PayPal, bank transfer with magic card numbers for testing. |\n26\t| Email | SMTP/SES | Log driver (dev) / SMTP | Log for benchmark, SMTP configurable |\n27\t| Monitoring | OpenTelemetry | Laravel Log (structured JSON) | Simplified for benchmark |\n28\t| CI/CD | GitHub Actions | Not implemented | Out of scope for one-shot benchmark |\n29\t| Docker | Multi-stage | Not implemented | App served by Laravel Herd locally |\n30\t\n31\t---\n32\t\n33\t## 2. Implementation Phases (Build Order)\n34\t\n35\tEach phase builds on the previous. A coding agent should execute these in strict sequential order. Tests are written alongside each phase (see Section 3 for the full test specification).\n36\t\n37\t### Phase Dependency Graph\n38\t\n39\t```mermaid\n40\tflowchart TD\n41\t    P1[Phase 1: Foundation]\n42\t    P2[Phase 2: Catalog]\n43\t    P3[Phase 3: Themes and Storefront Layout]\n44\t    P4[Phase 4: Cart, Checkout, Discounts, Shipping, Taxes]\n45\t    P5[Phase 5: Payments, Orders, Fulfillment]\n46\t    P6[Phase 6: Customer Accounts]\n47\t    P7[Phase 7: Admin Panel]\n48\t    P8[Phase 8: Search]\n49\t    P9[Phase 9: Analytics]\n50\t    P10[Phase 10: Apps and Webhooks]\n51\t    P11[Phase 11: Polish]\n52\t    P12[Phase 12: Full Test Suite]\n53\t\n54\t    P1 --> P2\n55\t    P1 --> P3\n56\t    P2 --> P4\n57\t    P3 --> P4\n58\t    P4 --> P5\n59\t    P5 --> P6\n60\t    P5 --> P7\n61\t    P2 --> P8\n62\t    P5 --> P9\n63\t    P5 --> P10\n64\t    P6 --> P11\n65\t    P7 --> P11\n66\t    P8 --> P11\n67\t    P9 --> P11\n68\t    P10 --> P11\n69\t    P11 --> P12\n70\t```\n71\t\n72\t---\n73\t\n74\t### Phase 1: Foundation (Migrations, Models, Middleware, Auth)\n75\t\n76\t**Priority:** CRITICAL - everything depends on this.\n77\t\n78\t#### Step 1.1: Environment and Config\n79\t\n80\t| Config File | Setting | Value | Purpose |\n81\t|-------------|---------|-------|---------|\n82\t| `.env` | `DB_CONNECTION` | `sqlite` | Use SQLite as database |\n83\t| `.env` | `DB_DATABASE` | `database/database.sqlite` | SQLite database file path |\n84\t| `.env` | `CACHE_STORE` | `file` | File-based caching |\n85\t| `.env` | `SESSION_DRIVER` | `file` | File-based sessions |\n86\t| `.env` | `QUEUE_CONNECTION` | `sync` | Synchronous queue for dev |\n87\t| `.env` | `MAIL_MAILER` | `log` | Log-based mail for dev |\n88\t| `.env` | `FILESYSTEM_DISK` | `local` | Local filesystem storage |\n89\t| `config/database.php` | SQLite connection | WAL mode, foreign keys enabled, busy_timeout=5000, synchronous=normal | Optimized SQLite configuration |\n90\t| `config/session.php` | `driver` | `file` | Session driver |\n91\t| `config/session.php` | `lifetime` | `120` | Session lifetime in minutes |\n92\t| `config/cache.php` | `default` | `file` | Cache driver |\n93\t| `config/queue.php` | `default` | `sync` | Queue driver |\n94\t| `config/auth.php` | Guards | Add `customer` guard with `customers` provider | Customer storefront authentication |\n95\t| `config/auth.php` | Providers | Add `customers` provider pointing to Customer model | Customer user provider |\n96\t| `config/auth.php` | Passwords | Add `customers` password broker | Customer password reset |\n97\t| `config/filesystems.php` | `public` disk | Ensure configured for local storage | Media file storage |\n98\t| `config/logging.php` | Channels | Add structured JSON channel | Structured logging |\n99\t\n100\t#### Step 1.2: Core Migrations (Batch 1-2)\n101\t\n102\tCreate in this dependency order:\n103\t\n104\t1. `create_organizations_table` - no dependencies\n105\t2. `create_stores_table` - FK: `organization_id`\n106\t3. `create_store_domains_table` - FK: `store_id`\n107\t4. Modify default `users` migration - add `status`, `last_login_at`, `two_factor_*` columns; rename `password` to `password_hash` internally\n108\t5. `create_store_users_table` - composite PK: `store_id` + `user_id`, with `role` column\n109\t6. `create_store_settings_table` - PK: `store_id`\n110\t\n111\tAll monetary amounts stored as INTEGER in minor units (cents). All enums stored as TEXT with CHECK constraints. All timestamps as TEXT (ISO-8601) via Laravel.\n112\t\n113\t#### Step 1.3: Core Models\n114\t\n115\t**Files to create:**\n116\t\n117\t| Type | Name | Purpose |\n118\t|------|------|---------|\n119\t| Model (with migration, factory, seeder) | `Organization` | Top-level tenant entity |\n120\t| Model (with migration, factory, seeder) | `Store` | Individual store within an organization |\n121\t| Model (with migration, factory, seeder) | `StoreDomain` | Domain mapping for a store |\n122\t| Model (pivot) | `StoreUser` | Pivot model with `role` attribute, custom Pivot class |\n123\t| Model (with migration, factory, seeder) | `StoreSettings` | Per-store configuration |\n124\t\n125\t**Relationship definitions:**\n126\t\n127\t| Model | Key Relationships |\n128\t|-------|-------------------|\n129\t| `Organization` | `hasMany(Store::class)` |\n130\t| `Store` | `belongsTo(Organization::class)`, `hasMany(StoreDomain::class)`, `belongsToMany(User::class)` through `store_users`, `hasOne(StoreSettings::class)` |\n131\t| `StoreDomain` | `belongsTo(Store::class)` |\n132\t| `User` | `belongsToMany(Store::class)` through `store_users` |\n133\t| `StoreUser` | Pivot model with `role` attribute, custom `Pivot` class |\n134\t| `StoreSettings` | `belongsTo(Store::class)` |\n135\t\n136\tEach model must have:\n137\t- Explicit return type declarations on all methods\n138\t- Proper `$fillable` or `$guarded` arrays\n139\t- `casts()` method for JSON/enum columns\n140\t- Factory with meaningful default values\n141\t- Seeder that creates sample data\n142\t\n143\t#### Step 1.4: Enums\n144\t\n145\t**Files to create in `app/Enums/`:**\n146\t\n147\t| Enum | Values |\n148\t|------|--------|\n149\t| `StoreStatus` | `Active`, `Suspended` |\n150\t| `StoreUserRole` | `Owner`, `Admin`, `Staff`, `Support` |\n151\t| `StoreDomainType` | `Storefront`, `Admin`, `Api` |\n152\t\n153\t#### Step 1.5: Tenant Resolution Middleware\n154\t\n155\t**File to create:** `App\\Http\\Middleware\\ResolveStore`\n156\t\n157\tRequirements:\n158\t1. Storefront routes: extract hostname from the request, look up `store_domains`, cache hostname-to-store_id for 5 minutes, bind `Store` as singleton via container instance `current_store`\n159\t2. Admin routes: read `current_store_id` from session, verify user has `store_users` record\n160\t3. Return 404 if hostname not found\n161\t4. Return 503 for suspended stores on storefront routes\n162\t\n163\t**Registration in `bootstrap/app.php`:**\n164\t- Register middleware group `storefront` containing `ResolveStore`\n165\t- Register middleware group `admin` containing `ResolveStore`\n166\t\n167\t#### Step 1.6: BelongsToStore Trait and Global Scope\n168\t\n169\t**Files to create:**\n170\t\n171\t| Type | Name | Purpose |\n172\t|------|------|---------|\n173\t| Trait | `App\\Models\\Concerns\\BelongsToStore` | Applies StoreScope and auto-sets store_id on creating event |\n174\t| Scope | `App\\Models\\Scopes\\StoreScope` | Applies `where('store_id', app('current_store')->id)` to all queries |\n175\t\n176\tApplied on: products, collections, customers, orders, carts, checkouts, discounts, shipping_zones, themes, pages, navigation_menus, analytics_events, analytics_daily, webhook_subscriptions, inventory_items, search_queries.\n177\t\n178\t#### Step 1.7: Authentication\n179\t\n180\t**Admin auth requirements:**\n181\t\n182\t| Component | Description |\n183\t|-----------|-------------|\n184\t| Livewire component `Admin\\Auth\\Login` | Admin login form |\n185\t| Livewire component `Admin\\Auth\\Logout` | Admin logout action |\n186\t| Auth mechanism | Standard Laravel session auth via `Auth::guard('web')->attempt()` |\n187\t| Rate limiting | 5 attempts per minute per IP via `RateLimiter::for('login')` |\n188\t| Password reset | Standard Laravel flow with `Password::broker('users')` |\n189\t\n190\t**Customer auth requirements:**\n191\t\n192\t| Component | Description |\n193\t|-----------|-------------|\n194\t| Custom guard | `customer` guard with `customers` provider |\n195\t| Custom user provider | `CustomerUserProvider` that injects `store_id` into queries |\n196\t| Livewire component `Storefront\\Account\\Auth\\Login` | Customer login form |\n197\t| Livewire component `Storefront\\Account\\Auth\\Register` | Customer registration form |\n198\t| Uniqueness | Customer email unique per store, not globally |\n199\t| Rate limiting | 5 attempts per minute per IP |\n200\t\n201\t**Rate limiter registration:**\n202\t- Register rate limiters in `AppServiceProvider::boot()` for login (5 per minute per IP)\n203\t\n204\t#### Step 1.8: Authorization\n205\t\n206\t**Files to create:**\n207\t\n208\t| Type | Name | Purpose |\n209\t|------|------|---------|\n210\t| Policy | `ProductPolicy` | Product authorization based on store role |\n211\t| Policy | `OrderPolicy` | Order authorization based on store role |\n212\t| Policy | `CollectionPolicy` | Collection authorization based on store role |\n213\t| Policy | `DiscountPolicy` | Discount authorization based on store role |\n214\t| Policy | `CustomerPolicy` | Customer authorization based on store role |\n215\t| Policy | `StorePolicy` | Store authorization based on store role |\n216\t| Policy | `PagePolicy` | Page authorization based on store role |\n217\t| Policy | `ThemePolicy` | Theme authorization based on store role |\n218\t| Policy | `FulfillmentPolicy` | Fulfillment authorization based on store role |\n219\t| Policy | `RefundPolicy` | Refund authorization based on store role |\n220\t\n221\tEach policy checks user role via `store_users` pivot for the current store. Helper on User model: `roleForStore(Store $store): ?StoreUserRole`. Register policies via auto-discovery or explicit binding in `AppServiceProvider`.\n222\t\n223\t**Permission Matrix:**\n224\t\n225\t| Permission | Owner | Admin | Staff | Support |\n226\t|------------|:-----:|:-----:|:-----:|:-------:|\n227\t| Manage store settings | Y | Y | N | N |\n228\t| Delete store | Y | N | N | N |\n229\t| Manage staff | Y | Y | N | N |\n230\t| Manage products (CRUD) | Y | Y | Y | N |\n231\t| Delete/archive products | Y | Y | N | N |\n232\t| Manage orders | Y | Y | Y | Read-only |\n233\t| Process refunds | Y | Y | N | N |\n234\t| Create fulfillments | Y | Y | Y | N |\n235\t| Manage discounts | Y | Y | Y | N |\n236\t| Manage themes | Y | Y | N | N |\n237\t| Manage apps | Y | Y | N | N |\n238\t| View analytics | Y | Y | Y | N |\n239\t| Manage shipping/tax | Y | Y | N | N |\n240\t| View customers | Y | Y | Y | Y |\n241\t| Update customers | Y | Y | Y | N |\n242\t\n243\t---\n244\t\n245\t### Phase 2: Catalog (Products, Variants, Inventory, Collections, Media)\n246\t\n247\t**Priority:** HIGH - storefront and orders depend on this.\n248\t\n249\t#### Step 2.1: Migrations (Batch 3-5)\n250\t\n251\tCreate in dependency order:\n252\t\n253\t1. `create_products_table` - FK: `store_id`\n254\t2. `create_product_options_table` - FK: `product_id`\n255\t3. `create_product_option_values_table` - FK: `product_option_id`\n256\t4. `create_product_variants_table` - FK: `product_id`\n257\t5. `create_variant_option_values_table` - composite PK: `variant_id` + `product_option_value_id`\n258\t6. `create_inventory_items_table` - FK: `store_id`, `variant_id`\n259\t7. `create_collections_table` - FK: `store_id`\n260\t8. `create_collection_products_table` - composite PK: `collection_id` + `product_id`\n261\t9. `create_product_media_table` - FK: `product_id`\n262\t\n263\t#### Step 2.2: Models with Relationships\n264\t\n265\t**Files to create:**\n266\t\n267\t| Type | Name | Purpose |\n268\t|------|------|---------|\n269\t| Model (with migration, factory, seeder) | `Product` | Product entity |\n270\t| Model (with migration, factory, seeder) | `ProductOption` | Product option (e.g., Size, Color) |\n271\t| Model (with migration, factory, seeder) | `ProductOptionValue` | Option values (e.g., S, M, L) |\n272\t| Model (with migration, factory, seeder) | `ProductVariant` | Product variant (SKU-level) |\n273\t| Model (with migration, factory, seeder) | `InventoryItem` | Inventory tracking per variant |\n274\t| Model (with migration, factory, seeder) | `Collection` | Product collection/category |\n275\t| Model (with migration, factory, seeder) | `ProductMedia` | Product images and videos |\n276\t\n277\t**Relationship definitions:**\n278\t\n279\t| Model | Key Relationships |\n280\t|-------|-------------------|\n281\t| `Product` | `hasMany(ProductVariant)`, `hasMany(ProductOption)`, `hasMany(ProductMedia)`, `belongsToMany(Collection)` via `collection_products` |\n282\t| `ProductOption` | `belongsTo(Product)`, `hasMany(ProductOptionValue)` |\n283\t| `ProductOptionValue` | `belongsTo(ProductOption)` |\n284\t| `ProductVariant` | `belongsTo(Product)`, `hasOne(InventoryItem)`, `belongsToMany(ProductOptionValue)` via `variant_option_values` |\n285\t| `InventoryItem` | `belongsTo(ProductVariant)` |\n286\t| `Collection` | `belongsToMany(Product)` via `collection_products` |\n287\t| `ProductMedia` | `belongsTo(Product)` |\n288\t\n289\t**Enums to create:**\n290\t\n291\t| Enum | Values |\n292\t|------|--------|\n293\t| `ProductStatus` | `Draft`, `Active`, `Archived` |\n294\t| `VariantStatus` | `Active`, `Archived` |\n295\t| `CollectionStatus` | `Draft`, `Active`, `Archived` |\n296\t| `MediaType` | `Image`, `Video` |\n297\t| `MediaStatus` | `Processing`, `Ready`, `Failed` |\n298\t| `InventoryPolicy` | `Deny`, `Continue` |\n299\t\n300\t#### Step 2.3: Product Service\n301\t\n302\t**File to create:** `App\\Services\\ProductService`\n303\t\n304\t| Method | Description |\n305\t|--------|-------------|\n306\t| `create(Store $store, array $data): Product` | Creates product with nested variants/options |\n307\t| `update(Product $product, array $data): Product` | Updates product |\n308\t| `transitionStatus(Product $product, ProductStatus $newStatus): void` | Validates transitions per state machine |\n309\t| `delete(Product $product): void` | Hard delete only if draft with no order references; otherwise throws |\n310\t\n311\t**File to create:** `App\\Services\\VariantMatrixService`\n312\t\n313\t| Method | Description |\n314\t|--------|-------------|\n315\t| `rebuildMatrix(Product $product): void` | Computes cartesian product, creates missing variants, archives orphaned ones |\n316\t\n317\t**File to create:** `App\\Support\\HandleGenerator`\n318\t\n319\t| Method | Description |\n320\t|--------|-------------|\n321\t| `generate(string $title, string $table, int $storeId, ?int $excludeId = null): string` | Generates unique slugs |\n322\t\n323\t#### Step 2.4: Inventory Service\n324\t\n325\t**File to create:** `App\\Services\\InventoryService`\n326\t\n327\t| Method | Description |\n328\t|--------|-------------|\n329\t| `checkAvailability(InventoryItem $item, int $quantity): bool` | Checks if sufficient available inventory exists |\n330\t| `reserve(InventoryItem $item, int $quantity): void` | Increments `quantity_reserved` |\n331\t| `release(InventoryItem $item, int $quantity): void` | Decrements `quantity_reserved` |\n332\t| `commit(InventoryItem $item, int $quantity): void` | Decrements both `on_hand` and `reserved` |\n333\t| `restock(InventoryItem $item, int $quantity): void` | Increments `quantity_on_hand` |\n334\t\n335\tAll operations wrapped in database transactions. Throws `InsufficientInventoryException` when policy is `deny` and available < quantity.\n336\t\n337\t#### Step 2.5: Media Upload\n338\t\n339\t**File to create:** `App\\Jobs\\ProcessMediaUpload`\n340\t\n341\tRequirements:\n342\t- Resizes images to standard sizes (thumbnail 150x150, medium 600x600, large 1200x1200)\n343\t- Updates `ProductMedia` status from `processing` to `ready` (or `failed`)\n344\t\n345\tLivewire file upload via `WithFileUploads` trait. Stored on local `public` disk.\n346\t\n347\t---\n348\t\n349\t### Phase 3: Themes, Pages, Navigation, Storefront Layout\n350\t\n351\t**Priority:** HIGH - storefront rendering depends on this.\n352\t\n353\t#### Step 3.1: Migrations (Batch 3)\n354\t\n355\t1. `create_themes_table` - FK: `store_id`\n356\t2. `create_theme_files_table` - FK: `theme_id`\n357\t3. `create_theme_settings_table` - PK: `theme_id`\n358\t4. `create_pages_table` - FK: `store_id`\n359\t5. `create_navigation_menus_table` - FK: `store_id`\n360\t6. `create_navigation_items_table` - FK: `menu_id`\n361\t\n362\t#### Step 3.2: Models\n363\t\n364\t**Files to create:**\n365\t\n366\t| Type | Name | Purpose |\n367\t|------|------|---------|\n368\t| Model (with migration, factory, seeder) | `Theme` | Store theme entity |\n369\t| Model (with migration, factory, seeder) | `ThemeFile` | Individual theme file |\n370\t| Model (with migration, factory, seeder) | `ThemeSettings` | Theme configuration |\n371\t| Model (with migration, factory, seeder) | `Page` | CMS page |\n372\t| Model (with migration, factory, seeder) | `NavigationMenu` | Navigation menu entity |\n373\t| Model (with migration, factory, seeder) | `NavigationItem` | Individual navigation item |\n374\t\n375\t**Relationship definitions:**\n376\t\n377\t| Model | Key Relationships |\n378\t|-------|-------------------|\n379\t| `Theme` | `belongsTo(Store)`, `hasMany(ThemeFile)`, `hasOne(ThemeSettings)` |\n380\t| `ThemeFile` | `belongsTo(Theme)` |\n381\t| `ThemeSettings` | `belongsTo(Theme)` |\n382\t| `Page` | `belongsTo(Store)` |\n383\t| `NavigationMenu` | `belongsTo(Store)`, `hasMany(NavigationItem)` |\n384\t| `NavigationItem` | `belongsTo(NavigationMenu)` |\n385\t\n386\t**Enums to create:**\n387\t\n388\t| Enum | Values |\n389\t|------|--------|\n390\t| `ThemeStatus` | `Draft`, `Published` |\n391\t| `PageStatus` | `Draft`, `Published`, `Archived` |\n392\t| `NavigationItemType` | `Link`, `Page`, `Collection`, `Product` |\n393\t\n394\t#### Step 3.3: Storefront Blade Layout\n395\t\n396\t**Directory structure for `resources/views/storefront/`:**\n397\t\n398\t| Directory | Files |\n399\t|-----------|-------|\n400\t| `layouts/` | `app.blade.php` |\n401\t| `pages/` | `home.blade.php`, `collection.blade.php`, `product.blade.php`, `cart.blade.php`, `search.blade.php`, `page.blade.php` |\n402\t| `checkout/` | `index.blade.php`, `confirmation.blade.php` |\n403\t| `account/` | `login.blade.php`, `register.blade.php`, `dashboard.blade.php` |\n404\t| `account/orders/` | `index.blade.php`, `show.blade.php` |\n405\t| `account/addresses/` | `index.blade.php` |\n406\t| `errors/` | `404.blade.php`, `503.blade.php` |\n407\t| `components/` | `product-card.blade.php`, `price.blade.php`, `badge.blade.php`, `quantity-selector.blade.php`, `address-form.blade.php`, `order-summary.blade.php`, `breadcrumbs.blade.php`, `pagination.blade.php` |\n408\t\n409\tBase layout (`app.blade.php`): header with nav, announcement bar, main content, footer, cart drawer. All with dark mode support via `dark:` prefix.\n410\t\n411\t**ThemeSettings Service:** Singleton registered in `AppServiceProvider`, loads and caches active theme settings for the current store.\n412\t\n413\t#### Step 3.4: Storefront Livewire Components\n414\t\n415\t**Files to create:**\n416\t\n417\t| Component | Purpose |\n418\t|-----------|---------|\n419\t| `Storefront\\Home` | Dynamic sections based on theme settings |\n420\t| `Storefront\\Collections\\Index` | All collections grid |\n421\t| `Storefront\\Collections\\Show` | Product grid with filters/sort/pagination |\n422\t| `Storefront\\Products\\Show` | Variant selection, image gallery, add-to-cart |\n423\t| `Storefront\\Cart\\Show` | Full cart page with line items and totals |\n424\t| `Storefront\\CartDrawer` | Slide-out cart drawer (always in layout) |\n425\t| `Storefront\\Search\\Index` | Search results with filters |\n426\t| `Storefront\\Search\\Modal` | Search modal with autocomplete |\n427\t| `Storefront\\Pages\\Show` | Static CMS page rendering |\n428\t\n429\t#### Step 3.5: Navigation Service\n430\t\n431\t**File to create:** `App\\Services\\NavigationService`\n432\t\n433\t| Method | Description |\n434\t|--------|-------------|\n435\t| `buildTree(NavigationMenu $menu): array` | Builds navigation trees from navigation_menus / navigation_items |\n436\t| `resolveUrl(NavigationItem $item): string` | Resolves URLs for page, collection, product type items |\n437\t\n438\tCaches per store with 5-minute TTL.\n439\t\n440\t---\n441\t\n442\t### Phase 4: Cart, Checkout, Discounts, Shipping, Taxes\n443\t\n444\t**Priority:** HIGH - core shopping flow.\n445\t\n446\t#### Step 4.1: Migrations (Batch 4-5)\n447\t\n448\t1. `create_carts_table` - FK: `store_id`, `customer_id`\n449\t2. `create_cart_lines_table` - FK: `cart_id`, `variant_id`\n450\t3. `create_checkouts_table` - FK: `store_id`, `cart_id`, `customer_id`\n451\t4. `create_shipping_zones_table` - FK: `store_id`\n452\t5. `create_shipping_rates_table` - FK: `zone_id`\n453\t6. `create_tax_settings_table` - PK: `store_id`\n454\t7. `create_discounts_table` - FK: `store_id`\n455\t\n456\t#### Step 4.2: Models\n457\t\n458\t**Files to create:**\n459\t\n460\t| Type | Name | Purpose |\n461\t|------|------|---------|\n462\t| Model (with migration, factory, seeder) | `Cart` | Shopping cart entity |\n463\t| Model (with migration, factory, seeder) | `CartLine` | Individual cart line item |\n464\t| Model (with migration, factory, seeder) | `Checkout` | Checkout session entity |\n465\t| Model (with migration, factory, seeder) | `ShippingZone` | Shipping zone configuration |\n466\t| Model (with migration, factory, seeder) | `ShippingRate` | Shipping rate within a zone |\n467\t| Model (with migration, factory, seeder) | `TaxSettings` | Per-store tax configuration |\n468\t| Model (with migration, factory, seeder) | `Discount` | Discount code or automatic discount |\n469\t\n470\t**Relationship definitions:**\n471\t\n472\t| Model | Key Relationships |\n473\t|-------|-------------------|\n474\t| `Cart` | `belongsTo(Store)`, `belongsTo(Customer)`, `hasMany(CartLine)`, `hasMany(Checkout)` |\n475\t| `CartLine` | `belongsTo(Cart)`, `belongsTo(ProductVariant)` |\n476\t| `Checkout` | `belongsTo(Store)`, `belongsTo(Cart)`, `belongsTo(Customer)` |\n477\t| `ShippingZone` | `belongsTo(Store)`, `hasMany(ShippingRate)` |\n478\t| `ShippingRate` | `belongsTo(ShippingZone)` |\n479\t| `TaxSettings` | `belongsTo(Store)` |\n480\t| `Discount` | `belongsTo(Store)` |\n481\t\n482\t**Enums to create:**\n483\t\n484\t| Enum | Values |\n485\t|------|--------|\n486\t| `CartStatus` | `Active`, `Converted`, `Abandoned` |\n487\t| `CheckoutStatus` | `Started`, `Addressed`, `ShippingSelected`, `PaymentPending`, `Completed`, `Expired` |\n488\t| `DiscountType` | `Code`, `Automatic` |\n489\t| `DiscountValueType` | `Percent` (`percent`), `Fixed` (`fixed`), `FreeShipping` (`free_shipping`) -- PascalCase cases backed by lowercase string values stored in DB |\n490\t| `DiscountStatus` | `Draft`, `Active`, `Expired`, `Disabled` |\n491\t| `ShippingRateType` | `Flat`, `Weight`, `Price`, `Carrier` |\n492\t| `TaxMode` | `Manual`, `Provider` |\n493\t\n494\t#### Step 4.3: Cart Service\n495\t\n496\t**File to create:** `App\\Services\\CartService`\n497\t\n498\t| Method | Description |\n499\t|--------|-------------|\n500\t| `create(Store, ?Customer): Cart` | Creates cart with store currency, version 1 |\n501\t| `addLine(Cart, int $variantId, int $qty): CartLine` | Validates variant/product active, inventory, increments existing line or creates new |\n502\t| `updateLineQuantity(Cart, int $lineId, int $qty): CartLine` | Validates quantity, recalculates amounts |\n503\t| `removeLine(Cart, int $lineId): void` | Deletes line, increments version |\n504\t| `getOrCreateForSession(Store, ?Customer): Cart` | Session-based cart binding |\n505\t| `mergeOnLogin(Cart $guest, Cart $customer): Cart` | Merges guest cart into customer cart |\n506\t\n507\tAll mutations increment `cart_version`. API clients must send `expected_version` or receive 409 Conflict.\n508\t\n509\t#### Step 4.4: Discount Service\n510\t\n511\t**File to create:** `App\\Services\\DiscountService`\n512\t\n513\t| Method | Description |\n514\t|--------|-------------|\n515\t| `validate(string $code, Store $store, Cart $cart): Discount` | Validates code exists, is active, dates valid, usage limit not reached, minimum purchase met |\n516\t| `calculate(Discount $discount, int $subtotal, array $lines): DiscountResult` | Calculates amount, allocates proportionally across qualifying lines |\n517\t\n518\tCase-insensitive code lookup. Throws `InvalidDiscountException` with specific reason codes.\n519\t\n520\t#### Step 4.5: Shipping Calculator\n521\t\n522\t**File to create:** `App\\Services\\ShippingCalculator`\n523\t\n524\t| Method | Description |\n525\t|--------|-------------|\n526\t| `getAvailableRates(Store $store, array $address): Collection` | Matches zones by country/region, returns active rates |\n527\t| `calculate(ShippingRate $rate, Cart $cart): int` | Calculates cost based on rate type (flat/weight/price) |\n528\t\n529\tZone matching: checks `countries_json` for country code, then `regions_json` for region code.\n530\t\n531\t#### Step 4.6: Tax Calculator\n532\t\n533\t**File to create:** `App\\Services\\TaxCalculator`\n534\t\n535\t| Method | Description |\n536\t|--------|-------------|\n537\t| `calculate(int $amount, TaxSettings $settings, array $address): TaxResult` | Calculates tax per manual rate or provider |\n538\t| `extractInclusive(int $grossAmount, int $rateBasisPoints): int` | Extracts tax from gross (prices-include-tax mode) |\n539\t| `addExclusive(int $netAmount, int $rateBasisPoints): int` | Adds tax to net amount |\n540\t\n541\tAll math uses integers. Rates stored in basis points (1900 = 19%).\n542\t\n543\t#### Step 4.7: Pricing Engine\n544\t\n545\t**File to create:** `App\\Services\\PricingEngine`\n546\t\n547\tMethod: `calculate(Checkout $checkout): PricingResult`\n548\t\n549\t**Pipeline steps:**\n550\t1. Line subtotals: `unit_price * quantity` per line\n551\t2. Cart subtotal: sum of line subtotals\n552\t3. Discount: apply rules, allocate proportionally\n553\t4. Discounted subtotal: subtotal minus discount\n554\t5. Shipping: based on selected method/rate\n555\t6. Tax: on discounted amounts (plus shipping if taxable)\n556\t7. Total: discounted_subtotal + shipping + tax_total\n557\t\n558\tResult stored in `checkouts.totals_json` as snapshot.\n559\t\n560\t**Value objects to create:**\n561\t\n562\t| Type | Name | Fields |\n563\t|------|------|--------|\n564\t| Value Object | `App\\ValueObjects\\PricingResult` | subtotal, discount, shipping, taxLines, taxTotal, total, currency |\n565\t| Value Object | `App\\ValueObjects\\TaxLine` | name, rate (basis points), amount (cents) |\n566\t\n567\t#### Step 4.8: Checkout State Machine\n568\t\n569\t**File to create:** `App\\Services\\CheckoutService`\n570\t\n571\t| Transition | Method | Requirements |\n572\t|------------|--------|-------------|\n573\t| `started` -> `addressed` | `setAddress(Checkout, array)` | Valid email, shipping address fields |\n574\t| `addressed` -> `shipping_selected` | `setShippingMethod(Checkout, int $rateId)` | Rate belongs to applicable zone |\n575\t| `shipping_selected` -> `payment_selected` | `selectPaymentMethod(Checkout, string)` | All data valid, reserve inventory |\n576\t| `payment_selected` -> `completed` | `completeCheckout(Checkout, array)` | Payment confirmed, idempotent |\n577\t| Any active -> `expired` | `expireCheckout(Checkout)` | Via scheduled job |\n578\t\n579\t**Files to create:**\n580\t\n581\t| Type | Name | Purpose |\n582\t|------|------|---------|\n583\t| Job | `App\\Jobs\\ExpireAbandonedCheckouts` | Runs every 15 minutes via `routes/console.php`; finds checkouts with `expires_at < now()` and active status; releases reserved inventory, transitions to `expired` |\n584\t| Job | `App\\Jobs\\CleanupAbandonedCarts` | Runs daily; marks carts with `status = active` and `updated_at < 14 days ago` as `abandoned` |\n585\t\n586\t#### Step 4.9: Storefront Cart/Checkout UI\n587\t\n588\t**Files to create:**\n589\t\n590\t| Component | Description |\n591\t|-----------|-------------|\n592\t| `Storefront\\CartDrawer` | Slide-out panel: line items, quantity controls, discount code input, subtotal, checkout button |\n593\t| `Storefront\\Cart\\Show` | Full cart page with same functionality plus shipping estimate |\n594\t| `Storefront\\Checkout\\Show` | Multi-step: Contact/Address -> Shipping method -> Payment. Stepper UI. |\n595\t| `Storefront\\Checkout\\Confirmation` | Order confirmation: order number, items, totals, next steps |\n596\t\n597\t---\n598\t\n599\t### Phase 5: Payments, Orders, Fulfillment\n600\t\n601\t**Priority:** HIGH - completes the purchase flow.\n602\t\n603\t#### Step 5.1: Migrations (Batch 5-7)\n604\t\n605\t1. `create_customers_table` - FK: `store_id`\n606\t2. `create_customer_addresses_table` - FK: `customer_id`\n607\t3. `create_orders_table` - FK: `store_id`, `customer_id`\n608\t4. `create_order_lines_table` - FK: `order_id`, `product_id` (nullable), `variant_id` (nullable)\n609\t5. `create_payments_table` - FK: `order_id`\n610\t6. `create_refunds_table` - FK: `order_id`, `payment_id`\n611\t7. `create_fulfillments_table` - FK: `order_id`\n612\t8. `create_fulfillment_lines_table` - FK: `fulfillment_id`, `order_line_id`\n613\t\n614\t#### Step 5.2: Models\n615\t\n616\t**Files to create:**\n617\t\n618\t| Type | Name | Purpose |\n619\t|------|------|---------|\n620\t| Model (with migration, factory, seeder) | `Customer` | Store customer entity |\n621\t| Model (with migration, factory, seeder) | `CustomerAddress` | Customer address |\n622\t| Model (with migration, factory, seeder) | `Order` | Order entity |\n623\t| Model (with migration, factory, seeder) | `OrderLine` | Order line item |\n624\t| Model (with migration, factory, seeder) | `Payment` | Payment record |\n625\t| Model (with migration, factory, seeder) | `Refund` | Refund record |\n626\t| Model (with migration, factory, seeder) | `Fulfillment` | Fulfillment record |\n627\t| Model (with migration, factory, seeder) | `FulfillmentLine` | Fulfillment line item |\n628\t\n629\t**Relationship definitions:**\n630\t\n631\t| Model | Key Relationships |\n632\t|-------|-------------------|\n633\t| `Customer` | `belongsTo(Store)`, `hasMany(CustomerAddress)`, `hasMany(Order)`, `hasMany(Cart)` |\n634\t| `CustomerAddress` | `belongsTo(Customer)` |\n635\t| `Order` | `belongsTo(Store)`, `belongsTo(Customer)`, `hasMany(OrderLine)`, `hasMany(Payment)`, `hasMany(Refund)`, `hasMany(Fulfillment)` |\n636\t| `OrderLine` | `belongsTo(Order)`, `belongsTo(Product)` (nullable), `belongsTo(ProductVariant)` (nullable) |\n637\t| `Payment` | `belongsTo(Order)` |\n638\t| `Refund` | `belongsTo(Order)`, `belongsTo(Payment)` |\n639\t| `Fulfillment` | `belongsTo(Order)`, `hasMany(FulfillmentLine)` |\n640\t| `FulfillmentLine` | `belongsTo(Fulfillment)`, `belongsTo(OrderLine)` |\n641\t\n642\t**Enums to create:**\n643\t\n644\t| Enum | Values |\n645\t|------|--------|\n646\t| `OrderStatus` | `Pending`, `Paid`, `Fulfilled`, `Cancelled`, `Refunded` |\n647\t| `FinancialStatus` | `Pending`, `Authorized`, `Paid`, `PartiallyRefunded`, `Refunded`, `Voided` |\n648\t| `FulfillmentStatus` | `Unfulfilled`, `Partial`, `Fulfilled` |\n649\t| `PaymentMethod` | `CreditCard`, `Paypal`, `BankTransfer` |\n650\t| `PaymentStatus` | `Pending`, `Captured`, `Failed`, `Refunded` |\n651\t| `RefundStatus` | `Pending`, `Processed`, `Failed` |\n652\t| `FulfillmentShipmentStatus` | `Pending`, `Shipped`, `Delivered` |\n653\t\n654\t#### Step 5.3: Payment Service (Mock PSP)\n655\t\n656\t**Files to create:**\n657\t\n658\t| Type | Name | Purpose |\n659\t|------|------|---------|\n660\t| Enum | `App\\Enums\\PaymentMethod` | CreditCard, Paypal, BankTransfer |\n661\t| Interface | `App\\Contracts\\PaymentProvider` | Defines charge, refund methods |\n662\t| Service | `App\\Services\\Payments\\MockPaymentProvider` | Implements PaymentProvider with in-process mock logic |\n663\t\n664\t**PaymentProvider interface methods:**\n665\t\n666\t| Method | Description |\n667\t|--------|-------------|\n668\t| `charge(Checkout $checkout, PaymentMethod $method, array $details): PaymentResult` | Processes payment in-process. For credit_card: validates magic card numbers, returns success/decline. For paypal: always succeeds. For bank_transfer: returns pending (deferred capture). |\n669\t| `refund(Payment $payment, int $amount): RefundResult` | Issues a mock refund (always succeeds). |\n670\t\n671\t**MockPaymentProvider requirements:**\n672\t- No external API calls, no webhooks, no redirects\n673\t- Magic card numbers: `4242424242424242` (success), `4000000000000002` (decline), `4000000000009995` (insufficient funds)\n674\t- Credit card / PayPal: instant capture, returns PaymentResult with status=captured\n675\t- Bank transfer: deferred capture, returns PaymentResult with status=pending\n676\t- Generates mock reference IDs (`mock_` + random string)\n677\t\n678\t**Registration:** Bind `PaymentProvider` interface to `MockPaymentProvider` in `AppServiceProvider`.\n679\t\n680\t#### Step 5.3b: Admin Payment Confirmation\n681\t\n682\t**Files to create:**\n683\t\n684\t| Type | Name | Purpose |\n685\t|------|------|---------|\n686\t| Job | `App\\Jobs\\CancelUnpaidBankTransferOrders` | Runs daily via `routes/console.php`; finds bank_transfer orders with `financial_status = pending` and `placed_at < now() - config days`; cancels them and releases reserved inventory |\n687\t\n688\t**Admin \"Confirm Payment\" action** (in OrderService or dedicated action class):\n689\t1. Validate order has `payment_method = bank_transfer` and `financial_status = pending`\n690\t2. Update `financial_status` to `paid`, `status` to `paid`\n691\t3. Update payment record status to `captured`\n692\t4. Commit reserved inventory\n693\t5. If all items are digital (`requires_shipping = false`), auto-create a delivered fulfillment\n694\t6. Dispatch `OrderPaid` event\n695\t\n696\t#### Step 5.4: Order Service\n697\t\n698\t**File to create:** `App\\Services\\OrderService`\n699\t\n700\t| Method | Description |\n701\t|--------|-------------|\n702\t| `createFromCheckout(Checkout $checkout): Order` | Atomic transaction: create order + order lines with snapshots, commit inventory, mark cart converted, dispatch `OrderCreated` event |\n703\t| `generateOrderNumber(Store $store): string` | Sequential per store: #1001, #1002, etc. |\n704\t| `cancel(Order $order, string $reason): void` | Only if not yet fulfilled, releases inventory |\n705\t\n706\tOrder lines store snapshots (`title_snapshot`, `sku_snapshot`) so order history survives product deletion.\n707\t\n708\t#### Step 5.5: Refund Service\n709\t\n710\t**File to create:** `App\\Services\\RefundService`\n711\t\n712\t| Method | Description |\n713\t|--------|-------------|\n714\t| `create(Order $order, Payment $payment, int $amount, ?string $reason, bool $restock): Refund` | Validates amount does not exceed payment, calls provider refund API, updates financial status |\n715\t\n716\t- Partial refunds: `financial_status` -> `partially_refunded`\n717\t- Full refunds: `financial_status` -> `refunded`\n718\t- Restock flag: calls `InventoryService::restock()` for each line\n719\t\n720\t#### Step 5.6: Fulfillment Service\n721\t\n722\t**File to create:** `App\\Services\\FulfillmentService`\n723\t\n724\t| Method | Description |\n725\t|--------|-------------|\n726\t| `create(Order $order, array $lines, ?array $tracking): Fulfillment` | Creates fulfillment with specified lines and quantities. **Fulfillment guard:** Throws exception if `financial_status` is not `paid` or `partially_refunded`. |\n727\t| `markAsShipped(Fulfillment $fulfillment, ?array $tracking): void` | Sets tracking info, transitions to `shipped`, sets `shipped_at` |\n728\t| `markAsDelivered(Fulfillment $fulfillment): void` | Transitions to `delivered`, sets `delivered_at`. Dispatches `FulfillmentDelivered` event. |\n729\t\n730\tUpdates `order.fulfillment_status` based on whether all lines are fulfilled (`fulfilled`) or some (`partial`).\n731\t\n732\t**Fulfillment guard:** Before creating a fulfillment, the service checks that the order's `financial_status` is `paid` or `partially_refunded`. If the guard fails, a `FulfillmentGuardException` is thrown. This prevents shipping items before payment is confirmed (especially important for bank transfer orders).\n733\t\n734\t**Events to create:**\n735\t\n736\t| Type | Name | Purpose |\n737\t|------|------|---------|\n738\t| Event | `OrderCreated` | Dispatched when order is created from checkout |\n739\t| Event | `OrderPaid` | Dispatched when payment is captured |\n740\t| Event | `OrderFulfilled` | Dispatched when all order lines are fulfilled |\n741\t| Event | `OrderCancelled` | Dispatched when order is cancelled |\n742\t| Event | `OrderRefunded` | Dispatched when refund is processed |\n743\t\n744\t---\n745\t\n746\t### Phase 6: Customer Accounts\n747\t\n748\t**Priority:** MEDIUM - enhances the shopping experience.\n749\t\n750\t#### Step 6.1: Customer Auth\n751\t\n752\t- `Customer` model with custom `customer` guard (already configured in Phase 1)\n753\t- Custom `CustomerUserProvider` - scopes queries by `store_id`\n754\t- Customer email unique per store, not globally\n755\t\n756\t#### Step 6.2: Customer Account Pages (Livewire)\n757\t\n758\t**Files to create:**\n759\t\n760\t| Component | Route | Description |\n761\t|-----------|-------|-------------|\n762\t| `Storefront\\Account\\Auth\\Login` | `GET /account/login` | Login form |\n763\t| `Storefront\\Account\\Auth\\Register` | `GET /account/register` | Registration form |\n764\t| `Storefront\\Account\\Dashboard` | `GET /account` | Overview with recent orders |\n765\t| `Storefront\\Account\\Orders\\Index` | `GET /account/orders` | Paginated order history |\n766\t| `Storefront\\Account\\Orders\\Show` | `GET /account/orders/{orderNumber}` | Order detail with timeline |\n767\t| `Storefront\\Account\\Addresses\\Index` | `GET /account/addresses` | Address book CRUD |\n768\t\n769\tLogout: `POST /account/logout` handled by Livewire action. Invalidates session, regenerates CSRF token, redirects to `/account/login`.\n770\t\n771\t---\n772\t\n773\t### Phase 7: Admin Panel\n774\t\n775\t**Priority:** MEDIUM - merchant management interface.\n776\t\n777\t#### Step 7.1: Admin Layout\n778\t\n779\t**File to create:** `resources/views/livewire/admin/layout/app.blade.php`\n780\t\n781\t**Components to create:**\n782\t\n783\t| Component | Description |\n784\t|-----------|-------------|\n785\t| `Admin\\Layout\\Sidebar` | Fixed left sidebar (256px desktop, overlay mobile), navigation groups, Flux `brand`, `icon`, `separator` |\n786\t| `Admin\\Layout\\TopBar` | Store selector dropdown, user profile, hamburger toggle (mobile) |\n787\t| `Admin\\Layout\\Breadcrumbs` | Dynamic breadcrumb trail |\n788\t\n789\tToast notifications via Livewire events.\n790\t\n791\t#### Step 7.2: Dashboard\n792\t\n793\t**File to create:** `Admin\\Dashboard` Livewire component\n794\t\n795\tRequirements:\n796\t- KPI tiles: total sales (period), order count, average order value, conversion rate\n797\t- Orders chart (last 30 days line chart)\n798\t- Recent orders table (last 10)\n799\t- Date range filtering via Livewire properties\n800\t\n801\t#### Step 7.3: Product Management\n802\t\n803\t**Files to create:**\n804\t\n805\t| Component | Description |\n806\t|-----------|-------------|\n807\t| `Admin\\Products\\Index` | Product list with search, status filter, bulk actions (archive, delete), pagination |\n808\t| `Admin\\Products\\Form` | Shared product form component used by both create and edit routes (create vs edit mode). Title, description (rich text), status, vendor, type, tags, variants builder, media upload. |\n809\t\n810\t> **Shared-form pattern:** Create and Edit routes render the same Livewire form component in create vs edit mode. Shared form components follow the pattern `App\\Livewire\\Admin\\{Resource}\\Form`, used for both create and edit routes as defined in Spec 03. This applies to Products, Collections, Discounts, and Pages.\n811\t\n812\tVariants builder: dynamic form to add options (Size, Color, etc.) and values, auto-generates variant matrix. Each variant row has price, SKU, barcode, weight, inventory quantity fields.\n813\t\n814\tMedia upload: Livewire `WithFileUploads`, drag-and-drop, reorder, alt text editing.\n815\t\n816\t#### Step 7.4: Order Management\n817\t\n818\t**Files to create:**\n819\t\n820\t| Component | Description |\n821\t|-----------|-------------|\n822\t| `Admin\\Orders\\Index` | Order list with status filters, search by order number/email, date range |\n823\t| `Admin\\Orders\\Show` | Order detail: timeline, line items, payment info, fulfillment modal, refund modal |\n824\t\n825\tFulfillment modal: select lines and quantities, add tracking info, submit.\n826\tRefund modal: enter amount (partial or full), reason, restock checkbox, submit.\n827\t\n828\t#### Step 7.5: Other Admin Sections\n829\t\n830\t**Files to create:**\n831\t\n832\t| Component | Description |\n833\t|-----------|-------------|\n834\t| `Admin\\Collections\\Index` | Collection list |\n835\t| `Admin\\Collections\\Form` | Shared form component for create/edit collection with product picker, reorder products |\n836\t| `Admin\\Customers\\Index` | Customer list with search |\n837\t| `Admin\\Customers\\Show` | Customer detail: info, orders, addresses |\n838\t| `Admin\\Discounts\\Index` | Discount list with status/type filters |\n839\t| `Admin\\Discounts\\Form` | Shared form component for create/edit discount: code, type, value, dates, rules |\n840\t| `Admin\\Settings\\Index` | Tabbed settings: General, Domains, Shipping, Taxes, Checkout, Notifications |\n841\t| `Admin\\Settings\\Shipping` | Shipping zones CRUD, rates CRUD per zone |\n842\t| `Admin\\Settings\\Taxes` | Tax mode toggle, manual rate configuration |\n843\t| `Admin\\Themes\\Index` | Theme cards with Publish/Duplicate/Delete actions |\n844\t| `Admin\\Themes\\Editor` | Left: sections. Center: preview. Right: settings. |\n845\t| `Admin\\Pages\\Index` | Content pages list |\n846\t| `Admin\\Pages\\Form` | Shared form component for create/edit page with rich text editor |\n847\t| `Admin\\Navigation\\Index` | Menu management with drag-and-drop item ordering |\n848\t| `Admin\\Analytics\\Index` | Sales chart, traffic, funnel visualization, date range |\n849\t| `Admin\\Search\\Settings` | Synonyms, stop words, reindex button |\n850\t| `Admin\\Apps\\Index` | App directory |\n851\t| `Admin\\Apps\\Show` | Installed app detail |\n852\t| `Admin\\Developers\\Index` | API token management, webhook subscriptions |\n853\t\n854\t---\n855\t\n856\t### Phase 8: Search\n857\t\n858\t**Priority:** LOW - enhances product discovery.\n859\t\n860\t#### Step 8.1: Migrations\n861\t\n862\t1. `create_search_settings_table` - PK: `store_id`\n863\t2. `create_search_queries_table` - FK: `store_id`\n864\t3. FTS5 virtual table migration (raw SQL) - create `products_fts` virtual table using FTS5 with columns: title, description, vendor, product_type, tags; content synced from `products` table\n865\t\n866\t#### Step 8.2: Search Service\n867\t\n868\t**File to create:** `App\\Services\\SearchService`\n869\t\n870\t| Method | Description |\n871\t|--------|-------------|\n872\t| `search(Store $store, string $query, array $filters, int $perPage): LengthAwarePaginator` | FTS5 query with store scoping |\n873\t| `autocomplete(Store $store, string $prefix, int $limit): Collection` | Prefix matching for search-as-you-type |\n874\t| `syncProduct(Product $product): void` | Upsert into FTS5 index |\n875\t| `removeProduct(int $productId): void` | Delete from FTS5 index |\n876\t\n877\t**File to create:** `App\\Observers\\ProductObserver` - calls `SearchService::syncProduct()` on create/update, `removeProduct()` on delete.\n878\t\n879\t#### Step 8.3: Search UI\n880\t\n881\t**Files to create:**\n882\t\n883\t| Component | Description |\n884\t|-----------|-------------|\n885\t| `Storefront\\Search\\Modal` | Search-as-you-type modal with autocomplete results |\n886\t| `Storefront\\Search\\Index` | Full search results page with filters (vendor, price range, collection), sort (relevance, price, newest), pagination |\n887\t\n888\t---\n889\t\n890\t### Phase 9: Analytics\n891\t\n892\t**Priority:** LOW - reporting and insights.\n893\t\n894\t#### Step 9.1: Migrations\n895\t\n896\t1. `create_analytics_events_table` - FK: `store_id`, `customer_id`\n897\t2. `create_analytics_daily_table` - composite PK: `store_id` + `date`\n898\t\n899\t#### Step 9.2: Analytics Service\n900\t\n901\t**File to create:** `App\\Services\\AnalyticsService`\n902\t\n903\t| Method | Description |\n904\t|--------|-------------|\n905\t| `track(Store $store, string $type, array $properties, ?string $sessionId, ?int $customerId): void` | Inserts raw event |\n906\t| `getDailyMetrics(Store $store, string $startDate, string $endDate): Collection` | Reads pre-aggregated daily data |\n907\t\n908\tEvent types: `page_view`, `product_view`, `add_to_cart`, `remove_from_cart`, `checkout_started`, `checkout_completed`, `search`.\n909\t\n910\t**File to create:** `App\\Jobs\\AggregateAnalytics`\n911\t\n912\tRequirements:\n913\t- Runs daily via `routes/console.php`\n914\t- Aggregates raw events into `analytics_daily` rows\n915\t- Calculates: orders_count, revenue_amount, aov_amount, visits_count, add_to_cart_count, checkout_started_count\n916\t\n917\t---\n918\t\n919\t### Phase 10: Apps and Webhooks\n920\t\n921\t**Priority:** LOW - extensibility.\n922\t\n923\t#### Step 10.1: Migrations\n924\t\n925\t1. `create_apps_table`\n926\t2. `create_app_installations_table` - FK: `store_id`, `app_id`\n927\t3. `create_oauth_clients_table` - FK: `app_id`\n928\t4. `create_oauth_tokens_table` - FK: `installation_id`\n929\t5. `create_webhook_subscriptions_table` - FK: `store_id`, `app_installation_id`\n930\t6. `create_webhook_deliveries_table` - FK: `subscription_id`\n931\t\n932\t#### Step 10.2: Webhook Service\n933\t\n934\t**File to create:** `App\\Services\\WebhookService`\n935\t\n936\t| Method | Description |\n937\t|--------|-------------|\n938\t| `dispatch(Store $store, string $eventType, array $payload): void` | Finds matching subscriptions, queues delivery jobs |\n939\t| `sign(string $payload, string $secret): string` | HMAC-SHA256 signature |\n940\t| `verify(string $payload, string $signature, string $secret): bool` | Verify incoming webhook signatures |\n941\t\n942\t**File to create:** `App\\Jobs\\DeliverWebhook`\n943\t\n944\tRequirements:\n945\t- HTTP POST to target URL with JSON payload\n946\t- HMAC signature in `X-Platform-Signature` header, event type in `X-Platform-Event`, delivery ID in `X-Platform-Delivery-Id`, timestamp in `X-Platform-Timestamp`\n947\t- Retry with exponential backoff: 1 min, 5 min, 30 min, 2 h, 12 h (6 total attempts: 1 initial + 5 retries; Laravel backoff config `[60, 300, 1800, 7200, 43200]`)\n948\t- Records response in `webhook_deliveries`\n949\t- Circuit breaker: after 5 consecutive failures, pause subscription\n950\t\n951\t---\n952\t\n953\t### Phase 11: Polish\n954\t\n955\t**Priority:** LOW but important for completeness.\n956\t\n957\t1. Accessibility audit: skip links on all pages, ARIA labels on interactive elements, focus management in modals\n958\t2. Responsive testing: all pages render correctly at sm/md/lg/xl breakpoints\n959\t3. Dark mode: `dark:` prefix on all storefront views and admin views\n960\t4. Error pages: styled 404 and 503 pages matching the storefront theme\n961\t5. Structured logging: JSON channel in `config/logging.php`"}]},"uuid":"721f6d41-ce5d-4079-b317-0c5a15fb35f4","timestamp":"2026-06-09T18:14:44.716Z","toolUseResult":{"type":"text","file":{"filePath":"/Users/fabianwesner/Herd/shop/specs/09-IMPLEMENTATION-ROADMAP.md","content":"# 09 - Implementation Roadmap and Pest Test Specification\n\n> E-commerce platform - Step-by-step build order and exhaustive test plan for Laravel 12 + Livewire v4 + Flux UI Free + SQLite + Tailwind CSS v4\n\n---\n\n## 1. Technology Decisions (Final)\n\nThese decisions adapt the original PDF spec for a self-contained, benchmarkable Laravel application. All decisions are final and must not be revisited.\n\n| Concern | PDF Default | Our Decision | Rationale |\n|---------|-------------|--------------|-----------|\n| Database | PostgreSQL | SQLite | Self-contained, no external DB, zero config |\n| Cache | Redis | File (Array for tests) | No Redis dependency |\n| Session | Redis | File | No Redis dependency |\n| Queue | Redis + Horizon | Sync (dev) / Database (prod) | No Redis dependency, sync for immediate feedback |\n| Search | Elasticsearch + Scout | SQLite FTS5 | Self-contained, no external service |\n| Storage | S3 | Local filesystem (storage/app/public) | No AWS dependency |\n| Admin UI | React/Vue SPA | Livewire v4 + Flux UI Free | Server-rendered, matches project stack |\n| Storefront | Blade SSR + Vite | Blade + Livewire + Tailwind v4 | Server-rendered, matches project stack |\n| Auth (admin) | Sanctum SPA | Laravel session auth | Standard Livewire auth pattern |\n| Auth (API) | Sanctum tokens | Sanctum personal access tokens | For programmatic API access |\n| Auth (customer) | Separate guard | Custom `customer` guard | Storefront customer auth |\n| OAuth (apps) | Passport | Deferred/Stubbed | Simplifies initial build, can add later |\n| Payments | Stripe + PayPal | Mock PSP (in-process) | No external API calls. MockPaymentProvider handles credit card, PayPal, bank transfer with magic card numbers for testing. |\n| Email | SMTP/SES | Log driver (dev) / SMTP | Log for benchmark, SMTP configurable |\n| Monitoring | OpenTelemetry | Laravel Log (structured JSON) | Simplified for benchmark |\n| CI/CD | GitHub Actions | Not implemented | Out of scope for one-shot benchmark |\n| Docker | Multi-stage | Not implemented | App served by Laravel Herd locally |\n\n---\n\n## 2. Implementation Phases (Build Order)\n\nEach phase builds on the previous. A coding agent should execute these in strict sequential order. Tests are written alongside each phase (see Section 3 for the full test specification).\n\n### Phase Dependency Graph\n\n```mermaid\nflowchart TD\n    P1[Phase 1: Foundation]\n    P2[Phase 2: Catalog]\n    P3[Phase 3: Themes and Storefront Layout]\n    P4[Phase 4: Cart, Checkout, Discounts, Shipping, Taxes]\n    P5[Phase 5: Payments, Orders, Fulfillment]\n    P6[Phase 6: Customer Accounts]\n    P7[Phase 7: Admin Panel]\n    P8[Phase 8: Search]\n    P9[Phase 9: Analytics]\n    P10[Phase 10: Apps and Webhooks]\n    P11[Phase 11: Polish]\n    P12[Phase 12: Full Test Suite]\n\n    P1 --> P2\n    P1 --> P3\n    P2 --> P4\n    P3 --> P4\n    P4 --> P5\n    P5 --> P6\n    P5 --> P7\n    P2 --> P8\n    P5 --> P9\n    P5 --> P10\n    P6 --> P11\n    P7 --> P11\n    P8 --> P11\n    P9 --> P11\n    P10 --> P11\n    P11 --> P12\n```\n\n---\n\n### Phase 1: Foundation (Migrations, Models, Middleware, Auth)\n\n**Priority:** CRITICAL - everything depends on this.\n\n#### Step 1.1: Environment and Config\n\n| Config File | Setting | Value | Purpose |\n|-------------|---------|-------|---------|\n| `.env` | `DB_CONNECTION` | `sqlite` | Use SQLite as database |\n| `.env` | `DB_DATABASE` | `database/database.sqlite` | SQLite database file path |\n| `.env` | `CACHE_STORE` | `file` | File-based caching |\n| `.env` | `SESSION_DRIVER` | `file` | File-based sessions |\n| `.env` | `QUEUE_CONNECTION` | `sync` | Synchronous queue for dev |\n| `.env` | `MAIL_MAILER` | `log` | Log-based mail for dev |\n| `.env` | `FILESYSTEM_DISK` | `local` | Local filesystem storage |\n| `config/database.php` | SQLite connection | WAL mode, foreign keys enabled, busy_timeout=5000, synchronous=normal | Optimized SQLite configuration |\n| `config/session.php` | `driver` | `file` | Session driver |\n| `config/session.php` | `lifetime` | `120` | Session lifetime in minutes |\n| `config/cache.php` | `default` | `file` | Cache driver |\n| `config/queue.php` | `default` | `sync` | Queue driver |\n| `config/auth.php` | Guards | Add `customer` guard with `customers` provider | Customer storefront authentication |\n| `config/auth.php` | Providers | Add `customers` provider pointing to Customer model | Customer user provider |\n| `config/auth.php` | Passwords | Add `customers` password broker | Customer password reset |\n| `config/filesystems.php` | `public` disk | Ensure configured for local storage | Media file storage |\n| `config/logging.php` | Channels | Add structured JSON channel | Structured logging |\n\n#### Step 1.2: Core Migrations (Batch 1-2)\n\nCreate in this dependency order:\n\n1. `create_organizations_table` - no dependencies\n2. `create_stores_table` - FK: `organization_id`\n3. `create_store_domains_table` - FK: `store_id`\n4. Modify default `users` migration - add `status`, `last_login_at`, `two_factor_*` columns; rename `password` to `password_hash` internally\n5. `create_store_users_table` - composite PK: `store_id` + `user_id`, with `role` column\n6. `create_store_settings_table` - PK: `store_id`\n\nAll monetary amounts stored as INTEGER in minor units (cents). All enums stored as TEXT with CHECK constraints. All timestamps as TEXT (ISO-8601) via Laravel.\n\n#### Step 1.3: Core Models\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Model (with migration, factory, seeder) | `Organization` | Top-level tenant entity |\n| Model (with migration, factory, seeder) | `Store` | Individual store within an organization |\n| Model (with migration, factory, seeder) | `StoreDomain` | Domain mapping for a store |\n| Model (pivot) | `StoreUser` | Pivot model with `role` attribute, custom Pivot class |\n| Model (with migration, factory, seeder) | `StoreSettings` | Per-store configuration |\n\n**Relationship definitions:**\n\n| Model | Key Relationships |\n|-------|-------------------|\n| `Organization` | `hasMany(Store::class)` |\n| `Store` | `belongsTo(Organization::class)`, `hasMany(StoreDomain::class)`, `belongsToMany(User::class)` through `store_users`, `hasOne(StoreSettings::class)` |\n| `StoreDomain` | `belongsTo(Store::class)` |\n| `User` | `belongsToMany(Store::class)` through `store_users` |\n| `StoreUser` | Pivot model with `role` attribute, custom `Pivot` class |\n| `StoreSettings` | `belongsTo(Store::class)` |\n\nEach model must have:\n- Explicit return type declarations on all methods\n- Proper `$fillable` or `$guarded` arrays\n- `casts()` method for JSON/enum columns\n- Factory with meaningful default values\n- Seeder that creates sample data\n\n#### Step 1.4: Enums\n\n**Files to create in `app/Enums/`:**\n\n| Enum | Values |\n|------|--------|\n| `StoreStatus` | `Active`, `Suspended` |\n| `StoreUserRole` | `Owner`, `Admin`, `Staff`, `Support` |\n| `StoreDomainType` | `Storefront`, `Admin`, `Api` |\n\n#### Step 1.5: Tenant Resolution Middleware\n\n**File to create:** `App\\Http\\Middleware\\ResolveStore`\n\nRequirements:\n1. Storefront routes: extract hostname from the request, look up `store_domains`, cache hostname-to-store_id for 5 minutes, bind `Store` as singleton via container instance `current_store`\n2. Admin routes: read `current_store_id` from session, verify user has `store_users` record\n3. Return 404 if hostname not found\n4. Return 503 for suspended stores on storefront routes\n\n**Registration in `bootstrap/app.php`:**\n- Register middleware group `storefront` containing `ResolveStore`\n- Register middleware group `admin` containing `ResolveStore`\n\n#### Step 1.6: BelongsToStore Trait and Global Scope\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Trait | `App\\Models\\Concerns\\BelongsToStore` | Applies StoreScope and auto-sets store_id on creating event |\n| Scope | `App\\Models\\Scopes\\StoreScope` | Applies `where('store_id', app('current_store')->id)` to all queries |\n\nApplied on: products, collections, customers, orders, carts, checkouts, discounts, shipping_zones, themes, pages, navigation_menus, analytics_events, analytics_daily, webhook_subscriptions, inventory_items, search_queries.\n\n#### Step 1.7: Authentication\n\n**Admin auth requirements:**\n\n| Component | Description |\n|-----------|-------------|\n| Livewire component `Admin\\Auth\\Login` | Admin login form |\n| Livewire component `Admin\\Auth\\Logout` | Admin logout action |\n| Auth mechanism | Standard Laravel session auth via `Auth::guard('web')->attempt()` |\n| Rate limiting | 5 attempts per minute per IP via `RateLimiter::for('login')` |\n| Password reset | Standard Laravel flow with `Password::broker('users')` |\n\n**Customer auth requirements:**\n\n| Component | Description |\n|-----------|-------------|\n| Custom guard | `customer` guard with `customers` provider |\n| Custom user provider | `CustomerUserProvider` that injects `store_id` into queries |\n| Livewire component `Storefront\\Account\\Auth\\Login` | Customer login form |\n| Livewire component `Storefront\\Account\\Auth\\Register` | Customer registration form |\n| Uniqueness | Customer email unique per store, not globally |\n| Rate limiting | 5 attempts per minute per IP |\n\n**Rate limiter registration:**\n- Register rate limiters in `AppServiceProvider::boot()` for login (5 per minute per IP)\n\n#### Step 1.8: Authorization\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Policy | `ProductPolicy` | Product authorization based on store role |\n| Policy | `OrderPolicy` | Order authorization based on store role |\n| Policy | `CollectionPolicy` | Collection authorization based on store role |\n| Policy | `DiscountPolicy` | Discount authorization based on store role |\n| Policy | `CustomerPolicy` | Customer authorization based on store role |\n| Policy | `StorePolicy` | Store authorization based on store role |\n| Policy | `PagePolicy` | Page authorization based on store role |\n| Policy | `ThemePolicy` | Theme authorization based on store role |\n| Policy | `FulfillmentPolicy` | Fulfillment authorization based on store role |\n| Policy | `RefundPolicy` | Refund authorization based on store role |\n\nEach policy checks user role via `store_users` pivot for the current store. Helper on User model: `roleForStore(Store $store): ?StoreUserRole`. Register policies via auto-discovery or explicit binding in `AppServiceProvider`.\n\n**Permission Matrix:**\n\n| Permission | Owner | Admin | Staff | Support |\n|------------|:-----:|:-----:|:-----:|:-------:|\n| Manage store settings | Y | Y | N | N |\n| Delete store | Y | N | N | N |\n| Manage staff | Y | Y | N | N |\n| Manage products (CRUD) | Y | Y | Y | N |\n| Delete/archive products | Y | Y | N | N |\n| Manage orders | Y | Y | Y | Read-only |\n| Process refunds | Y | Y | N | N |\n| Create fulfillments | Y | Y | Y | N |\n| Manage discounts | Y | Y | Y | N |\n| Manage themes | Y | Y | N | N |\n| Manage apps | Y | Y | N | N |\n| View analytics | Y | Y | Y | N |\n| Manage shipping/tax | Y | Y | N | N |\n| View customers | Y | Y | Y | Y |\n| Update customers | Y | Y | Y | N |\n\n---\n\n### Phase 2: Catalog (Products, Variants, Inventory, Collections, Media)\n\n**Priority:** HIGH - storefront and orders depend on this.\n\n#### Step 2.1: Migrations (Batch 3-5)\n\nCreate in dependency order:\n\n1. `create_products_table` - FK: `store_id`\n2. `create_product_options_table` - FK: `product_id`\n3. `create_product_option_values_table` - FK: `product_option_id`\n4. `create_product_variants_table` - FK: `product_id`\n5. `create_variant_option_values_table` - composite PK: `variant_id` + `product_option_value_id`\n6. `create_inventory_items_table` - FK: `store_id`, `variant_id`\n7. `create_collections_table` - FK: `store_id`\n8. `create_collection_products_table` - composite PK: `collection_id` + `product_id`\n9. `create_product_media_table` - FK: `product_id`\n\n#### Step 2.2: Models with Relationships\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Model (with migration, factory, seeder) | `Product` | Product entity |\n| Model (with migration, factory, seeder) | `ProductOption` | Product option (e.g., Size, Color) |\n| Model (with migration, factory, seeder) | `ProductOptionValue` | Option values (e.g., S, M, L) |\n| Model (with migration, factory, seeder) | `ProductVariant` | Product variant (SKU-level) |\n| Model (with migration, factory, seeder) | `InventoryItem` | Inventory tracking per variant |\n| Model (with migration, factory, seeder) | `Collection` | Product collection/category |\n| Model (with migration, factory, seeder) | `ProductMedia` | Product images and videos |\n\n**Relationship definitions:**\n\n| Model | Key Relationships |\n|-------|-------------------|\n| `Product` | `hasMany(ProductVariant)`, `hasMany(ProductOption)`, `hasMany(ProductMedia)`, `belongsToMany(Collection)` via `collection_products` |\n| `ProductOption` | `belongsTo(Product)`, `hasMany(ProductOptionValue)` |\n| `ProductOptionValue` | `belongsTo(ProductOption)` |\n| `ProductVariant` | `belongsTo(Product)`, `hasOne(InventoryItem)`, `belongsToMany(ProductOptionValue)` via `variant_option_values` |\n| `InventoryItem` | `belongsTo(ProductVariant)` |\n| `Collection` | `belongsToMany(Product)` via `collection_products` |\n| `ProductMedia` | `belongsTo(Product)` |\n\n**Enums to create:**\n\n| Enum | Values |\n|------|--------|\n| `ProductStatus` | `Draft`, `Active`, `Archived` |\n| `VariantStatus` | `Active`, `Archived` |\n| `CollectionStatus` | `Draft`, `Active`, `Archived` |\n| `MediaType` | `Image`, `Video` |\n| `MediaStatus` | `Processing`, `Ready`, `Failed` |\n| `InventoryPolicy` | `Deny`, `Continue` |\n\n#### Step 2.3: Product Service\n\n**File to create:** `App\\Services\\ProductService`\n\n| Method | Description |\n|--------|-------------|\n| `create(Store $store, array $data): Product` | Creates product with nested variants/options |\n| `update(Product $product, array $data): Product` | Updates product |\n| `transitionStatus(Product $product, ProductStatus $newStatus): void` | Validates transitions per state machine |\n| `delete(Product $product): void` | Hard delete only if draft with no order references; otherwise throws |\n\n**File to create:** `App\\Services\\VariantMatrixService`\n\n| Method | Description |\n|--------|-------------|\n| `rebuildMatrix(Product $product): void` | Computes cartesian product, creates missing variants, archives orphaned ones |\n\n**File to create:** `App\\Support\\HandleGenerator`\n\n| Method | Description |\n|--------|-------------|\n| `generate(string $title, string $table, int $storeId, ?int $excludeId = null): string` | Generates unique slugs |\n\n#### Step 2.4: Inventory Service\n\n**File to create:** `App\\Services\\InventoryService`\n\n| Method | Description |\n|--------|-------------|\n| `checkAvailability(InventoryItem $item, int $quantity): bool` | Checks if sufficient available inventory exists |\n| `reserve(InventoryItem $item, int $quantity): void` | Increments `quantity_reserved` |\n| `release(InventoryItem $item, int $quantity): void` | Decrements `quantity_reserved` |\n| `commit(InventoryItem $item, int $quantity): void` | Decrements both `on_hand` and `reserved` |\n| `restock(InventoryItem $item, int $quantity): void` | Increments `quantity_on_hand` |\n\nAll operations wrapped in database transactions. Throws `InsufficientInventoryException` when policy is `deny` and available < quantity.\n\n#### Step 2.5: Media Upload\n\n**File to create:** `App\\Jobs\\ProcessMediaUpload`\n\nRequirements:\n- Resizes images to standard sizes (thumbnail 150x150, medium 600x600, large 1200x1200)\n- Updates `ProductMedia` status from `processing` to `ready` (or `failed`)\n\nLivewire file upload via `WithFileUploads` trait. Stored on local `public` disk.\n\n---\n\n### Phase 3: Themes, Pages, Navigation, Storefront Layout\n\n**Priority:** HIGH - storefront rendering depends on this.\n\n#### Step 3.1: Migrations (Batch 3)\n\n1. `create_themes_table` - FK: `store_id`\n2. `create_theme_files_table` - FK: `theme_id`\n3. `create_theme_settings_table` - PK: `theme_id`\n4. `create_pages_table` - FK: `store_id`\n5. `create_navigation_menus_table` - FK: `store_id`\n6. `create_navigation_items_table` - FK: `menu_id`\n\n#### Step 3.2: Models\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Model (with migration, factory, seeder) | `Theme` | Store theme entity |\n| Model (with migration, factory, seeder) | `ThemeFile` | Individual theme file |\n| Model (with migration, factory, seeder) | `ThemeSettings` | Theme configuration |\n| Model (with migration, factory, seeder) | `Page` | CMS page |\n| Model (with migration, factory, seeder) | `NavigationMenu` | Navigation menu entity |\n| Model (with migration, factory, seeder) | `NavigationItem` | Individual navigation item |\n\n**Relationship definitions:**\n\n| Model | Key Relationships |\n|-------|-------------------|\n| `Theme` | `belongsTo(Store)`, `hasMany(ThemeFile)`, `hasOne(ThemeSettings)` |\n| `ThemeFile` | `belongsTo(Theme)` |\n| `ThemeSettings` | `belongsTo(Theme)` |\n| `Page` | `belongsTo(Store)` |\n| `NavigationMenu` | `belongsTo(Store)`, `hasMany(NavigationItem)` |\n| `NavigationItem` | `belongsTo(NavigationMenu)` |\n\n**Enums to create:**\n\n| Enum | Values |\n|------|--------|\n| `ThemeStatus` | `Draft`, `Published` |\n| `PageStatus` | `Draft`, `Published`, `Archived` |\n| `NavigationItemType` | `Link`, `Page`, `Collection`, `Product` |\n\n#### Step 3.3: Storefront Blade Layout\n\n**Directory structure for `resources/views/storefront/`:**\n\n| Directory | Files |\n|-----------|-------|\n| `layouts/` | `app.blade.php` |\n| `pages/` | `home.blade.php`, `collection.blade.php`, `product.blade.php`, `cart.blade.php`, `search.blade.php`, `page.blade.php` |\n| `checkout/` | `index.blade.php`, `confirmation.blade.php` |\n| `account/` | `login.blade.php`, `register.blade.php`, `dashboard.blade.php` |\n| `account/orders/` | `index.blade.php`, `show.blade.php` |\n| `account/addresses/` | `index.blade.php` |\n| `errors/` | `404.blade.php`, `503.blade.php` |\n| `components/` | `product-card.blade.php`, `price.blade.php`, `badge.blade.php`, `quantity-selector.blade.php`, `address-form.blade.php`, `order-summary.blade.php`, `breadcrumbs.blade.php`, `pagination.blade.php` |\n\nBase layout (`app.blade.php`): header with nav, announcement bar, main content, footer, cart drawer. All with dark mode support via `dark:` prefix.\n\n**ThemeSettings Service:** Singleton registered in `AppServiceProvider`, loads and caches active theme settings for the current store.\n\n#### Step 3.4: Storefront Livewire Components\n\n**Files to create:**\n\n| Component | Purpose |\n|-----------|---------|\n| `Storefront\\Home` | Dynamic sections based on theme settings |\n| `Storefront\\Collections\\Index` | All collections grid |\n| `Storefront\\Collections\\Show` | Product grid with filters/sort/pagination |\n| `Storefront\\Products\\Show` | Variant selection, image gallery, add-to-cart |\n| `Storefront\\Cart\\Show` | Full cart page with line items and totals |\n| `Storefront\\CartDrawer` | Slide-out cart drawer (always in layout) |\n| `Storefront\\Search\\Index` | Search results with filters |\n| `Storefront\\Search\\Modal` | Search modal with autocomplete |\n| `Storefront\\Pages\\Show` | Static CMS page rendering |\n\n#### Step 3.5: Navigation Service\n\n**File to create:** `App\\Services\\NavigationService`\n\n| Method | Description |\n|--------|-------------|\n| `buildTree(NavigationMenu $menu): array` | Builds navigation trees from navigation_menus / navigation_items |\n| `resolveUrl(NavigationItem $item): string` | Resolves URLs for page, collection, product type items |\n\nCaches per store with 5-minute TTL.\n\n---\n\n### Phase 4: Cart, Checkout, Discounts, Shipping, Taxes\n\n**Priority:** HIGH - core shopping flow.\n\n#### Step 4.1: Migrations (Batch 4-5)\n\n1. `create_carts_table` - FK: `store_id`, `customer_id`\n2. `create_cart_lines_table` - FK: `cart_id`, `variant_id`\n3. `create_checkouts_table` - FK: `store_id`, `cart_id`, `customer_id`\n4. `create_shipping_zones_table` - FK: `store_id`\n5. `create_shipping_rates_table` - FK: `zone_id`\n6. `create_tax_settings_table` - PK: `store_id`\n7. `create_discounts_table` - FK: `store_id`\n\n#### Step 4.2: Models\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Model (with migration, factory, seeder) | `Cart` | Shopping cart entity |\n| Model (with migration, factory, seeder) | `CartLine` | Individual cart line item |\n| Model (with migration, factory, seeder) | `Checkout` | Checkout session entity |\n| Model (with migration, factory, seeder) | `ShippingZone` | Shipping zone configuration |\n| Model (with migration, factory, seeder) | `ShippingRate` | Shipping rate within a zone |\n| Model (with migration, factory, seeder) | `TaxSettings` | Per-store tax configuration |\n| Model (with migration, factory, seeder) | `Discount` | Discount code or automatic discount |\n\n**Relationship definitions:**\n\n| Model | Key Relationships |\n|-------|-------------------|\n| `Cart` | `belongsTo(Store)`, `belongsTo(Customer)`, `hasMany(CartLine)`, `hasMany(Checkout)` |\n| `CartLine` | `belongsTo(Cart)`, `belongsTo(ProductVariant)` |\n| `Checkout` | `belongsTo(Store)`, `belongsTo(Cart)`, `belongsTo(Customer)` |\n| `ShippingZone` | `belongsTo(Store)`, `hasMany(ShippingRate)` |\n| `ShippingRate` | `belongsTo(ShippingZone)` |\n| `TaxSettings` | `belongsTo(Store)` |\n| `Discount` | `belongsTo(Store)` |\n\n**Enums to create:**\n\n| Enum | Values |\n|------|--------|\n| `CartStatus` | `Active`, `Converted`, `Abandoned` |\n| `CheckoutStatus` | `Started`, `Addressed`, `ShippingSelected`, `PaymentPending`, `Completed`, `Expired` |\n| `DiscountType` | `Code`, `Automatic` |\n| `DiscountValueType` | `Percent` (`percent`), `Fixed` (`fixed`), `FreeShipping` (`free_shipping`) -- PascalCase cases backed by lowercase string values stored in DB |\n| `DiscountStatus` | `Draft`, `Active`, `Expired`, `Disabled` |\n| `ShippingRateType` | `Flat`, `Weight`, `Price`, `Carrier` |\n| `TaxMode` | `Manual`, `Provider` |\n\n#### Step 4.3: Cart Service\n\n**File to create:** `App\\Services\\CartService`\n\n| Method | Description |\n|--------|-------------|\n| `create(Store, ?Customer): Cart` | Creates cart with store currency, version 1 |\n| `addLine(Cart, int $variantId, int $qty): CartLine` | Validates variant/product active, inventory, increments existing line or creates new |\n| `updateLineQuantity(Cart, int $lineId, int $qty): CartLine` | Validates quantity, recalculates amounts |\n| `removeLine(Cart, int $lineId): void` | Deletes line, increments version |\n| `getOrCreateForSession(Store, ?Customer): Cart` | Session-based cart binding |\n| `mergeOnLogin(Cart $guest, Cart $customer): Cart` | Merges guest cart into customer cart |\n\nAll mutations increment `cart_version`. API clients must send `expected_version` or receive 409 Conflict.\n\n#### Step 4.4: Discount Service\n\n**File to create:** `App\\Services\\DiscountService`\n\n| Method | Description |\n|--------|-------------|\n| `validate(string $code, Store $store, Cart $cart): Discount` | Validates code exists, is active, dates valid, usage limit not reached, minimum purchase met |\n| `calculate(Discount $discount, int $subtotal, array $lines): DiscountResult` | Calculates amount, allocates proportionally across qualifying lines |\n\nCase-insensitive code lookup. Throws `InvalidDiscountException` with specific reason codes.\n\n#### Step 4.5: Shipping Calculator\n\n**File to create:** `App\\Services\\ShippingCalculator`\n\n| Method | Description |\n|--------|-------------|\n| `getAvailableRates(Store $store, array $address): Collection` | Matches zones by country/region, returns active rates |\n| `calculate(ShippingRate $rate, Cart $cart): int` | Calculates cost based on rate type (flat/weight/price) |\n\nZone matching: checks `countries_json` for country code, then `regions_json` for region code.\n\n#### Step 4.6: Tax Calculator\n\n**File to create:** `App\\Services\\TaxCalculator`\n\n| Method | Description |\n|--------|-------------|\n| `calculate(int $amount, TaxSettings $settings, array $address): TaxResult` | Calculates tax per manual rate or provider |\n| `extractInclusive(int $grossAmount, int $rateBasisPoints): int` | Extracts tax from gross (prices-include-tax mode) |\n| `addExclusive(int $netAmount, int $rateBasisPoints): int` | Adds tax to net amount |\n\nAll math uses integers. Rates stored in basis points (1900 = 19%).\n\n#### Step 4.7: Pricing Engine\n\n**File to create:** `App\\Services\\PricingEngine`\n\nMethod: `calculate(Checkout $checkout): PricingResult`\n\n**Pipeline steps:**\n1. Line subtotals: `unit_price * quantity` per line\n2. Cart subtotal: sum of line subtotals\n3. Discount: apply rules, allocate proportionally\n4. Discounted subtotal: subtotal minus discount\n5. Shipping: based on selected method/rate\n6. Tax: on discounted amounts (plus shipping if taxable)\n7. Total: discounted_subtotal + shipping + tax_total\n\nResult stored in `checkouts.totals_json` as snapshot.\n\n**Value objects to create:**\n\n| Type | Name | Fields |\n|------|------|--------|\n| Value Object | `App\\ValueObjects\\PricingResult` | subtotal, discount, shipping, taxLines, taxTotal, total, currency |\n| Value Object | `App\\ValueObjects\\TaxLine` | name, rate (basis points), amount (cents) |\n\n#### Step 4.8: Checkout State Machine\n\n**File to create:** `App\\Services\\CheckoutService`\n\n| Transition | Method | Requirements |\n|------------|--------|-------------|\n| `started` -> `addressed` | `setAddress(Checkout, array)` | Valid email, shipping address fields |\n| `addressed` -> `shipping_selected` | `setShippingMethod(Checkout, int $rateId)` | Rate belongs to applicable zone |\n| `shipping_selected` -> `payment_selected` | `selectPaymentMethod(Checkout, string)` | All data valid, reserve inventory |\n| `payment_selected` -> `completed` | `completeCheckout(Checkout, array)` | Payment confirmed, idempotent |\n| Any active -> `expired` | `expireCheckout(Checkout)` | Via scheduled job |\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Job | `App\\Jobs\\ExpireAbandonedCheckouts` | Runs every 15 minutes via `routes/console.php`; finds checkouts with `expires_at < now()` and active status; releases reserved inventory, transitions to `expired` |\n| Job | `App\\Jobs\\CleanupAbandonedCarts` | Runs daily; marks carts with `status = active` and `updated_at < 14 days ago` as `abandoned` |\n\n#### Step 4.9: Storefront Cart/Checkout UI\n\n**Files to create:**\n\n| Component | Description |\n|-----------|-------------|\n| `Storefront\\CartDrawer` | Slide-out panel: line items, quantity controls, discount code input, subtotal, checkout button |\n| `Storefront\\Cart\\Show` | Full cart page with same functionality plus shipping estimate |\n| `Storefront\\Checkout\\Show` | Multi-step: Contact/Address -> Shipping method -> Payment. Stepper UI. |\n| `Storefront\\Checkout\\Confirmation` | Order confirmation: order number, items, totals, next steps |\n\n---\n\n### Phase 5: Payments, Orders, Fulfillment\n\n**Priority:** HIGH - completes the purchase flow.\n\n#### Step 5.1: Migrations (Batch 5-7)\n\n1. `create_customers_table` - FK: `store_id`\n2. `create_customer_addresses_table` - FK: `customer_id`\n3. `create_orders_table` - FK: `store_id`, `customer_id`\n4. `create_order_lines_table` - FK: `order_id`, `product_id` (nullable), `variant_id` (nullable)\n5. `create_payments_table` - FK: `order_id`\n6. `create_refunds_table` - FK: `order_id`, `payment_id`\n7. `create_fulfillments_table` - FK: `order_id`\n8. `create_fulfillment_lines_table` - FK: `fulfillment_id`, `order_line_id`\n\n#### Step 5.2: Models\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Model (with migration, factory, seeder) | `Customer` | Store customer entity |\n| Model (with migration, factory, seeder) | `CustomerAddress` | Customer address |\n| Model (with migration, factory, seeder) | `Order` | Order entity |\n| Model (with migration, factory, seeder) | `OrderLine` | Order line item |\n| Model (with migration, factory, seeder) | `Payment` | Payment record |\n| Model (with migration, factory, seeder) | `Refund` | Refund record |\n| Model (with migration, factory, seeder) | `Fulfillment` | Fulfillment record |\n| Model (with migration, factory, seeder) | `FulfillmentLine` | Fulfillment line item |\n\n**Relationship definitions:**\n\n| Model | Key Relationships |\n|-------|-------------------|\n| `Customer` | `belongsTo(Store)`, `hasMany(CustomerAddress)`, `hasMany(Order)`, `hasMany(Cart)` |\n| `CustomerAddress` | `belongsTo(Customer)` |\n| `Order` | `belongsTo(Store)`, `belongsTo(Customer)`, `hasMany(OrderLine)`, `hasMany(Payment)`, `hasMany(Refund)`, `hasMany(Fulfillment)` |\n| `OrderLine` | `belongsTo(Order)`, `belongsTo(Product)` (nullable), `belongsTo(ProductVariant)` (nullable) |\n| `Payment` | `belongsTo(Order)` |\n| `Refund` | `belongsTo(Order)`, `belongsTo(Payment)` |\n| `Fulfillment` | `belongsTo(Order)`, `hasMany(FulfillmentLine)` |\n| `FulfillmentLine` | `belongsTo(Fulfillment)`, `belongsTo(OrderLine)` |\n\n**Enums to create:**\n\n| Enum | Values |\n|------|--------|\n| `OrderStatus` | `Pending`, `Paid`, `Fulfilled`, `Cancelled`, `Refunded` |\n| `FinancialStatus` | `Pending`, `Authorized`, `Paid`, `PartiallyRefunded`, `Refunded`, `Voided` |\n| `FulfillmentStatus` | `Unfulfilled`, `Partial`, `Fulfilled` |\n| `PaymentMethod` | `CreditCard`, `Paypal`, `BankTransfer` |\n| `PaymentStatus` | `Pending`, `Captured`, `Failed`, `Refunded` |\n| `RefundStatus` | `Pending`, `Processed`, `Failed` |\n| `FulfillmentShipmentStatus` | `Pending`, `Shipped`, `Delivered` |\n\n#### Step 5.3: Payment Service (Mock PSP)\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Enum | `App\\Enums\\PaymentMethod` | CreditCard, Paypal, BankTransfer |\n| Interface | `App\\Contracts\\PaymentProvider` | Defines charge, refund methods |\n| Service | `App\\Services\\Payments\\MockPaymentProvider` | Implements PaymentProvider with in-process mock logic |\n\n**PaymentProvider interface methods:**\n\n| Method | Description |\n|--------|-------------|\n| `charge(Checkout $checkout, PaymentMethod $method, array $details): PaymentResult` | Processes payment in-process. For credit_card: validates magic card numbers, returns success/decline. For paypal: always succeeds. For bank_transfer: returns pending (deferred capture). |\n| `refund(Payment $payment, int $amount): RefundResult` | Issues a mock refund (always succeeds). |\n\n**MockPaymentProvider requirements:**\n- No external API calls, no webhooks, no redirects\n- Magic card numbers: `4242424242424242` (success), `4000000000000002` (decline), `4000000000009995` (insufficient funds)\n- Credit card / PayPal: instant capture, returns PaymentResult with status=captured\n- Bank transfer: deferred capture, returns PaymentResult with status=pending\n- Generates mock reference IDs (`mock_` + random string)\n\n**Registration:** Bind `PaymentProvider` interface to `MockPaymentProvider` in `AppServiceProvider`.\n\n#### Step 5.3b: Admin Payment Confirmation\n\n**Files to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Job | `App\\Jobs\\CancelUnpaidBankTransferOrders` | Runs daily via `routes/console.php`; finds bank_transfer orders with `financial_status = pending` and `placed_at < now() - config days`; cancels them and releases reserved inventory |\n\n**Admin \"Confirm Payment\" action** (in OrderService or dedicated action class):\n1. Validate order has `payment_method = bank_transfer` and `financial_status = pending`\n2. Update `financial_status` to `paid`, `status` to `paid`\n3. Update payment record status to `captured`\n4. Commit reserved inventory\n5. If all items are digital (`requires_shipping = false`), auto-create a delivered fulfillment\n6. Dispatch `OrderPaid` event\n\n#### Step 5.4: Order Service\n\n**File to create:** `App\\Services\\OrderService`\n\n| Method | Description |\n|--------|-------------|\n| `createFromCheckout(Checkout $checkout): Order` | Atomic transaction: create order + order lines with snapshots, commit inventory, mark cart converted, dispatch `OrderCreated` event |\n| `generateOrderNumber(Store $store): string` | Sequential per store: #1001, #1002, etc. |\n| `cancel(Order $order, string $reason): void` | Only if not yet fulfilled, releases inventory |\n\nOrder lines store snapshots (`title_snapshot`, `sku_snapshot`) so order history survives product deletion.\n\n#### Step 5.5: Refund Service\n\n**File to create:** `App\\Services\\RefundService`\n\n| Method | Description |\n|--------|-------------|\n| `create(Order $order, Payment $payment, int $amount, ?string $reason, bool $restock): Refund` | Validates amount does not exceed payment, calls provider refund API, updates financial status |\n\n- Partial refunds: `financial_status` -> `partially_refunded`\n- Full refunds: `financial_status` -> `refunded`\n- Restock flag: calls `InventoryService::restock()` for each line\n\n#### Step 5.6: Fulfillment Service\n\n**File to create:** `App\\Services\\FulfillmentService`\n\n| Method | Description |\n|--------|-------------|\n| `create(Order $order, array $lines, ?array $tracking): Fulfillment` | Creates fulfillment with specified lines and quantities. **Fulfillment guard:** Throws exception if `financial_status` is not `paid` or `partially_refunded`. |\n| `markAsShipped(Fulfillment $fulfillment, ?array $tracking): void` | Sets tracking info, transitions to `shipped`, sets `shipped_at` |\n| `markAsDelivered(Fulfillment $fulfillment): void` | Transitions to `delivered`, sets `delivered_at`. Dispatches `FulfillmentDelivered` event. |\n\nUpdates `order.fulfillment_status` based on whether all lines are fulfilled (`fulfilled`) or some (`partial`).\n\n**Fulfillment guard:** Before creating a fulfillment, the service checks that the order's `financial_status` is `paid` or `partially_refunded`. If the guard fails, a `FulfillmentGuardException` is thrown. This prevents shipping items before payment is confirmed (especially important for bank transfer orders).\n\n**Events to create:**\n\n| Type | Name | Purpose |\n|------|------|---------|\n| Event | `OrderCreated` | Dispatched when order is created from checkout |\n| Event | `OrderPaid` | Dispatched when payment is captured |\n| Event | `OrderFulfilled` | Dispatched when all order lines are fulfilled |\n| Event | `OrderCancelled` | Dispatched when order is cancelled |\n| Event | `OrderRefunded` | Dispatched when refund is processed |\n\n---\n\n### Phase 6: Customer Accounts\n\n**Priority:** MEDIUM - enhances the shopping experience.\n\n#### Step 6.1: Customer Auth\n\n- `Customer` model with custom `customer` guard (already configured in Phase 1)\n- Custom `CustomerUserProvider` - scopes queries by `store_id`\n- Customer email unique per store, not globally\n\n#### Step 6.2: Customer Account Pages (Livewire)\n\n**Files to create:**\n\n| Component | Route | Description |\n|-----------|-------|-------------|\n| `Storefront\\Account\\Auth\\Login` | `GET /account/login` | Login form |\n| `Storefront\\Account\\Auth\\Register` | `GET /account/register` | Registration form |\n| `Storefront\\Account\\Dashboard` | `GET /account` | Overview with recent orders |\n| `Storefront\\Account\\Orders\\Index` | `GET /account/orders` | Paginated order history |\n| `Storefront\\Account\\Orders\\Show` | `GET /account/orders/{orderNumber}` | Order detail with timeline |\n| `Storefront\\Account\\Addresses\\Index` | `GET /account/addresses` | Address book CRUD |\n\nLogout: `POST /account/logout` handled by Livewire action. Invalidates session, regenerates CSRF token, redirects to `/account/login`.\n\n---\n\n### Phase 7: Admin Panel\n\n**Priority:** MEDIUM - merchant management interface.\n\n#### Step 7.1: Admin Layout\n\n**File to create:** `resources/views/livewire/admin/layout/app.blade.php`\n\n**Components to create:**\n\n| Component | Description |\n|-----------|-------------|\n| `Admin\\Layout\\Sidebar` | Fixed left sidebar (256px desktop, overlay mobile), navigation groups, Flux `brand`, `icon`, `separator` |\n| `Admin\\Layout\\TopBar` | Store selector dropdown, user profile, hamburger toggle (mobile) |\n| `Admin\\Layout\\Breadcrumbs` | Dynamic breadcrumb trail |\n\nToast notifications via Livewire events.\n\n#### Step 7.2: Dashboard\n\n**File to create:** `Admin\\Dashboard` Livewire component\n\nRequirements:\n- KPI tiles: total sales (period), order count, average order value, conversion rate\n- Orders chart (last 30 days line chart)\n- Recent orders table (last 10)\n- Date range filtering via Livewire properties\n\n#### Step 7.3: Product Management\n\n**Files to create:**\n\n| Component | Description |\n|-----------|-------------|\n| `Admin\\Products\\Index` | Product list with search, status filter, bulk actions (archive, delete), pagination |\n| `Admin\\Products\\Form` | Shared product form component used by both create and edit routes (create vs edit mode). Title, description (rich text), status, vendor, type, tags, variants builder, media upload. |\n\n> **Shared-form pattern:** Create and Edit routes render the same Livewire form component in create vs edit mode. Shared form components follow the pattern `App\\Livewire\\Admin\\{Resource}\\Form`, used for both create and edit routes as defined in Spec 03. This applies to Products, Collections, Discounts, and Pages.\n\nVariants builder: dynamic form to add options (Size, Color, etc.) and values, auto-generates variant matrix. Each variant row has price, SKU, barcode, weight, inventory quantity fields.\n\nMedia upload: Livewire `WithFileUploads`, drag-and-drop, reorder, alt text editing.\n\n#### Step 7.4: Order Management\n\n**Files to create:**\n\n| Component | Description |\n|-----------|-------------|\n| `Admin\\Orders\\Index` | Order list with status filters, search by order number/email, date range |\n| `Admin\\Orders\\Show` | Order detail: timeline, line items, payment info, fulfillment modal, refund modal |\n\nFulfillment modal: select lines and quantities, add tracking info, submit.\nRefund modal: enter amount (partial or full), reason, restock checkbox, submit.\n\n#### Step 7.5: Other Admin Sections\n\n**Files to create:**\n\n| Component | Description |\n|-----------|-------------|\n| `Admin\\Collections\\Index` | Collection list |\n| `Admin\\Collections\\Form` | Shared form component for create/edit collection with product picker, reorder products |\n| `Admin\\Customers\\Index` | Customer list with search |\n| `Admin\\Customers\\Show` | Customer detail: info, orders, addresses |\n| `Admin\\Discounts\\Index` | Discount list with status/type filters |\n| `Admin\\Discounts\\Form` | Shared form component for create/edit discount: code, type, value, dates, rules |\n| `Admin\\Settings\\Index` | Tabbed settings: General, Domains, Shipping, Taxes, Checkout, Notifications |\n| `Admin\\Settings\\Shipping` | Shipping zones CRUD, rates CRUD per zone |\n| `Admin\\Settings\\Taxes` | Tax mode toggle, manual rate configuration |\n| `Admin\\Themes\\Index` | Theme cards with Publish/Duplicate/Delete actions |\n| `Admin\\Themes\\Editor` | Left: sections. Center: preview. Right: settings. |\n| `Admin\\Pages\\Index` | Content pages list |\n| `Admin\\Pages\\Form` | Shared form component for create/edit page with rich text editor |\n| `Admin\\Navigation\\Index` | Menu management with drag-and-drop item ordering |\n| `Admin\\Analytics\\Index` | Sales chart, traffic, funnel visualization, date range |\n| `Admin\\Search\\Settings` | Synonyms, stop words, reindex button |\n| `Admin\\Apps\\Index` | App directory |\n| `Admin\\Apps\\Show` | Installed app detail |\n| `Admin\\Developers\\Index` | API token management, webhook subscriptions |\n\n---\n\n### Phase 8: Search\n\n**Priority:** LOW - enhances product discovery.\n\n#### Step 8.1: Migrations\n\n1. `create_search_settings_table` - PK: `store_id`\n2. `create_search_queries_table` - FK: `store_id`\n3. FTS5 virtual table migration (raw SQL) - create `products_fts` virtual table using FTS5 with columns: title, description, vendor, product_type, tags; content synced from `products` table\n\n#### Step 8.2: Search Service\n\n**File to create:** `App\\Services\\SearchService`\n\n| Method | Description |\n|--------|-------------|\n| `search(Store $store, string $query, array $filters, int $perPage): LengthAwarePaginator` | FTS5 query with store scoping |\n| `autocomplete(Store $store, string $prefix, int $limit): Collection` | Prefix matching for search-as-you-type |\n| `syncProduct(Product $product): void` | Upsert into FTS5 index |\n| `removeProduct(int $productId): void` | Delete from FTS5 index |\n\n**File to create:** `App\\Observers\\ProductObserver` - calls `SearchService::syncProduct()` on create/update, `removeProduct()` on delete.\n\n#### Step 8.3: Search UI\n\n**Files to create:**\n\n| Component | Description |\n|-----------|-------------|\n| `Storefront\\Search\\Modal` | Search-as-you-type modal with autocomplete results |\n| `Storefront\\Search\\Index` | Full search results page with filters (vendor, price range, collection), sort (relevance, price, newest), pagination |\n\n---\n\n### Phase 9: Analytics\n\n**Priority:** LOW - reporting and insights.\n\n#### Step 9.1: Migrations\n\n1. `create_analytics_events_table` - FK: `store_id`, `customer_id`\n2. `create_analytics_daily_table` - composite PK: `store_id` + `date`\n\n#### Step 9.2: Analytics Service\n\n**File to create:** `App\\Services\\AnalyticsService`\n\n| Method | Description |\n|--------|-------------|\n| `track(Store $store, string $type, array $properties, ?string $sessionId, ?int $customerId): void` | Inserts raw event |\n| `getDailyMetrics(Store $store, string $startDate, string $endDate): Collection` | Reads pre-aggregated daily data |\n\nEvent types: `page_view`, `product_view`, `add_to_cart`, `remove_from_cart`, `checkout_started`, `checkout_completed`, `search`.\n\n**File to create:** `App\\Jobs\\AggregateAnalytics`\n\nRequirements:\n- Runs daily via `routes/console.php`\n- Aggregates raw events into `analytics_daily` rows\n- Calculates: orders_count, revenue_amount, aov_amount, visits_count, add_to_cart_count, checkout_started_count\n\n---\n\n### Phase 10: Apps and Webhooks\n\n**Priority:** LOW - extensibility.\n\n#### Step 10.1: Migrations\n\n1. `create_apps_table`\n2. `create_app_installations_table` - FK: `store_id`, `app_id`\n3. `create_oauth_clients_table` - FK: `app_id`\n4. `create_oauth_tokens_table` - FK: `installation_id`\n5. `create_webhook_subscriptions_table` - FK: `store_id`, `app_installation_id`\n6. `create_webhook_deliveries_table` - FK: `subscription_id`\n\n#### Step 10.2: Webhook Service\n\n**File to create:** `App\\Services\\WebhookService`\n\n| Method | Description |\n|--------|-------------|\n| `dispatch(Store $store, string $eventType, array $payload): void` | Finds matching subscriptions, queues delivery jobs |\n| `sign(string $payload, string $secret): string` | HMAC-SHA256 signature |\n| `verify(string $payload, string $signature, string $secret): bool` | Verify incoming webhook signatures |\n\n**File to create:** `App\\Jobs\\DeliverWebhook`\n\nRequirements:\n- HTTP POST to target URL with JSON payload\n- HMAC signature in `X-Platform-Signature` header, event type in `X-Platform-Event`, delivery ID in `X-Platform-Delivery-Id`, timestamp in `X-Platform-Timestamp`\n- Retry with exponential backoff: 1 min, 5 min, 30 min, 2 h, 12 h (6 total attempts: 1 initial + 5 retries; Laravel backoff config `[60, 300, 1800, 7200, 43200]`)\n- Records response in `webhook_deliveries`\n- Circuit breaker: after 5 consecutive failures, pause subscription\n\n---\n\n### Phase 11: Polish\n\n**Priority:** LOW but important for completeness.\n\n1. Accessibility audit: skip links on all pages, ARIA labels on interactive elements, focus management in modals\n2. Responsive testing: all pages render correctly at sm/md/lg/xl breakpoints\n3. Dark mode: `dark:` prefix on all storefront views and admin views\n4. Error pages: styled 404 and 503 pages matching the storefront theme\n5. Structured logging: JSON channel in `config/logging.php`","numLines":961,"startLine":1,"totalLines":2066,"truncatedByTokenCap":true}},"sourceToolAssistantUUID":"3d50e413-76c3-47db-bac8-fec3285f97b3","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"721f6d41-ce5d-4079-b317-0c5a15fb35f4","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"parentUuid":"721f6d41-ce5d-4079-b317-0c5a15fb35f4","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VBFVPfuv6W4S1522VDiczC","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISrw8KYggOGAIqQE2KMSt3PUADb8sa0/ARqgmoZGnZfAfefBDHX3eEdXS2l6GIfugsdXAgvGz9lvFTrt+mD6TErVtkbvLrHJyPuwgyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxFWghDPJKCYIhB2a0aDBYCN90f16mz40pSfyIwcuf/pGK3wB0q+IpxXitM/Jdny9jYJlRopjI6dKZVrH9Hf08MAvOn+bdfm4a2PIz0KvoNj8mDWLNIGEl1cQRniVQo9/UMROZfid88LQRr5Rv7KP5IizJaOlHZ5PEbDsgdQ6Is3RxJ5ol0gGcikINrvkD4PVhjfYyH7OhqJcprbkxLwW4HFraMsKt4LJL5MuBmF4+b5gXeVhR39XgI73Ac5NIzu+TSuNgJ4E7fhUWp0cnWZj97yWg+Ks5ZBZMOaScQKl9YjtDOO0IiW+7Yl8YaRFR1nBxa62GE3Vtj4tjYkV44UPIoB750PAa6/SSLMmnqcqgywDAzVoyqHoRe1YArQ5ZfA/0bHskzdlnLc7qGw3vc79TOdVMK/GSOK4bfYaQevfy1sGyO6CxEB+CjibP+2gs35sYs1ARPsDbV+rDH0CgkERHF9hAGnclke3JuoAf1PZ14ZPVulqPWKtNZE7RPVMrfIkcX+5w1ECidlMuaurmpb+9xVkzW/qdQc7TqpxRBpIc0lucjzCoC+k8cZhBOgelfPaQPSumj8BeHDzEmLPYstoie8Le/q7z13fDlfWFBN3tdIVsMIunIvSXSDk0z7USz6Ptq+A/zDt8nGt4bD9XkvSnjggDu7Qd3TDV0/Q+018WqYKvwCLqN7GqHPxF53z9lGsho5INkeXTa0ZQgf7OWCvfkTwZ+O1jggdPJIWoY3SOM6iHN1jtDgL0ggRkHcdvIuYSBFTgnNxAItXW+j+oSek9+wBvrpfnm+1j61bIepCPCsh/c5hv/bySYXspsR7BWzq9YKUyB7Qz3VQtoY1/Rs4SJ8M0z2OBij4HbhpABXFUDSDN8liQjwvULDjf//deNBQyhgv2mgomC8/LSlw0mhxH9YyhmzNtLHpI/rV4dM9RVQFY4iIUwb/khXsyaA6Gi8HnpkGWkWZJLM+xPyLu3fiRYrPx2zBS9i1uih9bsyb/SV2ysJucqfvvlF9ndWrM8ydUk9KtrrUcPuyaMgL9tqyxeijXWO5Ya8V3KPeEa8uk95cu+h8EfQx9s/vljeeFSsYSpyrdSd4F6fsPtyHxRALaEutHpsUK224aqzkP0rlmcUpymsB6T8VtY/j26Vhfr/EIaIXSWBdRIu5RP8ZQqUjCegzUC4IFkfrttDQ2+kg6d741JyZZ1rbYpXdvihdbPzuiex+OFdw7G/bEsN+4f1mGgz8zS66iS3V/8a2MLKlXWR94lqborqib52WVK2XU/gfTXRAtwxEM5YaLjsIcoaw30cEhAYp1sgjy6ZCVFiraBXd8FE+1FCrypSsa4dFa2eMUI+lVsimYeRhYm3it67Dc0Zcc/Uxgq1dFD8d3LeHmFZ138jjkCQM5LDmcox+qWJHB0rZHYliaMWxrbYsex9xDimP/YCVP5kuPTPlAM7pY6wuMHju4IAHctB1tdKZGdK1QawltfmE9se9yUHTXUPd9u7JGOtMm6FUduveSV/Bp3j1qN2f+pdCz3DgwHeUyRyD9DgYeXFaWGRC/Tj6ik2rn4pD4BZrURGGxsRRtTfzKs2n9A2IHpzsq0+Qy82aXP0itGMPMcvaK4oB8Mw+tzr5y8oG+jGOA/wKxOD6K4eAHTfF5RX5cZz/AGg68ZNz+L5JnQz7ayg8ZEVPeyLy3lsgq9X0KHPpkFzPcVPIKvUcdBe7UZwMQIgGaizuj5ilmgfjAP65jgre75Eyyk3UlJD3npiKqeUCKprycGSJ0V+0xO1l/T00+ChERTc5FqHj0ufjYSvvvizN7aIaanEKicgRXepIcIZeIvC1iysDx71/MKRLxwe5IMF+qYRPEcOBQjl9fKWPkxb7AR3JV04n82a8j3s2zT5L3F3p2xyr6+kJaaC0VcSBpG1WBKR30DXcA4qMZwPwhqJpqK8LPBJaYlKoSQhvsEnxWkRGBNj7zYxbqF8c7HttIj04fre6imiCNSm63orQ32jMN8s0/a9xpcEFEzXocdaUhSJt80XPVJh0bkwWAAFh9Tv3ozAwJ92wZuGv2xiubdgvCgGFoxTB+gC0Rg2AAsNZ8S7mkOtkVVO4sCPAOJr0GCPYZqoNuXDie82LQd1aqEWB62l/JL1v8wovmd/e4sRcnRRUjKBrzoLPAZCwJ4XkwYAKmtYfoxRV0lIWo4lhYaPaSu/qEubfqXhmt/MHUt+2FLwVd9JiNjXoLHDErT+5LM0R9kRyr8oWjqkM5Vi2WCaSjWpHXOoPYRFz1RjU3d0jccAD35FcajrFijVUCTC+aLIIrU7BnPjIPJogCyIAsMucfGzY6QL3PIsDFyw8A6H53dNvCzmYfqO7/ayVxtzBvXq/YV+Agc+xA3p/x0WqSFs05vkVQtJN1VhdlMXyrFlkpUH3KN/Vltm2qrhaRatyb+argZT+wnhyF3ncalSCN9DshDr7p6Wj1mKOPlKFdKVt9T2v6pfuxWx3eNCgjwBnzege7jbRgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":26322,"cache_read_input_tokens":27556,"output_tokens":1076,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":26322,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1076,"cache_read_input_tokens":27556,"cache_creation_input_tokens":26322,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":26322},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt99fCVaiasrMbRLqdU2","type":"assistant","uuid":"3a087c64-bdf0-4bab-87ca-763cda8bbbcc","timestamp":"2026-06-09T18:14:58.007Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3a087c64-bdf0-4bab-87ca-763cda8bbbcc","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VBFVPfuv6W4S1522VDiczC","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS+gIKYwgOGAIqQJVnutv9tyh6OetquDw7EtjF5bTYPOTh1AR86xu65yNJQMU47NGESYt3dKyek0AxaMiVD7sn/chs5vsTb8UX+VUyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIM51j/E9JVcQzZa+fDGgxVCN4FJK/JEydexhgiMKrk7uch114H04FVTCVC/eA9uc/zg63fMqA5Eq3pufzX6aktsS5TJXYRNLROTG3wqyrEAeseq/3nfUWvtQgYY91Kw6NS7uvsY6525oJsBBKUC1eP5tAcMP91IuykxvK4pyL+RyEGzUpVQgElT4CjwxbpI93Q7HXktJeZYzrDP7SlK+tvAFGcSq4vkA+7nJP+VWfGYa1GHzKAmeGhmg0nCrZQt/r+pxZ9B7P5QFUgYdkr2XovhKcpgSzHdJMDlj/7jFZfor/3jR+EomurKHjm2kXX4vk2wdKbolm1ewWCdRqFf2jEhJ6KcxJw519S2yRYZyOULg/tU2UYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":26322,"cache_read_input_tokens":27556,"output_tokens":1076,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":26322,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1076,"cache_read_input_tokens":27556,"cache_creation_input_tokens":26322,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":26322},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt99fCVaiasrMbRLqdU2","type":"assistant","uuid":"2d07ce59-7399-4a2c-91e4-e07e15dbeaf6","timestamp":"2026-06-09T18:14:58.023Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2d07ce59-7399-4a2c-91e4-e07e15dbeaf6","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VBFVPfuv6W4S1522VDiczC","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PWLHCrScbxfYWFxMnZNoHr","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/specs/09-IMPLEMENTATION-ROADMAP.md","offset":962,"limit":600},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":26322,"cache_read_input_tokens":27556,"output_tokens":1076,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":26322,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1076,"cache_read_input_tokens":27556,"cache_creation_input_tokens":26322,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":26322},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt99fCVaiasrMbRLqdU2","type":"assistant","uuid":"c35d6201-0dbe-443b-8578-8c04c1f10a22","timestamp":"2026-06-09T18:14:59.378Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c35d6201-0dbe-443b-8578-8c04c1f10a22","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01PWLHCrScbxfYWFxMnZNoHr","type":"tool_result","content":"962\t6. Seed data: comprehensive seeders for demo stores\n963\t\n964\t---\n965\t\n966\t### Phase 12: Full Test Suite Execution\n967\t\n968\t**Priority:** Runs after all phases are complete.\n969\t\n970\t**Verification steps:**\n971\t\n972\t1. Run the full unit and feature test suite and confirm all tests pass\n973\t2. Run all browser tests and confirm they pass\n974\t3. Run the code style formatter/checker and confirm conformance\n975\t4. Run a fresh migration with seeding and confirm all migrations and seeders succeed without errors\n976\t5. Manual smoke: visit storefront, navigate products, add to cart, checkout\n977\t6. Manual smoke: visit admin login, authenticate, manage products and orders\n978\t\n979\t---\n980\t\n981\t## 3. Pest Unit/Feature Test Specification\n982\t\n983\tAll tests use Pest syntax. Feature tests use `RefreshDatabase` trait. Unit tests do not hit the database unless factories are involved.\n984\t\n985\t### Test Directory Structure\n986\t\n987\t| Directory | Files |\n988\t|-----------|-------|\n989\t| `tests/Unit/` | `PricingEngineTest.php`, `DiscountCalculatorTest.php`, `TaxCalculatorTest.php`, `ShippingCalculatorTest.php`, `CartVersionTest.php`, `HandleGeneratorTest.php` |\n990\t| `tests/Feature/Tenancy/` | `TenantResolutionTest.php`, `StoreIsolationTest.php` |\n991\t| `tests/Feature/Auth/` | `AdminAuthTest.php`, `CustomerAuthTest.php`, `SanctumTokenTest.php` |\n992\t| `tests/Feature/Products/` | `ProductCrudTest.php`, `VariantTest.php`, `InventoryTest.php`, `CollectionTest.php`, `MediaUploadTest.php` |\n993\t| `tests/Feature/Cart/` | `CartServiceTest.php`, `CartApiTest.php` |\n994\t| `tests/Feature/Checkout/` | `CheckoutFlowTest.php`, `CheckoutStateTest.php`, `PricingIntegrationTest.php`, `DiscountTest.php`, `ShippingTest.php`, `TaxTest.php` |\n995\t| `tests/Feature/Orders/` | `OrderCreationTest.php`, `RefundTest.php`, `FulfillmentTest.php` |\n996\t| `tests/Feature/Payments/` | `MockPaymentProviderTest.php`, `PaymentServiceTest.php`, `BankTransferConfirmationTest.php` |\n997\t| `tests/Feature/Customers/` | `CustomerAccountTest.php`, `AddressManagementTest.php` |\n998\t| `tests/Feature/Admin/` | `DashboardTest.php`, `ProductManagementTest.php`, `OrderManagementTest.php`, `DiscountManagementTest.php`, `SettingsTest.php` |\n999\t| `tests/Feature/Search/` | `SearchTest.php`, `AutocompleteTest.php` |\n1000\t| `tests/Feature/Analytics/` | `EventIngestionTest.php`, `AggregationTest.php` |\n1001\t| `tests/Feature/Webhooks/` | `WebhookDeliveryTest.php`, `WebhookSignatureTest.php` |\n1002\t| `tests/Feature/Api/` | `StorefrontCartApiTest.php`, `StorefrontCheckoutApiTest.php`, `AdminProductApiTest.php`, `AdminOrderApiTest.php` |\n1003\t| `tests/Browser/` | Covered in `08-PLAYWRIGHT-E2E-PLAN.md` |\n1004\t\n1005\t---\n1006\t\n1007\t### Unit Tests\n1008\t\n1009\t---\n1010\t\n1011\t#### tests/Unit/PricingEngineTest.php\n1012\t\n1013\t**Setup:** Instantiate `PricingEngine` directly. Mock dependencies or use simple value objects.\n1014\t\n1015\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1016\t|-----------|----------------------|----------------|----------|\n1017\t| calculates subtotal from line items | 2 lines: variant A 2499 cents x 2, variant B 7999 cents x 1 | subtotal = 12997 | happy path |\n1018\t| calculates subtotal for a single line | 1 line: 1500 cents x 3 | subtotal = 4500 | happy path |\n1019\t| returns zero subtotal for empty cart | 0 lines | subtotal = 0 | edge case |\n1020\t| applies percent discount correctly | subtotal 10000, discount 10% (value_amount = 10, value_type = percent) | discount = 1000, discounted subtotal = 9000 | happy path |\n1021\t| applies fixed discount correctly | subtotal 10000, discount 500 cents fixed | discount = 500, discounted subtotal = 9500 | happy path |\n1022\t| caps fixed discount at subtotal so it never goes negative | subtotal 300, discount 500 cents fixed | discount = 300, discounted subtotal = 0 | edge case |\n1023\t| applies free shipping discount by zeroing shipping | subtotal 5000, shipping 499, discount type free_shipping | shipping = 0 | happy path |\n1024\t| calculates tax exclusive correctly | net amount 10000, rate 1900 basis points (19%) | tax = 1900, gross = 11900 | happy path |\n1025\t| extracts tax from inclusive price correctly | gross amount 11900, rate 1900 basis points (19%) | tax = 1900, net = 10000 | happy path |\n1026\t| returns zero tax when rate is zero | amount 10000, rate 0 | tax = 0 | edge case |\n1027\t| calculates shipping flat rate | rate config type=flat, amount=499 | shipping = 499 | happy path |\n1028\t| calculates full checkout totals end to end | 2 lines x 2499 = 4998, discount WELCOME10 (10%), shipping flat 499, tax 19% inclusive; pipeline: subtotal 4998 -> discount 499 -> discounted 4499 -> shipping 499 -> tax extracted from gross | total calculation matches expected value | happy path |\n1029\t| handles rounding correctly with odd cent amounts | 3 lines with prices that create fractional discount allocations | sum of rounded allocations equals total discount (no off-by-one) | edge case |\n1030\t| produces identical results for identical inputs | Run calculation twice with same inputs | both PricingResult objects are identical | edge case |\n1031\t\n1032\t---\n1033\t\n1034\t#### tests/Unit/DiscountCalculatorTest.php\n1035\t\n1036\t**Setup:** Instantiate `DiscountService` with mock store and cart.\n1037\t\n1038\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1039\t|-----------|----------------------|----------------|----------|\n1040\t| validates an active discount code | discount: status=active, starts_at=yesterday, ends_at=tomorrow | validation passes, returns Discount model | happy path |\n1041\t| rejects an expired discount code | discount: status=active, ends_at=yesterday | throws InvalidDiscountException with reason 'expired' | validation |\n1042\t| rejects a not-yet-active discount code | discount: status=active, starts_at=tomorrow | throws InvalidDiscountException with reason 'not_yet_active' | validation |\n1043\t| rejects a discount that has reached its usage limit | discount: usage_limit=10, usage_count=10 | throws InvalidDiscountException with reason 'usage_limit_reached' | validation |\n1044\t| rejects an unknown discount code | look up code 'DOESNOTEXIST' | throws InvalidDiscountException with reason 'not_found' | validation |\n1045\t| performs case-insensitive code lookup | discount with code 'SUMMER20'; validate code 'summer20' | validation passes | edge case |\n1046\t| enforces minimum purchase amount rule | discount with rules_json containing minimum_purchase: 5000; cart subtotal: 3000 | throws InvalidDiscountException with reason 'minimum_not_met' | validation |\n1047\t| passes minimum purchase when cart meets threshold | discount with rules_json minimum_purchase: 5000; cart subtotal: 5000 | validation passes | happy path |\n1048\t| calculates percent discount amount | discount: 15%, subtotal: 10000 | discount amount = 1500 | happy path |\n1049\t| calculates fixed discount amount | discount: 500 cents fixed, subtotal: 10000 | discount amount = 500 | happy path |\n1050\t| handles free shipping discount type | discount: type=free_shipping | discount amount = 0, free_shipping flag = true | happy path |\n1051\t| allocates discount proportionally across multiple lines | 2 lines: line A subtotal 7500, line B subtotal 2500 (total 10000); discount: 10% = 1000 | line A allocation = 750, line B allocation = 250 | happy path |\n1052\t| distributes rounding remainder to the last qualifying line | 3 lines with subtotals that create uneven division | sum of allocations exactly equals total discount | edge case |\n1053\t\n1054\t---\n1055\t\n1056\t#### tests/Unit/TaxCalculatorTest.php\n1057\t\n1058\t**Setup:** Instantiate `TaxCalculator` directly.\n1059\t\n1060\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1061\t|-----------|----------------------|----------------|----------|\n1062\t| calculates manual tax exclusive | net amount: 10000, rate: 1900 (19%) | tax = 1900 | happy path |\n1063\t| extracts manual tax from inclusive amount | gross amount: 11900, rate: 1900 (19%) | tax = 1900, net = 10000 | happy path |\n1064\t| returns zero tax when no rate is configured | amount: 10000, rate: 0 | tax = 0 | edge case |\n1065\t| handles zero amount lines | amount: 0, rate: 1900 | tax = 0 | edge case |\n1066\t| calculates tax with non-standard rate | net amount: 8999, rate: 700 (7%) | tax = 629 (rounded) | happy path |\n1067\t| extracts tax correctly for small amounts | gross amount: 119, rate: 1900 | tax = 19, net = 100 | edge case |\n1068\t| handles high tax rates | net amount: 10000, rate: 2500 (25%) | tax = 2500 | happy path |\n1069\t\n1070\t---\n1071\t\n1072\t#### tests/Unit/ShippingCalculatorTest.php\n1073\t\n1074\t**Setup:** Instantiate `ShippingCalculator` with mock zone/rate data.\n1075\t\n1076\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1077\t|-----------|----------------------|----------------|----------|\n1078\t| matches a zone by country code | zone countries_json: [\"DE\",\"AT\",\"CH\"]; address country: \"DE\" | zone matched | happy path |\n1079\t| matches a zone by region code | zone regions_json: [\"US-NY\",\"US-CA\"]; address: country \"US\", province_code \"US-NY\" | zone matched | happy path |\n1080\t| returns empty when no zone matches the address | zone countries_json: [\"DE\"]; address country: \"FR\" | empty collection returned | edge case |\n1081\t| calculates a flat rate | rate type: flat, config: amount 499 | shipping = 499 | happy path |\n1082\t| calculates a weight-based rate | rate type: weight, config: ranges 0-500g=499, 501-2000g=899; cart total weight: 750g | shipping = 899 | happy path |\n1083\t| calculates a price-based rate | rate type: price, config: ranges 0-5000=799, 5001-999999=399; cart subtotal: 7500 | shipping = 399 | happy path |\n1084\t| returns zero shipping when no items require shipping | all cart line variants have requires_shipping = false | shipping = 0 | edge case |\n1085\t| returns the correct rate when multiple zones match and the first is selected | two zones match, each with different rates | returns rates from both zones for customer selection | edge case |\n1086\t| skips inactive rates | rate with is_active = 0 | rate not included in available rates | edge case |\n1087\t\n1088\t---\n1089\t\n1090\t#### tests/Unit/CartVersionTest.php\n1091\t\n1092\t**Setup:** Instantiate Cart model or CartService.\n1093\t\n1094\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1095\t|-----------|----------------------|----------------|----------|\n1096\t| starts at version 1 | create new cart | cart_version = 1 | happy path |\n1097\t| increments version on add line | add a line to cart | cart_version = 2 | happy path |\n1098\t| increments version on update quantity | update line quantity | cart_version incremented by 1 | happy path |\n1099\t| increments version on remove line | remove a line | cart_version incremented by 1 | happy path |\n1100\t| detects version mismatch | cart at version 3, client sends expected_version 2 | CartVersionMismatchException thrown | validation |\n1101\t\n1102\t---\n1103\t\n1104\t#### tests/Unit/HandleGeneratorTest.php\n1105\t\n1106\t**Setup:** Instantiate `HandleGenerator` with mock database queries.\n1107\t\n1108\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1109\t|-----------|----------------------|----------------|----------|\n1110\t| generates a slug from title | title: \"My Amazing Product\" | handle = \"my-amazing-product\" | happy path |\n1111\t| appends suffix on collision | title: \"T-Shirt\" (handle \"t-shirt\" already exists) | handle = \"t-shirt-1\" | edge case |\n1112\t| increments suffix on multiple collisions | \"t-shirt\" and \"t-shirt-1\" both exist | handle = \"t-shirt-2\" | edge case |\n1113\t| handles special characters | title: \"Loewe's Fall/Winter 2026\" | handle is a valid slug (e.g., \"loewes-fallwinter-2026\") | edge case |\n1114\t| excludes current record id from collision check | product #5 with handle \"t-shirt\", updating product #5 | handle = \"t-shirt\" (no suffix needed) | edge case |\n1115\t| scopes uniqueness check to store | store 1 has \"t-shirt\", generating for store 2 | handle = \"t-shirt\" (no suffix needed) | edge case |\n1116\t\n1117\t---\n1118\t\n1119\t### Feature Tests\n1120\t\n1121\tAll feature tests use the `RefreshDatabase` trait. Factory setup creates the necessary Store, User, and domain context.\n1122\t\n1123\t**Shared helper setup** (in `tests/Pest.php` or trait):\n1124\t- `createStoreContext()`: creates Organization, Store, StoreDomain, User with Owner role, binds `current_store` in container\n1125\t- `actingAsAdmin(User $user)`: authenticates as admin and sets store in session\n1126\t- `actingAsCustomer(Customer $customer)`: authenticates as customer with customer guard\n1127\t\n1128\t---\n1129\t\n1130\t#### tests/Feature/Tenancy/TenantResolutionTest.php\n1131\t\n1132\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1133\t|-----------|----------------------|----------------|----------|\n1134\t| resolves store from hostname for storefront requests | store with domain \"acme-fashion.test\"; GET \"/\" with Host header \"acme-fashion.test\" | 200 response, current_store bound in container | happy path |\n1135\t| returns 404 for unknown hostname | GET \"/\" with Host header \"nonexistent.test\" | 404 response | validation |\n1136\t| returns 503 for suspended store on storefront | store with status \"suspended\"; GET \"/\" with Host header for suspended store | 503 response | validation |\n1137\t| resolves store from session for admin requests | login as admin, set current_store_id in session; GET \"/admin\" | 200 response, correct store in context | happy path |\n1138\t| denies admin access when user has no store_users record | login as admin, session points to store user is not associated with; GET \"/admin\" | 403 response | authorization |\n1139\t| caches hostname lookup | first request resolves from DB; second request resolves from cache (no additional query) | cache key \"store_domain:{hostname}\" exists | happy path |\n1140\t\n1141\t---\n1142\t\n1143\t#### tests/Feature/Tenancy/StoreIsolationTest.php\n1144\t\n1145\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1146\t|-----------|----------------------|----------------|----------|\n1147\t| scopes product queries to the current store | store A has 3 products, store B has 5 products; set current_store to store A | Product::all() count = 3 | happy path |\n1148\t| scopes order queries to the current store | store A has 2 orders, store B has 7 orders; set current_store to store A | Order::count() = 2 | happy path |\n1149\t| automatically sets store_id on model creation | set current_store to store A; create a product without explicitly setting store_id | product->store_id = store A's id | happy path |\n1150\t| prevents accessing another stores records via direct ID | store A product with id 1; set current_store to store B | Product::find(1) returns null | authorization |\n1151\t| allows cross-store access when global scope is removed | remove StoreScope; query all products | count includes all stores | edge case |\n1152\t\n1153\t---\n1154\t\n1155\t#### tests/Feature/Auth/AdminAuthTest.php\n1156\t\n1157\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1158\t|-----------|----------------------|----------------|----------|\n1159\t| renders the admin login page | GET /admin/login | 200 response, sees \"Login\" text | happy path |\n1160\t| authenticates an admin user with valid credentials | POST /admin/login with valid email/password | redirected to /admin, session has auth | happy path |\n1161\t| rejects invalid credentials | POST /admin/login with wrong password | redirected back, session has errors, sees \"Invalid credentials\" | validation |\n1162\t| does not reveal whether email or password is incorrect | POST /admin/login with non-existent email | same generic \"Invalid credentials\" error | validation |\n1163\t| rate limits login attempts | make 6 POST requests with wrong credentials within 1 minute | 6th request returns 429 Too Many Requests | validation |\n1164\t| regenerates session on successful login | record session ID before login; login successfully | session ID changed | happy path |\n1165\t| logs out and invalidates session | login, then POST /admin/logout | redirected to /admin/login, session invalidated, no longer authenticated | happy path |\n1166\t| redirects unauthenticated users to login | GET /admin without auth | redirected to /admin/login | authorization |\n1167\t| supports remember me functionality | login with remember=true | remember_web cookie is set | happy path |\n1168\t| records last_login_at on successful login | login successfully | user.last_login_at is updated to now | happy path |\n1169\t\n1170\t---\n1171\t\n1172\t#### tests/Feature/Auth/CustomerAuthTest.php\n1173\t\n1174\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1175\t|-----------|----------------------|----------------|----------|\n1176\t| renders the customer login page | GET /account/login on storefront domain | 200 response, sees login form | happy path |\n1177\t| authenticates a customer with valid credentials | POST login with valid email/password | redirected to /account | happy path |\n1178\t| rejects invalid customer credentials | POST login with wrong password | redirected back with errors | validation |\n1179\t| scopes customer login to the current store | customer exists in store A but not store B; login on store B domain with store A customer credentials | login fails | authorization |\n1180\t| rate limits customer login attempts | 6 attempts in 1 minute | 429 on 6th attempt | validation |\n1181\t| registers a new customer | POST /account/register with name, email, password, password_confirmation | customer created in DB, auto-logged in, redirected to /account | happy path |\n1182\t| rejects duplicate email registration in the same store | customer with email already exists in current store; POST /account/register with same email | validation error on email | validation |\n1183\t| allows same email in different stores | customer with email in store A; register same email on store B | registration succeeds | edge case |\n1184\t| logs out customer and redirects to login | login, then POST /account/logout | redirected to /account/login | happy path |\n1185\t| merges guest cart into customer cart on login | guest has cart with variant A qty 2; customer has cart with variant A qty 1 and variant B qty 3; login | customer cart has variant A qty 3, variant B qty 3; guest cart abandoned | happy path |\n1186\t\n1187\t---\n1188\t\n1189\t#### tests/Feature/Auth/SanctumTokenTest.php\n1190\t\n1191\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1192\t|-----------|----------------------|----------------|----------|\n1193\t| creates a personal access token with abilities | acting as admin, create token with abilities ['read-products', 'write-products'] | token row in personal_access_tokens, token string returned | happy path |\n1194\t| authenticates API request with valid token | GET /api/admin/v1/stores/{storeId}/products with Bearer token | 200 response | happy path |\n1195\t| rejects API request with invalid token | GET /api/admin/v1/stores/{storeId}/products with fake token | 401 response | validation |\n1196\t| enforces token abilities | token has only 'read-products'; POST /api/admin/v1/stores/{storeId}/products (requires write-products) | 403 response | authorization |\n1197\t| revokes a token | create token, then delete it; make API request with revoked token | 401 response | happy path |\n1198\t\n1199\t---\n1200\t\n1201\t#### tests/Feature/Products/ProductCrudTest.php\n1202\t\n1203\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1204\t|-----------|----------------------|----------------|----------|\n1205\t| lists products for the current store | create 5 products for current store; GET /admin/products | 200 response, sees all 5 product titles | happy path |\n1206\t| creates a product with a default variant | POST via Livewire action: title, description, status=draft | product in DB, one variant with is_default=1, inventory_item created | happy path |\n1207\t| generates a unique handle from the title | create product with title \"Summer T-Shirt\" | handle = \"summer-t-shirt\" | happy path |\n1208\t| appends suffix when handle collides | create two products with title \"T-Shirt\" | handles are \"t-shirt\" and \"t-shirt-1\" | edge case |\n1209\t| updates a product | create product, then update title and description | DB reflects changes | happy path |\n1210\t| transitions product from draft to active | product in draft with valid variant; transition to active | status = active, published_at set | happy path |\n1211\t| rejects draft to active without a priced variant | product in draft, variant price = 0; transition to active | exception thrown, status unchanged | validation |\n1212\t| transitions product from active to archived | active product; transition to archived | status = archived | happy path |\n1213\t| prevents active to draft when order lines exist | active product with order references; transition to draft | exception thrown | validation |\n1214\t| hard deletes a draft product with no order references | draft product, no orders; delete | product removed from DB | happy path |\n1215\t| prevents deletion of product with order references | product with order_lines referencing its variants; attempt delete | exception thrown | validation |\n1216\t| filters products by status | 3 active, 2 draft, 1 archived; filter by status=active | 3 results | happy path |\n1217\t| searches products by title | product titled \"Organic Cotton Hoodie\"; search \"cotton\" | product found in results | happy path |\n1218\t\n1219\t---\n1220\t\n1221\t#### tests/Feature/Products/VariantTest.php\n1222\t\n1223\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1224\t|-----------|----------------------|----------------|----------|\n1225\t| creates variants from option matrix | product with options: Size [S, M, L], Color [Red, Blue]; rebuild matrix | 6 variants created (3x2) | happy path |\n1226\t| preserves existing variants when adding an option value | existing: Size [S, M] = 2 variants; add Size L; rebuild matrix | 3 variants, original 2 unchanged (prices preserved) | happy path |\n1227\t| archives orphaned variants with order references | variant referenced in order_lines; remove its option value | variant status = archived, not deleted | edge case |\n1228\t| deletes orphaned variants without order references | variant not referenced in any order; remove its option value | variant deleted from DB | happy path |\n1229\t| auto-creates default variant for products without options | create product with no options | 1 variant with is_default=1 | happy path |\n1230\t| validates SKU uniqueness within store | create variant with SKU \"TSH-001\" in store A; attempt to create another variant with same SKU in store A | validation error | validation |\n1231\t| allows duplicate SKU across different stores | SKU \"TSH-001\" in store A; create variant with \"TSH-001\" in store B | success | edge case |\n1232\t| allows null SKUs | create two variants with null SKU | both created successfully | edge case |\n1233\t\n1234\t---\n1235\t\n1236\t#### tests/Feature/Products/InventoryTest.php\n1237\t\n1238\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1239\t|-----------|----------------------|----------------|----------|\n1240\t| creates inventory item when variant is created | create product variant | inventory_item exists with quantity_on_hand=0, quantity_reserved=0 | happy path |\n1241\t| checks availability correctly | on_hand=10, reserved=3 | available = 7 | happy path |\n1242\t| reserves inventory | on_hand=10, reserved=0; reserve 3 | reserved=3, available=7 | happy path |\n1243\t| throws InsufficientInventoryException when reserving more than available with deny policy | on_hand=5, reserved=3, policy=deny; reserve 3 | InsufficientInventoryException thrown | validation |\n1244\t| allows overselling with continue policy | on_hand=2, reserved=0, policy=continue; reserve 5 | reserved=5 (no exception) | edge case |\n1245\t| releases reserved inventory | on_hand=10, reserved=5; release 3 | reserved=2 | happy path |\n1246\t| commits inventory on order completion | on_hand=10, reserved=3; commit 3 | on_hand=7, reserved=0 | happy path |\n1247\t| restocks inventory | on_hand=5; restock 10 | on_hand=15 | happy path |\n1248\t\n1249\t---\n1250\t\n1251\t#### tests/Feature/Products/CollectionTest.php\n1252\t\n1253\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1254\t|-----------|----------------------|----------------|----------|\n1255\t| creates a collection with a unique handle | create collection titled \"Summer Sale\" | handle = \"summer-sale\", saved in DB | happy path |\n1256\t| adds products to a collection | create collection, add 3 products | collection_products pivot has 3 rows | happy path |\n1257\t| removes products from a collection | collection with 3 products, remove 1 | 2 remain | happy path |\n1258\t| reorders products within a collection | 3 products with positions 0,1,2; reorder to 2,0,1 | positions updated correctly | happy path |\n1259\t| transitions collection from draft to active | draft collection; transition to active | status = active | happy path |\n1260\t| lists collections with product count | collection A with 5 products, collection B with 3 products; list collections | each collection shows correct product count | happy path |\n1261\t| scopes collections to current store | store A has 2 collections, store B has 4; current store = A | Collection::count() = 2 | authorization |\n1262\t\n1263\t---\n1264\t\n1265\t#### tests/Feature/Products/MediaUploadTest.php\n1266\t\n1267\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1268\t|-----------|----------------------|----------------|----------|\n1269\t| uploads an image for a product | POST Livewire file upload with a test image | product_media row created with status=processing | happy path |\n1270\t| processes uploaded image and generates variants | dispatch ProcessMediaUpload job | media status = ready, file exists in storage | happy path |\n1271\t| rejects non-image file types | attempt to upload a .txt file | validation error | validation |\n1272\t| sets alt text on media | upload image, then update alt_text | alt_text persisted | happy path |\n1273\t| reorders media positions | upload 3 images, reorder | position values updated | happy path |\n1274\t| deletes media and removes file from storage | upload image, then delete | product_media row removed, file removed from disk | happy path |\n1275\t\n1276\t---\n1277\t\n1278\t#### tests/Feature/Cart/CartServiceTest.php\n1279\t\n1280\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1281\t|-----------|----------------------|----------------|----------|\n1282\t| creates a cart for the current store | create cart | cart in DB with store_id, currency, version=1, status=active | happy path |\n1283\t| adds a line item to the cart | active product with variant priced at 2500; add to cart qty 2 | cart_line created, unit_price=2500, subtotal=5000, total=5000 | happy path |\n1284\t| increments quantity when adding an existing variant | cart already has variant A qty 1; add variant A qty 2 | single line with qty 3, subtotal=7500 | happy path |\n1285\t| rejects add when product is not active | product status = draft; attempt to add variant to cart | exception thrown | validation |\n1286\t| rejects add when inventory is insufficient and policy is deny | variant on_hand=2, policy=deny; attempt to add qty 5 | InsufficientInventoryException | validation |\n1287\t| allows add when inventory is insufficient but policy is continue | variant on_hand=2, policy=continue; add qty 5 | line created with qty 5 | edge case |\n1288\t| updates line quantity | cart with variant A qty 2; update to qty 5 | line quantity=5, amounts recalculated | happy path |\n1289\t| removes a line when quantity set to zero | update line quantity to 0 | line removed from cart | edge case |\n1290\t| removes a specific line item | cart with 2 lines, remove first | 1 line remains | happy path |\n1291\t| increments cart version on every mutation | create cart (v1), add line (v2), update qty (v3), remove line (v4) | cart_version = 4 | happy path |\n1292\t| returns cart via session for guest users | create cart, store ID in session; get cart for session | same cart returned | happy path |\n1293\t| merges guest cart into customer cart on login | guest cart: variant A qty 2; customer cart: variant A qty 1, variant B qty 3; merge | customer cart has A qty 3, B qty 3; guest cart status=abandoned | happy path |\n1294\t\n1295\t---\n1296\t\n1297\t#### tests/Feature/Cart/CartApiTest.php\n1298\t\n1299\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1300\t|-----------|----------------------|----------------|----------|\n1301\t| creates a cart via API | POST /api/storefront/v1/carts | 201 response, response contains cart data | happy path |\n1302\t| retrieves a cart via API | create cart, then GET /api/storefront/v1/carts/{id} | 200 response, cart data with lines and totals | happy path |\n1303\t| adds a line via API | POST /api/storefront/v1/carts/{id}/lines with variant_id and quantity | 200 response, line added to cart | happy path |\n1304\t| updates line quantity via API | PUT /api/storefront/v1/carts/{id}/lines/{lineId} with quantity | 200 response, quantity updated | happy path |\n1305\t| removes a line via API | DELETE /api/storefront/v1/carts/{id}/lines/{lineId} | 200 response, line removed | happy path |\n1306\t| returns 404 for nonexistent cart | GET /api/storefront/v1/carts/nonexistent | 404 response | validation |\n1307\t| returns 409 on version mismatch | cart at version 3; PUT with expected_version=2 | 409 Conflict with current cart state | validation |\n1308\t| respects storefront rate limiting | make 121 requests in 1 minute | 121st returns 429 | validation |\n1309\t\n1310\t---\n1311\t\n1312\t#### tests/Feature/Checkout/CheckoutFlowTest.php\n1313\t\n1314\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1315\t|-----------|----------------------|----------------|----------|\n1316\t| creates a checkout from a cart | cart with 2 lines; create checkout | checkout in DB, status=started, linked to cart | happy path |\n1317\t| completes full checkout happy path | create cart -> add lines -> create checkout -> set address -> select shipping -> begin payment -> complete | order created, cart status=converted, inventory committed | happy path |\n1318\t| rejects checkout for empty cart | cart with 0 lines; create checkout | validation error | validation |\n1319\t| expires checkout after timeout | checkout with payment_selected status, expires_at in the past; run ExpireAbandonedCheckouts job | status=expired, inventory released | edge case |\n1320\t| prevents duplicate orders from same checkout | complete checkout once (creates order); call completeCheckout again | no duplicate order created, same order returned | edge case |\n1321\t\n1322\t---\n1323\t\n1324\t#### tests/Feature/Checkout/CheckoutStateTest.php\n1325\t\n1326\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1327\t|-----------|----------------------|----------------|----------|\n1328\t| transitions from started to addressed with valid address | set email and shipping address | status = addressed | happy path |\n1329\t| rejects address transition with missing required fields | set address without city | validation error, status remains started | validation |\n1330\t| transitions from addressed to shipping_selected | set valid shipping rate | status = shipping_selected | happy path |\n1331\t| rejects shipping selection with rate from wrong zone | address in DE, select rate from US-only zone | exception thrown | validation |\n1332\t| skips shipping selection when no items require shipping | all variants have requires_shipping=false | transitions directly to shipping_selected with shipping=0 | edge case |\n1333\t| transitions from shipping_selected to payment_selected | select payment method | status = payment_selected, expires_at set, inventory reserved | happy path |\n1334\t| transitions from payment_selected to completed | simulate successful payment | status = completed, order created | happy path |\n1335\t| rejects invalid state transitions | attempt started -> completed | exception thrown | validation |\n1336\t| recalculates pricing on address change | set address (DE), note tax calculation; change address to different country | pricing recalculated | happy path |\n1337\t\n1338\t---\n1339\t\n1340\t#### tests/Feature/Checkout/PricingIntegrationTest.php\n1341\t\n1342\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1343\t|-----------|----------------------|----------------|----------|\n1344\t| calculates correct totals for a simple checkout | 1 item: 2500 x 2 = 5000, no discount, flat shipping 499, 19% tax exclusive | subtotal=5000, shipping=499, tax=1044 (19% of 5499), total=6543 | happy path |\n1345\t| applies discount code and recalculates | apply 10% discount to 10000 subtotal | discount=1000, discounted subtotal=9000 | happy path |\n1346\t| stores pricing snapshot in totals_json | complete pricing calculation | checkout.totals_json contains all fields | happy path |\n1347\t| recalculates on shipping method change | select flat rate 499, then switch to weight-based 899 | totals updated with new shipping amount | happy path |\n1348\t| handles prices-include-tax correctly | tax settings: prices_include_tax=true, rate=1900; item price 11900 (gross) | tax extracted = 1900, subtotal = 10000 | edge case |\n1349\t\n1350\t---\n1351\t\n1352\t#### tests/Feature/Checkout/DiscountTest.php\n1353\t\n1354\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1355\t|-----------|----------------------|----------------|----------|\n1356\t| applies a valid percent discount code at checkout | discount: 10%, code \"SAVE10\"; apply to checkout with subtotal 5000 | discount = 500 | happy path |\n1357\t| applies a valid fixed discount code at checkout | discount: 500 fixed, code \"5OFF\" | discount = 500 | happy path |\n1358\t| removes discount when code is cleared | apply discount, then clear code | discount = 0, totals recalculated | happy path |\n1359\t| rejects expired discount at checkout | discount ended yesterday | error returned | validation |\n1360\t| increments usage count on order completion | discount usage_count=5; complete checkout with discount | usage_count=6 | happy path |\n1361\t| handles free shipping discount at checkout | apply free_shipping discount | shipping = 0 in totals | happy path |\n1362\t\n1363\t---\n1364\t\n1365\t#### tests/Feature/Checkout/ShippingTest.php\n1366\t\n1367\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1368\t|-----------|----------------------|----------------|----------|\n1369\t| returns available shipping rates for address | store has zone for DE with flat rate 499; address: country DE | rate returned with name and amount | happy path |\n1370\t| returns empty when no zone matches address | store has zone for DE only; address: country FR | empty rates | edge case |\n1371\t| calculates flat rate correctly | select flat rate, amount 499 | shipping in totals = 499 | happy path |\n1372\t| calculates weight-based rate correctly | cart total weight 750g, rate range 501-2000g = 899 | shipping = 899 | happy path |\n1373\t| returns zero shipping when all items are digital | all variants: requires_shipping=false | shipping = 0 | edge case |\n1374\t\n1375\t---\n1376\t\n1377\t#### tests/Feature/Checkout/TaxTest.php\n1378\t\n1379\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1380\t|-----------|----------------------|----------------|----------|\n1381\t| calculates exclusive tax correctly at checkout | tax mode: manual, rate: 1900, prices_include_tax: false; discounted subtotal + shipping = 5499 | tax = 1044 (rounded) | happy path |\n1382\t| extracts inclusive tax correctly at checkout | tax mode: manual, rate: 1900, prices_include_tax: true | tax extracted from gross amounts | happy path |\n1383\t| applies zero tax when no tax settings exist | no tax_settings row for store | tax = 0 | edge case |\n1384\t| stores tax lines in totals_json | calculate with rate 1900 | tax_lines array in totals_json has entry with name, rate, amount | happy path |\n1385\t\n1386\t---\n1387\t\n1388\t#### tests/Feature/Orders/OrderCreationTest.php\n1389\t\n1390\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1391\t|-----------|----------------------|----------------|----------|\n1392\t| creates an order from a completed checkout | complete checkout flow | order in DB with correct amounts, status=pending | happy path |\n1393\t| generates sequential order numbers per store | create 3 orders in store A | order numbers are #1001, #1002, #1003 | happy path |\n1394\t| creates order lines with snapshots | order from checkout with 2 items | order_lines have title_snapshot, sku_snapshot | happy path |\n1395\t| commits inventory on order creation | variant on_hand=10, reserved=3; create order with qty 3 | on_hand=7, reserved=0 | happy path |\n1396\t| marks cart as converted | create order from checkout | cart status = converted | happy path |\n1397\t| dispatches OrderCreated event | use Event::fake(); create order | OrderCreated dispatched with order | happy path |\n1398\t| preserves order data when product is deleted | create order, then archive the product | order_lines still accessible with snapshots | edge case |\n1399\t| links order to customer when authenticated | checkout by logged-in customer | order.customer_id set | happy path |\n1400\t| sets email from checkout on the order | guest checkout with email \"test@example.com\" | order.email = \"test@example.com\" | happy path |\n1401\t\n1402\t---\n1403\t\n1404\t#### tests/Feature/Orders/RefundTest.php\n1405\t\n1406\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1407\t|-----------|----------------------|----------------|----------|\n1408\t| creates a full refund | order with total 5000, payment captured; refund 5000 | refund in DB, financial_status = refunded | happy path |\n1409\t| creates a partial refund | order total 5000; refund 2000 | financial_status = partially_refunded | happy path |\n1410\t| rejects refund exceeding payment amount | payment amount 5000; attempt to refund 6000 | validation error | validation |\n1411\t| restocks inventory when restock flag is true | refund with restock=true, qty 2 | inventory on_hand increased by 2 | happy path |\n1412\t| does not restock when restock flag is false | refund with restock=false | inventory unchanged | edge case |\n1413\t| only allows admin or owner to process refunds | staff user attempts refund | 403 Forbidden | authorization |\n1414\t| records refund reason | refund with reason \"Customer requested\" | refund.reason = \"Customer requested\" | happy path |\n1415\t\n1416\t---\n1417\t\n1418\t#### tests/Feature/Orders/FulfillmentTest.php\n1419\t\n1420\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1421\t|-----------|----------------------|----------------|----------|\n1422\t| creates a fulfillment for specific order lines | order with 2 lines (qty 3 and qty 2); fulfill line 1 qty 3 | fulfillment created, fulfillment_lines has 1 row | happy path |\n1423\t| updates order fulfillment status to partial | fulfill only some lines | order.fulfillment_status = partial | happy path |\n1424\t| updates order fulfillment status to fulfilled when all lines done | fulfill all remaining lines | order.fulfillment_status = fulfilled | happy path |\n1425\t| adds tracking information | ship fulfillment with tracking_company=\"DHL\", tracking_number=\"123456\" | tracking info saved, shipped_at set | happy path |\n1426\t| transitions fulfillment from pending to shipped | ship fulfillment | status = shipped | happy path |\n1427\t| transitions fulfillment from shipped to delivered | deliver fulfillment | status = delivered | happy path |\n1428\t| prevents fulfilling more than ordered quantity | order line qty 2; attempt to fulfill qty 3 | validation error | validation |\n1429\t| fulfillment guard blocks fulfillment when financial_status is pending | order with financial_status=pending (bank transfer) | FulfillmentGuardException thrown | validation |\n1430\t| fulfillment guard allows fulfillment when financial_status is paid | order with financial_status=paid | fulfillment created successfully | happy path |\n1431\t| fulfillment guard allows fulfillment when financial_status is partially_refunded | order with financial_status=partially_refunded | fulfillment created successfully | edge case |\n1432\t| auto-fulfills digital products on payment confirmation | order with all digital items, financial_status transitions to paid | fulfillment auto-created with status=delivered | happy path |\n1433\t| only allows admin, owner, or staff to create fulfillments | support user attempts to create fulfillment | 403 Forbidden | authorization |\n1434\t\n1435\t---\n1436\t\n1437\t#### tests/Feature/Payments/MockPaymentProviderTest.php\n1438\t\n1439\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1440\t|-----------|----------------------|----------------|----------|\n1441\t| charges credit card with success card number | checkout with card 4242424242424242 | PaymentResult success=true, status=captured | happy path |\n1442\t| declines credit card with decline card number | checkout with card 4000000000000002 | PaymentResult success=false, errorCode=card_declined | edge case |\n1443\t| returns insufficient funds for that card number | checkout with card 4000000000009995 | PaymentResult success=false, errorCode=insufficient_funds | edge case |\n1444\t| charges PayPal successfully | checkout with payment_method=paypal | PaymentResult success=true, status=captured | happy path |\n1445\t| creates pending payment for bank transfer | checkout with payment_method=bank_transfer | PaymentResult success=true, status=pending | happy path |\n1446\t| generates mock reference ID | any charge | provider_payment_id starts with \"mock_\" | happy path |\n1447\t\n1448\t---\n1449\t\n1450\t#### tests/Feature/Payments/PaymentServiceTest.php\n1451\t\n1452\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1453\t|-----------|----------------------|----------------|----------|\n1454\t| processes credit card payment and creates order as paid | checkout with credit card | order created with financial_status=paid, inventory committed | happy path |\n1455\t| processes PayPal payment and creates order as paid | checkout with PayPal | order created with financial_status=paid, inventory committed | happy path |\n1456\t| processes bank transfer and creates order as pending | checkout with bank transfer | order created with financial_status=pending, inventory reserved but not committed | happy path |\n1457\t| resolves MockPaymentProvider from container | resolve PaymentProvider interface | resolved provider is MockPaymentProvider | happy path |\n1458\t| creates a payment record with correct method | charge with credit_card | payment row in DB with method=credit_card, provider=mock | happy path |\n1459\t\n1460\t---\n1461\t\n1462\t#### tests/Feature/Payments/BankTransferConfirmationTest.php\n1463\t\n1464\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1465\t|-----------|----------------------|----------------|----------|\n1466\t| admin can confirm bank transfer payment | order with payment_method=bank_transfer, financial_status=pending | financial_status transitions to paid, inventory committed | happy path |\n1467\t| cannot confirm payment for non-bank-transfer orders | order with payment_method=credit_card | error thrown | validation |\n1468\t| cannot confirm already confirmed payment | order with financial_status=paid | error thrown | validation |\n1469\t| auto-cancel job cancels unpaid bank transfer orders after config days | order with payment_method=bank_transfer, placed_at > 7 days ago | order cancelled, inventory released | happy path |\n1470\t| auto-cancel job does not cancel orders within config days | order with payment_method=bank_transfer, placed_at = 2 days ago | order remains pending | edge case |\n1471\t| auto-fulfills digital products on payment confirmation | bank_transfer order with only digital items, confirm payment | fulfillment auto-created with status=delivered | happy path |\n1472\t\n1473\t---\n1474\t\n1475\t#### tests/Feature/Customers/CustomerAccountTest.php\n1476\t\n1477\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1478\t|-----------|----------------------|----------------|----------|\n1479\t| renders the customer dashboard | acting as customer; GET /account | 200 response, sees customer name | happy path |\n1480\t| lists customer orders | customer with 3 orders; GET /account/orders | sees all 3 order numbers | happy path |\n1481\t| shows order detail | customer with order #1001; GET /account/orders/1001 | sees order items and totals | happy path |\n1482\t| prevents accessing another customers orders | customer A logged in; GET /account/orders/{customerB-order-number} | 404 response | authorization |\n1483\t| redirects unauthenticated requests to login | GET /account without auth | redirected to /account/login | authorization |\n1484\t| updates customer profile | update name and marketing_opt_in | changes persisted in DB | happy path |\n1485\t\n1486\t---\n1487\t\n1488\t#### tests/Feature/Customers/AddressManagementTest.php\n1489\t\n1490\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1491\t|-----------|----------------------|----------------|----------|\n1492\t| lists saved addresses | customer with 2 addresses; GET /account/addresses | sees both addresses | happy path |\n1493\t| creates a new address | submit address form | address saved in DB | happy path |\n1494\t| updates an existing address | change city on existing address | updated in DB | happy path |\n1495\t| deletes an address | delete address | removed from DB | happy path |\n1496\t| sets a default address | mark address as default | is_default=1, other addresses is_default=0 | happy path |\n1497\t| validates required address fields | submit with missing address1 | validation error | validation |\n1498\t| prevents managing another customers addresses | customer A logged in, attempt to edit customer B address | 403 or 404 response | authorization |\n1499\t\n1500\t---\n1501\t\n1502\t#### tests/Feature/Admin/DashboardTest.php\n1503\t\n1504\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1505\t|-----------|----------------------|----------------|----------|\n1506\t| renders the admin dashboard | acting as admin; GET /admin | 200 response, sees \"Dashboard\" | happy path |\n1507\t| shows KPI tiles with correct data | store has 5 orders totaling 25000 cents | sees order count 5, total revenue formatted | happy path |\n1508\t| restricts dashboard to authenticated admins | unauthenticated GET /admin | redirected to /admin/login | authorization |\n1509\t| filters metrics by date range | orders across multiple dates; filter to last 7 days | only matching orders included in KPIs | happy path |\n1510\t\n1511\t---\n1512\t\n1513\t#### tests/Feature/Admin/ProductManagementTest.php\n1514\t\n1515\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1516\t|-----------|----------------------|----------------|----------|\n1517\t| lists products with pagination | create 25 products; GET /admin/products | first page shows 15 (or configured per-page), pagination controls visible | happy path |\n1518\t| creates a product via admin form | Livewire test: fill title, description, submit | product in DB | happy path |\n1519\t| edits a product via admin form | Livewire test: change title, submit | product updated | happy path |\n1520\t| bulk archives selected products | select 3 products, trigger bulk archive | all 3 status = archived | happy path |\n1521\t| uploads media from the product form | Livewire file upload on product edit | media attached to product | happy path |\n1522\t| manages variants from the product form | add options and values via Livewire | variants generated | happy path |\n1523\t| restricts product management to authorized roles | support user GET /admin/products: can see list (read-only); support user attempt to create product | 403 on create | authorization |\n1524\t| staff can create but not delete products | staff user: create product succeeds; staff user: delete product | fails with 403 on delete | authorization |\n1525\t\n1526\t---\n1527\t\n1528\t#### tests/Feature/Admin/OrderManagementTest.php\n1529\t\n1530\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1531\t|-----------|----------------------|----------------|----------|\n1532\t| lists orders with status filter | 3 pending, 2 paid orders; filter by status=paid | 2 results | happy path |\n1533\t| shows order detail page | GET /admin/orders/{order} | sees order number, line items, totals | happy path |\n1534\t| creates a fulfillment from order detail | Livewire action: select lines, submit fulfillment | fulfillment created | happy path |\n1535\t| processes a refund from order detail | Livewire action: enter amount, submit refund | refund created | happy path |\n1536\t| restricts order management by role | support user can view orders (read-only); support user cannot update or fulfill | appropriate 403 responses | authorization |\n1537\t\n1538\t---\n1539\t\n1540\t#### tests/Feature/Admin/DiscountManagementTest.php\n1541\t\n1542\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1543\t|-----------|----------------------|----------------|----------|\n1544\t| lists discounts | create 3 discounts; GET /admin/discounts | sees all 3 | happy path |\n1545\t| creates a percent discount | Livewire: code=\"SAVE10\", type=percent, value=10 | discount in DB | happy path |\n1546\t| creates a fixed discount | Livewire: code=\"5OFF\", type=fixed, value=500 | discount in DB | happy path |\n1547\t| validates discount code uniqueness within store | create discount with code \"SAVE10\"; attempt to create another with same code | validation error | validation |\n1548\t| edits a discount | change value from 10 to 15 | updated in DB | happy path |\n1549\t| disables a discount | set status to disabled | status = disabled | happy path |\n1550\t\n1551\t---\n1552\t\n1553\t#### tests/Feature/Admin/SettingsTest.php\n1554\t\n1555\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1556\t|-----------|----------------------|----------------|----------|\n1557\t| renders the settings page | GET /admin/settings | 200 response, sees settings tabs | happy path |\n1558\t| updates general store settings | update store name | store_settings updated | happy path |\n1559\t| configures shipping zones | create zone with countries and rates | shipping_zone and shipping_rates in DB | happy path |\n1560\t| configures tax settings | set mode=manual, rate=1900, prices_include_tax=true | tax_settings updated | happy path |\n1561\t| restricts settings to owner and admin roles | staff user GET /admin/settings | 403 response | authorization |"}]},"uuid":"6e5281a5-0425-405a-9298-a3df572bb112","timestamp":"2026-06-09T18:14:59.644Z","toolUseResult":{"type":"text","file":{"filePath":"/Users/fabianwesner/Herd/shop/specs/09-IMPLEMENTATION-ROADMAP.md","content":"6. Seed data: comprehensive seeders for demo stores\n\n---\n\n### Phase 12: Full Test Suite Execution\n\n**Priority:** Runs after all phases are complete.\n\n**Verification steps:**\n\n1. Run the full unit and feature test suite and confirm all tests pass\n2. Run all browser tests and confirm they pass\n3. Run the code style formatter/checker and confirm conformance\n4. Run a fresh migration with seeding and confirm all migrations and seeders succeed without errors\n5. Manual smoke: visit storefront, navigate products, add to cart, checkout\n6. Manual smoke: visit admin login, authenticate, manage products and orders\n\n---\n\n## 3. Pest Unit/Feature Test Specification\n\nAll tests use Pest syntax. Feature tests use `RefreshDatabase` trait. Unit tests do not hit the database unless factories are involved.\n\n### Test Directory Structure\n\n| Directory | Files |\n|-----------|-------|\n| `tests/Unit/` | `PricingEngineTest.php`, `DiscountCalculatorTest.php`, `TaxCalculatorTest.php`, `ShippingCalculatorTest.php`, `CartVersionTest.php`, `HandleGeneratorTest.php` |\n| `tests/Feature/Tenancy/` | `TenantResolutionTest.php`, `StoreIsolationTest.php` |\n| `tests/Feature/Auth/` | `AdminAuthTest.php`, `CustomerAuthTest.php`, `SanctumTokenTest.php` |\n| `tests/Feature/Products/` | `ProductCrudTest.php`, `VariantTest.php`, `InventoryTest.php`, `CollectionTest.php`, `MediaUploadTest.php` |\n| `tests/Feature/Cart/` | `CartServiceTest.php`, `CartApiTest.php` |\n| `tests/Feature/Checkout/` | `CheckoutFlowTest.php`, `CheckoutStateTest.php`, `PricingIntegrationTest.php`, `DiscountTest.php`, `ShippingTest.php`, `TaxTest.php` |\n| `tests/Feature/Orders/` | `OrderCreationTest.php`, `RefundTest.php`, `FulfillmentTest.php` |\n| `tests/Feature/Payments/` | `MockPaymentProviderTest.php`, `PaymentServiceTest.php`, `BankTransferConfirmationTest.php` |\n| `tests/Feature/Customers/` | `CustomerAccountTest.php`, `AddressManagementTest.php` |\n| `tests/Feature/Admin/` | `DashboardTest.php`, `ProductManagementTest.php`, `OrderManagementTest.php`, `DiscountManagementTest.php`, `SettingsTest.php` |\n| `tests/Feature/Search/` | `SearchTest.php`, `AutocompleteTest.php` |\n| `tests/Feature/Analytics/` | `EventIngestionTest.php`, `AggregationTest.php` |\n| `tests/Feature/Webhooks/` | `WebhookDeliveryTest.php`, `WebhookSignatureTest.php` |\n| `tests/Feature/Api/` | `StorefrontCartApiTest.php`, `StorefrontCheckoutApiTest.php`, `AdminProductApiTest.php`, `AdminOrderApiTest.php` |\n| `tests/Browser/` | Covered in `08-PLAYWRIGHT-E2E-PLAN.md` |\n\n---\n\n### Unit Tests\n\n---\n\n#### tests/Unit/PricingEngineTest.php\n\n**Setup:** Instantiate `PricingEngine` directly. Mock dependencies or use simple value objects.\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| calculates subtotal from line items | 2 lines: variant A 2499 cents x 2, variant B 7999 cents x 1 | subtotal = 12997 | happy path |\n| calculates subtotal for a single line | 1 line: 1500 cents x 3 | subtotal = 4500 | happy path |\n| returns zero subtotal for empty cart | 0 lines | subtotal = 0 | edge case |\n| applies percent discount correctly | subtotal 10000, discount 10% (value_amount = 10, value_type = percent) | discount = 1000, discounted subtotal = 9000 | happy path |\n| applies fixed discount correctly | subtotal 10000, discount 500 cents fixed | discount = 500, discounted subtotal = 9500 | happy path |\n| caps fixed discount at subtotal so it never goes negative | subtotal 300, discount 500 cents fixed | discount = 300, discounted subtotal = 0 | edge case |\n| applies free shipping discount by zeroing shipping | subtotal 5000, shipping 499, discount type free_shipping | shipping = 0 | happy path |\n| calculates tax exclusive correctly | net amount 10000, rate 1900 basis points (19%) | tax = 1900, gross = 11900 | happy path |\n| extracts tax from inclusive price correctly | gross amount 11900, rate 1900 basis points (19%) | tax = 1900, net = 10000 | happy path |\n| returns zero tax when rate is zero | amount 10000, rate 0 | tax = 0 | edge case |\n| calculates shipping flat rate | rate config type=flat, amount=499 | shipping = 499 | happy path |\n| calculates full checkout totals end to end | 2 lines x 2499 = 4998, discount WELCOME10 (10%), shipping flat 499, tax 19% inclusive; pipeline: subtotal 4998 -> discount 499 -> discounted 4499 -> shipping 499 -> tax extracted from gross | total calculation matches expected value | happy path |\n| handles rounding correctly with odd cent amounts | 3 lines with prices that create fractional discount allocations | sum of rounded allocations equals total discount (no off-by-one) | edge case |\n| produces identical results for identical inputs | Run calculation twice with same inputs | both PricingResult objects are identical | edge case |\n\n---\n\n#### tests/Unit/DiscountCalculatorTest.php\n\n**Setup:** Instantiate `DiscountService` with mock store and cart.\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| validates an active discount code | discount: status=active, starts_at=yesterday, ends_at=tomorrow | validation passes, returns Discount model | happy path |\n| rejects an expired discount code | discount: status=active, ends_at=yesterday | throws InvalidDiscountException with reason 'expired' | validation |\n| rejects a not-yet-active discount code | discount: status=active, starts_at=tomorrow | throws InvalidDiscountException with reason 'not_yet_active' | validation |\n| rejects a discount that has reached its usage limit | discount: usage_limit=10, usage_count=10 | throws InvalidDiscountException with reason 'usage_limit_reached' | validation |\n| rejects an unknown discount code | look up code 'DOESNOTEXIST' | throws InvalidDiscountException with reason 'not_found' | validation |\n| performs case-insensitive code lookup | discount with code 'SUMMER20'; validate code 'summer20' | validation passes | edge case |\n| enforces minimum purchase amount rule | discount with rules_json containing minimum_purchase: 5000; cart subtotal: 3000 | throws InvalidDiscountException with reason 'minimum_not_met' | validation |\n| passes minimum purchase when cart meets threshold | discount with rules_json minimum_purchase: 5000; cart subtotal: 5000 | validation passes | happy path |\n| calculates percent discount amount | discount: 15%, subtotal: 10000 | discount amount = 1500 | happy path |\n| calculates fixed discount amount | discount: 500 cents fixed, subtotal: 10000 | discount amount = 500 | happy path |\n| handles free shipping discount type | discount: type=free_shipping | discount amount = 0, free_shipping flag = true | happy path |\n| allocates discount proportionally across multiple lines | 2 lines: line A subtotal 7500, line B subtotal 2500 (total 10000); discount: 10% = 1000 | line A allocation = 750, line B allocation = 250 | happy path |\n| distributes rounding remainder to the last qualifying line | 3 lines with subtotals that create uneven division | sum of allocations exactly equals total discount | edge case |\n\n---\n\n#### tests/Unit/TaxCalculatorTest.php\n\n**Setup:** Instantiate `TaxCalculator` directly.\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| calculates manual tax exclusive | net amount: 10000, rate: 1900 (19%) | tax = 1900 | happy path |\n| extracts manual tax from inclusive amount | gross amount: 11900, rate: 1900 (19%) | tax = 1900, net = 10000 | happy path |\n| returns zero tax when no rate is configured | amount: 10000, rate: 0 | tax = 0 | edge case |\n| handles zero amount lines | amount: 0, rate: 1900 | tax = 0 | edge case |\n| calculates tax with non-standard rate | net amount: 8999, rate: 700 (7%) | tax = 629 (rounded) | happy path |\n| extracts tax correctly for small amounts | gross amount: 119, rate: 1900 | tax = 19, net = 100 | edge case |\n| handles high tax rates | net amount: 10000, rate: 2500 (25%) | tax = 2500 | happy path |\n\n---\n\n#### tests/Unit/ShippingCalculatorTest.php\n\n**Setup:** Instantiate `ShippingCalculator` with mock zone/rate data.\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| matches a zone by country code | zone countries_json: [\"DE\",\"AT\",\"CH\"]; address country: \"DE\" | zone matched | happy path |\n| matches a zone by region code | zone regions_json: [\"US-NY\",\"US-CA\"]; address: country \"US\", province_code \"US-NY\" | zone matched | happy path |\n| returns empty when no zone matches the address | zone countries_json: [\"DE\"]; address country: \"FR\" | empty collection returned | edge case |\n| calculates a flat rate | rate type: flat, config: amount 499 | shipping = 499 | happy path |\n| calculates a weight-based rate | rate type: weight, config: ranges 0-500g=499, 501-2000g=899; cart total weight: 750g | shipping = 899 | happy path |\n| calculates a price-based rate | rate type: price, config: ranges 0-5000=799, 5001-999999=399; cart subtotal: 7500 | shipping = 399 | happy path |\n| returns zero shipping when no items require shipping | all cart line variants have requires_shipping = false | shipping = 0 | edge case |\n| returns the correct rate when multiple zones match and the first is selected | two zones match, each with different rates | returns rates from both zones for customer selection | edge case |\n| skips inactive rates | rate with is_active = 0 | rate not included in available rates | edge case |\n\n---\n\n#### tests/Unit/CartVersionTest.php\n\n**Setup:** Instantiate Cart model or CartService.\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| starts at version 1 | create new cart | cart_version = 1 | happy path |\n| increments version on add line | add a line to cart | cart_version = 2 | happy path |\n| increments version on update quantity | update line quantity | cart_version incremented by 1 | happy path |\n| increments version on remove line | remove a line | cart_version incremented by 1 | happy path |\n| detects version mismatch | cart at version 3, client sends expected_version 2 | CartVersionMismatchException thrown | validation |\n\n---\n\n#### tests/Unit/HandleGeneratorTest.php\n\n**Setup:** Instantiate `HandleGenerator` with mock database queries.\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| generates a slug from title | title: \"My Amazing Product\" | handle = \"my-amazing-product\" | happy path |\n| appends suffix on collision | title: \"T-Shirt\" (handle \"t-shirt\" already exists) | handle = \"t-shirt-1\" | edge case |\n| increments suffix on multiple collisions | \"t-shirt\" and \"t-shirt-1\" both exist | handle = \"t-shirt-2\" | edge case |\n| handles special characters | title: \"Loewe's Fall/Winter 2026\" | handle is a valid slug (e.g., \"loewes-fallwinter-2026\") | edge case |\n| excludes current record id from collision check | product #5 with handle \"t-shirt\", updating product #5 | handle = \"t-shirt\" (no suffix needed) | edge case |\n| scopes uniqueness check to store | store 1 has \"t-shirt\", generating for store 2 | handle = \"t-shirt\" (no suffix needed) | edge case |\n\n---\n\n### Feature Tests\n\nAll feature tests use the `RefreshDatabase` trait. Factory setup creates the necessary Store, User, and domain context.\n\n**Shared helper setup** (in `tests/Pest.php` or trait):\n- `createStoreContext()`: creates Organization, Store, StoreDomain, User with Owner role, binds `current_store` in container\n- `actingAsAdmin(User $user)`: authenticates as admin and sets store in session\n- `actingAsCustomer(Customer $customer)`: authenticates as customer with customer guard\n\n---\n\n#### tests/Feature/Tenancy/TenantResolutionTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| resolves store from hostname for storefront requests | store with domain \"acme-fashion.test\"; GET \"/\" with Host header \"acme-fashion.test\" | 200 response, current_store bound in container | happy path |\n| returns 404 for unknown hostname | GET \"/\" with Host header \"nonexistent.test\" | 404 response | validation |\n| returns 503 for suspended store on storefront | store with status \"suspended\"; GET \"/\" with Host header for suspended store | 503 response | validation |\n| resolves store from session for admin requests | login as admin, set current_store_id in session; GET \"/admin\" | 200 response, correct store in context | happy path |\n| denies admin access when user has no store_users record | login as admin, session points to store user is not associated with; GET \"/admin\" | 403 response | authorization |\n| caches hostname lookup | first request resolves from DB; second request resolves from cache (no additional query) | cache key \"store_domain:{hostname}\" exists | happy path |\n\n---\n\n#### tests/Feature/Tenancy/StoreIsolationTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| scopes product queries to the current store | store A has 3 products, store B has 5 products; set current_store to store A | Product::all() count = 3 | happy path |\n| scopes order queries to the current store | store A has 2 orders, store B has 7 orders; set current_store to store A | Order::count() = 2 | happy path |\n| automatically sets store_id on model creation | set current_store to store A; create a product without explicitly setting store_id | product->store_id = store A's id | happy path |\n| prevents accessing another stores records via direct ID | store A product with id 1; set current_store to store B | Product::find(1) returns null | authorization |\n| allows cross-store access when global scope is removed | remove StoreScope; query all products | count includes all stores | edge case |\n\n---\n\n#### tests/Feature/Auth/AdminAuthTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| renders the admin login page | GET /admin/login | 200 response, sees \"Login\" text | happy path |\n| authenticates an admin user with valid credentials | POST /admin/login with valid email/password | redirected to /admin, session has auth | happy path |\n| rejects invalid credentials | POST /admin/login with wrong password | redirected back, session has errors, sees \"Invalid credentials\" | validation |\n| does not reveal whether email or password is incorrect | POST /admin/login with non-existent email | same generic \"Invalid credentials\" error | validation |\n| rate limits login attempts | make 6 POST requests with wrong credentials within 1 minute | 6th request returns 429 Too Many Requests | validation |\n| regenerates session on successful login | record session ID before login; login successfully | session ID changed | happy path |\n| logs out and invalidates session | login, then POST /admin/logout | redirected to /admin/login, session invalidated, no longer authenticated | happy path |\n| redirects unauthenticated users to login | GET /admin without auth | redirected to /admin/login | authorization |\n| supports remember me functionality | login with remember=true | remember_web cookie is set | happy path |\n| records last_login_at on successful login | login successfully | user.last_login_at is updated to now | happy path |\n\n---\n\n#### tests/Feature/Auth/CustomerAuthTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| renders the customer login page | GET /account/login on storefront domain | 200 response, sees login form | happy path |\n| authenticates a customer with valid credentials | POST login with valid email/password | redirected to /account | happy path |\n| rejects invalid customer credentials | POST login with wrong password | redirected back with errors | validation |\n| scopes customer login to the current store | customer exists in store A but not store B; login on store B domain with store A customer credentials | login fails | authorization |\n| rate limits customer login attempts | 6 attempts in 1 minute | 429 on 6th attempt | validation |\n| registers a new customer | POST /account/register with name, email, password, password_confirmation | customer created in DB, auto-logged in, redirected to /account | happy path |\n| rejects duplicate email registration in the same store | customer with email already exists in current store; POST /account/register with same email | validation error on email | validation |\n| allows same email in different stores | customer with email in store A; register same email on store B | registration succeeds | edge case |\n| logs out customer and redirects to login | login, then POST /account/logout | redirected to /account/login | happy path |\n| merges guest cart into customer cart on login | guest has cart with variant A qty 2; customer has cart with variant A qty 1 and variant B qty 3; login | customer cart has variant A qty 3, variant B qty 3; guest cart abandoned | happy path |\n\n---\n\n#### tests/Feature/Auth/SanctumTokenTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a personal access token with abilities | acting as admin, create token with abilities ['read-products', 'write-products'] | token row in personal_access_tokens, token string returned | happy path |\n| authenticates API request with valid token | GET /api/admin/v1/stores/{storeId}/products with Bearer token | 200 response | happy path |\n| rejects API request with invalid token | GET /api/admin/v1/stores/{storeId}/products with fake token | 401 response | validation |\n| enforces token abilities | token has only 'read-products'; POST /api/admin/v1/stores/{storeId}/products (requires write-products) | 403 response | authorization |\n| revokes a token | create token, then delete it; make API request with revoked token | 401 response | happy path |\n\n---\n\n#### tests/Feature/Products/ProductCrudTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| lists products for the current store | create 5 products for current store; GET /admin/products | 200 response, sees all 5 product titles | happy path |\n| creates a product with a default variant | POST via Livewire action: title, description, status=draft | product in DB, one variant with is_default=1, inventory_item created | happy path |\n| generates a unique handle from the title | create product with title \"Summer T-Shirt\" | handle = \"summer-t-shirt\" | happy path |\n| appends suffix when handle collides | create two products with title \"T-Shirt\" | handles are \"t-shirt\" and \"t-shirt-1\" | edge case |\n| updates a product | create product, then update title and description | DB reflects changes | happy path |\n| transitions product from draft to active | product in draft with valid variant; transition to active | status = active, published_at set | happy path |\n| rejects draft to active without a priced variant | product in draft, variant price = 0; transition to active | exception thrown, status unchanged | validation |\n| transitions product from active to archived | active product; transition to archived | status = archived | happy path |\n| prevents active to draft when order lines exist | active product with order references; transition to draft | exception thrown | validation |\n| hard deletes a draft product with no order references | draft product, no orders; delete | product removed from DB | happy path |\n| prevents deletion of product with order references | product with order_lines referencing its variants; attempt delete | exception thrown | validation |\n| filters products by status | 3 active, 2 draft, 1 archived; filter by status=active | 3 results | happy path |\n| searches products by title | product titled \"Organic Cotton Hoodie\"; search \"cotton\" | product found in results | happy path |\n\n---\n\n#### tests/Feature/Products/VariantTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates variants from option matrix | product with options: Size [S, M, L], Color [Red, Blue]; rebuild matrix | 6 variants created (3x2) | happy path |\n| preserves existing variants when adding an option value | existing: Size [S, M] = 2 variants; add Size L; rebuild matrix | 3 variants, original 2 unchanged (prices preserved) | happy path |\n| archives orphaned variants with order references | variant referenced in order_lines; remove its option value | variant status = archived, not deleted | edge case |\n| deletes orphaned variants without order references | variant not referenced in any order; remove its option value | variant deleted from DB | happy path |\n| auto-creates default variant for products without options | create product with no options | 1 variant with is_default=1 | happy path |\n| validates SKU uniqueness within store | create variant with SKU \"TSH-001\" in store A; attempt to create another variant with same SKU in store A | validation error | validation |\n| allows duplicate SKU across different stores | SKU \"TSH-001\" in store A; create variant with \"TSH-001\" in store B | success | edge case |\n| allows null SKUs | create two variants with null SKU | both created successfully | edge case |\n\n---\n\n#### tests/Feature/Products/InventoryTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates inventory item when variant is created | create product variant | inventory_item exists with quantity_on_hand=0, quantity_reserved=0 | happy path |\n| checks availability correctly | on_hand=10, reserved=3 | available = 7 | happy path |\n| reserves inventory | on_hand=10, reserved=0; reserve 3 | reserved=3, available=7 | happy path |\n| throws InsufficientInventoryException when reserving more than available with deny policy | on_hand=5, reserved=3, policy=deny; reserve 3 | InsufficientInventoryException thrown | validation |\n| allows overselling with continue policy | on_hand=2, reserved=0, policy=continue; reserve 5 | reserved=5 (no exception) | edge case |\n| releases reserved inventory | on_hand=10, reserved=5; release 3 | reserved=2 | happy path |\n| commits inventory on order completion | on_hand=10, reserved=3; commit 3 | on_hand=7, reserved=0 | happy path |\n| restocks inventory | on_hand=5; restock 10 | on_hand=15 | happy path |\n\n---\n\n#### tests/Feature/Products/CollectionTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a collection with a unique handle | create collection titled \"Summer Sale\" | handle = \"summer-sale\", saved in DB | happy path |\n| adds products to a collection | create collection, add 3 products | collection_products pivot has 3 rows | happy path |\n| removes products from a collection | collection with 3 products, remove 1 | 2 remain | happy path |\n| reorders products within a collection | 3 products with positions 0,1,2; reorder to 2,0,1 | positions updated correctly | happy path |\n| transitions collection from draft to active | draft collection; transition to active | status = active | happy path |\n| lists collections with product count | collection A with 5 products, collection B with 3 products; list collections | each collection shows correct product count | happy path |\n| scopes collections to current store | store A has 2 collections, store B has 4; current store = A | Collection::count() = 2 | authorization |\n\n---\n\n#### tests/Feature/Products/MediaUploadTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| uploads an image for a product | POST Livewire file upload with a test image | product_media row created with status=processing | happy path |\n| processes uploaded image and generates variants | dispatch ProcessMediaUpload job | media status = ready, file exists in storage | happy path |\n| rejects non-image file types | attempt to upload a .txt file | validation error | validation |\n| sets alt text on media | upload image, then update alt_text | alt_text persisted | happy path |\n| reorders media positions | upload 3 images, reorder | position values updated | happy path |\n| deletes media and removes file from storage | upload image, then delete | product_media row removed, file removed from disk | happy path |\n\n---\n\n#### tests/Feature/Cart/CartServiceTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a cart for the current store | create cart | cart in DB with store_id, currency, version=1, status=active | happy path |\n| adds a line item to the cart | active product with variant priced at 2500; add to cart qty 2 | cart_line created, unit_price=2500, subtotal=5000, total=5000 | happy path |\n| increments quantity when adding an existing variant | cart already has variant A qty 1; add variant A qty 2 | single line with qty 3, subtotal=7500 | happy path |\n| rejects add when product is not active | product status = draft; attempt to add variant to cart | exception thrown | validation |\n| rejects add when inventory is insufficient and policy is deny | variant on_hand=2, policy=deny; attempt to add qty 5 | InsufficientInventoryException | validation |\n| allows add when inventory is insufficient but policy is continue | variant on_hand=2, policy=continue; add qty 5 | line created with qty 5 | edge case |\n| updates line quantity | cart with variant A qty 2; update to qty 5 | line quantity=5, amounts recalculated | happy path |\n| removes a line when quantity set to zero | update line quantity to 0 | line removed from cart | edge case |\n| removes a specific line item | cart with 2 lines, remove first | 1 line remains | happy path |\n| increments cart version on every mutation | create cart (v1), add line (v2), update qty (v3), remove line (v4) | cart_version = 4 | happy path |\n| returns cart via session for guest users | create cart, store ID in session; get cart for session | same cart returned | happy path |\n| merges guest cart into customer cart on login | guest cart: variant A qty 2; customer cart: variant A qty 1, variant B qty 3; merge | customer cart has A qty 3, B qty 3; guest cart status=abandoned | happy path |\n\n---\n\n#### tests/Feature/Cart/CartApiTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a cart via API | POST /api/storefront/v1/carts | 201 response, response contains cart data | happy path |\n| retrieves a cart via API | create cart, then GET /api/storefront/v1/carts/{id} | 200 response, cart data with lines and totals | happy path |\n| adds a line via API | POST /api/storefront/v1/carts/{id}/lines with variant_id and quantity | 200 response, line added to cart | happy path |\n| updates line quantity via API | PUT /api/storefront/v1/carts/{id}/lines/{lineId} with quantity | 200 response, quantity updated | happy path |\n| removes a line via API | DELETE /api/storefront/v1/carts/{id}/lines/{lineId} | 200 response, line removed | happy path |\n| returns 404 for nonexistent cart | GET /api/storefront/v1/carts/nonexistent | 404 response | validation |\n| returns 409 on version mismatch | cart at version 3; PUT with expected_version=2 | 409 Conflict with current cart state | validation |\n| respects storefront rate limiting | make 121 requests in 1 minute | 121st returns 429 | validation |\n\n---\n\n#### tests/Feature/Checkout/CheckoutFlowTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a checkout from a cart | cart with 2 lines; create checkout | checkout in DB, status=started, linked to cart | happy path |\n| completes full checkout happy path | create cart -> add lines -> create checkout -> set address -> select shipping -> begin payment -> complete | order created, cart status=converted, inventory committed | happy path |\n| rejects checkout for empty cart | cart with 0 lines; create checkout | validation error | validation |\n| expires checkout after timeout | checkout with payment_selected status, expires_at in the past; run ExpireAbandonedCheckouts job | status=expired, inventory released | edge case |\n| prevents duplicate orders from same checkout | complete checkout once (creates order); call completeCheckout again | no duplicate order created, same order returned | edge case |\n\n---\n\n#### tests/Feature/Checkout/CheckoutStateTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| transitions from started to addressed with valid address | set email and shipping address | status = addressed | happy path |\n| rejects address transition with missing required fields | set address without city | validation error, status remains started | validation |\n| transitions from addressed to shipping_selected | set valid shipping rate | status = shipping_selected | happy path |\n| rejects shipping selection with rate from wrong zone | address in DE, select rate from US-only zone | exception thrown | validation |\n| skips shipping selection when no items require shipping | all variants have requires_shipping=false | transitions directly to shipping_selected with shipping=0 | edge case |\n| transitions from shipping_selected to payment_selected | select payment method | status = payment_selected, expires_at set, inventory reserved | happy path |\n| transitions from payment_selected to completed | simulate successful payment | status = completed, order created | happy path |\n| rejects invalid state transitions | attempt started -> completed | exception thrown | validation |\n| recalculates pricing on address change | set address (DE), note tax calculation; change address to different country | pricing recalculated | happy path |\n\n---\n\n#### tests/Feature/Checkout/PricingIntegrationTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| calculates correct totals for a simple checkout | 1 item: 2500 x 2 = 5000, no discount, flat shipping 499, 19% tax exclusive | subtotal=5000, shipping=499, tax=1044 (19% of 5499), total=6543 | happy path |\n| applies discount code and recalculates | apply 10% discount to 10000 subtotal | discount=1000, discounted subtotal=9000 | happy path |\n| stores pricing snapshot in totals_json | complete pricing calculation | checkout.totals_json contains all fields | happy path |\n| recalculates on shipping method change | select flat rate 499, then switch to weight-based 899 | totals updated with new shipping amount | happy path |\n| handles prices-include-tax correctly | tax settings: prices_include_tax=true, rate=1900; item price 11900 (gross) | tax extracted = 1900, subtotal = 10000 | edge case |\n\n---\n\n#### tests/Feature/Checkout/DiscountTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| applies a valid percent discount code at checkout | discount: 10%, code \"SAVE10\"; apply to checkout with subtotal 5000 | discount = 500 | happy path |\n| applies a valid fixed discount code at checkout | discount: 500 fixed, code \"5OFF\" | discount = 500 | happy path |\n| removes discount when code is cleared | apply discount, then clear code | discount = 0, totals recalculated | happy path |\n| rejects expired discount at checkout | discount ended yesterday | error returned | validation |\n| increments usage count on order completion | discount usage_count=5; complete checkout with discount | usage_count=6 | happy path |\n| handles free shipping discount at checkout | apply free_shipping discount | shipping = 0 in totals | happy path |\n\n---\n\n#### tests/Feature/Checkout/ShippingTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| returns available shipping rates for address | store has zone for DE with flat rate 499; address: country DE | rate returned with name and amount | happy path |\n| returns empty when no zone matches address | store has zone for DE only; address: country FR | empty rates | edge case |\n| calculates flat rate correctly | select flat rate, amount 499 | shipping in totals = 499 | happy path |\n| calculates weight-based rate correctly | cart total weight 750g, rate range 501-2000g = 899 | shipping = 899 | happy path |\n| returns zero shipping when all items are digital | all variants: requires_shipping=false | shipping = 0 | edge case |\n\n---\n\n#### tests/Feature/Checkout/TaxTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| calculates exclusive tax correctly at checkout | tax mode: manual, rate: 1900, prices_include_tax: false; discounted subtotal + shipping = 5499 | tax = 1044 (rounded) | happy path |\n| extracts inclusive tax correctly at checkout | tax mode: manual, rate: 1900, prices_include_tax: true | tax extracted from gross amounts | happy path |\n| applies zero tax when no tax settings exist | no tax_settings row for store | tax = 0 | edge case |\n| stores tax lines in totals_json | calculate with rate 1900 | tax_lines array in totals_json has entry with name, rate, amount | happy path |\n\n---\n\n#### tests/Feature/Orders/OrderCreationTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates an order from a completed checkout | complete checkout flow | order in DB with correct amounts, status=pending | happy path |\n| generates sequential order numbers per store | create 3 orders in store A | order numbers are #1001, #1002, #1003 | happy path |\n| creates order lines with snapshots | order from checkout with 2 items | order_lines have title_snapshot, sku_snapshot | happy path |\n| commits inventory on order creation | variant on_hand=10, reserved=3; create order with qty 3 | on_hand=7, reserved=0 | happy path |\n| marks cart as converted | create order from checkout | cart status = converted | happy path |\n| dispatches OrderCreated event | use Event::fake(); create order | OrderCreated dispatched with order | happy path |\n| preserves order data when product is deleted | create order, then archive the product | order_lines still accessible with snapshots | edge case |\n| links order to customer when authenticated | checkout by logged-in customer | order.customer_id set | happy path |\n| sets email from checkout on the order | guest checkout with email \"test@example.com\" | order.email = \"test@example.com\" | happy path |\n\n---\n\n#### tests/Feature/Orders/RefundTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a full refund | order with total 5000, payment captured; refund 5000 | refund in DB, financial_status = refunded | happy path |\n| creates a partial refund | order total 5000; refund 2000 | financial_status = partially_refunded | happy path |\n| rejects refund exceeding payment amount | payment amount 5000; attempt to refund 6000 | validation error | validation |\n| restocks inventory when restock flag is true | refund with restock=true, qty 2 | inventory on_hand increased by 2 | happy path |\n| does not restock when restock flag is false | refund with restock=false | inventory unchanged | edge case |\n| only allows admin or owner to process refunds | staff user attempts refund | 403 Forbidden | authorization |\n| records refund reason | refund with reason \"Customer requested\" | refund.reason = \"Customer requested\" | happy path |\n\n---\n\n#### tests/Feature/Orders/FulfillmentTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a fulfillment for specific order lines | order with 2 lines (qty 3 and qty 2); fulfill line 1 qty 3 | fulfillment created, fulfillment_lines has 1 row | happy path |\n| updates order fulfillment status to partial | fulfill only some lines | order.fulfillment_status = partial | happy path |\n| updates order fulfillment status to fulfilled when all lines done | fulfill all remaining lines | order.fulfillment_status = fulfilled | happy path |\n| adds tracking information | ship fulfillment with tracking_company=\"DHL\", tracking_number=\"123456\" | tracking info saved, shipped_at set | happy path |\n| transitions fulfillment from pending to shipped | ship fulfillment | status = shipped | happy path |\n| transitions fulfillment from shipped to delivered | deliver fulfillment | status = delivered | happy path |\n| prevents fulfilling more than ordered quantity | order line qty 2; attempt to fulfill qty 3 | validation error | validation |\n| fulfillment guard blocks fulfillment when financial_status is pending | order with financial_status=pending (bank transfer) | FulfillmentGuardException thrown | validation |\n| fulfillment guard allows fulfillment when financial_status is paid | order with financial_status=paid | fulfillment created successfully | happy path |\n| fulfillment guard allows fulfillment when financial_status is partially_refunded | order with financial_status=partially_refunded | fulfillment created successfully | edge case |\n| auto-fulfills digital products on payment confirmation | order with all digital items, financial_status transitions to paid | fulfillment auto-created with status=delivered | happy path |\n| only allows admin, owner, or staff to create fulfillments | support user attempts to create fulfillment | 403 Forbidden | authorization |\n\n---\n\n#### tests/Feature/Payments/MockPaymentProviderTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| charges credit card with success card number | checkout with card 4242424242424242 | PaymentResult success=true, status=captured | happy path |\n| declines credit card with decline card number | checkout with card 4000000000000002 | PaymentResult success=false, errorCode=card_declined | edge case |\n| returns insufficient funds for that card number | checkout with card 4000000000009995 | PaymentResult success=false, errorCode=insufficient_funds | edge case |\n| charges PayPal successfully | checkout with payment_method=paypal | PaymentResult success=true, status=captured | happy path |\n| creates pending payment for bank transfer | checkout with payment_method=bank_transfer | PaymentResult success=true, status=pending | happy path |\n| generates mock reference ID | any charge | provider_payment_id starts with \"mock_\" | happy path |\n\n---\n\n#### tests/Feature/Payments/PaymentServiceTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| processes credit card payment and creates order as paid | checkout with credit card | order created with financial_status=paid, inventory committed | happy path |\n| processes PayPal payment and creates order as paid | checkout with PayPal | order created with financial_status=paid, inventory committed | happy path |\n| processes bank transfer and creates order as pending | checkout with bank transfer | order created with financial_status=pending, inventory reserved but not committed | happy path |\n| resolves MockPaymentProvider from container | resolve PaymentProvider interface | resolved provider is MockPaymentProvider | happy path |\n| creates a payment record with correct method | charge with credit_card | payment row in DB with method=credit_card, provider=mock | happy path |\n\n---\n\n#### tests/Feature/Payments/BankTransferConfirmationTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| admin can confirm bank transfer payment | order with payment_method=bank_transfer, financial_status=pending | financial_status transitions to paid, inventory committed | happy path |\n| cannot confirm payment for non-bank-transfer orders | order with payment_method=credit_card | error thrown | validation |\n| cannot confirm already confirmed payment | order with financial_status=paid | error thrown | validation |\n| auto-cancel job cancels unpaid bank transfer orders after config days | order with payment_method=bank_transfer, placed_at > 7 days ago | order cancelled, inventory released | happy path |\n| auto-cancel job does not cancel orders within config days | order with payment_method=bank_transfer, placed_at = 2 days ago | order remains pending | edge case |\n| auto-fulfills digital products on payment confirmation | bank_transfer order with only digital items, confirm payment | fulfillment auto-created with status=delivered | happy path |\n\n---\n\n#### tests/Feature/Customers/CustomerAccountTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| renders the customer dashboard | acting as customer; GET /account | 200 response, sees customer name | happy path |\n| lists customer orders | customer with 3 orders; GET /account/orders | sees all 3 order numbers | happy path |\n| shows order detail | customer with order #1001; GET /account/orders/1001 | sees order items and totals | happy path |\n| prevents accessing another customers orders | customer A logged in; GET /account/orders/{customerB-order-number} | 404 response | authorization |\n| redirects unauthenticated requests to login | GET /account without auth | redirected to /account/login | authorization |\n| updates customer profile | update name and marketing_opt_in | changes persisted in DB | happy path |\n\n---\n\n#### tests/Feature/Customers/AddressManagementTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| lists saved addresses | customer with 2 addresses; GET /account/addresses | sees both addresses | happy path |\n| creates a new address | submit address form | address saved in DB | happy path |\n| updates an existing address | change city on existing address | updated in DB | happy path |\n| deletes an address | delete address | removed from DB | happy path |\n| sets a default address | mark address as default | is_default=1, other addresses is_default=0 | happy path |\n| validates required address fields | submit with missing address1 | validation error | validation |\n| prevents managing another customers addresses | customer A logged in, attempt to edit customer B address | 403 or 404 response | authorization |\n\n---\n\n#### tests/Feature/Admin/DashboardTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| renders the admin dashboard | acting as admin; GET /admin | 200 response, sees \"Dashboard\" | happy path |\n| shows KPI tiles with correct data | store has 5 orders totaling 25000 cents | sees order count 5, total revenue formatted | happy path |\n| restricts dashboard to authenticated admins | unauthenticated GET /admin | redirected to /admin/login | authorization |\n| filters metrics by date range | orders across multiple dates; filter to last 7 days | only matching orders included in KPIs | happy path |\n\n---\n\n#### tests/Feature/Admin/ProductManagementTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| lists products with pagination | create 25 products; GET /admin/products | first page shows 15 (or configured per-page), pagination controls visible | happy path |\n| creates a product via admin form | Livewire test: fill title, description, submit | product in DB | happy path |\n| edits a product via admin form | Livewire test: change title, submit | product updated | happy path |\n| bulk archives selected products | select 3 products, trigger bulk archive | all 3 status = archived | happy path |\n| uploads media from the product form | Livewire file upload on product edit | media attached to product | happy path |\n| manages variants from the product form | add options and values via Livewire | variants generated | happy path |\n| restricts product management to authorized roles | support user GET /admin/products: can see list (read-only); support user attempt to create product | 403 on create | authorization |\n| staff can create but not delete products | staff user: create product succeeds; staff user: delete product | fails with 403 on delete | authorization |\n\n---\n\n#### tests/Feature/Admin/OrderManagementTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| lists orders with status filter | 3 pending, 2 paid orders; filter by status=paid | 2 results | happy path |\n| shows order detail page | GET /admin/orders/{order} | sees order number, line items, totals | happy path |\n| creates a fulfillment from order detail | Livewire action: select lines, submit fulfillment | fulfillment created | happy path |\n| processes a refund from order detail | Livewire action: enter amount, submit refund | refund created | happy path |\n| restricts order management by role | support user can view orders (read-only); support user cannot update or fulfill | appropriate 403 responses | authorization |\n\n---\n\n#### tests/Feature/Admin/DiscountManagementTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| lists discounts | create 3 discounts; GET /admin/discounts | sees all 3 | happy path |\n| creates a percent discount | Livewire: code=\"SAVE10\", type=percent, value=10 | discount in DB | happy path |\n| creates a fixed discount | Livewire: code=\"5OFF\", type=fixed, value=500 | discount in DB | happy path |\n| validates discount code uniqueness within store | create discount with code \"SAVE10\"; attempt to create another with same code | validation error | validation |\n| edits a discount | change value from 10 to 15 | updated in DB | happy path |\n| disables a discount | set status to disabled | status = disabled | happy path |\n\n---\n\n#### tests/Feature/Admin/SettingsTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| renders the settings page | GET /admin/settings | 200 response, sees settings tabs | happy path |\n| updates general store settings | update store name | store_settings updated | happy path |\n| configures shipping zones | create zone with countries and rates | shipping_zone and shipping_rates in DB | happy path |\n| configures tax settings | set mode=manual, rate=1900, prices_include_tax=true | tax_settings updated | happy path |\n| restricts settings to owner and admin roles | staff user GET /admin/settings | 403 response | authorization |","numLines":600,"startLine":962,"totalLines":2066}},"sourceToolAssistantUUID":"c35d6201-0dbe-443b-8578-8c04c1f10a22","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6e5281a5-0425-405a-9298-a3df572bb112","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VBFVPfuv6W4S1522VDiczC","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011z8vr8fdQL9vwevC4JJPsD","name":"Bash","input":{"command":"ls app/Livewire app/Http app/Services app/Actions app/Support app/Observers app/Concerns 2>/dev/null; echo \"---routes---\"; ls routes; echo \"---tests---\"; find tests -type f | head -30; echo \"---migrations---\"; ls database/migrations; echo \"---views---\"; ls resources/views; echo \"---composer scripts---\"; php -r '$c=json_decode(file_get_contents(\"composer.json\"),true); print_r($c[\"scripts\"] ?? []);'","description":"Survey existing app skeleton"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":26322,"cache_read_input_tokens":27556,"output_tokens":1076,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":26322,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1076,"cache_read_input_tokens":27556,"cache_creation_input_tokens":26322,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":26322},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt99fCVaiasrMbRLqdU2","type":"assistant","uuid":"27dbbc35-2709-4d58-9400-7ffa64b90131","timestamp":"2026-06-09T18:15:01.377Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"27dbbc35-2709-4d58-9400-7ffa64b90131","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_011z8vr8fdQL9vwevC4JJPsD","type":"tool_result","content":"app/Actions:\nFortify\n\napp/Concerns:\nLivewire\nPasswordValidationRules.php\nPolicies\nProfileValidationRules.php\n\napp/Http:\nControllers\nRequests\n\napp/Livewire:\nActions\nAdmin\nSettings\nStorefront\n\napp/Observers:\n\napp/Services:\nCatalog\n\napp/Support:\nMoney\n---routes---\nconsole.php\nsettings.php\nweb.php\n---tests---\ntests/Pest.php\ntests/TestCase.php\ntests/Unit/ExampleTest.php\ntests/Feature/ExampleTest.php\ntests/Feature/DashboardTest.php\ntests/Feature/Settings/TwoFactorAuthenticationTest.php\ntests/Feature/Settings/PasswordUpdateTest.php\ntests/Feature/Settings/ProfileUpdateTest.php\ntests/Feature/Auth/PasswordConfirmationTest.php\ntests/Feature/Auth/EmailVerificationTest.php\ntests/Feature/Auth/TwoFactorChallengeTest.php\ntests/Feature/Auth/RegistrationTest.php\ntests/Feature/Auth/AuthenticationTest.php\ntests/Feature/Auth/PasswordResetTest.php\n---migrations---\n0001_01_01_000000_create_users_table.php\n0001_01_01_000001_create_cache_table.php\n0001_01_01_000002_create_jobs_table.php\n2025_08_14_170933_add_two_factor_columns_to_users_table.php\n---views---\ncomponents\ndashboard.blade.php\nflux\nlayouts\nlivewire\npartials\nstorefront\nwelcome.blade.php\n---composer scripts---\nArray\n(\n    [setup] => Array\n        (\n            [0] => composer install\n            [1] => @php -r \"file_exists('.env') || copy('.env.example', '.env');\"\n            [2] => @php artisan key:generate\n            [3] => @php artisan migrate --force\n            [4] => npm install\n            [5] => npm run build\n        )\n\n    [dev] => Array\n        (\n            [0] => Composer\\Config::disableProcessTimeout\n            [1] => npx concurrently -c \"#93c5fd,#c4b5fd,#fb7185,#fdba74\" \"php artisan serve\" \"php artisan queue:listen --tries=1 --timeout=0\" \"php artisan pail --timeout=0\" \"npm run dev\" --names=server,queue,logs,vite --kill-others\n        )\n\n    [lint] => Array\n        (\n            [0] => pint --parallel\n        )\n\n    [test:lint] => Array\n        (\n            [0] => pint --parallel --test\n        )\n\n    [test] => Array\n        (\n            [0] => @php artisan config:clear --ansi\n            [1] => @test:lint\n            [2] => @php artisan test\n        )\n\n    [post-autoload-dump] => Array\n        (\n            [0] => Illuminate\\Foundation\\ComposerScripts::postAutoloadDump\n            [1] => @php artisan package:discover --ansi\n        )\n\n    [post-update-cmd] => Array\n        (\n            [0] => @php artisan vendor:publish --tag=laravel-assets --ansi --force\n        )\n\n    [post-root-package-install] => Array\n        (\n            [0] => @php -r \"file_exists('.env') || copy('.env.example', '.env');\"\n        )\n\n    [post-create-project-cmd] => Array\n        (\n            [0] => @php artisan key:generate --ansi\n            [1] => @php -r \"file_exists('database/database.sqlite') || touch('database/database.sqlite');\"\n            [2] => @php artisan migrate --graceful --ansi\n        )\n\n    [pre-package-uninstall] => Array\n        (\n            [0] => Illuminate\\Foundation\\ComposerScripts::prePackageUninstall\n        )\n\n)","is_error":false}]},"uuid":"2a71879b-91a5-4aa4-9ea1-4d9ebcf791fe","timestamp":"2026-06-09T18:15:01.520Z","toolUseResult":{"stdout":"app/Actions:\nFortify\n\napp/Concerns:\nLivewire\nPasswordValidationRules.php\nPolicies\nProfileValidationRules.php\n\napp/Http:\nControllers\nRequests\n\napp/Livewire:\nActions\nAdmin\nSettings\nStorefront\n\napp/Observers:\n\napp/Services:\nCatalog\n\napp/Support:\nMoney\n---routes---\nconsole.php\nsettings.php\nweb.php\n---tests---\ntests/Pest.php\ntests/TestCase.php\ntests/Unit/ExampleTest.php\ntests/Feature/ExampleTest.php\ntests/Feature/DashboardTest.php\ntests/Feature/Settings/TwoFactorAuthenticationTest.php\ntests/Feature/Settings/PasswordUpdateTest.php\ntests/Feature/Settings/ProfileUpdateTest.php\ntests/Feature/Auth/PasswordConfirmationTest.php\ntests/Feature/Auth/EmailVerificationTest.php\ntests/Feature/Auth/TwoFactorChallengeTest.php\ntests/Feature/Auth/RegistrationTest.php\ntests/Feature/Auth/AuthenticationTest.php\ntests/Feature/Auth/PasswordResetTest.php\n---migrations---\n0001_01_01_000000_create_users_table.php\n0001_01_01_000001_create_cache_table.php\n0001_01_01_000002_create_jobs_table.php\n2025_08_14_170933_add_two_factor_columns_to_users_table.php\n---views---\ncomponents\ndashboard.blade.php\nflux\nlayouts\nlivewire\npartials\nstorefront\nwelcome.blade.php\n---composer scripts---\nArray\n(\n    [setup] => Array\n        (\n            [0] => composer install\n            [1] => @php -r \"file_exists('.env') || copy('.env.example', '.env');\"\n            [2] => @php artisan key:generate\n            [3] => @php artisan migrate --force\n            [4] => npm install\n            [5] => npm run build\n        )\n\n    [dev] => Array\n        (\n            [0] => Composer\\Config::disableProcessTimeout\n            [1] => npx concurrently -c \"#93c5fd,#c4b5fd,#fb7185,#fdba74\" \"php artisan serve\" \"php artisan queue:listen --tries=1 --timeout=0\" \"php artisan pail --timeout=0\" \"npm run dev\" --names=server,queue,logs,vite --kill-others\n        )\n\n    [lint] => Array\n        (\n            [0] => pint --parallel\n        )\n\n    [test:lint] => Array\n        (\n            [0] => pint --parallel --test\n        )\n\n    [test] => Array\n        (\n            [0] => @php artisan config:clear --ansi\n            [1] => @test:lint\n            [2] => @php artisan test\n        )\n\n    [post-autoload-dump] => Array\n        (\n            [0] => Illuminate\\Foundation\\ComposerScripts::postAutoloadDump\n            [1] => @php artisan package:discover --ansi\n        )\n\n    [post-update-cmd] => Array\n        (\n            [0] => @php artisan vendor:publish --tag=laravel-assets --ansi --force\n        )\n\n    [post-root-package-install] => Array\n        (\n            [0] => @php -r \"file_exists('.env') || copy('.env.example', '.env');\"\n        )\n\n    [post-create-project-cmd] => Array\n        (\n            [0] => @php artisan key:generate --ansi\n            [1] => @php -r \"file_exists('database/database.sqlite') || touch('database/database.sqlite');\"\n            [2] => @php artisan migrate --graceful --ansi\n        )\n\n    [pre-package-uninstall] => Array\n        (\n            [0] => Illuminate\\Foundation\\ComposerScripts::prePackageUninstall\n        )\n\n)","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"27dbbc35-2709-4d58-9400-7ffa64b90131","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"2a71879b-91a5-4aa4-9ea1-4d9ebcf791fe","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"parentUuid":"2a71879b-91a5-4aa4-9ea1-4d9ebcf791fe","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PuvEpZyQ68t17goPvWARL2","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISsQQKYggOGAIqQErvlOu0O1+ijTQzaqkgewinP2+ilC0O6v5uK+RE+V4VDF6hvWYrae5bJJqpAm5izT3aMci/i41oQPKqQF7aXOUyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgx+KSbGQsCFEmXyk7oaDM7fR1HmdeTDQ6iYQyIw86bIQN+4Tspmt49m8VmqEgvTsUOasraZiO+NRnf4CWAGOS8PUgRPSok9pz1/4QnzKvwChUloE7OpWxFVTHz3XRzXMaakw+BtLvqql0j0yaYD7fpZX9n2JzhNzU7pIGnuKWUw9nYzrdzpKcM2Pjdt33uQa5NgJ/vdGtz98Ev2XRzgnmrCq8avx0wv//ufeIFhPljksR13WnGmvxdkIJPHCHFf5GQOiGirYjELnrvYF0KtSKiLvYEfXiPhS22co5mtQyiqle6yh9TMZ8ngGwT9bpD5ze0fPQR4FJE1rIgpC5dqBhL0STjW+3QCi2wObPh7Ymd+437vmHzuIgR31oQL1t2wsIlEET3rjbq5ue4SIIqY8ItPcY7iJlMmcfQg45cPzFj9B/5FbpNK1YC9rLAC1Q3iuKZ8fmjaOLDeJu7OJNAGMcYT3tV/HyvE8ByprjDOsSpBcvMRH59n8a8oESGuDqHvgrWu3mziY0wS3EFQ6BfpfgxwjnzRomd6ZOAdHxJULQJdYTnki2LFYaKdwkqfXnOkjj2A7HDfTrPkKOqeLvcm6gG6YUImwndy8UifPCsYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":21151,"cache_read_input_tokens":53878,"output_tokens":332,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":21151,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":332,"cache_read_input_tokens":53878,"cache_creation_input_tokens":21151,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":21151},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9AttY9r2zb5NUkofrS","type":"assistant","uuid":"01f1f77e-8093-4c35-94c5-ecdbec5600ed","timestamp":"2026-06-09T18:15:06.739Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"01f1f77e-8093-4c35-94c5-ecdbec5600ed","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PuvEpZyQ68t17goPvWARL2","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISkwMKYwgOGAIqQKNztmxrUst0riSuN7JfCqzRsqa/GshWzWHXYzEvj2YT13LznS4CfHYdNLiHuPFqyJxejqtbDfmtBze3mPbzgioyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMOakGMk+WFRD+wO2OGgwc5VNBs8qRUehZGaEiMI8ultky84+ewfk5RA/eV70nUPCGIKo00xa2jbysjUxpW448KVTIvUGTmQR132qTiirdAfAblYZQ7Rs17Q5QtKNXCCDlcpOAwxW5dDtBT6Vuj/nAX0UCjRXXAHnTsKvpT9sLCnzzy/qlg4nFnYVSWKX3+xp8RnYEaGZDA6Tc7rUskWWdz2UCP6MY4eeJz+fCiVCJLapM5Avhixp/K2bbMYsoT6v2nmsgKF2cFkcfAkz2vAb5FlWrJds1rihyzdTa6JLG9imyebZYCb/yn2QnnqTX+XTaoVGGmf0qZK1XCpB0jDVSuSQ9iCnJlAwt6Tk1qPmlsDBQpDYu2gwcMPIjtW4acfzBABtjwlwcw1HF1sqrGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":21151,"cache_read_input_tokens":53878,"output_tokens":332,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":21151,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":332,"cache_read_input_tokens":53878,"cache_creation_input_tokens":21151,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":21151},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9AttY9r2zb5NUkofrS","type":"assistant","uuid":"e5bc9c53-e4d9-4027-b1d2-2f5501a66958","timestamp":"2026-06-09T18:15:06.741Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e5bc9c53-e4d9-4027-b1d2-2f5501a66958","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PuvEpZyQ68t17goPvWARL2","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Hryc8wwP4EG7wUGopmHRZz","name":"Bash","input":{"command":"find app resources/views/storefront resources/views/livewire -type f | head -100; echo \"===routes/web.php===\"; cat routes/web.php | head -80","description":"List all app files and web routes"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":21151,"cache_read_input_tokens":53878,"output_tokens":332,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":21151,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":332,"cache_read_input_tokens":53878,"cache_creation_input_tokens":21151,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":21151},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9AttY9r2zb5NUkofrS","type":"assistant","uuid":"d12a1552-4bba-4d80-affe-56bf800e4e03","timestamp":"2026-06-09T18:15:07.718Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d12a1552-4bba-4d80-affe-56bf800e4e03","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Hryc8wwP4EG7wUGopmHRZz","type":"tool_result","content":"app/Providers/AppServiceProvider.php\napp/Providers/FortifyServiceProvider.php\napp/Models/User.php\napp/Concerns/ProfileValidationRules.php\napp/Concerns/PasswordValidationRules.php\nresources/views/livewire/settings/delete-user-form.blade.php\nresources/views/livewire/settings/two-factor.blade.php\nresources/views/livewire/settings/password.blade.php\nresources/views/livewire/settings/appearance.blade.php\nresources/views/livewire/settings/profile.blade.php\nresources/views/livewire/auth/reset-password.blade.php\nresources/views/livewire/auth/register.blade.php\nresources/views/livewire/auth/two-factor-challenge.blade.php\nresources/views/livewire/auth/confirm-password.blade.php\nresources/views/livewire/auth/forgot-password.blade.php\nresources/views/livewire/auth/verify-email.blade.php\nresources/views/livewire/auth/login.blade.php\napp/Livewire/Settings/TwoFactor.php\napp/Livewire/Settings/DeleteUserForm.php\napp/Livewire/Settings/Password.php\napp/Livewire/Settings/Profile.php\napp/Livewire/Settings/Appearance.php\napp/Livewire/Actions/Logout.php\napp/Http/Controllers/Controller.php\napp/Actions/Fortify/ResetUserPassword.php\napp/Actions/Fortify/CreateNewUser.php\nresources/views/livewire/settings/two-factor/recovery-codes.blade.php\napp/Livewire/Settings/TwoFactor/RecoveryCodes.php\n===routes/web.php===\n<?php\n\nuse Illuminate\\Support\\Facades\\Route;\n\nRoute::get('/', function () {\n    return view('welcome');\n})->name('home');\n\nRoute::view('dashboard', 'dashboard')\n    ->middleware(['auth', 'verified'])\n    ->name('dashboard');\n\nrequire __DIR__.'/settings.php';","is_error":false}]},"uuid":"d6a860c5-af85-43b9-9fa9-81e3f4e0fe17","timestamp":"2026-06-09T18:15:07.791Z","toolUseResult":{"stdout":"app/Providers/AppServiceProvider.php\napp/Providers/FortifyServiceProvider.php\napp/Models/User.php\napp/Concerns/ProfileValidationRules.php\napp/Concerns/PasswordValidationRules.php\nresources/views/livewire/settings/delete-user-form.blade.php\nresources/views/livewire/settings/two-factor.blade.php\nresources/views/livewire/settings/password.blade.php\nresources/views/livewire/settings/appearance.blade.php\nresources/views/livewire/settings/profile.blade.php\nresources/views/livewire/auth/reset-password.blade.php\nresources/views/livewire/auth/register.blade.php\nresources/views/livewire/auth/two-factor-challenge.blade.php\nresources/views/livewire/auth/confirm-password.blade.php\nresources/views/livewire/auth/forgot-password.blade.php\nresources/views/livewire/auth/verify-email.blade.php\nresources/views/livewire/auth/login.blade.php\napp/Livewire/Settings/TwoFactor.php\napp/Livewire/Settings/DeleteUserForm.php\napp/Livewire/Settings/Password.php\napp/Livewire/Settings/Profile.php\napp/Livewire/Settings/Appearance.php\napp/Livewire/Actions/Logout.php\napp/Http/Controllers/Controller.php\napp/Actions/Fortify/ResetUserPassword.php\napp/Actions/Fortify/CreateNewUser.php\nresources/views/livewire/settings/two-factor/recovery-codes.blade.php\napp/Livewire/Settings/TwoFactor/RecoveryCodes.php\n===routes/web.php===\n<?php\n\nuse Illuminate\\Support\\Facades\\Route;\n\nRoute::get('/', function () {\n    return view('welcome');\n})->name('home');\n\nRoute::view('dashboard', 'dashboard')\n    ->middleware(['auth', 'verified'])\n    ->name('dashboard');\n\nrequire __DIR__.'/settings.php';","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"d12a1552-4bba-4d80-affe-56bf800e4e03","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d6a860c5-af85-43b9-9fa9-81e3f4e0fe17","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01N3dg788zJZSJyM1U73Zt4u","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1026,"cache_read_input_tokens":75029,"output_tokens":1964,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1026,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1964,"cache_read_input_tokens":75029,"cache_creation_input_tokens":1026,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1026},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9BMZQYo9axZJmbxWHc","type":"assistant","uuid":"98ae9657-9f23-4d38-ad87-8601e793b7ee","timestamp":"2026-06-09T18:15:35.856Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"98ae9657-9f23-4d38-ad87-8601e793b7ee","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01N3dg788zJZSJyM1U73Zt4u","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS7gIKYwgOGAIqQFxBYqFrLJ+air3NruujcHEI/R0KFR6IloBhviRuL5/b6vquaFy+qAof7aef/ExC+1xNSS+ugjRllyXyDvcs7U0yDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMgwKfgY4sZ+49fQ5TGgxUIgAntSv3+lRi5PgiMK7XoUcAXfZoEpYib+tYK/25BX7GtXEmk44Daq6PqaxvrdI3PWdvQnfywIYMZRmfziq4Af8SnMz0BjZcPxHqstTu2zdTM7CuSFsyhh0/SF+IRskrkrKtsWwkftQxl0gDQEG8QtoBbaX7PpyGfcv3HZ9IeZFIVvaIi5Z9m9wu872AqXW9kzcrtGD0wDfqMScnk+qp/J6u0JO1efnSY+8SvfSWAZi1+Fu3KsxyAZbfvuACBqpNciZ/fEznZc1sGmt9GLLPpLPXhjlRhw30Tvp6N0pbI82VJHUw+r4wXthTXlcmlfUyOS88X3kg+lQYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1026,"cache_read_input_tokens":75029,"output_tokens":1964,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1026,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1964,"cache_read_input_tokens":75029,"cache_creation_input_tokens":1026,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1026},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9BMZQYo9axZJmbxWHc","type":"assistant","uuid":"092c945b-6fb3-404b-8c02-8c1c8a33c069","timestamp":"2026-06-09T18:15:35.867Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"092c945b-6fb3-404b-8c02-8c1c8a33c069","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01N3dg788zJZSJyM1U73Zt4u","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01THHXocAFWPvNDJk6DefgS6","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/specs/09-IMPLEMENTATION-ROADMAP.md","offset":1562,"limit":505},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1026,"cache_read_input_tokens":75029,"output_tokens":1964,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1026,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1964,"cache_read_input_tokens":75029,"cache_creation_input_tokens":1026,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1026},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9BMZQYo9axZJmbxWHc","type":"assistant","uuid":"6853d826-ed9f-460e-aa91-88117ec9834e","timestamp":"2026-06-09T18:15:36.680Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6853d826-ed9f-460e-aa91-88117ec9834e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01THHXocAFWPvNDJk6DefgS6","type":"tool_result","content":"1562\t| manages store domains | add a new domain | store_domain created | happy path |\n1563\t\n1564\t---\n1565\t\n1566\t#### tests/Feature/Search/SearchTest.php\n1567\t\n1568\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1569\t|-----------|----------------------|----------------|----------|\n1570\t| returns products matching search query | products: \"Blue Cotton T-Shirt\", \"Red Wool Sweater\"; search \"cotton\" | finds \"Blue Cotton T-Shirt\" | happy path |\n1571\t| scopes search to current store | store A has \"T-Shirt\", store B has \"T-Shirt Deluxe\"; search \"t-shirt\" on store A | only store A product returned | authorization |\n1572\t| returns empty for no matches | search \"xyznonexistent\" | empty results | edge case |\n1573\t| logs search query for analytics | perform search | search_queries row created | happy path |\n1574\t| paginates search results | 25 matching products, 12 per page | page 1 has 12, page 2 has 12, page 3 has 1 | happy path |\n1575\t\n1576\t---\n1577\t\n1578\t#### tests/Feature/Search/AutocompleteTest.php\n1579\t\n1580\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1581\t|-----------|----------------------|----------------|----------|\n1582\t| returns suggestions matching prefix | products: \"Summer Dress\", \"Summer Hat\", \"Winter Coat\"; autocomplete prefix \"sum\" | \"Summer Dress\" and \"Summer Hat\" returned | happy path |\n1583\t| limits results to configured count | 20 matching products, limit 5 | 5 results returned | happy path |\n1584\t| returns empty for very short prefix | autocomplete prefix \"a\" (below minimum) | empty or all results | edge case |\n1585\t\n1586\t---\n1587\t\n1588\t#### tests/Feature/Analytics/EventIngestionTest.php\n1589\t\n1590\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1591\t|-----------|----------------------|----------------|----------|\n1592\t| tracks a page view event | POST analytics event: type=page_view | analytics_events row created | happy path |\n1593\t| tracks an add to cart event | POST event: type=add_to_cart, properties include product_id | event stored with properties | happy path |\n1594\t| scopes events to current store | track event on store A | event.store_id = store A id | happy path |\n1595\t| includes session ID when available | track event with session | session_id stored | happy path |\n1596\t| includes customer ID when authenticated | track event as logged-in customer | customer_id stored | happy path |\n1597\t\n1598\t---\n1599\t\n1600\t#### tests/Feature/Analytics/AggregationTest.php\n1601\t\n1602\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1603\t|-----------|----------------------|----------------|----------|\n1604\t| aggregates daily metrics from raw events | create events: 5 page_views, 3 add_to_carts, 2 checkout_completed; run AggregateAnalytics job | analytics_daily row with correct counts | happy path |\n1605\t| calculates revenue and AOV correctly | 3 orders: 1000, 2000, 3000 cents; aggregate | revenue=6000, aov=2000 | happy path |\n1606\t| runs idempotently | run aggregation twice for same date | analytics_daily row has correct values (not doubled) | edge case |\n1607\t\n1608\t---\n1609\t\n1610\t#### tests/Feature/Webhooks/WebhookDeliveryTest.php\n1611\t\n1612\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1613\t|-----------|----------------------|----------------|----------|\n1614\t| delivers a webhook to a subscribed URL | mock HTTP client; subscription for event_type \"order.created\"; dispatch event | HTTP POST made to target_url | happy path |\n1615\t| signs the payload with HMAC | deliver webhook | `X-Platform-Signature` header present with valid signature | happy path |\n1616\t| retries failed deliveries with exponential backoff | first delivery returns 500 | job retried, attempt_count incremented | edge case |\n1617\t| marks delivery as failed after max retries | 6 total attempts exhausted (1 initial + 5 retries) | delivery status = failed | edge case |\n1618\t| pauses subscription after circuit breaker threshold | 5 consecutive failures | subscription status = paused | edge case |\n1619\t\n1620\t---\n1621\t\n1622\t#### tests/Feature/Webhooks/WebhookSignatureTest.php\n1623\t\n1624\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1625\t|-----------|----------------------|----------------|----------|\n1626\t| generates a valid HMAC-SHA256 signature | payload: '{\"event\":\"order.created\"}'; secret: 'test-secret' | signature matches expected hash | happy path |\n1627\t| verifies a valid signature | generate signature, then verify | returns true | happy path |\n1628\t| rejects a tampered payload | sign original, verify with modified payload | returns false | validation |\n1629\t| rejects an incorrect secret | sign with secret A, verify with secret B | returns false | validation |\n1630\t\n1631\t---\n1632\t\n1633\t#### tests/Feature/Api/StorefrontCartApiTest.php\n1634\t\n1635\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1636\t|-----------|----------------------|----------------|----------|\n1637\t| creates a cart | POST /api/storefront/v1/carts | 201 response, body has cart id, version 1 | happy path |\n1638\t| retrieves a cart with lines and totals | create cart with 2 lines; GET /api/storefront/v1/carts/{id} | 200 response, lines array has 2 items, totals calculated | happy path |\n1639\t| adds a line to the cart | POST /api/storefront/v1/carts/{id}/lines | 200 response, line added | happy path |\n1640\t| updates a line quantity | PUT /api/storefront/v1/carts/{id}/lines/{lineId} | 200 response, quantity updated | happy path |\n1641\t| removes a line | DELETE /api/storefront/v1/carts/{id}/lines/{lineId} | 200 response, line removed | happy path |\n1642\t| validates variant exists on add | add nonexistent variant_id | 422 response | validation |\n1643\t| validates quantity is positive | add with quantity=0 | 422 response | validation |\n1644\t| returns 404 for nonexistent cart | GET /api/storefront/v1/carts/999 | 404 response | validation |\n1645\t\n1646\t---\n1647\t\n1648\t#### tests/Feature/Api/StorefrontCheckoutApiTest.php\n1649\t\n1650\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1651\t|-----------|----------------------|----------------|----------|\n1652\t| creates a checkout from a cart | POST /api/storefront/v1/checkouts with cart_id | 201 response, checkout status=started | happy path |\n1653\t| sets checkout address | PUT /api/storefront/v1/checkouts/{id}/address | 200 response, status=addressed | happy path |\n1654\t| selects a shipping method | PUT /api/storefront/v1/checkouts/{id}/shipping-method | 200 response, status=shipping_selected, available rates returned in response | happy path |\n1655\t| applies a discount code | POST /api/storefront/v1/checkouts/{id}/apply-discount with code | 200 response, discount applied in totals | happy path |\n1656\t| retrieves checkout with totals | GET /api/storefront/v1/checkouts/{id} | 200 response, includes totals_json fields | happy path |\n1657\t| selects a payment method | PUT /api/storefront/v1/checkouts/{id}/payment-method with method=credit_card | 200 response, status=payment_selected, payment_method stored | happy path |\n1658\t| completes checkout with credit card payment | POST /api/storefront/v1/checkouts/{id}/pay with card fields | 200 response, status=completed, order created | happy path |\n1659\t| rejects payment with declined card | POST /api/storefront/v1/checkouts/{id}/pay with magic decline number | 422 response, payment declined message | validation |\n1660\t| validates required address fields | PUT address with missing city | 422 response | validation |\n1661\t\n1662\t---\n1663\t\n1664\t#### tests/Feature/Api/AdminProductApiTest.php\n1665\t\n1666\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1667\t|-----------|----------------------|----------------|----------|\n1668\t| lists products with authentication | GET /api/admin/v1/stores/{storeId}/products with Bearer token | 200 response, paginated product list | happy path |\n1669\t| creates a product via API | POST /api/admin/v1/stores/{storeId}/products with product data | 201 response, product in response | happy path |\n1670\t| updates a product via API | PUT /api/admin/v1/stores/{storeId}/products/{id} with updated data | 200 response, product updated | happy path |\n1671\t| deletes a draft product via API | DELETE /api/admin/v1/stores/{storeId}/products/{id} | 200 response | happy path |\n1672\t| requires write-products ability for mutations | token with only read-products; POST /api/admin/v1/stores/{storeId}/products | 403 response | authorization |\n1673\t| returns 401 without token | GET /api/admin/v1/stores/{storeId}/products without auth header | 401 response | authorization |\n1674\t| paginates results | 25 products, default page size 15 | first page has 15 items, meta has total=25 | happy path |\n1675\t\n1676\t---\n1677\t\n1678\t#### tests/Feature/Api/AdminOrderApiTest.php\n1679\t\n1680\t| Test Name | Setup / Preconditions | Key Assertions | Category |\n1681\t|-----------|----------------------|----------------|----------|\n1682\t| lists orders with authentication | GET /api/admin/v1/stores/{storeId}/orders with Bearer token | 200 response, order list | happy path |\n1683\t| retrieves a single order | GET /api/admin/v1/stores/{storeId}/orders/{id} | 200 response, order with lines, payments, fulfillments | happy path |\n1684\t| filters orders by status | GET /api/admin/v1/stores/{storeId}/orders?status=paid | only paid orders returned | happy path |\n1685\t| creates a fulfillment via API | POST /api/admin/v1/stores/{storeId}/orders/{id}/fulfillments | 201 response, fulfillment created | happy path |\n1686\t| creates a refund via API | POST /api/admin/v1/stores/{storeId}/orders/{id}/refunds | 201 response, refund created | happy path |\n1687\t| requires write-orders ability for mutations | token with only read-orders; POST fulfillment | 403 response | authorization |\n1688\t\n1689\t---\n1690\t\n1691\t## 4. Files to Create Inventory\n1692\t\n1693\t### Models (with migration, factory, seeder)\n1694\t\n1695\t| Name | Purpose |\n1696\t|------|---------|\n1697\t| `Organization` | Top-level tenant entity |\n1698\t| `Store` | Individual store within an organization |\n1699\t| `StoreDomain` | Domain mapping for a store |\n1700\t| `StoreUser` | Pivot model with role attribute |\n1701\t| `StoreSettings` | Per-store configuration |\n1702\t| `Product` | Product entity |\n1703\t| `ProductOption` | Product option definition |\n1704\t| `ProductOptionValue` | Option value entry |\n1705\t| `ProductVariant` | Product variant (SKU-level) |\n1706\t| `InventoryItem` | Inventory tracking per variant |\n1707\t| `Collection` | Product collection/category |\n1708\t| `ProductMedia` | Product images and videos |\n1709\t| `Theme` | Store theme entity |\n1710\t| `ThemeFile` | Individual theme file |\n1711\t| `ThemeSettings` | Theme configuration |\n1712\t| `Page` | CMS page |\n1713\t| `NavigationMenu` | Navigation menu entity |\n1714\t| `NavigationItem` | Individual navigation item |\n1715\t| `Cart` | Shopping cart entity |\n1716\t| `CartLine` | Individual cart line item |\n1717\t| `Checkout` | Checkout session entity |\n1718\t| `ShippingZone` | Shipping zone configuration |\n1719\t| `ShippingRate` | Shipping rate within a zone |\n1720\t| `TaxSettings` | Per-store tax configuration |\n1721\t| `Discount` | Discount code or automatic discount |\n1722\t| `Customer` | Store customer entity |\n1723\t| `CustomerAddress` | Customer address |\n1724\t| `Order` | Order entity |\n1725\t| `OrderLine` | Order line item |\n1726\t| `Payment` | Payment record |\n1727\t| `Refund` | Refund record |\n1728\t| `Fulfillment` | Fulfillment record |\n1729\t| `FulfillmentLine` | Fulfillment line item |\n1730\t| `App` | Third-party app entity |\n1731\t| `AppInstallation` | App installation per store |\n1732\t| `OauthClient` | OAuth client for app |\n1733\t| `OauthToken` | OAuth token for installation |\n1734\t| `WebhookSubscription` | Webhook subscription per store |\n1735\t| `WebhookDelivery` | Webhook delivery log |\n1736\t| `AnalyticsEvent` | Raw analytics event |\n1737\t| `AnalyticsDaily` | Pre-aggregated daily analytics |\n1738\t| `SearchSettings` | Per-store search configuration |\n1739\t| `SearchQuery` | Search query log |\n1740\t\n1741\t### Livewire Components - Admin\n1742\t\n1743\t| Name | Purpose |\n1744\t|------|---------|\n1745\t| `Admin/Auth/Login` | Admin login form |\n1746\t| `Admin/Dashboard` | Admin dashboard |\n1747\t| `Admin/Layout/Sidebar` | Admin sidebar navigation |\n1748\t| `Admin/Layout/TopBar` | Admin top bar with store selector |\n1749\t| `Admin/Products/Index` | Product list |\n1750\t| `Admin/Products/Form` | Shared product form (create/edit mode) |\n1751\t| `Admin/Collections/Index` | Collection list |\n1752\t| `Admin/Collections/Form` | Shared collection form (create/edit mode) |\n1753\t| `Admin/Orders/Index` | Order list |\n1754\t| `Admin/Orders/Show` | Order detail |\n1755\t| `Admin/Customers/Index` | Customer list |\n1756\t| `Admin/Customers/Show` | Customer detail |\n1757\t| `Admin/Discounts/Index` | Discount list |\n1758\t| `Admin/Discounts/Form` | Shared discount form (create/edit mode) |\n1759\t| `Admin/Settings/Index` | Settings tabs |\n1760\t| `Admin/Settings/Shipping` | Shipping zone/rate management |\n1761\t| `Admin/Settings/Taxes` | Tax settings |\n1762\t| `Admin/Inventory/Index` | Inventory management - list and filter inventory items, adjust quantities (Spec 03 Section 8) |\n1763\t| `Admin/Themes/Index` | Theme list |\n1764\t| `Admin/Themes/Editor` | Theme editor |\n1765\t| `Admin/Pages/Index` | Page list |\n1766\t| `Admin/Pages/Form` | Shared page form (create/edit mode) |\n1767\t| `Admin/Navigation/Index` | Navigation menu management |\n1768\t| `Admin/Analytics/Index` | Analytics dashboard |\n1769\t| `Admin/Search/Settings` | Search settings |\n1770\t| `Admin/Apps/Index` | App directory |\n1771\t| `Admin/Apps/Show` | Installed app detail |\n1772\t| `Admin/Developers/Index` | API token and webhook management |\n1773\t\n1774\t### Livewire Components - Storefront\n1775\t\n1776\t| Name | Purpose |\n1777\t|------|---------|\n1778\t| `Storefront/Home` | Storefront home page |\n1779\t| `Storefront/Collections/Index` | All collections grid |\n1780\t| `Storefront/Collections/Show` | Collection product grid |\n1781\t| `Storefront/Products/Show` | Product detail page |\n1782\t| `Storefront/Cart/Show` | Full cart page |\n1783\t| `Storefront/CartDrawer` | Slide-out cart drawer |\n1784\t| `Storefront/Search/Index` | Search results page |\n1785\t| `Storefront/Search/Modal` | Search autocomplete modal |\n1786\t| `Storefront/Pages/Show` | CMS page renderer |\n1787\t| `Storefront/Checkout/Show` | Multi-step checkout |\n1788\t| `Storefront/Checkout/Confirmation` | Order confirmation |\n1789\t| `Storefront/Account/Auth/Login` | Customer login |\n1790\t| `Storefront/Account/Auth/Register` | Customer registration |\n1791\t| `Storefront/Account/Dashboard` | Customer dashboard |\n1792\t| `Storefront/Account/Orders/Index` | Customer order history |\n1793\t| `Storefront/Account/Orders/Show` | Customer order detail |\n1794\t| `Storefront/Account/Addresses/Index` | Customer address management |\n1795\t\n1796\t### Middleware\n1797\t\n1798\t| Name | Purpose |\n1799\t|------|---------|\n1800\t| `ResolveStore` | Resolves current store from hostname or session |\n1801\t| `CheckStoreRole` | Validates user has required store role |\n1802\t| `CustomerAuthenticate` | Customer guard authentication |\n1803\t\n1804\t### Policies\n1805\t\n1806\t| Name | Model |\n1807\t|------|-------|\n1808\t| `ProductPolicy` | Product |\n1809\t| `OrderPolicy` | Order |\n1810\t| `CollectionPolicy` | Collection |\n1811\t| `DiscountPolicy` | Discount |\n1812\t| `CustomerPolicy` | Customer |\n1813\t| `StorePolicy` | Store |\n1814\t| `PagePolicy` | Page |\n1815\t| `ThemePolicy` | Theme |\n1816\t| `FulfillmentPolicy` | Fulfillment |\n1817\t| `RefundPolicy` | Refund |\n1818\t\n1819\t### Form Requests\n1820\t\n1821\t| Name | Purpose |\n1822\t|------|---------|\n1823\t| `StoreProductRequest` | Validate product creation |\n1824\t| `UpdateProductRequest` | Validate product update |\n1825\t| `StoreCollectionRequest` | Validate collection creation |\n1826\t| `UpdateCollectionRequest` | Validate collection update |\n1827\t| `StoreDiscountRequest` | Validate discount creation |\n1828\t| `UpdateDiscountRequest` | Validate discount update |\n1829\t| `SetCheckoutAddressRequest` | Validate checkout address |\n1830\t| `SetCheckoutShippingRequest` | Validate checkout shipping selection |\n1831\t| `CreateFulfillmentRequest` | Validate fulfillment creation |\n1832\t| `CreateRefundRequest` | Validate refund creation |\n1833\t| `StorePageRequest` | Validate page creation |\n1834\t| `UpdatePageRequest` | Validate page update |\n1835\t| `RegisterCustomerRequest` | Validate customer registration |\n1836\t| `StoreShippingZoneRequest` | Validate shipping zone creation |\n1837\t| `StoreShippingRateRequest` | Validate shipping rate creation |\n1838\t| `UpdateTaxSettingsRequest` | Validate tax settings update |\n1839\t| `StoreCustomerAddressRequest` | Validate customer address creation |\n1840\t| `UpdateCustomerAddressRequest` | Validate customer address update |\n1841\t\n1842\t### Jobs\n1843\t\n1844\t| Name | Purpose |\n1845\t|------|---------|\n1846\t| `ProcessMediaUpload` | Resize images, update media status |\n1847\t| `DeliverWebhook` | HTTP POST webhook with retry logic |\n1848\t| `AggregateAnalytics` | Daily analytics aggregation |\n1849\t| `CleanupAbandonedCarts` | Mark old active carts as abandoned |\n1850\t| `ExpireAbandonedCheckouts` | Expire timed-out checkouts, release inventory |\n1851\t\n1852\t### Events\n1853\t\n1854\t| Name | Purpose |\n1855\t|------|---------|\n1856\t| `OrderCreated` | Dispatched when order is created |\n1857\t| `OrderPaid` | Dispatched when payment is captured |\n1858\t| `OrderFulfilled` | Dispatched when all lines fulfilled |\n1859\t| `OrderCancelled` | Dispatched when order is cancelled |\n1860\t| `OrderRefunded` | Dispatched when refund is processed |\n1861\t| `CheckoutCompleted` | Dispatched when checkout completes |\n1862\t| `CheckoutAddressed` | Dispatched when address is set |\n1863\t| `CheckoutShippingSelected` | Dispatched when shipping is selected |\n1864\t| `ProductStatusChanged` | Dispatched when product status transitions |\n1865\t| `CartUpdated` | Dispatched when cart is mutated |\n1866\t\n1867\t### Tests\n1868\t\n1869\t**Unit tests to create (6 files):**\n1870\t\n1871\t| Name | Purpose |\n1872\t|------|---------|\n1873\t| `PricingEngineTest` | Pricing pipeline unit tests |\n1874\t| `DiscountCalculatorTest` | Discount validation and calculation unit tests |\n1875\t| `TaxCalculatorTest` | Tax calculation unit tests |\n1876\t| `ShippingCalculatorTest` | Shipping rate calculation unit tests |\n1877\t| `CartVersionTest` | Cart versioning unit tests |\n1878\t| `HandleGeneratorTest` | Slug generation unit tests |\n1879\t\n1880\t**Feature tests to create (28 files):**\n1881\t\n1882\t| Name | Purpose |\n1883\t|------|---------|\n1884\t| `Tenancy/TenantResolutionTest` | Tenant resolution feature tests |\n1885\t| `Tenancy/StoreIsolationTest` | Store isolation feature tests |\n1886\t| `Auth/AdminAuthTest` | Admin authentication feature tests |\n1887\t| `Auth/CustomerAuthTest` | Customer authentication feature tests |\n1888\t| `Auth/SanctumTokenTest` | API token feature tests |\n1889\t| `Products/ProductCrudTest` | Product CRUD feature tests |\n1890\t| `Products/VariantTest` | Variant management feature tests |\n1891\t| `Products/InventoryTest` | Inventory management feature tests |\n1892\t| `Products/CollectionTest` | Collection feature tests |\n1893\t| `Products/MediaUploadTest` | Media upload feature tests |\n1894\t| `Cart/CartServiceTest` | Cart service feature tests |\n1895\t| `Cart/CartApiTest` | Cart API feature tests |\n1896\t| `Checkout/CheckoutFlowTest` | Checkout flow feature tests |\n1897\t| `Checkout/CheckoutStateTest` | Checkout state machine feature tests |\n1898\t| `Checkout/PricingIntegrationTest` | Pricing integration feature tests |\n1899\t| `Checkout/DiscountTest` | Checkout discount feature tests |\n1900\t| `Checkout/ShippingTest` | Checkout shipping feature tests |\n1901\t| `Checkout/TaxTest` | Checkout tax feature tests |\n1902\t| `Orders/OrderCreationTest` | Order creation feature tests |\n1903\t| `Orders/RefundTest` | Refund feature tests |\n1904\t| `Orders/FulfillmentTest` | Fulfillment feature tests |\n1905\t| `Payments/MockPaymentProviderTest` | Mock PSP charge/decline feature tests |\n1906\t| `Payments/PaymentServiceTest` | Payment service feature tests |\n1907\t| `Payments/BankTransferConfirmationTest` | Bank transfer confirmation and auto-cancel tests |\n1908\t| `Customers/CustomerAccountTest` | Customer account feature tests |\n1909\t| `Customers/AddressManagementTest` | Address management feature tests |\n1910\t| `Admin/DashboardTest` | Admin dashboard feature tests |\n1911\t| `Admin/ProductManagementTest` | Admin product management feature tests |\n1912\t| `Admin/OrderManagementTest` | Admin order management feature tests |\n1913\t| `Admin/DiscountManagementTest` | Admin discount management feature tests |\n1914\t| `Admin/SettingsTest` | Admin settings feature tests |\n1915\t| `Search/SearchTest` | Search feature tests |\n1916\t| `Search/AutocompleteTest` | Autocomplete feature tests |\n1917\t| `Analytics/EventIngestionTest` | Analytics event ingestion feature tests |\n1918\t| `Analytics/AggregationTest` | Analytics aggregation feature tests |\n1919\t| `Webhooks/WebhookDeliveryTest` | Webhook delivery feature tests |\n1920\t| `Webhooks/WebhookSignatureTest` | Webhook signature feature tests |\n1921\t| `Api/StorefrontCartApiTest` | Storefront cart API feature tests |\n1922\t| `Api/StorefrontCheckoutApiTest` | Storefront checkout API feature tests |\n1923\t| `Api/AdminProductApiTest` | Admin product API feature tests |\n1924\t| `Api/AdminOrderApiTest` | Admin order API feature tests |\n1925\t\n1926\t---\n1927\t\n1928\t## 5. Config File Changes\n1929\t\n1930\t| Config File | Change | Value | Purpose |\n1931\t|-------------|--------|-------|---------|\n1932\t| `config/database.php` | SQLite pragmas | WAL, foreign keys, busy_timeout 5000, synchronous normal | Optimized SQLite configuration |\n1933\t| `config/auth.php` | Customer guard | Add customer guard, customer provider, customer password broker | Customer storefront auth |\n1934\t| `config/session.php` | Driver | File driver, lifetime 120 | Session configuration |\n1935\t| `config/cache.php` | Driver | File driver | Cache configuration |\n1936\t| `config/queue.php` | Driver | Sync driver | Queue configuration |\n1937\t| `config/filesystems.php` | Public disk | Media storage configuration | Public disk for media |\n1938\t| `config/logging.php` | JSON channel | Structured JSON channel | Structured logging |\n1939\t\n1940\t### bootstrap/app.php Changes\n1941\t\n1942\t- Register middleware aliases: `store.resolve`, `role.check`, `auth:customer`\n1943\t- Register middleware groups for `storefront` and `admin` route groups\n1944\t- Configure rate limiters: `login` (5/min per IP), `api.admin` (60/min per token), `api.storefront` (120/min per IP), `checkout` (10/min per session), `search` (30/min per IP), `analytics` (60/min per IP), `webhooks` (100/min per IP)\n1945\t- Configure exception handling\n1946\t\n1947\t### Routes Files\n1948\t\n1949\t| File | Contents |\n1950\t|------|----------|\n1951\t| `routes/web.php` | Admin auth routes, admin routes (prefix `/admin`), storefront routes, checkout routes, customer account routes |\n1952\t| `routes/api.php` | Storefront API (prefix `/api/storefront/v1`), Admin API (prefix `/api/admin/v1`), Webhook receiver routes |\n1953\t| `routes/console.php` | Scheduled jobs: `CleanupAbandonedCarts` daily, `ExpireAbandonedCheckouts` every 15 minutes, `AggregateAnalytics` daily, `CancelUnpaidBankTransferOrders` daily |\n1954\t\n1955\t### Service Providers\n1956\t\n1957\t**AppServiceProvider::boot() responsibilities:**\n1958\t- Bind services to container (PaymentProvider, CartService, PricingEngine, etc.)\n1959\t- Register rate limiters\n1960\t- Register global scopes\n1961\t- Register model observers (ProductObserver for FTS5 sync)\n1962\t\n1963\t### Services Directory\n1964\t\n1965\t| Service | Responsibility |\n1966\t|---------|---------------|\n1967\t| `CartService` | Cart CRUD, line management, version control, session binding |\n1968\t| `CheckoutService` | State machine, transitions, address/shipping/payment coordination |\n1969\t| `PricingEngine` | Deterministic pricing pipeline: subtotal -> discount -> shipping -> tax -> total |\n1970\t| `DiscountService` | Discount validation, amount calculation, line allocation |\n1971\t| `ShippingCalculator` | Zone matching, rate calculation |\n1972\t| `TaxCalculator` | Tax calculation (exclusive/inclusive), rate lookup |\n1973\t| `InventoryService` | Reserve, release, commit, restock operations |\n1974\t| `ProductService` | Product CRUD, status transitions |\n1975\t| `VariantMatrixService` | Cartesian product generation, variant lifecycle |\n1976\t| `OrderService` | Order creation from checkout, numbering, inventory commit |\n1977\t| `RefundService` | Refund creation, provider API, inventory restock |\n1978\t| `FulfillmentService` | Fulfillment CRUD, tracking, status management |\n1979\t| `NavigationService` | Menu tree building, URL resolution, caching |\n1980\t| `SearchService` | FTS5 index management, query execution, autocomplete |\n1981\t| `AnalyticsService` | Event tracking, daily aggregation |\n1982\t| `WebhookService` | Event dispatch, HMAC signing, delivery management |\n1983\t| `Payments\\MockPaymentProvider` | In-process mock PSP: credit card (magic numbers), PayPal, bank transfer |\n1984\t\n1985\t---\n1986\t\n1987\t## 6. File Count Estimate\n1988\t\n1989\t| Category | Estimated Files |\n1990\t|----------|-----------------|\n1991\t| Migrations | 28-32 |\n1992\t| Models | 32-36 |\n1993\t| Livewire Components (Admin) | 28-30 |\n1994\t| Livewire Components (Storefront) | 15-17 |\n1995\t| Blade Views (Admin) | 28-30 |\n1996\t| Blade Views (Storefront) | 18-22 |\n1997\t| Blade Components (Storefront) | 8-10 |\n1998\t| Services | 14-16 |\n1999\t| Policies | 10 |\n2000\t| Form Requests | 18-20 |\n2001\t| Jobs | 5 |\n2002\t| Events | 10 |\n2003\t| Middleware | 3 |\n2004\t| Enums | 18-20 |\n2005\t| Factories | 25-28 |\n2006\t| Seeders | 20-22 |\n2007\t| Config changes | 6-7 |\n2008\t| Routes | 3 |\n2009\t| Value Objects | 3-4 |\n2010\t| Contracts/Interfaces | 2-3 |\n2011\t| Traits/Concerns | 2-3 |\n2012\t| Scopes | 1 |\n2013\t| Observers | 1 |\n2014\t| Support classes | 2-3 |\n2015\t| Tests (Unit) | 6 |\n2016\t| Tests (Feature) | 28-30 |\n2017\t| Tests (Browser) | 18 files (143 tests) |\n2018\t| CSS/JS | 3-5 |\n2019\t| **Total** | **~320-380 files** |\n2020\t\n2021\t---\n2022\t\n2023\t## 7. Verification Checklist\n2024\t\n2025\t1. Install Composer dependencies and confirm no errors\n2026\t2. Install npm dependencies and run the Vite build; confirm it succeeds\n2027\t3. Run a fresh migration on a clean SQLite database and confirm all migrations complete without errors\n2028\t4. Run all seeders and confirm demo data is created without errors\n2029\t5. Run all unit tests and confirm they pass\n2030\t6. Run all feature tests and confirm they pass\n2031\t7. Run all browser tests and confirm they pass (requires browser driver)\n2032\t8. Run the code style formatter/checker and confirm code conforms to project standards\n2033\t9. Manual smoke: visit the storefront domain and confirm it renders with products\n2034\t10. Manual smoke: visit the admin login page and confirm it renders; authenticate as the demo admin user\n2035\t11. Manual smoke: add a product to the cart, proceed through the full checkout flow\n2036\t12. Manual smoke: in admin, create a product, manage an order, and process a fulfillment\n2037\t13. List all registered routes and confirm they are correct with no duplicates\n2038\t14. Run the config cache command and confirm it works (verifying no `env()` calls outside config files)\n2039\t\n2040\t---\n2041\t\n2042\t## 8. Seeder Execution Order\n2043\t\n2044\tSeeders must run in dependency order. The `DatabaseSeeder` should call them sequentially in this order:\n2045\t\n2046\t1. `OrganizationSeeder`\n2047\t2. `StoreSeeder`\n2048\t3. `StoreDomainSeeder`\n2049\t4. `UserSeeder`\n2050\t5. `StoreUserSeeder`\n2051\t6. `StoreSettingsSeeder`\n2052\t7. `TaxSettingsSeeder`\n2053\t8. `ShippingSeeder` - creates shipping zones and rates\n2054\t9. `CollectionSeeder` - creates collections (before products so products can be linked)\n2055\t10. `ProductSeeder` - creates products with options, variants, inventory, media, and collection associations\n2056\t11. `DiscountSeeder`\n2057\t12. `CustomerSeeder` - creates customers and their addresses\n2058\t13. `OrderSeeder` - creates sample orders with lines, payments, fulfillments\n2059\t14. `ThemeSeeder` - creates themes with files and settings\n2060\t15. `PageSeeder`\n2061\t16. `NavigationSeeder` - creates navigation menus and items\n2062\t17. `AnalyticsSeeder`\n2063\t18. `SearchSettingsSeeder`\n2064\t\n2065\tSee spec `07-SEEDERS-AND-TEST-DATA.md` for detailed seeder data definitions.\n2066\t"}]},"uuid":"215b14d4-ba7f-4e89-9301-d47f5ef9ad65","timestamp":"2026-06-09T18:15:37.061Z","toolUseResult":{"type":"text","file":{"filePath":"/Users/fabianwesner/Herd/shop/specs/09-IMPLEMENTATION-ROADMAP.md","content":"| manages store domains | add a new domain | store_domain created | happy path |\n\n---\n\n#### tests/Feature/Search/SearchTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| returns products matching search query | products: \"Blue Cotton T-Shirt\", \"Red Wool Sweater\"; search \"cotton\" | finds \"Blue Cotton T-Shirt\" | happy path |\n| scopes search to current store | store A has \"T-Shirt\", store B has \"T-Shirt Deluxe\"; search \"t-shirt\" on store A | only store A product returned | authorization |\n| returns empty for no matches | search \"xyznonexistent\" | empty results | edge case |\n| logs search query for analytics | perform search | search_queries row created | happy path |\n| paginates search results | 25 matching products, 12 per page | page 1 has 12, page 2 has 12, page 3 has 1 | happy path |\n\n---\n\n#### tests/Feature/Search/AutocompleteTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| returns suggestions matching prefix | products: \"Summer Dress\", \"Summer Hat\", \"Winter Coat\"; autocomplete prefix \"sum\" | \"Summer Dress\" and \"Summer Hat\" returned | happy path |\n| limits results to configured count | 20 matching products, limit 5 | 5 results returned | happy path |\n| returns empty for very short prefix | autocomplete prefix \"a\" (below minimum) | empty or all results | edge case |\n\n---\n\n#### tests/Feature/Analytics/EventIngestionTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| tracks a page view event | POST analytics event: type=page_view | analytics_events row created | happy path |\n| tracks an add to cart event | POST event: type=add_to_cart, properties include product_id | event stored with properties | happy path |\n| scopes events to current store | track event on store A | event.store_id = store A id | happy path |\n| includes session ID when available | track event with session | session_id stored | happy path |\n| includes customer ID when authenticated | track event as logged-in customer | customer_id stored | happy path |\n\n---\n\n#### tests/Feature/Analytics/AggregationTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| aggregates daily metrics from raw events | create events: 5 page_views, 3 add_to_carts, 2 checkout_completed; run AggregateAnalytics job | analytics_daily row with correct counts | happy path |\n| calculates revenue and AOV correctly | 3 orders: 1000, 2000, 3000 cents; aggregate | revenue=6000, aov=2000 | happy path |\n| runs idempotently | run aggregation twice for same date | analytics_daily row has correct values (not doubled) | edge case |\n\n---\n\n#### tests/Feature/Webhooks/WebhookDeliveryTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| delivers a webhook to a subscribed URL | mock HTTP client; subscription for event_type \"order.created\"; dispatch event | HTTP POST made to target_url | happy path |\n| signs the payload with HMAC | deliver webhook | `X-Platform-Signature` header present with valid signature | happy path |\n| retries failed deliveries with exponential backoff | first delivery returns 500 | job retried, attempt_count incremented | edge case |\n| marks delivery as failed after max retries | 6 total attempts exhausted (1 initial + 5 retries) | delivery status = failed | edge case |\n| pauses subscription after circuit breaker threshold | 5 consecutive failures | subscription status = paused | edge case |\n\n---\n\n#### tests/Feature/Webhooks/WebhookSignatureTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| generates a valid HMAC-SHA256 signature | payload: '{\"event\":\"order.created\"}'; secret: 'test-secret' | signature matches expected hash | happy path |\n| verifies a valid signature | generate signature, then verify | returns true | happy path |\n| rejects a tampered payload | sign original, verify with modified payload | returns false | validation |\n| rejects an incorrect secret | sign with secret A, verify with secret B | returns false | validation |\n\n---\n\n#### tests/Feature/Api/StorefrontCartApiTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a cart | POST /api/storefront/v1/carts | 201 response, body has cart id, version 1 | happy path |\n| retrieves a cart with lines and totals | create cart with 2 lines; GET /api/storefront/v1/carts/{id} | 200 response, lines array has 2 items, totals calculated | happy path |\n| adds a line to the cart | POST /api/storefront/v1/carts/{id}/lines | 200 response, line added | happy path |\n| updates a line quantity | PUT /api/storefront/v1/carts/{id}/lines/{lineId} | 200 response, quantity updated | happy path |\n| removes a line | DELETE /api/storefront/v1/carts/{id}/lines/{lineId} | 200 response, line removed | happy path |\n| validates variant exists on add | add nonexistent variant_id | 422 response | validation |\n| validates quantity is positive | add with quantity=0 | 422 response | validation |\n| returns 404 for nonexistent cart | GET /api/storefront/v1/carts/999 | 404 response | validation |\n\n---\n\n#### tests/Feature/Api/StorefrontCheckoutApiTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| creates a checkout from a cart | POST /api/storefront/v1/checkouts with cart_id | 201 response, checkout status=started | happy path |\n| sets checkout address | PUT /api/storefront/v1/checkouts/{id}/address | 200 response, status=addressed | happy path |\n| selects a shipping method | PUT /api/storefront/v1/checkouts/{id}/shipping-method | 200 response, status=shipping_selected, available rates returned in response | happy path |\n| applies a discount code | POST /api/storefront/v1/checkouts/{id}/apply-discount with code | 200 response, discount applied in totals | happy path |\n| retrieves checkout with totals | GET /api/storefront/v1/checkouts/{id} | 200 response, includes totals_json fields | happy path |\n| selects a payment method | PUT /api/storefront/v1/checkouts/{id}/payment-method with method=credit_card | 200 response, status=payment_selected, payment_method stored | happy path |\n| completes checkout with credit card payment | POST /api/storefront/v1/checkouts/{id}/pay with card fields | 200 response, status=completed, order created | happy path |\n| rejects payment with declined card | POST /api/storefront/v1/checkouts/{id}/pay with magic decline number | 422 response, payment declined message | validation |\n| validates required address fields | PUT address with missing city | 422 response | validation |\n\n---\n\n#### tests/Feature/Api/AdminProductApiTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| lists products with authentication | GET /api/admin/v1/stores/{storeId}/products with Bearer token | 200 response, paginated product list | happy path |\n| creates a product via API | POST /api/admin/v1/stores/{storeId}/products with product data | 201 response, product in response | happy path |\n| updates a product via API | PUT /api/admin/v1/stores/{storeId}/products/{id} with updated data | 200 response, product updated | happy path |\n| deletes a draft product via API | DELETE /api/admin/v1/stores/{storeId}/products/{id} | 200 response | happy path |\n| requires write-products ability for mutations | token with only read-products; POST /api/admin/v1/stores/{storeId}/products | 403 response | authorization |\n| returns 401 without token | GET /api/admin/v1/stores/{storeId}/products without auth header | 401 response | authorization |\n| paginates results | 25 products, default page size 15 | first page has 15 items, meta has total=25 | happy path |\n\n---\n\n#### tests/Feature/Api/AdminOrderApiTest.php\n\n| Test Name | Setup / Preconditions | Key Assertions | Category |\n|-----------|----------------------|----------------|----------|\n| lists orders with authentication | GET /api/admin/v1/stores/{storeId}/orders with Bearer token | 200 response, order list | happy path |\n| retrieves a single order | GET /api/admin/v1/stores/{storeId}/orders/{id} | 200 response, order with lines, payments, fulfillments | happy path |\n| filters orders by status | GET /api/admin/v1/stores/{storeId}/orders?status=paid | only paid orders returned | happy path |\n| creates a fulfillment via API | POST /api/admin/v1/stores/{storeId}/orders/{id}/fulfillments | 201 response, fulfillment created | happy path |\n| creates a refund via API | POST /api/admin/v1/stores/{storeId}/orders/{id}/refunds | 201 response, refund created | happy path |\n| requires write-orders ability for mutations | token with only read-orders; POST fulfillment | 403 response | authorization |\n\n---\n\n## 4. Files to Create Inventory\n\n### Models (with migration, factory, seeder)\n\n| Name | Purpose |\n|------|---------|\n| `Organization` | Top-level tenant entity |\n| `Store` | Individual store within an organization |\n| `StoreDomain` | Domain mapping for a store |\n| `StoreUser` | Pivot model with role attribute |\n| `StoreSettings` | Per-store configuration |\n| `Product` | Product entity |\n| `ProductOption` | Product option definition |\n| `ProductOptionValue` | Option value entry |\n| `ProductVariant` | Product variant (SKU-level) |\n| `InventoryItem` | Inventory tracking per variant |\n| `Collection` | Product collection/category |\n| `ProductMedia` | Product images and videos |\n| `Theme` | Store theme entity |\n| `ThemeFile` | Individual theme file |\n| `ThemeSettings` | Theme configuration |\n| `Page` | CMS page |\n| `NavigationMenu` | Navigation menu entity |\n| `NavigationItem` | Individual navigation item |\n| `Cart` | Shopping cart entity |\n| `CartLine` | Individual cart line item |\n| `Checkout` | Checkout session entity |\n| `ShippingZone` | Shipping zone configuration |\n| `ShippingRate` | Shipping rate within a zone |\n| `TaxSettings` | Per-store tax configuration |\n| `Discount` | Discount code or automatic discount |\n| `Customer` | Store customer entity |\n| `CustomerAddress` | Customer address |\n| `Order` | Order entity |\n| `OrderLine` | Order line item |\n| `Payment` | Payment record |\n| `Refund` | Refund record |\n| `Fulfillment` | Fulfillment record |\n| `FulfillmentLine` | Fulfillment line item |\n| `App` | Third-party app entity |\n| `AppInstallation` | App installation per store |\n| `OauthClient` | OAuth client for app |\n| `OauthToken` | OAuth token for installation |\n| `WebhookSubscription` | Webhook subscription per store |\n| `WebhookDelivery` | Webhook delivery log |\n| `AnalyticsEvent` | Raw analytics event |\n| `AnalyticsDaily` | Pre-aggregated daily analytics |\n| `SearchSettings` | Per-store search configuration |\n| `SearchQuery` | Search query log |\n\n### Livewire Components - Admin\n\n| Name | Purpose |\n|------|---------|\n| `Admin/Auth/Login` | Admin login form |\n| `Admin/Dashboard` | Admin dashboard |\n| `Admin/Layout/Sidebar` | Admin sidebar navigation |\n| `Admin/Layout/TopBar` | Admin top bar with store selector |\n| `Admin/Products/Index` | Product list |\n| `Admin/Products/Form` | Shared product form (create/edit mode) |\n| `Admin/Collections/Index` | Collection list |\n| `Admin/Collections/Form` | Shared collection form (create/edit mode) |\n| `Admin/Orders/Index` | Order list |\n| `Admin/Orders/Show` | Order detail |\n| `Admin/Customers/Index` | Customer list |\n| `Admin/Customers/Show` | Customer detail |\n| `Admin/Discounts/Index` | Discount list |\n| `Admin/Discounts/Form` | Shared discount form (create/edit mode) |\n| `Admin/Settings/Index` | Settings tabs |\n| `Admin/Settings/Shipping` | Shipping zone/rate management |\n| `Admin/Settings/Taxes` | Tax settings |\n| `Admin/Inventory/Index` | Inventory management - list and filter inventory items, adjust quantities (Spec 03 Section 8) |\n| `Admin/Themes/Index` | Theme list |\n| `Admin/Themes/Editor` | Theme editor |\n| `Admin/Pages/Index` | Page list |\n| `Admin/Pages/Form` | Shared page form (create/edit mode) |\n| `Admin/Navigation/Index` | Navigation menu management |\n| `Admin/Analytics/Index` | Analytics dashboard |\n| `Admin/Search/Settings` | Search settings |\n| `Admin/Apps/Index` | App directory |\n| `Admin/Apps/Show` | Installed app detail |\n| `Admin/Developers/Index` | API token and webhook management |\n\n### Livewire Components - Storefront\n\n| Name | Purpose |\n|------|---------|\n| `Storefront/Home` | Storefront home page |\n| `Storefront/Collections/Index` | All collections grid |\n| `Storefront/Collections/Show` | Collection product grid |\n| `Storefront/Products/Show` | Product detail page |\n| `Storefront/Cart/Show` | Full cart page |\n| `Storefront/CartDrawer` | Slide-out cart drawer |\n| `Storefront/Search/Index` | Search results page |\n| `Storefront/Search/Modal` | Search autocomplete modal |\n| `Storefront/Pages/Show` | CMS page renderer |\n| `Storefront/Checkout/Show` | Multi-step checkout |\n| `Storefront/Checkout/Confirmation` | Order confirmation |\n| `Storefront/Account/Auth/Login` | Customer login |\n| `Storefront/Account/Auth/Register` | Customer registration |\n| `Storefront/Account/Dashboard` | Customer dashboard |\n| `Storefront/Account/Orders/Index` | Customer order history |\n| `Storefront/Account/Orders/Show` | Customer order detail |\n| `Storefront/Account/Addresses/Index` | Customer address management |\n\n### Middleware\n\n| Name | Purpose |\n|------|---------|\n| `ResolveStore` | Resolves current store from hostname or session |\n| `CheckStoreRole` | Validates user has required store role |\n| `CustomerAuthenticate` | Customer guard authentication |\n\n### Policies\n\n| Name | Model |\n|------|-------|\n| `ProductPolicy` | Product |\n| `OrderPolicy` | Order |\n| `CollectionPolicy` | Collection |\n| `DiscountPolicy` | Discount |\n| `CustomerPolicy` | Customer |\n| `StorePolicy` | Store |\n| `PagePolicy` | Page |\n| `ThemePolicy` | Theme |\n| `FulfillmentPolicy` | Fulfillment |\n| `RefundPolicy` | Refund |\n\n### Form Requests\n\n| Name | Purpose |\n|------|---------|\n| `StoreProductRequest` | Validate product creation |\n| `UpdateProductRequest` | Validate product update |\n| `StoreCollectionRequest` | Validate collection creation |\n| `UpdateCollectionRequest` | Validate collection update |\n| `StoreDiscountRequest` | Validate discount creation |\n| `UpdateDiscountRequest` | Validate discount update |\n| `SetCheckoutAddressRequest` | Validate checkout address |\n| `SetCheckoutShippingRequest` | Validate checkout shipping selection |\n| `CreateFulfillmentRequest` | Validate fulfillment creation |\n| `CreateRefundRequest` | Validate refund creation |\n| `StorePageRequest` | Validate page creation |\n| `UpdatePageRequest` | Validate page update |\n| `RegisterCustomerRequest` | Validate customer registration |\n| `StoreShippingZoneRequest` | Validate shipping zone creation |\n| `StoreShippingRateRequest` | Validate shipping rate creation |\n| `UpdateTaxSettingsRequest` | Validate tax settings update |\n| `StoreCustomerAddressRequest` | Validate customer address creation |\n| `UpdateCustomerAddressRequest` | Validate customer address update |\n\n### Jobs\n\n| Name | Purpose |\n|------|---------|\n| `ProcessMediaUpload` | Resize images, update media status |\n| `DeliverWebhook` | HTTP POST webhook with retry logic |\n| `AggregateAnalytics` | Daily analytics aggregation |\n| `CleanupAbandonedCarts` | Mark old active carts as abandoned |\n| `ExpireAbandonedCheckouts` | Expire timed-out checkouts, release inventory |\n\n### Events\n\n| Name | Purpose |\n|------|---------|\n| `OrderCreated` | Dispatched when order is created |\n| `OrderPaid` | Dispatched when payment is captured |\n| `OrderFulfilled` | Dispatched when all lines fulfilled |\n| `OrderCancelled` | Dispatched when order is cancelled |\n| `OrderRefunded` | Dispatched when refund is processed |\n| `CheckoutCompleted` | Dispatched when checkout completes |\n| `CheckoutAddressed` | Dispatched when address is set |\n| `CheckoutShippingSelected` | Dispatched when shipping is selected |\n| `ProductStatusChanged` | Dispatched when product status transitions |\n| `CartUpdated` | Dispatched when cart is mutated |\n\n### Tests\n\n**Unit tests to create (6 files):**\n\n| Name | Purpose |\n|------|---------|\n| `PricingEngineTest` | Pricing pipeline unit tests |\n| `DiscountCalculatorTest` | Discount validation and calculation unit tests |\n| `TaxCalculatorTest` | Tax calculation unit tests |\n| `ShippingCalculatorTest` | Shipping rate calculation unit tests |\n| `CartVersionTest` | Cart versioning unit tests |\n| `HandleGeneratorTest` | Slug generation unit tests |\n\n**Feature tests to create (28 files):**\n\n| Name | Purpose |\n|------|---------|\n| `Tenancy/TenantResolutionTest` | Tenant resolution feature tests |\n| `Tenancy/StoreIsolationTest` | Store isolation feature tests |\n| `Auth/AdminAuthTest` | Admin authentication feature tests |\n| `Auth/CustomerAuthTest` | Customer authentication feature tests |\n| `Auth/SanctumTokenTest` | API token feature tests |\n| `Products/ProductCrudTest` | Product CRUD feature tests |\n| `Products/VariantTest` | Variant management feature tests |\n| `Products/InventoryTest` | Inventory management feature tests |\n| `Products/CollectionTest` | Collection feature tests |\n| `Products/MediaUploadTest` | Media upload feature tests |\n| `Cart/CartServiceTest` | Cart service feature tests |\n| `Cart/CartApiTest` | Cart API feature tests |\n| `Checkout/CheckoutFlowTest` | Checkout flow feature tests |\n| `Checkout/CheckoutStateTest` | Checkout state machine feature tests |\n| `Checkout/PricingIntegrationTest` | Pricing integration feature tests |\n| `Checkout/DiscountTest` | Checkout discount feature tests |\n| `Checkout/ShippingTest` | Checkout shipping feature tests |\n| `Checkout/TaxTest` | Checkout tax feature tests |\n| `Orders/OrderCreationTest` | Order creation feature tests |\n| `Orders/RefundTest` | Refund feature tests |\n| `Orders/FulfillmentTest` | Fulfillment feature tests |\n| `Payments/MockPaymentProviderTest` | Mock PSP charge/decline feature tests |\n| `Payments/PaymentServiceTest` | Payment service feature tests |\n| `Payments/BankTransferConfirmationTest` | Bank transfer confirmation and auto-cancel tests |\n| `Customers/CustomerAccountTest` | Customer account feature tests |\n| `Customers/AddressManagementTest` | Address management feature tests |\n| `Admin/DashboardTest` | Admin dashboard feature tests |\n| `Admin/ProductManagementTest` | Admin product management feature tests |\n| `Admin/OrderManagementTest` | Admin order management feature tests |\n| `Admin/DiscountManagementTest` | Admin discount management feature tests |\n| `Admin/SettingsTest` | Admin settings feature tests |\n| `Search/SearchTest` | Search feature tests |\n| `Search/AutocompleteTest` | Autocomplete feature tests |\n| `Analytics/EventIngestionTest` | Analytics event ingestion feature tests |\n| `Analytics/AggregationTest` | Analytics aggregation feature tests |\n| `Webhooks/WebhookDeliveryTest` | Webhook delivery feature tests |\n| `Webhooks/WebhookSignatureTest` | Webhook signature feature tests |\n| `Api/StorefrontCartApiTest` | Storefront cart API feature tests |\n| `Api/StorefrontCheckoutApiTest` | Storefront checkout API feature tests |\n| `Api/AdminProductApiTest` | Admin product API feature tests |\n| `Api/AdminOrderApiTest` | Admin order API feature tests |\n\n---\n\n## 5. Config File Changes\n\n| Config File | Change | Value | Purpose |\n|-------------|--------|-------|---------|\n| `config/database.php` | SQLite pragmas | WAL, foreign keys, busy_timeout 5000, synchronous normal | Optimized SQLite configuration |\n| `config/auth.php` | Customer guard | Add customer guard, customer provider, customer password broker | Customer storefront auth |\n| `config/session.php` | Driver | File driver, lifetime 120 | Session configuration |\n| `config/cache.php` | Driver | File driver | Cache configuration |\n| `config/queue.php` | Driver | Sync driver | Queue configuration |\n| `config/filesystems.php` | Public disk | Media storage configuration | Public disk for media |\n| `config/logging.php` | JSON channel | Structured JSON channel | Structured logging |\n\n### bootstrap/app.php Changes\n\n- Register middleware aliases: `store.resolve`, `role.check`, `auth:customer`\n- Register middleware groups for `storefront` and `admin` route groups\n- Configure rate limiters: `login` (5/min per IP), `api.admin` (60/min per token), `api.storefront` (120/min per IP), `checkout` (10/min per session), `search` (30/min per IP), `analytics` (60/min per IP), `webhooks` (100/min per IP)\n- Configure exception handling\n\n### Routes Files\n\n| File | Contents |\n|------|----------|\n| `routes/web.php` | Admin auth routes, admin routes (prefix `/admin`), storefront routes, checkout routes, customer account routes |\n| `routes/api.php` | Storefront API (prefix `/api/storefront/v1`), Admin API (prefix `/api/admin/v1`), Webhook receiver routes |\n| `routes/console.php` | Scheduled jobs: `CleanupAbandonedCarts` daily, `ExpireAbandonedCheckouts` every 15 minutes, `AggregateAnalytics` daily, `CancelUnpaidBankTransferOrders` daily |\n\n### Service Providers\n\n**AppServiceProvider::boot() responsibilities:**\n- Bind services to container (PaymentProvider, CartService, PricingEngine, etc.)\n- Register rate limiters\n- Register global scopes\n- Register model observers (ProductObserver for FTS5 sync)\n\n### Services Directory\n\n| Service | Responsibility |\n|---------|---------------|\n| `CartService` | Cart CRUD, line management, version control, session binding |\n| `CheckoutService` | State machine, transitions, address/shipping/payment coordination |\n| `PricingEngine` | Deterministic pricing pipeline: subtotal -> discount -> shipping -> tax -> total |\n| `DiscountService` | Discount validation, amount calculation, line allocation |\n| `ShippingCalculator` | Zone matching, rate calculation |\n| `TaxCalculator` | Tax calculation (exclusive/inclusive), rate lookup |\n| `InventoryService` | Reserve, release, commit, restock operations |\n| `ProductService` | Product CRUD, status transitions |\n| `VariantMatrixService` | Cartesian product generation, variant lifecycle |\n| `OrderService` | Order creation from checkout, numbering, inventory commit |\n| `RefundService` | Refund creation, provider API, inventory restock |\n| `FulfillmentService` | Fulfillment CRUD, tracking, status management |\n| `NavigationService` | Menu tree building, URL resolution, caching |\n| `SearchService` | FTS5 index management, query execution, autocomplete |\n| `AnalyticsService` | Event tracking, daily aggregation |\n| `WebhookService` | Event dispatch, HMAC signing, delivery management |\n| `Payments\\MockPaymentProvider` | In-process mock PSP: credit card (magic numbers), PayPal, bank transfer |\n\n---\n\n## 6. File Count Estimate\n\n| Category | Estimated Files |\n|----------|-----------------|\n| Migrations | 28-32 |\n| Models | 32-36 |\n| Livewire Components (Admin) | 28-30 |\n| Livewire Components (Storefront) | 15-17 |\n| Blade Views (Admin) | 28-30 |\n| Blade Views (Storefront) | 18-22 |\n| Blade Components (Storefront) | 8-10 |\n| Services | 14-16 |\n| Policies | 10 |\n| Form Requests | 18-20 |\n| Jobs | 5 |\n| Events | 10 |\n| Middleware | 3 |\n| Enums | 18-20 |\n| Factories | 25-28 |\n| Seeders | 20-22 |\n| Config changes | 6-7 |\n| Routes | 3 |\n| Value Objects | 3-4 |\n| Contracts/Interfaces | 2-3 |\n| Traits/Concerns | 2-3 |\n| Scopes | 1 |\n| Observers | 1 |\n| Support classes | 2-3 |\n| Tests (Unit) | 6 |\n| Tests (Feature) | 28-30 |\n| Tests (Browser) | 18 files (143 tests) |\n| CSS/JS | 3-5 |\n| **Total** | **~320-380 files** |\n\n---\n\n## 7. Verification Checklist\n\n1. Install Composer dependencies and confirm no errors\n2. Install npm dependencies and run the Vite build; confirm it succeeds\n3. Run a fresh migration on a clean SQLite database and confirm all migrations complete without errors\n4. Run all seeders and confirm demo data is created without errors\n5. Run all unit tests and confirm they pass\n6. Run all feature tests and confirm they pass\n7. Run all browser tests and confirm they pass (requires browser driver)\n8. Run the code style formatter/checker and confirm code conforms to project standards\n9. Manual smoke: visit the storefront domain and confirm it renders with products\n10. Manual smoke: visit the admin login page and confirm it renders; authenticate as the demo admin user\n11. Manual smoke: add a product to the cart, proceed through the full checkout flow\n12. Manual smoke: in admin, create a product, manage an order, and process a fulfillment\n13. List all registered routes and confirm they are correct with no duplicates\n14. Run the config cache command and confirm it works (verifying no `env()` calls outside config files)\n\n---\n\n## 8. Seeder Execution Order\n\nSeeders must run in dependency order. The `DatabaseSeeder` should call them sequentially in this order:\n\n1. `OrganizationSeeder`\n2. `StoreSeeder`\n3. `StoreDomainSeeder`\n4. `UserSeeder`\n5. `StoreUserSeeder`\n6. `StoreSettingsSeeder`\n7. `TaxSettingsSeeder`\n8. `ShippingSeeder` - creates shipping zones and rates\n9. `CollectionSeeder` - creates collections (before products so products can be linked)\n10. `ProductSeeder` - creates products with options, variants, inventory, media, and collection associations\n11. `DiscountSeeder`\n12. `CustomerSeeder` - creates customers and their addresses\n13. `OrderSeeder` - creates sample orders with lines, payments, fulfillments\n14. `ThemeSeeder` - creates themes with files and settings\n15. `PageSeeder`\n16. `NavigationSeeder` - creates navigation menus and items\n17. `AnalyticsSeeder`\n18. `SearchSettingsSeeder`\n\nSee spec `07-SEEDERS-AND-TEST-DATA.md` for detailed seeder data definitions.\n","numLines":505,"startLine":1562,"totalLines":2066}},"sourceToolAssistantUUID":"6853d826-ed9f-460e-aa91-88117ec9834e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"215b14d4-ba7f-4e89-9301-d47f5ef9ad65","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"file-history-snapshot","messageId":"5753f79b-e6d1-40ce-ae8a-47a4bcd9b677","snapshot":{"messageId":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","trackedFileBackups":{"specs/progress.md":{"backupFileName":null,"version":1,"backupTime":"2026-06-09T18:16:23.629Z"}},"timestamp":"2026-06-09T18:14:31.432Z"},"isSnapshotUpdate":true}
{"parentUuid":"215b14d4-ba7f-4e89-9301-d47f5ef9ad65","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016KSHDaUwHHcGANo7R2pqWj","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":14050,"cache_read_input_tokens":76055,"output_tokens":3435,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":14050,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3435,"cache_read_input_tokens":76055,"cache_creation_input_tokens":14050,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":14050},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9DWj87hKTvRe8BHUzQ","type":"assistant","uuid":"134097fa-6fef-4991-9ce7-770025fb1568","timestamp":"2026-06-09T18:16:16.281Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"134097fa-6fef-4991-9ce7-770025fb1568","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016KSHDaUwHHcGANo7R2pqWj","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISpwYKYwgOGAIqQO1X0M/il9sKQT6d6gXL0onBQLUwuRfuYIVZyENEAMO5/+YuP88Eylq1TTWwWmcY3xG2UvF7d8owWkHQvqKjPi8yDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMn9cRX/rAtyUyTshUGgwiCyuqzvZJCc63rAciMKbCBYWAiW3VcVpiK0ubAajCCgRsJPP3eENuMyQAuD696eHJkJJprHOgmbH0cOnWEirxBJHd5wn7nRzsVPF+LXpTNmRwLyOMRIHjPxEYNYuhiHkJXs1PE7fdr27mQiSQFI/qOhRHjEcm0wA+HoU9JB4cTcBJWSjAPYo0KVIpEmV20ajSosD/ZEd5QwhHz4ay9YBLGfHXhjRdBJhGTAHthwHPCWDFEtNDG4RotuUVDBz6AxfZJWPxaHHXqNB2TN7fAbGBEP+J4pq0E4ppQc8V4owLjR3ktrxCCEvIV587B815+EI9OdrcUqcv97x4Gbq1OdjSyhJELXp5R9+IsZsvJpB/5iNDB60mBIt06J1KDWnKzZDl8qyYp9BriCR29a94g8EAqzJ1zO2RxXvLLCdJs6t7S0evUmwIp1AmMZ1SsQgF8NA/9Fft3Yl05/dqKvoSehCuPTy6uEh+B7vO5HTihcr3vIQ4grspyc0xeDEUsZHSUnBEGputUxVRCEoW9VHg5IkQtWg6vl2QPhDP+QHc7DyQaMcnHAVdYqb4IgV9SfMDf/gtuUsc3Es9ZCU2OhgYw0K5eSUqoIXkkLwxAph0djrpJfDHKqdkzDLzLtEyyba0all19wWPpR1Ogp/93CBNDm3TSz+UvMLT5oG0RqZ/M9SrjDQREH+fnKIz3Fgcoq2CgAqHxp6suthlwm2I3s/P9ecNs3yQY9u40c9fA1cv4D7cfE+APoyokuNvGftM3OQPlOtz+WOEq0zr3c1cPqG+zkWXyMpQuBVJlU1Q8WK6V0JcXbtM9zjF9yszbY/JR3w4waT9h20+cS7turbfjDt1WngV83bbPEwq7FA+3ojxECisRJW0GsXZdF/KZAB++mEtE/hagX4Rz9KS+uNPH8zo0vnoZO0YAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":14050,"cache_read_input_tokens":76055,"output_tokens":3435,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":14050,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3435,"cache_read_input_tokens":76055,"cache_creation_input_tokens":14050,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":14050},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9DWj87hKTvRe8BHUzQ","type":"assistant","uuid":"68133d3d-acfa-48e1-9e15-a34cd82da262","timestamp":"2026-06-09T18:16:16.281Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"68133d3d-acfa-48e1-9e15-a34cd82da262","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016KSHDaUwHHcGANo7R2pqWj","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TAKNNATicwa1bVFShqmrDr","name":"Write","input":{"file_path":"/Users/fabianwesner/Herd/shop/specs/progress.md","content":"# Implementation Progress\n\nTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n\n| Phase | Scope | Status | Tests |\n|-------|-------|--------|-------|\n| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | in progress | Tenancy/*, Auth/AdminAuthTest, Auth/CustomerAuthTest (cart merge deferred to P4) |\n| 2 | Catalog: products, options, variants, inventory, collections, media | pending | Products/* |\n| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |\n| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |\n| 6 | Customer accounts | pending | Customers/*, finish CustomerAuthTest |\n| 7 | Admin panel (all sections) | pending | Admin/* |\n| API | Spec 02 REST APIs + Sanctum | pending | Api/*, Auth/SanctumTokenTest, Cart/CartApiTest |\n| 8 | Search (FTS5) | pending | Search/* |\n| 9 | Analytics | pending | Analytics/* |\n| 10 | Apps & webhooks | pending | Webhooks/* |\n| 11 | Polish, seeders (spec 07), error pages, dark mode, a11y | pending | - |\n| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | pending | Browser/* |\n\n## Log\n\n- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":14050,"cache_read_input_tokens":76055,"output_tokens":3435,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":14050,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3435,"cache_read_input_tokens":76055,"cache_creation_input_tokens":14050,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":14050},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9DWj87hKTvRe8BHUzQ","type":"assistant","uuid":"5753f79b-e6d1-40ce-ae8a-47a4bcd9b677","timestamp":"2026-06-09T18:16:23.617Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5753f79b-e6d1-40ce-ae8a-47a4bcd9b677","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TAKNNATicwa1bVFShqmrDr","type":"tool_result","content":"File created successfully at: /Users/fabianwesner/Herd/shop/specs/progress.md (file state is current in your context — no need to Read it back)"}]},"uuid":"25adf8c9-b1e9-4e3f-a4b1-106177971040","timestamp":"2026-06-09T18:16:23.644Z","toolUseResult":{"type":"create","filePath":"/Users/fabianwesner/Herd/shop/specs/progress.md","content":"# Implementation Progress\n\nTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n\n| Phase | Scope | Status | Tests |\n|-------|-------|--------|-------|\n| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | in progress | Tenancy/*, Auth/AdminAuthTest, Auth/CustomerAuthTest (cart merge deferred to P4) |\n| 2 | Catalog: products, options, variants, inventory, collections, media | pending | Products/* |\n| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |\n| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |\n| 6 | Customer accounts | pending | Customers/*, finish CustomerAuthTest |\n| 7 | Admin panel (all sections) | pending | Admin/* |\n| API | Spec 02 REST APIs + Sanctum | pending | Api/*, Auth/SanctumTokenTest, Cart/CartApiTest |\n| 8 | Search (FTS5) | pending | Search/* |\n| 9 | Analytics | pending | Analytics/* |\n| 10 | Apps & webhooks | pending | Webhooks/* |\n| 11 | Polish, seeders (spec 07), error pages, dark mode, a11y | pending | - |\n| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | pending | Browser/* |\n\n## Log\n\n- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n","structuredPatch":[],"originalFile":null,"userModified":false},"sourceToolAssistantUUID":"5753f79b-e6d1-40ce-ae8a-47a4bcd9b677","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"25adf8c9-b1e9-4e3f-a4b1-106177971040","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VtxB93JDZFfD4vwcgaxNwt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3489,"cache_read_input_tokens":90105,"output_tokens":3392,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3489,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3392,"cache_read_input_tokens":90105,"cache_creation_input_tokens":3489,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3489},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9Gx8B2ApH82YnijN5W","type":"assistant","uuid":"3e34949f-7ae8-4981-bf48-76f6fc785517","timestamp":"2026-06-09T18:16:35.689Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3e34949f-7ae8-4981-bf48-76f6fc785517","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VtxB93JDZFfD4vwcgaxNwt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISpwIKYwgOGAIqQAHvYyrXoGOk1cKrFWFgeLj7l9hWqAau0XQyMXccttlYDabyYMoNofi9Zp0jsDhgEa3eF1IshWzv8R8bL3WXTTMyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMhpP1FQ8NcEnMPIa3GgzSB3VdPC5VQdPmC7EiMNikW/91RKC/pfovX7rhxQ5KsKye4Yu0jwUPcHRKlHB7KPrcUlfwBR4VJzpWoDCWBSpyr35p9cYnRYn4DAVt4Ny9dXRvdh8oPGRwBNPArfBMRUND+lYz5boNVumBZvFPoCPFbPy03nyFFwU/xfj9danZtZYc/+fDWcry9Lp/aUSDjh9+JL+oDmKWeNIsbtBEe5uSzNc5USOI10hcuJ2giUTyqScDGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3489,"cache_read_input_tokens":90105,"output_tokens":3392,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3489,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3392,"cache_read_input_tokens":90105,"cache_creation_input_tokens":3489,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3489},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9Gx8B2ApH82YnijN5W","type":"assistant","uuid":"09a29ae2-0e1e-499e-be03-6dbb579cc54f","timestamp":"2026-06-09T18:16:35.690Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"09a29ae2-0e1e-499e-be03-6dbb579cc54f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VtxB93JDZFfD4vwcgaxNwt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Vi9eTA45my2bWfHW6RBRMs","name":"Agent","input":{"description":"Implement Phase 1 Foundation","name":"phase1-foundation","prompt":"You are implementing Phase 1 (Foundation) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). The repo is a fresh Livewire starter kit with Fortify. Work on the current branch; never create branches or commit (the orchestrator commits).\n\nREQUIRED READING (read these fully before writing code):\n- specs/09-IMPLEMENTATION-ROADMAP.md — Section \"Phase 1: Foundation\" (lines ~74-243), plus test spec sections for tests/Feature/Tenancy/TenantResolutionTest.php, StoreIsolationTest.php, Auth/AdminAuthTest.php, Auth/CustomerAuthTest.php (lines ~1119-1199), and Section 5 \"Config File Changes\" (lines ~1928-1984).\n- specs/01-DATABASE-SCHEMA.md — sections for organizations, stores, store_domains, users, store_users, store_settings tables (exact columns/constraints).\n- specs/06-AUTH-AND-SECURITY.md — full file (admin auth, customer auth, guards, rate limiting, policies, permission matrix).\n\nDELIVERABLES (per roadmap Phase 1, steps 1.1-1.8):\n1. Config: .env + config changes (sqlite WAL/foreign keys/busy_timeout pragmas in config/database.php, file cache/session, sync queue, log mail, customer guard + customers provider + customers password broker in config/auth.php, structured JSON log channel).\n2. Migrations batch 1-2: organizations, stores, store_domains, modify users (add status, last_login_at; rename password column to password_hash per spec 01/06 — adapt Fortify/starter code accordingly), store_users pivot, store_settings. Money as INTEGER cents, enums as TEXT with CHECK constraints.\n3. Models: Organization, Store, StoreDomain, StoreUser (custom Pivot), StoreSettings + relationships, casts() methods, factories with meaningful defaults, seeders (OrganizationSeeder, StoreSeeder, StoreDomainSeeder, UserSeeder, StoreUserSeeder, StoreSettingsSeeder — wire into DatabaseSeeder; consult specs/07-SEEDERS-AND-TEST-DATA.md for the demo data definitions for these tables). IMPORTANT: the demo store MUST have a storefront store_domain with hostname `shop.test` (the Herd-served hostname) so the locally served site resolves the tenant; add spec-defined domains as additional rows.\n4. Enums: StoreStatus, StoreUserRole, StoreDomainType (TitleCase cases, string-backed lowercase values per spec).\n5. Middleware App\\Http\\Middleware\\ResolveStore: storefront = hostname → store_domains lookup with 5-min cache (key `store_domain:{hostname}`), binds Store singleton as container instance `current_store`; admin = session `current_store_id` + verify store_users membership (403 if not member); 404 unknown hostname; 503 suspended store on storefront. Register `storefront` and `admin` middleware groups + aliases in bootstrap/app.php.\n6. BelongsToStore trait (app/Models/Concerns) + StoreScope (app/Models/Scopes): global scope on store_id from `current_store`, auto-set store_id on creating.\n7. Auth: Admin Livewire Login at /admin/login (guard web, rate limit `login` 5/min/IP registered in AppServiceProvider, session regeneration, last_login_at update, remember me, generic \"Invalid credentials\" error, logout POST /admin/logout invalidating session). Customer guard `customer` + CustomerUserProvider scoping by current store's store_id; Customer model stub may be needed for the guard config (full customer features come in later phases — create the Customer model + customers table migration ONLY if spec 01 places it in batch 1; otherwise configure the guard to be wired when the model lands in Phase 5; check spec 01 and decide — if in doubt create the customers + customer_addresses migrations/models now per spec 01 so the guard works and CustomerAuthTest can pass). Customer login/register Livewire components under Storefront\\Account\\Auth with views (storefront layout can be minimal for now; Phase 3 builds the real layout).\n8. Policies: ProductPolicy, OrderPolicy, CollectionPolicy, DiscountPolicy, CustomerPolicy, StorePolicy, PagePolicy, ThemePolicy, FulfillmentPolicy, RefundPolicy implementing the permission matrix from the roadmap (role via User::roleForStore(Store): ?StoreUserRole). Policies for models that don't exist yet should still be created referencing the model class names that WILL exist; create empty model stubs only if needed to keep things working — prefer deferring policy registration for not-yet-existing models if it breaks; use judgment, but the permission matrix logic must be centralized (e.g., a HasStorePermissions concern) so later phases reuse it.\n9. Starter kit adaptation: the spec replaces starter auth/dashboard with /admin and storefront flows. Adapt Fortify to the password_hash column (getAuthPasswordName). Remove or adapt starter routes/views/tests that conflict with the spec (e.g., tests/Feature/Auth/*, Settings/*, DashboardTest from the starter kit may be deleted/replaced — this is approved). Keep two-factor columns/features only if spec 06 requires them.\n10. Pest helpers in tests/Pest.php: createStoreContext() (creates Organization, Store, StoreDomain, User with Owner role, binds current_store container instance), actingAsAdmin(User $user) (auth + session current_store_id), actingAsCustomer(Customer $customer) (customer guard).\n11. Tests (write EXACTLY the test cases from the roadmap tables): tests/Feature/Tenancy/TenantResolutionTest.php, tests/Feature/Tenancy/StoreIsolationTest.php (StoreIsolation tests reference Product/Order models which don't exist yet — implement the store-scoping tests using a real scoped model; if Product/Order don't exist yet, write the tests against a minimal approach: SKIP是not allowed. Better: write StoreIsolationTest now using Product, and create a minimal Product model + products migration per spec 01 ONLY if that's cleaner — NO: Phase 2 owns products. Instead write StoreIsolationTest with a dedicated test-only scoped model OR defer the Product/Order-specific cases by writing them now but marked ->todo(). Decision: write the file with the Product/Order cases as ->todo('Phase 2/5') and fully implement the cases that can run (auto store_id, scope removal) using whichever store-scoped table exists; Phase 2/5 agents will un-todo them), tests/Feature/Auth/AdminAuthTest.php (all 10 cases), tests/Feature/Auth/CustomerAuthTest.php (all cases EXCEPT the guest-cart merge case — add it as ->todo('Phase 4')).\n\nQUALITY BARS:\n- php artisan migrate:fresh --seed must succeed.\n- All new tests pass: php artisan test --compact (full suite green; starter tests removed/adapted as needed).\n- vendor/bin/pint --dirty --format agent clean.\n- Explicit return types, casts() methods, PHP 8.4 style, curly braces always, no em-dashes anywhere.\n- Use `php artisan make:*` generators with --no-interaction.\n\nYour final message: list of files created/changed (grouped), key decisions made (especially around Fortify/password_hash, customer guard timing, starter kit removals), seeded demo credentials, and the full test run result summary."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3489,"cache_read_input_tokens":90105,"output_tokens":3392,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3489,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3392,"cache_read_input_tokens":90105,"cache_creation_input_tokens":3489,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3489},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbt9Gx8B2ApH82YnijN5W","type":"assistant","uuid":"5f6c829c-1eb5-4dcc-8f12-68677f9e516b","timestamp":"2026-06-09T18:17:10.492Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5f6c829c-1eb5-4dcc-8f12-68677f9e516b","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Vi9eTA45my2bWfHW6RBRMs","type":"tool_result","content":[{"type":"text","text":"Phase 1 (Foundation) is complete. Full suite green, Pint clean, `migrate:fresh --seed` succeeds, and the live Herd site at http://shop.test resolves the demo tenant (\"Acme Fashion\") with working /admin/login and /account/login pages.\n\n## Files created/changed\n\n**Config / bootstrap**\n- `config/database.php` (SQLite: WAL, busy_timeout 5000, synchronous normal, FKs on), `config/auth.php` (customer guard, customers provider with custom `customer-eloquent` driver, customers password broker on `customer_password_reset_tokens`), `config/logging.php` (`structured` daily JSON channel)\n- `bootstrap/app.php`: `storefront` and `admin` middleware groups (`ResolveStore:storefront` / `ResolveStore:admin`), `store.resolve` alias, `redirectGuestsTo` (admin paths to /admin/login, others to /account/login), `redirectUsersTo('/admin')`\n- `.env` already had sqlite/file cache/file session/sync queue/log mail; unchanged\n\n**Migrations** (all enums via `enum()` which compiles to TEXT + CHECK on SQLite; booleans as integer; money convention noted for later phases)\n- Modified `0001_01_01_000000_create_users_table.php`: `password` renamed to `password_hash`, added `status` (active/disabled + index), `last_login_at`; two-factor migration retargeted to `after('password_hash')`\n- New: `organizations`, `stores`, `store_domains` (no updated_at), `store_users` (composite PK + role), `store_settings` (store_id PK), `customers` (unique store_id+email), `customer_addresses` (no timestamps), `customer_password_reset_tokens` (store_id+email PK)\n\n**Enums**: `App\\Enums\\StoreStatus`, `StoreUserRole`, `StoreDomainType` (TitleCase cases, lowercase string values)\n\n**Models**: `Organization`, `Store`, `StoreDomain`, `StoreUser` (custom Pivot, role cast), `StoreSettings` (settings_json array cast), `Customer`, `CustomerAddress`; `User` updated (`password_hash` hashed cast, `getAuthPasswordName()`/`getAuthPassword()`, `stores()` belongsToMany, `roleForStore(Store): ?StoreUserRole`). Plus `App\\Models\\Concerns\\BelongsToStore` and `App\\Models\\Scopes\\StoreScope` (scopes on container-bound `current_store`, auto-sets store_id on creating)\n\n**Tenancy/Auth plumbing**: `App\\Http\\Middleware\\ResolveStore` (hostname lookup with 5-min cache key `store_domain:{hostname}`, 404 unknown host, 503 suspended storefront, binds `current_store` instance + shares `currentStore` with views; admin context reads session `current_store_id`, verifies store_users membership, 403 otherwise), `App\\Auth\\CustomerUserProvider` (injects store_id into `retrieveByCredentials` and `retrieveById`, disables remember tokens)\n\n**Controllers/Livewire/views**: `Admin\\Auth\\LoginController` (store/destroy), `Storefront\\Auth\\CustomerLoginController`, `CustomerRegisterController`; Livewire pages `Admin\\Auth\\Login`, `Storefront\\Account\\Auth\\Login` and `Register` with Flux-based views; minimal `layouts/storefront`, `storefront/home`, `storefront/account/index`, `admin/dashboard` views; `routes/web.php` rewritten\n\n**Authorization**: `App\\Traits\\ChecksStoreRole` (getStoreRole/hasRole/isOwnerOrAdmin/isOwnerAdminOrStaff/isAnyRole/currentStoreId, per spec 06) + 10 policies (Product, Order, Collection, Discount, Customer, Store, Page, Theme, Fulfillment, Refund) implementing the permission matrix\n\n**Factories/Seeders**: Organization/Store(suspended)/StoreDomain(admin,api,secondary)/StoreSettings/Customer(guest)/CustomerAddress factories; UserFactory adapted (password_hash, status, last_login_at, disabled state); seeders Organization, Store, StoreDomain, User, StoreUser, StoreSettings wired into DatabaseSeeder, all idempotent (updateOrCreate)\n\n**Tests**: `tests/Pest.php` (RefreshDatabase for Feature, `createStoreContext()`, `actingAsAdmin()`, `actingAsCustomer()`), `tests/Feature/Tenancy/TenantResolutionTest.php` (6 cases), `StoreIsolationTest.php` (Product/Order cases as todo for Phase 2/5; scoping, auto store_id, direct-ID block, scope removal implemented against Customer), `tests/Feature/Auth/AdminAuthTest.php` (all 10 cases), `CustomerAuthTest.php` (9 cases + cart-merge as todo Phase 4)\n\n## Key decisions\n- **Fortify**: kept installed but `Fortify::ignoreRoutes()` in `FortifyServiceProvider::register()`; spec's auth is custom (/admin/login with 429 rate limiting and generic \"Invalid credentials\", which Fortify's pipeline cannot produce). Fortify actions adapted to `password_hash`; the `hashed` cast on `password_hash` plus `getAuthPasswordName()` makes `Auth::attempt()` work. Admin login also requires `status = 'active'`. Two-factor columns/trait retained per spec 01. Admin password reset flow deferred (no Phase 1 test coverage); `customers` broker config and token table are in place for Phase 5.\n- **Customer guard now**: created `customers`/`customer_addresses` migrations + models in Phase 1 (spec 01 defines them; needed for the guard and CustomerAuthTest). Customers have no `remember_token` column, so `getRememberTokenName()` returns `''` and the provider's `retrieveByToken()` returns null.\n- **POST endpoints**: roadmap tests POST directly to /admin/login etc., so Livewire components render the forms (classic POST + @csrf) and thin controllers handle submission under `throttle:login` (5/min/IP, registered in AppServiceProvider), giving real 429s.\n- **Starter kit removals** (approved): starter auth/settings/dashboard tests, Settings Livewire components + views, Fortify auth views, dashboard/welcome views, routes/settings.php. Starter app/auth layouts kept for later admin phases.\n- **Seeded domains** include the required `shop.test` storefront row for Acme Fashion (Herd hostname) alongside spec domains acme-fashion.test, admin.acme-fashion.test, acme-electronics.test.\n\n## Demo credentials (all password: `password`)\nadmin@acme.test (Fashion owner), manager@acme.test (Fashion admin), staff@acme.test (Fashion staff), support@acme.test (Fashion support), admin2@acme.test (Electronics owner)\n\n## Test results\n`php artisan test --compact`: **30 passed, 3 todos (86 assertions)**, 0 failures. `vendor/bin/pint --dirty --format agent`: pass. `php artisan migrate:fresh --seed`: success. Live smoke check: http://shop.test/ resolves Acme Fashion (200), /admin/login and /account/login both 200. Note: the sandbox network allowlist blocked curl to shop.test; I ran that one smoke check unsandboxed (manageable via /sandbox)."},{"type":"text","text":"agentId: aee658067d5c9624e (use SendMessage with to: 'aee658067d5c9624e' to continue this agent)\n<usage>subagent_tokens: 184970\ntool_uses: 137\nduration_ms: 1078685</usage>"}]}]},"uuid":"9b4f3d59-3c35-4166-9d0f-0559b1279a3d","timestamp":"2026-06-09T18:35:09.182Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 1 (Foundation) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). The repo is a fresh Livewire starter kit with Fortify. Work on the current branch; never create branches or commit (the orchestrator commits).\n\nREQUIRED READING (read these fully before writing code):\n- specs/09-IMPLEMENTATION-ROADMAP.md — Section \"Phase 1: Foundation\" (lines ~74-243), plus test spec sections for tests/Feature/Tenancy/TenantResolutionTest.php, StoreIsolationTest.php, Auth/AdminAuthTest.php, Auth/CustomerAuthTest.php (lines ~1119-1199), and Section 5 \"Config File Changes\" (lines ~1928-1984).\n- specs/01-DATABASE-SCHEMA.md — sections for organizations, stores, store_domains, users, store_users, store_settings tables (exact columns/constraints).\n- specs/06-AUTH-AND-SECURITY.md — full file (admin auth, customer auth, guards, rate limiting, policies, permission matrix).\n\nDELIVERABLES (per roadmap Phase 1, steps 1.1-1.8):\n1. Config: .env + config changes (sqlite WAL/foreign keys/busy_timeout pragmas in config/database.php, file cache/session, sync queue, log mail, customer guard + customers provider + customers password broker in config/auth.php, structured JSON log channel).\n2. Migrations batch 1-2: organizations, stores, store_domains, modify users (add status, last_login_at; rename password column to password_hash per spec 01/06 — adapt Fortify/starter code accordingly), store_users pivot, store_settings. Money as INTEGER cents, enums as TEXT with CHECK constraints.\n3. Models: Organization, Store, StoreDomain, StoreUser (custom Pivot), StoreSettings + relationships, casts() methods, factories with meaningful defaults, seeders (OrganizationSeeder, StoreSeeder, StoreDomainSeeder, UserSeeder, StoreUserSeeder, StoreSettingsSeeder — wire into DatabaseSeeder; consult specs/07-SEEDERS-AND-TEST-DATA.md for the demo data definitions for these tables). IMPORTANT: the demo store MUST have a storefront store_domain with hostname `shop.test` (the Herd-served hostname) so the locally served site resolves the tenant; add spec-defined domains as additional rows.\n4. Enums: StoreStatus, StoreUserRole, StoreDomainType (TitleCase cases, string-backed lowercase values per spec).\n5. Middleware App\\Http\\Middleware\\ResolveStore: storefront = hostname → store_domains lookup with 5-min cache (key `store_domain:{hostname}`), binds Store singleton as container instance `current_store`; admin = session `current_store_id` + verify store_users membership (403 if not member); 404 unknown hostname; 503 suspended store on storefront. Register `storefront` and `admin` middleware groups + aliases in bootstrap/app.php.\n6. BelongsToStore trait (app/Models/Concerns) + StoreScope (app/Models/Scopes): global scope on store_id from `current_store`, auto-set store_id on creating.\n7. Auth: Admin Livewire Login at /admin/login (guard web, rate limit `login` 5/min/IP registered in AppServiceProvider, session regeneration, last_login_at update, remember me, generic \"Invalid credentials\" error, logout POST /admin/logout invalidating session). Customer guard `customer` + CustomerUserProvider scoping by current store's store_id; Customer model stub may be needed for the guard config (full customer features come in later phases — create the Customer model + customers table migration ONLY if spec 01 places it in batch 1; otherwise configure the guard to be wired when the model lands in Phase 5; check spec 01 and decide — if in doubt create the customers + customer_addresses migrations/models now per spec 01 so the guard works and CustomerAuthTest can pass). Customer login/register Livewire components under Storefront\\Account\\Auth with views (storefront layout can be minimal for now; Phase 3 builds the real layout).\n8. Policies: ProductPolicy, OrderPolicy, CollectionPolicy, DiscountPolicy, CustomerPolicy, StorePolicy, PagePolicy, ThemePolicy, FulfillmentPolicy, RefundPolicy implementing the permission matrix from the roadmap (role via User::roleForStore(Store): ?StoreUserRole). Policies for models that don't exist yet should still be created referencing the model class names that WILL exist; create empty model stubs only if needed to keep things working — prefer deferring policy registration for not-yet-existing models if it breaks; use judgment, but the permission matrix logic must be centralized (e.g., a HasStorePermissions concern) so later phases reuse it.\n9. Starter kit adaptation: the spec replaces starter auth/dashboard with /admin and storefront flows. Adapt Fortify to the password_hash column (getAuthPasswordName). Remove or adapt starter routes/views/tests that conflict with the spec (e.g., tests/Feature/Auth/*, Settings/*, DashboardTest from the starter kit may be deleted/replaced — this is approved). Keep two-factor columns/features only if spec 06 requires them.\n10. Pest helpers in tests/Pest.php: createStoreContext() (creates Organization, Store, StoreDomain, User with Owner role, binds current_store container instance), actingAsAdmin(User $user) (auth + session current_store_id), actingAsCustomer(Customer $customer) (customer guard).\n11. Tests (write EXACTLY the test cases from the roadmap tables): tests/Feature/Tenancy/TenantResolutionTest.php, tests/Feature/Tenancy/StoreIsolationTest.php (StoreIsolation tests reference Product/Order models which don't exist yet — implement the store-scoping tests using a real scoped model; if Product/Order don't exist yet, write the tests against a minimal approach: SKIP是not allowed. Better: write StoreIsolationTest now using Product, and create a minimal Product model + products migration per spec 01 ONLY if that's cleaner — NO: Phase 2 owns products. Instead write StoreIsolationTest with a dedicated test-only scoped model OR defer the Product/Order-specific cases by writing them now but marked ->todo(). Decision: write the file with the Product/Order cases as ->todo('Phase 2/5') and fully implement the cases that can run (auto store_id, scope removal) using whichever store-scoped table exists; Phase 2/5 agents will un-todo them), tests/Feature/Auth/AdminAuthTest.php (all 10 cases), tests/Feature/Auth/CustomerAuthTest.php (all cases EXCEPT the guest-cart merge case — add it as ->todo('Phase 4')).\n\nQUALITY BARS:\n- php artisan migrate:fresh --seed must succeed.\n- All new tests pass: php artisan test --compact (full suite green; starter tests removed/adapted as needed).\n- vendor/bin/pint --dirty --format agent clean.\n- Explicit return types, casts() methods, PHP 8.4 style, curly braces always, no em-dashes anywhere.\n- Use `php artisan make:*` generators with --no-interaction.\n\nYour final message: list of files created/changed (grouped), key decisions made (especially around Fortify/password_hash, customer guard timing, starter kit removals), seeded demo credentials, and the full test run result summary.","agentId":"aee658067d5c9624e","agentType":"general-purpose","content":[{"type":"text","text":"Phase 1 (Foundation) is complete. Full suite green, Pint clean, `migrate:fresh --seed` succeeds, and the live Herd site at http://shop.test resolves the demo tenant (\"Acme Fashion\") with working /admin/login and /account/login pages.\n\n## Files created/changed\n\n**Config / bootstrap**\n- `config/database.php` (SQLite: WAL, busy_timeout 5000, synchronous normal, FKs on), `config/auth.php` (customer guard, customers provider with custom `customer-eloquent` driver, customers password broker on `customer_password_reset_tokens`), `config/logging.php` (`structured` daily JSON channel)\n- `bootstrap/app.php`: `storefront` and `admin` middleware groups (`ResolveStore:storefront` / `ResolveStore:admin`), `store.resolve` alias, `redirectGuestsTo` (admin paths to /admin/login, others to /account/login), `redirectUsersTo('/admin')`\n- `.env` already had sqlite/file cache/file session/sync queue/log mail; unchanged\n\n**Migrations** (all enums via `enum()` which compiles to TEXT + CHECK on SQLite; booleans as integer; money convention noted for later phases)\n- Modified `0001_01_01_000000_create_users_table.php`: `password` renamed to `password_hash`, added `status` (active/disabled + index), `last_login_at`; two-factor migration retargeted to `after('password_hash')`\n- New: `organizations`, `stores`, `store_domains` (no updated_at), `store_users` (composite PK + role), `store_settings` (store_id PK), `customers` (unique store_id+email), `customer_addresses` (no timestamps), `customer_password_reset_tokens` (store_id+email PK)\n\n**Enums**: `App\\Enums\\StoreStatus`, `StoreUserRole`, `StoreDomainType` (TitleCase cases, lowercase string values)\n\n**Models**: `Organization`, `Store`, `StoreDomain`, `StoreUser` (custom Pivot, role cast), `StoreSettings` (settings_json array cast), `Customer`, `CustomerAddress`; `User` updated (`password_hash` hashed cast, `getAuthPasswordName()`/`getAuthPassword()`, `stores()` belongsToMany, `roleForStore(Store): ?StoreUserRole`). Plus `App\\Models\\Concerns\\BelongsToStore` and `App\\Models\\Scopes\\StoreScope` (scopes on container-bound `current_store`, auto-sets store_id on creating)\n\n**Tenancy/Auth plumbing**: `App\\Http\\Middleware\\ResolveStore` (hostname lookup with 5-min cache key `store_domain:{hostname}`, 404 unknown host, 503 suspended storefront, binds `current_store` instance + shares `currentStore` with views; admin context reads session `current_store_id`, verifies store_users membership, 403 otherwise), `App\\Auth\\CustomerUserProvider` (injects store_id into `retrieveByCredentials` and `retrieveById`, disables remember tokens)\n\n**Controllers/Livewire/views**: `Admin\\Auth\\LoginController` (store/destroy), `Storefront\\Auth\\CustomerLoginController`, `CustomerRegisterController`; Livewire pages `Admin\\Auth\\Login`, `Storefront\\Account\\Auth\\Login` and `Register` with Flux-based views; minimal `layouts/storefront`, `storefront/home`, `storefront/account/index`, `admin/dashboard` views; `routes/web.php` rewritten\n\n**Authorization**: `App\\Traits\\ChecksStoreRole` (getStoreRole/hasRole/isOwnerOrAdmin/isOwnerAdminOrStaff/isAnyRole/currentStoreId, per spec 06) + 10 policies (Product, Order, Collection, Discount, Customer, Store, Page, Theme, Fulfillment, Refund) implementing the permission matrix\n\n**Factories/Seeders**: Organization/Store(suspended)/StoreDomain(admin,api,secondary)/StoreSettings/Customer(guest)/CustomerAddress factories; UserFactory adapted (password_hash, status, last_login_at, disabled state); seeders Organization, Store, StoreDomain, User, StoreUser, StoreSettings wired into DatabaseSeeder, all idempotent (updateOrCreate)\n\n**Tests**: `tests/Pest.php` (RefreshDatabase for Feature, `createStoreContext()`, `actingAsAdmin()`, `actingAsCustomer()`), `tests/Feature/Tenancy/TenantResolutionTest.php` (6 cases), `StoreIsolationTest.php` (Product/Order cases as todo for Phase 2/5; scoping, auto store_id, direct-ID block, scope removal implemented against Customer), `tests/Feature/Auth/AdminAuthTest.php` (all 10 cases), `CustomerAuthTest.php` (9 cases + cart-merge as todo Phase 4)\n\n## Key decisions\n- **Fortify**: kept installed but `Fortify::ignoreRoutes()` in `FortifyServiceProvider::register()`; spec's auth is custom (/admin/login with 429 rate limiting and generic \"Invalid credentials\", which Fortify's pipeline cannot produce). Fortify actions adapted to `password_hash`; the `hashed` cast on `password_hash` plus `getAuthPasswordName()` makes `Auth::attempt()` work. Admin login also requires `status = 'active'`. Two-factor columns/trait retained per spec 01. Admin password reset flow deferred (no Phase 1 test coverage); `customers` broker config and token table are in place for Phase 5.\n- **Customer guard now**: created `customers`/`customer_addresses` migrations + models in Phase 1 (spec 01 defines them; needed for the guard and CustomerAuthTest). Customers have no `remember_token` column, so `getRememberTokenName()` returns `''` and the provider's `retrieveByToken()` returns null.\n- **POST endpoints**: roadmap tests POST directly to /admin/login etc., so Livewire components render the forms (classic POST + @csrf) and thin controllers handle submission under `throttle:login` (5/min/IP, registered in AppServiceProvider), giving real 429s.\n- **Starter kit removals** (approved): starter auth/settings/dashboard tests, Settings Livewire components + views, Fortify auth views, dashboard/welcome views, routes/settings.php. Starter app/auth layouts kept for later admin phases.\n- **Seeded domains** include the required `shop.test` storefront row for Acme Fashion (Herd hostname) alongside spec domains acme-fashion.test, admin.acme-fashion.test, acme-electronics.test.\n\n## Demo credentials (all password: `password`)\nadmin@acme.test (Fashion owner), manager@acme.test (Fashion admin), staff@acme.test (Fashion staff), support@acme.test (Fashion support), admin2@acme.test (Electronics owner)\n\n## Test results\n`php artisan test --compact`: **30 passed, 3 todos (86 assertions)**, 0 failures. `vendor/bin/pint --dirty --format agent`: pass. `php artisan migrate:fresh --seed`: success. Live smoke check: http://shop.test/ resolves Acme Fashion (200), /admin/login and /account/login both 200. Note: the sandbox network allowlist blocked curl to shop.test; I ran that one smoke check unsandboxed (manageable via /sandbox)."}],"totalDurationMs":1078685,"totalTokens":184970,"totalToolUseCount":137,"usage":{"input_tokens":131,"cache_creation_input_tokens":2227,"cache_read_input_tokens":179956,"output_tokens":2656,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":2227},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":2656,"cache_read_input_tokens":179956,"cache_creation_input_tokens":2227,"cache_creation":{"ephemeral_5m_input_tokens":2227,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":23,"searchCount":0,"bashCount":24,"editFileCount":90,"linesAdded":3620,"linesRemoved":83,"otherToolCount":0}},"sourceToolAssistantUUID":"5f6c829c-1eb5-4dcc-8f12-68677f9e516b","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"9b4f3d59-3c35-4166-9d0f-0559b1279a3d","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"parentUuid":"9b4f3d59-3c35-4166-9d0f-0559b1279a3d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UFbV1roSH9FFSbYATcRipX","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS8AIKYggOGAIqQOD6Ebxro73DiZ3GeyEL8HezbJDfmSYCQ6Cbp1vn9VGRU/MR1xZCWFapICmwmd2pSm+dCCPV+xqbg87i6EKCvh8yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgygKjIgqV8TaAvsmc0aDFNI9PwObLOH3Et44SIwuEMyXEJs+0eYPQudbKFH1CxDqwtqjw/mnIh9wKMp8Kxcg1+FehgUwRLZ6c63A64AKrsB+ghkMHRm3bI8bXiq/uFIzfp73pf19JLjpfXrVJTAU5hooyHiHO949Jls1mMj+UPwi90fpbwwhiGhWKaIsGS8ZN6hOPbaJySa7+ii9G1aMPp2mZP84QCyzBk3ifb642PWmi0oC6OOvPcyS34LaJ9r0pYE6YS+OYD6EV+seqZqYm1BCzot6m3Xlb8l4zvYO3obeA8Ca6V/SVv2nb4T1qIRZ3Wiw3sCbLqM3NEfK730YsMV1KDZ1+Ud7LdZLRgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":6116,"cache_read_input_tokens":93594,"output_tokens":309,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":6116,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":309,"cache_read_input_tokens":93594,"cache_creation_input_tokens":6116,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":6116},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtAhvHcDXe94jKCEVoGM","type":"assistant","uuid":"600dd1c4-9421-456a-9f33-fe212eabff30","timestamp":"2026-06-09T18:35:13.250Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"600dd1c4-9421-456a-9f33-fe212eabff30","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UFbV1roSH9FFSbYATcRipX","type":"message","role":"assistant","content":[{"type":"text","text":"Phase 1 is done (30 passed, 3 todos). Let me verify the suite myself, then commit and launch Phase 2."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":6116,"cache_read_input_tokens":93594,"output_tokens":309,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":6116,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":309,"cache_read_input_tokens":93594,"cache_creation_input_tokens":6116,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":6116},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtAhvHcDXe94jKCEVoGM","type":"assistant","uuid":"dd8fa910-4954-4184-952c-eeada47accf4","timestamp":"2026-06-09T18:35:13.250Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"dd8fa910-4954-4184-952c-eeada47accf4","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UFbV1roSH9FFSbYATcRipX","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01RG7mzyFeAnBjm3WTdNis7s","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -5 && git add -A && git commit -q -m \"Phase 1: Foundation - tenancy, multi-store models, ResolveStore middleware, admin/customer auth, policies\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests pass and commit Phase 1"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":6116,"cache_read_input_tokens":93594,"output_tokens":309,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":6116,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":309,"cache_read_input_tokens":93594,"cache_creation_input_tokens":6116,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":6116},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtAhvHcDXe94jKCEVoGM","type":"assistant","uuid":"7dcc1292-3e8c-4a5b-8249-b7f898416274","timestamp":"2026-06-09T18:35:14.835Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7dcc1292-3e8c-4a5b-8249-b7f898416274","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01RG7mzyFeAnBjm3WTdNis7s","type":"tool_result","content":"  ....................ttt..........\n\n  Tests:    3 todos, 30 passed (86 assertions)\n  Duration: 3.48s\n\n5b743cde Phase 1: Foundation - tenancy, multi-store models, ResolveStore middleware, admin/customer auth, policies","is_error":false}]},"uuid":"fd1ea2ab-2c8e-45a3-896a-58990e540e8a","timestamp":"2026-06-09T18:35:18.718Z","toolUseResult":{"stdout":"  ....................ttt..........\n\n  Tests:    3 todos, 30 passed (86 assertions)\n  Duration: 3.48s\n\n5b743cde Phase 1: Foundation - tenancy, multi-store models, ResolveStore middleware, admin/customer auth, policies","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"7dcc1292-3e8c-4a5b-8249-b7f898416274","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"fd1ea2ab-2c8e-45a3-896a-58990e540e8a","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"a7e8bfaf-3ea9-4b8a-8e42-73ce7679adbd","timestamp":"2026-06-09T18:35:18.719Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a7e8bfaf-3ea9-4b8a-8e42-73ce7679adbd","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0198MnQ18eehapDpiyyVfQ3Z","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISggQKYggOGAIqQEwy12oXqPjEV6a0KxU3ag7+ydZFvSk1/h4neijASiy2eLTv/5GG7rozhnzR1+Unn3pbX3MMUsRKG3geEO0cUtIyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgz48sfC/lnQwctQ9TwaDB3TkkEDgiUSl/hiOSIw9a7+sYrU9CWwrcCnZPtByXJvkE8kbFg/zkocKmM01mLN8t469IvqatjF/m91nhDBKs0C/VpUVFnHQOkA6Ar4U9rNcMqk00LC41hdO/x8izhpU1kD9tatHfd0Gpy+Rzbj72h5uzudiiyEL7S8TiiXnsWiSrsclFOEmY4UyNB50zKyC8H3RF4S9iJimr+RZe7gAA0D6uw6mvxpStaUaJhvUkhC+RBfCg6NMOctOsN7PXTF8f4WBwBWbffSHG59aMtZ4AjgywTARIBdRERN9tv4sJaNHRYItDtardNblL6D4k8V5YsNLbyK5LJS7c3aEMFi3hb5dLqOIpxrZ1GjgRBrL2BQYVx+VBkEfK/yv3aJ4nIC4yeFXnxTW+MHoNCqyYIGed7jjSHwIiBbDLFkcu/cBJ2z+UDHhqSnVzjVjl4dJlzbseakJ6fur3uZt7mcdPV9KtKRSsQ3M1v9TgtnI/y0caB+1ZnzaG3uNH3i4vvLQjpfzXAsYLE2ARWvZ6XG+kMRGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":406,"cache_read_input_tokens":99710,"output_tokens":530,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":406,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":530,"cache_read_input_tokens":99710,"cache_creation_input_tokens":406,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":406},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtAicuNC2VavEjLCxFkb","type":"assistant","uuid":"66e64f72-2639-488b-8fe0-fdf5022693a0","timestamp":"2026-06-09T18:35:27.588Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"66e64f72-2639-488b-8fe0-fdf5022693a0","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0198MnQ18eehapDpiyyVfQ3Z","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISjQIKYwgOGAIqQHBQCwKrchpUB6y6bofHssVkkgHh5wH3MMQrgMz4QnKZn8ki+iYEristtXja6m5SGA1haqUI7Y6HTlImAfSe0IAyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMPCd7dtYFATUL4OJaGgySnpoTH5fjq/SiSVciMOEoVIQEvcBB7PhY/i33ODrk/5oV3pWgUOLFfn8aVUu0SlfLXCBxw0jLVdy9vaf7kypYwXSmp6UZP4hP+J9GPa3I/55UK/bvbkqsU6/+hDWHtC+rWkHTIOdTJ+CmB5xzc2ZuMTuH5ePCAMpu5/ln7OfQ9JU933FulH4QrkrwME9ECXFdZWtqrip4shgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":406,"cache_read_input_tokens":99710,"output_tokens":530,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":406,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":530,"cache_read_input_tokens":99710,"cache_creation_input_tokens":406,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":406},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtAicuNC2VavEjLCxFkb","type":"assistant","uuid":"d9fc06dc-f73e-4cb1-85d1-3e739f8c4283","timestamp":"2026-06-09T18:35:27.588Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d9fc06dc-f73e-4cb1-85d1-3e739f8c4283","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0198MnQ18eehapDpiyyVfQ3Z","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Q8hvgJzfk4RCdJo2za1hnX","name":"Edit","input":{"replace_all":false,"file_path":"/Users/fabianwesner/Herd/shop/specs/progress.md","old_string":"| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | in progress | Tenancy/*, Auth/AdminAuthTest, Auth/CustomerAuthTest (cart merge deferred to P4) |\n| 2 | Catalog: products, options, variants, inventory, collections, media | pending | Products/* |","new_string":"| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |\n| 2 | Catalog: products, options, variants, inventory, collections, media | in progress | Products/* |"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":406,"cache_read_input_tokens":99710,"output_tokens":530,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":406,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":530,"cache_read_input_tokens":99710,"cache_creation_input_tokens":406,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":406},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtAicuNC2VavEjLCxFkb","type":"assistant","uuid":"d33ea69f-9541-4a4b-8c0f-c3a90aa6ba7c","timestamp":"2026-06-09T18:35:30.764Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d33ea69f-9541-4a4b-8c0f-c3a90aa6ba7c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Q8hvgJzfk4RCdJo2za1hnX","type":"tool_result","content":"The file /Users/fabianwesner/Herd/shop/specs/progress.md has been updated successfully. (file state is current in your context — no need to Read it back)"}]},"uuid":"2580dcd6-a613-4fef-90c5-a6a482234f0b","timestamp":"2026-06-09T18:35:30.781Z","toolUseResult":{"filePath":"/Users/fabianwesner/Herd/shop/specs/progress.md","oldString":"| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | in progress | Tenancy/*, Auth/AdminAuthTest, Auth/CustomerAuthTest (cart merge deferred to P4) |\n| 2 | Catalog: products, options, variants, inventory, collections, media | pending | Products/* |","newString":"| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |\n| 2 | Catalog: products, options, variants, inventory, collections, media | in progress | Products/* |","originalFile":"# Implementation Progress\n\nTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n\n| Phase | Scope | Status | Tests |\n|-------|-------|--------|-------|\n| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | in progress | Tenancy/*, Auth/AdminAuthTest, Auth/CustomerAuthTest (cart merge deferred to P4) |\n| 2 | Catalog: products, options, variants, inventory, collections, media | pending | Products/* |\n| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |\n| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |\n| 6 | Customer accounts | pending | Customers/*, finish CustomerAuthTest |\n| 7 | Admin panel (all sections) | pending | Admin/* |\n| API | Spec 02 REST APIs + Sanctum | pending | Api/*, Auth/SanctumTokenTest, Cart/CartApiTest |\n| 8 | Search (FTS5) | pending | Search/* |\n| 9 | Analytics | pending | Analytics/* |\n| 10 | Apps & webhooks | pending | Webhooks/* |\n| 11 | Polish, seeders (spec 07), error pages, dark mode, a11y | pending | - |\n| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | pending | Browser/* |\n\n## Log\n\n- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n","structuredPatch":[{"oldStart":4,"oldLines":8,"newStart":4,"newLines":8,"lines":[" "," | Phase | Scope | Status | Tests |"," |-------|-------|--------|-------|","-| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | in progress | Tenancy/*, Auth/AdminAuthTest, Auth/CustomerAuthTest (cart merge deferred to P4) |","-| 2 | Catalog: products, options, variants, inventory, collections, media | pending | Products/* |","+| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |","+| 2 | Catalog: products, options, variants, inventory, collections, media | in progress | Products/* |"," | 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |"," | 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |"," | 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |"]}],"userModified":false,"replaceAll":false},"sourceToolAssistantUUID":"d33ea69f-9541-4a4b-8c0f-c3a90aa6ba7c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2580dcd6-a613-4fef-90c5-a6a482234f0b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01KXHyEyMKBqvpyJkrvkrd9T","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_018BN4U73TFWsMLB5y8RpaGU","name":"Agent","input":{"description":"Implement Phase 2 Catalog","name":"phase2-catalog","prompt":"You are implementing Phase 2 (Catalog) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, SQLite, Pest v4). Phase 1 (tenancy, stores, auth, policies, BelongsToStore trait, StoreScope, Pest helpers createStoreContext()/actingAsAdmin()/actingAsCustomer()) is complete and committed. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 2: Catalog\" section (lines ~245-347) and the test spec tables for tests/Feature/Products/ProductCrudTest.php, VariantTest.php, InventoryTest.php, CollectionTest.php, MediaUploadTest.php and tests/Unit/HandleGeneratorTest.php (lines ~1104-1275).\n- specs/01-DATABASE-SCHEMA.md — sections for products, product_options, product_option_values, product_variants, variant_option_values, inventory_items, collections, collection_products, product_media (exact columns, constraints, indexes).\n- specs/05-BUSINESS-LOGIC.md — product lifecycle/state machine, variant matrix, inventory rules, handle generation sections.\n- specs/07-SEEDERS-AND-TEST-DATA.md — CollectionSeeder and ProductSeeder definitions.\n- Study existing Phase 1 conventions first: app/Models (Store, Customer etc.), app/Models/Concerns/BelongsToStore.php, app/Enums, tests/Pest.php, database/seeders.\n\nDELIVERABLES:\n1. Migrations in dependency order: products, product_options, product_option_values, product_variants, variant_option_values (composite PK), inventory_items, collections, collection_products (composite PK), product_media. Money INTEGER cents, enums TEXT+CHECK, follow spec 01 exactly (indexes, uniques like SKU unique per store, handle unique per store).\n2. Models with relationships per roadmap: Product, ProductOption, ProductOptionValue, ProductVariant, InventoryItem, Collection, ProductMedia (+ pivot setup for collection_products with position, variant_option_values). BelongsToStore on products, collections, inventory_items (per Phase 1 trait list). Factories with meaningful defaults + useful states (e.g., active(), draft(), archived()).\n3. Enums: ProductStatus, VariantStatus, CollectionStatus, MediaType, MediaStatus, InventoryPolicy.\n4. Services:\n   - App\\Services\\ProductService: create (nested options/variants, auto default variant + inventory item), update, transitionStatus (state machine per spec 05: draft→active requires priced variant; active→draft blocked when order lines exist; active→archived; etc.), delete (hard delete only draft w/o order refs, else throw).\n   - App\\Services\\VariantMatrixService: rebuildMatrix (cartesian product, preserve existing variants + prices, archive orphans with order refs, delete orphans without).\n   - App\\Support\\HandleGenerator: generate(string $title, string $table, int $storeId, ?int $excludeId = null): string — slugify, collision suffix -1, -2, store-scoped, exclude current id.\n   - App\\Services\\InventoryService: checkAvailability, reserve, release, commit, restock — DB transactions, InsufficientInventoryException (app/Exceptions) when policy deny and available < qty.\n5. Media: App\\Jobs\\ProcessMediaUpload (resize to thumbnail 150x150, medium 600x600, large 1200x1200 — use GD via Laravel/native PHP, do NOT add composer dependencies; store on public disk; status processing→ready/failed).\n6. Seeders: CollectionSeeder then ProductSeeder per spec 07 (products with options, variants, inventory, media placeholders, collection associations) wired into DatabaseSeeder after existing seeders. Must be idempotent enough that migrate:fresh --seed works.\n7. Un-todo the Product cases in tests/Feature/Tenancy/StoreIsolationTest.php (scopes product queries; prevents cross-store access via direct ID etc. — implement the product-based cases now; leave Order case as todo for Phase 5).\n8. Tests — implement EXACTLY the cases in the roadmap tables:\n   - tests/Unit/HandleGeneratorTest.php (6 cases)\n   - tests/Feature/Products/ProductCrudTest.php (13 cases; admin list cases can assert via Livewire or HTTP as appropriate given Phase 7 admin UI doesn't exist yet — for \"lists products for the current store\" you may test the underlying query/service or mark route-dependent assertions to be strengthened in Phase 7; prefer testing ProductService + DB now. If a case strictly needs admin UI (GET /admin/products), implement a minimal placeholder route only if trivial, otherwise ->todo('Phase 7') that single case)\n   - tests/Feature/Products/VariantTest.php (8 cases)\n   - tests/Feature/Products/InventoryTest.php (8 cases)\n   - tests/Feature/Products/CollectionTest.php (7 cases)\n   - tests/Feature/Products/MediaUploadTest.php (6 cases; Livewire upload cases: test the job + a service/action level; if a case strictly needs the Phase 7 admin form, use Livewire component only if you create it now — otherwise test via storage fake + job + model layer and keep the intent of each case)\n   Note: order-reference-dependent cases (e.g., \"prevents deletion of product with order references\") need an order_lines table that doesn't exist until Phase 5 — for those, check spec 01 for order_lines and decide: EITHER mark ->todo('Phase 5') OR implement the check defensively (e.g., Schema::hasTable guard) — prefer ->todo('Phase 5') and implement the service check so it activates when the table exists. Keep a clear list of deferred cases in your final report.\n\nQUALITY BARS:\n- php artisan migrate:fresh --seed succeeds.\n- Full suite green: php artisan test --compact.\n- vendor/bin/pint --dirty --format agent clean.\n- Explicit return types, casts() methods, PHP 8.4, curly braces always, no em-dashes. Use php artisan make:* generators.\n\nFinal message: files created/changed (grouped), key decisions, list of test cases deferred as todo (with phase), full test summary."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":740,"cache_read_input_tokens":100116,"output_tokens":2356,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":740,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2356,"cache_read_input_tokens":100116,"cache_creation_input_tokens":740,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":740},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtAjWShwZWEMh1n7L63w","type":"assistant","uuid":"93f1db45-21c6-4a78-b358-d1073f02e35e","timestamp":"2026-06-09T18:36:00.561Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"93f1db45-21c6-4a78-b358-d1073f02e35e","isSidechain":false,"type":"system","subtype":"local_command","content":"<command-name>/remote-control</command-name>\n            <command-message>remote-control</command-message>\n            <command-args></command-args>","level":"info","timestamp":"2026-06-09T18:44:20.538Z","uuid":"e673c66d-6104-4c93-b58c-2cc5f60f8fb8","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e673c66d-6104-4c93-b58c-2cc5f60f8fb8","isSidechain":false,"type":"system","subtype":"local_command","content":"<local-command-stdout>Remote Control connecting…</local-command-stdout>","level":"info","timestamp":"2026-06-09T18:44:20.538Z","uuid":"0cc72f91-576c-4b94-9d97-4cad749489a1","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"93f1db45-21c6-4a78-b358-d1073f02e35e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_018BN4U73TFWsMLB5y8RpaGU","type":"tool_result","content":[{"type":"text","text":"Phase 2 (Catalog) is complete. All quality bars pass: `migrate:fresh --seed` succeeds, full suite green (79 passed, 5 todos, 196 assertions), Pint clean.\n\n## Files created/changed\n\n**Migrations** (dependency-ordered `2026_06_09_1000xx`, all in `/Users/fabianwesner/Herd/shop/database/migrations/`):\nproducts, product_options, product_option_values, product_variants, variant_option_values (composite PK), inventory_items, collections, collection_products (composite PK + position), product_media. Money as INTEGER cents, enums as TEXT+CHECK (verified in sqlite_master), all spec-01 indexes/uniques including unique (store_id, handle) on products/collections and unique variant_id on inventory_items.\n\n**Enums** (`app/Enums/`): ProductStatus, VariantStatus, CollectionStatus, MediaType, MediaStatus, InventoryPolicy.\n\n**Models** (`app/Models/`): Product, ProductOption, ProductOptionValue, ProductVariant, InventoryItem, Collection, ProductMedia. BelongsToStore on Product, Collection, InventoryItem. All relationships per roadmap; `ProductMedia::derivedStorageKey()` for resized file keys; `InventoryItem::availableQuantity()`.\n\n**Factories** (`database/factories/`): all 7, with states `active()/draft()/archived()`, `asDefault()/priced()`, `forVariant()/withStock()/continueSelling()`, `ready()`.\n\n**Services/Support/Jobs**:\n- `app/Services/ProductService.php` - create (nested options, matrix/default variant + inventory), update, transitionStatus (full state machine, `published_at` on activation, `ProductStatusChanged` event), delete (draft-only), createVariant (store-scoped SKU uniqueness, null exempt)\n- `app/Services/VariantMatrixService.php` - cartesian rebuild, preserves matching variants (prices intact), archives orphans with order refs, deletes others\n- `app/Services/InventoryService.php` - checkAvailability/reserve/release/commit/restock in DB transactions, throws InsufficientInventoryException on deny policy\n- `app/Services/MediaService.php` - attach (image-only validation, public disk, dispatches job), updateAltText, reorder, delete (removes original + derived files)\n- `app/Support/HandleGenerator.php`, `app/Support/OrderReferenceChecker.php` (guarded by `Schema::hasTable('order_lines')` so checks auto-activate in Phase 5)\n- `app/Jobs/ProcessMediaUpload.php` - pure GD resize to thumbnail 150 / medium 600 / large 1200 (aspect-fit, no new composer deps), processing -> ready/failed\n- `app/Exceptions/`: InsufficientInventoryException, InvalidProductTransitionException, ProductDeletionException; `app/Events/ProductStatusChanged.php`\n\n**Seeders**: `CollectionSeeder` (4 fashion + 2 electronics collections), `ProductSeeder` (20 Acme Fashion + 5 Acme Electronics products with options, variants, variant_option_values, inventory, collection pivots; 25 products / 127 variants / 127 inventory items), wired into `DatabaseSeeder`. Idempotent (re-running db:seed creates nothing new; verified). No ProductMedia seeded, per spec 07's explicit note.\n\n**Tests**: `tests/Unit/HandleGeneratorTest.php` (6), `tests/Feature/Products/ProductCrudTest.php` (13), `VariantTest.php` (8), `InventoryTest.php` (8), `CollectionTest.php` (7), `MediaUploadTest.php` (6); `tests/Feature/Tenancy/StoreIsolationTest.php` product cases un-todo'd (scoping, auto store_id, direct-ID denial, scope removal). Updated `specs/progress.md` Phase 2 row.\n\n## Key decisions\n- \"lists products for the current store\", \"filters by status\", \"searches by title\" are tested at the query/service level (admin UI ships in Phase 7); intent preserved.\n- Media upload tests use Storage::fake + MediaService + running the job synchronously instead of a nonexistent Phase 7 Livewire form.\n- Spec 07's \"107 total fashion variants\" line contradicts its own per-product table, which sums to 117; the seeder follows the per-product table (117 + 10 electronics = 127).\n- Order-reference rules implemented now behind a `Schema::hasTable('order_lines')` guard, so they enforce automatically once Phase 5 adds the table.\n\n## Deferred test cases (todo)\n- ProductCrudTest: \"prevents active to draft when order lines exist\" - Phase 5\n- ProductCrudTest: \"prevents deletion of product with order references\" - Phase 5\n- VariantTest: \"archives orphaned variants with order references\" - Phase 5\n- (pre-existing) StoreIsolationTest \"scopes order queries\" - Phase 5; CustomerAuthTest cart-merge - Phase 4\n\n## Test summary\n`php artisan test --compact`: **79 passed, 5 todos (196 assertions)**, ~4s. `vendor/bin/pint --dirty --format agent`: pass."},{"type":"text","text":"agentId: ad67275b52a0ec902 (use SendMessage with to: 'ad67275b52a0ec902' to continue this agent)\n<usage>subagent_tokens: 150620\ntool_uses: 104\nduration_ms: 931214</usage>"}]}]},"uuid":"57f68b17-3094-45e7-b894-5290013e4b6c","timestamp":"2026-06-09T18:51:31.779Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 2 (Catalog) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, SQLite, Pest v4). Phase 1 (tenancy, stores, auth, policies, BelongsToStore trait, StoreScope, Pest helpers createStoreContext()/actingAsAdmin()/actingAsCustomer()) is complete and committed. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 2: Catalog\" section (lines ~245-347) and the test spec tables for tests/Feature/Products/ProductCrudTest.php, VariantTest.php, InventoryTest.php, CollectionTest.php, MediaUploadTest.php and tests/Unit/HandleGeneratorTest.php (lines ~1104-1275).\n- specs/01-DATABASE-SCHEMA.md — sections for products, product_options, product_option_values, product_variants, variant_option_values, inventory_items, collections, collection_products, product_media (exact columns, constraints, indexes).\n- specs/05-BUSINESS-LOGIC.md — product lifecycle/state machine, variant matrix, inventory rules, handle generation sections.\n- specs/07-SEEDERS-AND-TEST-DATA.md — CollectionSeeder and ProductSeeder definitions.\n- Study existing Phase 1 conventions first: app/Models (Store, Customer etc.), app/Models/Concerns/BelongsToStore.php, app/Enums, tests/Pest.php, database/seeders.\n\nDELIVERABLES:\n1. Migrations in dependency order: products, product_options, product_option_values, product_variants, variant_option_values (composite PK), inventory_items, collections, collection_products (composite PK), product_media. Money INTEGER cents, enums TEXT+CHECK, follow spec 01 exactly (indexes, uniques like SKU unique per store, handle unique per store).\n2. Models with relationships per roadmap: Product, ProductOption, ProductOptionValue, ProductVariant, InventoryItem, Collection, ProductMedia (+ pivot setup for collection_products with position, variant_option_values). BelongsToStore on products, collections, inventory_items (per Phase 1 trait list). Factories with meaningful defaults + useful states (e.g., active(), draft(), archived()).\n3. Enums: ProductStatus, VariantStatus, CollectionStatus, MediaType, MediaStatus, InventoryPolicy.\n4. Services:\n   - App\\Services\\ProductService: create (nested options/variants, auto default variant + inventory item), update, transitionStatus (state machine per spec 05: draft→active requires priced variant; active→draft blocked when order lines exist; active→archived; etc.), delete (hard delete only draft w/o order refs, else throw).\n   - App\\Services\\VariantMatrixService: rebuildMatrix (cartesian product, preserve existing variants + prices, archive orphans with order refs, delete orphans without).\n   - App\\Support\\HandleGenerator: generate(string $title, string $table, int $storeId, ?int $excludeId = null): string — slugify, collision suffix -1, -2, store-scoped, exclude current id.\n   - App\\Services\\InventoryService: checkAvailability, reserve, release, commit, restock — DB transactions, InsufficientInventoryException (app/Exceptions) when policy deny and available < qty.\n5. Media: App\\Jobs\\ProcessMediaUpload (resize to thumbnail 150x150, medium 600x600, large 1200x1200 — use GD via Laravel/native PHP, do NOT add composer dependencies; store on public disk; status processing→ready/failed).\n6. Seeders: CollectionSeeder then ProductSeeder per spec 07 (products with options, variants, inventory, media placeholders, collection associations) wired into DatabaseSeeder after existing seeders. Must be idempotent enough that migrate:fresh --seed works.\n7. Un-todo the Product cases in tests/Feature/Tenancy/StoreIsolationTest.php (scopes product queries; prevents cross-store access via direct ID etc. — implement the product-based cases now; leave Order case as todo for Phase 5).\n8. Tests — implement EXACTLY the cases in the roadmap tables:\n   - tests/Unit/HandleGeneratorTest.php (6 cases)\n   - tests/Feature/Products/ProductCrudTest.php (13 cases; admin list cases can assert via Livewire or HTTP as appropriate given Phase 7 admin UI doesn't exist yet — for \"lists products for the current store\" you may test the underlying query/service or mark route-dependent assertions to be strengthened in Phase 7; prefer testing ProductService + DB now. If a case strictly needs admin UI (GET /admin/products), implement a minimal placeholder route only if trivial, otherwise ->todo('Phase 7') that single case)\n   - tests/Feature/Products/VariantTest.php (8 cases)\n   - tests/Feature/Products/InventoryTest.php (8 cases)\n   - tests/Feature/Products/CollectionTest.php (7 cases)\n   - tests/Feature/Products/MediaUploadTest.php (6 cases; Livewire upload cases: test the job + a service/action level; if a case strictly needs the Phase 7 admin form, use Livewire component only if you create it now — otherwise test via storage fake + job + model layer and keep the intent of each case)\n   Note: order-reference-dependent cases (e.g., \"prevents deletion of product with order references\") need an order_lines table that doesn't exist until Phase 5 — for those, check spec 01 for order_lines and decide: EITHER mark ->todo('Phase 5') OR implement the check defensively (e.g., Schema::hasTable guard) — prefer ->todo('Phase 5') and implement the service check so it activates when the table exists. Keep a clear list of deferred cases in your final report.\n\nQUALITY BARS:\n- php artisan migrate:fresh --seed succeeds.\n- Full suite green: php artisan test --compact.\n- vendor/bin/pint --dirty --format agent clean.\n- Explicit return types, casts() methods, PHP 8.4, curly braces always, no em-dashes. Use php artisan make:* generators.\n\nFinal message: files created/changed (grouped), key decisions, list of test cases deferred as todo (with phase), full test summary.","agentId":"ad67275b52a0ec902","agentType":"general-purpose","content":[{"type":"text","text":"Phase 2 (Catalog) is complete. All quality bars pass: `migrate:fresh --seed` succeeds, full suite green (79 passed, 5 todos, 196 assertions), Pint clean.\n\n## Files created/changed\n\n**Migrations** (dependency-ordered `2026_06_09_1000xx`, all in `/Users/fabianwesner/Herd/shop/database/migrations/`):\nproducts, product_options, product_option_values, product_variants, variant_option_values (composite PK), inventory_items, collections, collection_products (composite PK + position), product_media. Money as INTEGER cents, enums as TEXT+CHECK (verified in sqlite_master), all spec-01 indexes/uniques including unique (store_id, handle) on products/collections and unique variant_id on inventory_items.\n\n**Enums** (`app/Enums/`): ProductStatus, VariantStatus, CollectionStatus, MediaType, MediaStatus, InventoryPolicy.\n\n**Models** (`app/Models/`): Product, ProductOption, ProductOptionValue, ProductVariant, InventoryItem, Collection, ProductMedia. BelongsToStore on Product, Collection, InventoryItem. All relationships per roadmap; `ProductMedia::derivedStorageKey()` for resized file keys; `InventoryItem::availableQuantity()`.\n\n**Factories** (`database/factories/`): all 7, with states `active()/draft()/archived()`, `asDefault()/priced()`, `forVariant()/withStock()/continueSelling()`, `ready()`.\n\n**Services/Support/Jobs**:\n- `app/Services/ProductService.php` - create (nested options, matrix/default variant + inventory), update, transitionStatus (full state machine, `published_at` on activation, `ProductStatusChanged` event), delete (draft-only), createVariant (store-scoped SKU uniqueness, null exempt)\n- `app/Services/VariantMatrixService.php` - cartesian rebuild, preserves matching variants (prices intact), archives orphans with order refs, deletes others\n- `app/Services/InventoryService.php` - checkAvailability/reserve/release/commit/restock in DB transactions, throws InsufficientInventoryException on deny policy\n- `app/Services/MediaService.php` - attach (image-only validation, public disk, dispatches job), updateAltText, reorder, delete (removes original + derived files)\n- `app/Support/HandleGenerator.php`, `app/Support/OrderReferenceChecker.php` (guarded by `Schema::hasTable('order_lines')` so checks auto-activate in Phase 5)\n- `app/Jobs/ProcessMediaUpload.php` - pure GD resize to thumbnail 150 / medium 600 / large 1200 (aspect-fit, no new composer deps), processing -> ready/failed\n- `app/Exceptions/`: InsufficientInventoryException, InvalidProductTransitionException, ProductDeletionException; `app/Events/ProductStatusChanged.php`\n\n**Seeders**: `CollectionSeeder` (4 fashion + 2 electronics collections), `ProductSeeder` (20 Acme Fashion + 5 Acme Electronics products with options, variants, variant_option_values, inventory, collection pivots; 25 products / 127 variants / 127 inventory items), wired into `DatabaseSeeder`. Idempotent (re-running db:seed creates nothing new; verified). No ProductMedia seeded, per spec 07's explicit note.\n\n**Tests**: `tests/Unit/HandleGeneratorTest.php` (6), `tests/Feature/Products/ProductCrudTest.php` (13), `VariantTest.php` (8), `InventoryTest.php` (8), `CollectionTest.php` (7), `MediaUploadTest.php` (6); `tests/Feature/Tenancy/StoreIsolationTest.php` product cases un-todo'd (scoping, auto store_id, direct-ID denial, scope removal). Updated `specs/progress.md` Phase 2 row.\n\n## Key decisions\n- \"lists products for the current store\", \"filters by status\", \"searches by title\" are tested at the query/service level (admin UI ships in Phase 7); intent preserved.\n- Media upload tests use Storage::fake + MediaService + running the job synchronously instead of a nonexistent Phase 7 Livewire form.\n- Spec 07's \"107 total fashion variants\" line contradicts its own per-product table, which sums to 117; the seeder follows the per-product table (117 + 10 electronics = 127).\n- Order-reference rules implemented now behind a `Schema::hasTable('order_lines')` guard, so they enforce automatically once Phase 5 adds the table.\n\n## Deferred test cases (todo)\n- ProductCrudTest: \"prevents active to draft when order lines exist\" - Phase 5\n- ProductCrudTest: \"prevents deletion of product with order references\" - Phase 5\n- VariantTest: \"archives orphaned variants with order references\" - Phase 5\n- (pre-existing) StoreIsolationTest \"scopes order queries\" - Phase 5; CustomerAuthTest cart-merge - Phase 4\n\n## Test summary\n`php artisan test --compact`: **79 passed, 5 todos (196 assertions)**, ~4s. `vendor/bin/pint --dirty --format agent`: pass."}],"totalDurationMs":931214,"totalTokens":150620,"totalToolUseCount":104,"usage":{"input_tokens":2,"cache_creation_input_tokens":1088,"cache_read_input_tokens":147687,"output_tokens":1843,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":1088},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1843,"cache_read_input_tokens":147687,"cache_creation_input_tokens":1088,"cache_creation":{"ephemeral_5m_input_tokens":1088,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":3,"searchCount":0,"bashCount":30,"editFileCount":71,"linesAdded":4270,"linesRemoved":27,"otherToolCount":0}},"sourceToolAssistantUUID":"93f1db45-21c6-4a78-b358-d1073f02e35e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"57f68b17-3094-45e7-b894-5290013e4b6c","isSidechain":false,"attachment":{"type":"edited_text_file","filename":"/Users/fabianwesner/Herd/shop/specs/progress.md","snippet":"1\t# Implementation Progress\n2\t\n3\tTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n4\t\n5\t| Phase | Scope | Status | Tests |\n6\t|-------|-------|--------|-------|\n7\t| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |\n8\t| 2 | Catalog: products, options, variants, inventory, collections, media | DONE | full suite 79 passed, 5 todos (4 deferred to P5, 1 to P4) |\n9\t| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |\n10\t| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |\n11\t| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |\n12\t| 6 | Customer accounts | pending | Customers/*, finish CustomerAuthTest |\n13\t| 7 | Admin panel (all sections) | pending | Admin/* |\n14\t| API | Spec 02 REST APIs + Sanctum | pending | Api/*, Auth/SanctumTokenTest, Cart/CartApiTest |\n15\t| 8 | Search (FTS5) | pending | Search/* |\n16\t| 9 | Analytics | pending | Analytics/* |\n17\t| 10 | Apps & webhooks | pending | Webhooks/* |\n18\t| 11 | Polish, seeders (spec 07), error pages, dark mode, a11y | pending | - |\n19\t| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | pending | Browser/* |\n20\t\n21\t## Log\n22\t\n23\t- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n24\t- 2026-06-09: Phase 2 done. Catalog migrations (9 tables), models, enums, ProductService/VariantMatrixService/InventoryService/MediaService, HandleGenerator, ProcessMediaUpload job (GD), Collection+Product seeders (25 products, 127 variants). Order-reference checks implemented behind Schema::hasTable('order_lines') guard; 3 order-dependent test cases todo'd for Phase 5."},"type":"attachment","uuid":"dd496584-0927-4e4b-bbac-5182e57191f3","timestamp":"2026-06-09T18:51:31.796Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"dd496584-0927-4e4b-bbac-5182e57191f3","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"dd496584-0927-4e4b-bbac-5182e57191f3","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0187nwK5rES2hNGUbcgAcofp","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISkgIKYggOGAIqQPtujTjHb9WQRHLhDH+iVjY2xuZOcb7cpxSFT36qfN1Zb9xr6ib10yWjezp4q5bhvwREvfohy8Pm1WDGRsNg4ZQyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxiH6tBxTfq65CUJxwaDBayrTeIPSf/LCcz0yIwc7yE+OlhzW9RqmQUMIBOXVwo0Cgum+T2VTYklKlO5hoSCSp6PSirZr1j9FtcXE3yKl5LCY1BwPb+HG7h8qQNzreiLZqTSiVFJv4ZUiArYdC3OHV8Fqm7zdIRcpB7SJYVcOWxf/GYwIN33gQTRjZPEE7TvZJALlAPJhEvccrKBJxBx0I2/vb9Vk+yUzffjDnlGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":1022,"cache_creation_input_tokens":105686,"cache_read_input_tokens":0,"output_tokens":216,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":105686,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":1022,"output_tokens":216,"cache_read_input_tokens":0,"cache_creation_input_tokens":105686,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":105686},"type":"message"}],"speed":"standard"},"diagnostics":{"cache_miss_reason":{"type":"tools_changed","cache_missed_input_tokens":86484}}},"requestId":"req_011CbtBxMRTk1VhDB4hLGjgr","type":"assistant","uuid":"a2e9b56f-1621-4f5b-abd1-56a99d2aadee","timestamp":"2026-06-09T18:51:38.981Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a2e9b56f-1621-4f5b-abd1-56a99d2aadee","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0187nwK5rES2hNGUbcgAcofp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01LrCU1hQcJXMzQcRxyf5eGk","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 2: Catalog - products, options, variants, inventory, collections, media\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 2"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":1022,"cache_creation_input_tokens":105686,"cache_read_input_tokens":0,"output_tokens":216,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":105686,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":1022,"output_tokens":216,"cache_read_input_tokens":0,"cache_creation_input_tokens":105686,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":105686},"type":"message"}],"speed":"standard"},"diagnostics":{"cache_miss_reason":{"type":"tools_changed","cache_missed_input_tokens":86484}}},"requestId":"req_011CbtBxMRTk1VhDB4hLGjgr","type":"assistant","uuid":"5e727126-c64e-4fa3-85ec-9750056fb80d","timestamp":"2026-06-09T18:51:40.020Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5e727126-c64e-4fa3-85ec-9750056fb80d","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01LrCU1hQcJXMzQcRxyf5eGk","type":"tool_result","content":"  Tests:    5 todos, 79 passed (196 assertions)\n  Duration: 4.21s\n\n05cb00f7 Phase 2: Catalog - products, options, variants, inventory, collections, media","is_error":false}]},"uuid":"ad2035a8-b324-489c-83e1-976d13325b4f","timestamp":"2026-06-09T18:51:44.773Z","toolUseResult":{"stdout":"  Tests:    5 todos, 79 passed (196 assertions)\n  Duration: 4.21s\n\n05cb00f7 Phase 2: Catalog - products, options, variants, inventory, collections, media","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"5e727126-c64e-4fa3-85ec-9750056fb80d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ad2035a8-b324-489c-83e1-976d13325b4f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01TNZ1yb7QcmVpfqpjPm8C4m","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISpQIKYwgOGAIqQPyFDLhuk6bdJEVWKW/1bcg6go5r6TY8EO0IyfRBvtIz0/S2GpxJaIa2sBL1PYis6/ySXYJdenxLmU7mWaTMDEQyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMy/TDvxz2B+Qdw6WYGgwLf2mim4LQrU2mK8AiMCJiU5oaQt1vhoCY5EjMrfqT06zjbXowawujUQ7fqIEx1uRpOMay23zjHfAomJnWQipw+TptE8UzjZcz+coBsOp3lPzse6Ap//lGfZ+RuROkO+KLQfmVDjvZ+yGqhTSgWqaNOxnMBDkC2V5MJAaqJ4yGY9de4vi+PiPwBojF31HGscoBVEaRKcsuJlYXvmd/6B85eVfUJ/+Dieshyw7a0szzuBgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1309,"cache_read_input_tokens":105686,"output_tokens":2034,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1309,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2034,"cache_read_input_tokens":105686,"cache_creation_input_tokens":1309,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1309},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtByJimW62qHA7ZfEHM8","type":"assistant","uuid":"7d0342a2-8419-4a07-b228-688bf248f356","timestamp":"2026-06-09T18:51:48.712Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7d0342a2-8419-4a07-b228-688bf248f356","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01TNZ1yb7QcmVpfqpjPm8C4m","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01UNNgsBaNoFM7ygx68LjVCa","name":"Agent","input":{"description":"Implement Phase 3 Storefront","name":"phase3-storefront","prompt":"You are implementing Phase 3 (Themes, Pages, Navigation, Storefront Layout) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1 (tenancy/auth/policies) and 2 (catalog: products/variants/inventory/collections/media) are complete and committed. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 3\" section (lines ~349-440).\n- specs/01-DATABASE-SCHEMA.md — themes, theme_files, theme_settings, pages, navigation_menus, navigation_items tables.\n- specs/04-STOREFRONT-UI.md — FULL file (layout, home sections, collection/product pages, components, dark mode, accessibility requirements).\n- specs/07-SEEDERS-AND-TEST-DATA.md — ThemeSeeder, PageSeeder, NavigationSeeder definitions.\n- Study Phase 1/2 conventions: app/Models/Concerns/BelongsToStore.php, app/Enums, app/Services, resources/views/layouts/storefront.blade.php (minimal placeholder from Phase 1 — you will replace it), tests/Pest.php helpers, database/seeders/DatabaseSeeder.php.\n\nAlso activate relevant skills knowledge: this is heavy Livewire v4 + Tailwind v4 + Blade work. Components must look polished and production-grade, with dark: variants throughout.\n\nDELIVERABLES:\n1. Migrations: themes, theme_files, theme_settings, pages, navigation_menus, navigation_items per spec 01 (enums TEXT+CHECK, follow indexes/uniques).\n2. Models + factories: Theme, ThemeFile, ThemeSettings, Page, NavigationMenu, NavigationItem. BelongsToStore on themes, pages, navigation_menus (per Phase 1 trait list). Relationships per roadmap.\n3. Enums: ThemeStatus, PageStatus, NavigationItemType.\n4. Storefront Blade layout structure per roadmap Step 3.3 in resources/views/ (follow spec 04 layout: header with nav, announcement bar, main, footer, cart drawer placeholder slot for Phase 4). Blade components per roadmap: product-card, price, badge, quantity-selector, address-form, order-summary, breadcrumbs, pagination (storefront namespace, e.g. <x-storefront.product-card>). Dark mode dark: variants everywhere. Skip links + ARIA basics per spec 04.\n5. ThemeSettingsService: singleton registered in AppServiceProvider, loads + caches active theme settings for current store (cache invalidation on update).\n6. App\\Services\\NavigationService: buildTree(NavigationMenu): array, resolveUrl(NavigationItem): string (link/page/collection/product types), per-store cache 5-min TTL.\n7. Storefront Livewire components + routes (storefront middleware group):\n   - Storefront\\Home (dynamic sections from theme settings: hero, featured collections, featured products etc. per spec 04)\n   - Storefront\\Collections\\Index (all collections grid), Storefront\\Collections\\Show (product grid + filters/sort/pagination per spec 04)\n   - Storefront\\Products\\Show (variant selection via options, image gallery, add-to-cart button which can dispatch an event/stub until Phase 4 implements cart — wire the UI now, the actual CartService lands in Phase 4; leave a clearly-marked integration point)\n   - Storefront\\Pages\\Show (CMS page rendering)\n   - Search components are Phase 8 — add a search icon/placeholder in header only.\n   Routes per spec 02 storefront section: /, /collections, /collections/{handle}, /products/{handle}, /pages/{handle} etc. — check spec 02 for exact paths/names.\n8. Seeders: ThemeSeeder (themes + files + settings), PageSeeder, NavigationSeeder per spec 07, wired into DatabaseSeeder (idempotent).\n9. Tests: roadmap maps no dedicated Phase 3 feature test files, but you MUST add storefront rendering coverage (this protects later phases): create tests/Feature/Storefront/StorefrontPagesTest.php with cases: home renders 200 with store name + products, collections index renders, collection show renders products with pagination, product page renders title/price/options, CMS page renders published page, draft page 404s, 404 for unknown product/collection handle. Use createStoreContext() + Host header pattern from existing tenancy tests.\n\nQUALITY BARS:\n- php artisan migrate:fresh --seed succeeds; storefront pages render with seeded data (verify by hitting routes in feature tests; also npm run build must succeed if you touch CSS/JS).\n- Full suite green: php artisan test --compact. Pint clean (vendor/bin/pint --dirty --format agent).\n- Explicit return types, casts(), PHP 8.4, curly braces, no em-dashes. Polished UI: consistent spacing, hover/focus states, responsive (sm/md/lg/xl), dark mode.\n\nFinal message: files created/changed (grouped), key decisions (theme settings shape, section rendering approach, add-to-cart stub location for Phase 4), test summary."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1309,"cache_read_input_tokens":105686,"output_tokens":2034,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1309,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2034,"cache_read_input_tokens":105686,"cache_creation_input_tokens":1309,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1309},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtByJimW62qHA7ZfEHM8","type":"assistant","uuid":"dcff7caf-9e10-4588-9ecc-49b1f985ea12","timestamp":"2026-06-09T18:52:12.356Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"queue-operation","operation":"enqueue","timestamp":"2026-06-09T19:11:44.344Z","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","content":"/btw which llm do the subagents use"}
{"type":"queue-operation","operation":"remove","timestamp":"2026-06-09T19:20:40.114Z","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"parentUuid":"dcff7caf-9e10-4588-9ecc-49b1f985ea12","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01UNNgsBaNoFM7ygx68LjVCa","type":"tool_result","content":[{"type":"text","text":"Phase 3 is complete. All quality gates pass: `php artisan migrate:fresh --seed` succeeds, full suite green (98 passed, 5 todos, 0 failures), Pint clean, `npm run build` succeeds, and seeded pages were smoke-checked through the HTTP kernel against `shop.test` (/, /collections, /collections/new-arrivals, /products/{handle}, /pages/about all 200; unknown handles 404 with styled error page).\n\n## Files created/changed\n\n**Migrations** (`database/migrations/2026_06_09_2000xx_*`): themes, theme_files, theme_settings (theme_id PK, JSON settings), pages, navigation_menus, navigation_items, with the spec's uniques/indexes; enums as `$table->enum()` (TEXT+CHECK on SQLite, matching Phase 2 style).\n\n**Models/Enums/Factories**: `Theme` (BelongsToStore, hasMany files, hasOne settings), `ThemeFile` (no timestamps), `ThemeSettings` (theme_id PK, `settings_json` array cast, cache invalidation on saved/deleted), `Page` (BelongsToStore, `scopePublished`), `NavigationMenu` (BelongsToStore, ordered items), `NavigationItem` (no timestamps); enums `ThemeStatus`, `PageStatus`, `NavigationItemType`; 6 factories with spec states (`draft`, `archived`, `page()/collection()/product()`). Also added `scopePublished` to `Product` and `Collection`.\n\n**Services**: `app/Services/ThemeSettingsService.php` (singleton; `defaults()` is the canonical flat-key settings shape, stored settings `array_replace`d over defaults; per-store cache `theme_settings:{storeId}`, 5-min TTL plus model-event invalidation) and `app/Services/NavigationService.php` (`buildTree(NavigationMenu): array`, `resolveUrl(NavigationItem): string`, cached `tree($handle)` per store, 5-min TTL; bulk handle-map resolution, items with deleted resources omitted). Plus `app/Support/Storefront/PriceFormatter.php` (`24.99 EUR` format).\n\n**Layout/components**: Replaced `resources/views/layouts/storefront.blade.php` with the full shell (skip link, dismissible announcement bar persisted in localStorage, sticky header with main-menu nav + mobile drawer + search/account/cart icons, footer with footer-menu/social/payment row, clearly marked Phase 4 cart-drawer mount point); partials in `resources/views/storefront/partials/` (header, footer, announcement-bar, collection-card, collection-filters). Eight components in `resources/views/components/storefront/` used as `<x-storefront.price>` etc.: product-card, price, badge, quantity-selector (Alpine + `$wire.entangle`), address-form, order-summary, breadcrumbs (with JSON-LD), pagination. Styled storefront 404/503 in `resources/views/storefront/errors/` wired via host-aware render hooks in `bootstrap/app.php`. Dark-mode `dark:` variants and focus-visible rings throughout; `.sf-prose` rich-text styles and theme color CSS vars (`--sf-primary/--sf-secondary`) added to `resources/css/app.css`.\n\n**Livewire pages + routes** (`routes/web.php`, storefront middleware group): `Storefront\\Home` (theme-driven section order: hero, featured collections, featured products, newsletter, rich-text), `Collections\\Index`, `Collections\\Show` (in-stock/price/type/vendor filters, 4 sort options, paginated 12/page from theme settings, active filter pills, mobile filter drawer), `Products\\Show` (option pills/selects/color swatches, image gallery with thumbnails, stock messaging live regions, quantity selector), `Pages\\Show`. `Livewire::addPersistentMiddleware([ResolveStore::class])` keeps tenant scoping on Livewire update requests.\n\n**Seeders**: ThemeSeeder, PageSeeder (5 full CMS pages), NavigationSeeder per spec 07, idempotent (verified by double-seeding: still 2 themes / 5 pages / 3 menus / 13 items), wired into DatabaseSeeder.\n\n**Tests**: `tests/Feature/Storefront/StorefrontPagesTest.php` (12 cases: all required cases plus theme-driven home, navigation rendering, cross-store isolation, and a Livewire variant-selection/add-to-cart test) and `tests/Feature/Storefront/ThemeAndNavigationServicesTest.php` (7 cases: defaults, merge, draft-theme ignore, cache invalidation, tree building, broken-link omission, URL resolution). Tests use `createStoreContext()` + full `http://{hostname}/path` URLs (the Host header alone does not drive ResolveStore).\n\n## Key decisions\n\n- **Theme settings shape**: flat keys matching spec 07 (`hero_heading`, `featured_collection_handles`, `products_per_page`, ...) plus a `sections` ordered list; `ThemeSettingsService::defaults()` is canonical so the storefront renders fully without any theme row.\n- **Section rendering**: Home loops `sections` and `@include`s `resources/views/storefront/sections/{name}.blade.php`, so reordering/toggling is purely settings-driven.\n- **Add-to-cart stub**: `Products\\Show::addToCart()` validates the selected variant/stock, then dispatches the `cart-updated` browser event (`variantId`, `itemCount`) and shows \"Added to cart\"; the method body carries a `Phase 4 integration point` comment for CartService, and the layout has a marked mount point for the global cart drawer. Header cart button and order-summary discount input are also comment-marked for Phase 4.\n- **Component namespace**: components live in `resources/views/components/storefront/` so the default `<x-storefront.product-card>` dot syntax works with zero registration (the roadmap's alternative `anonymousComponentPath` namespace would force `::` syntax).\n- One noteworthy bug found en route: `__('Pagination')` resolves to the framework's `pagination.php` lang group (array) on macOS's case-insensitive filesystem; the pagination nav uses a literal `aria-label=\"Pagination\"` with an explanatory comment."},{"type":"text","text":"agentId: a23bd9da03123eb37 (use SendMessage with to: 'a23bd9da03123eb37' to continue this agent)\n<usage>subagent_tokens: 251872\ntool_uses: 170\nduration_ms: 1707752</usage>"}]}]},"uuid":"45bdea36-84e8-4173-a438-833dde839519","timestamp":"2026-06-09T19:20:40.112Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 3 (Themes, Pages, Navigation, Storefront Layout) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1 (tenancy/auth/policies) and 2 (catalog: products/variants/inventory/collections/media) are complete and committed. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 3\" section (lines ~349-440).\n- specs/01-DATABASE-SCHEMA.md — themes, theme_files, theme_settings, pages, navigation_menus, navigation_items tables.\n- specs/04-STOREFRONT-UI.md — FULL file (layout, home sections, collection/product pages, components, dark mode, accessibility requirements).\n- specs/07-SEEDERS-AND-TEST-DATA.md — ThemeSeeder, PageSeeder, NavigationSeeder definitions.\n- Study Phase 1/2 conventions: app/Models/Concerns/BelongsToStore.php, app/Enums, app/Services, resources/views/layouts/storefront.blade.php (minimal placeholder from Phase 1 — you will replace it), tests/Pest.php helpers, database/seeders/DatabaseSeeder.php.\n\nAlso activate relevant skills knowledge: this is heavy Livewire v4 + Tailwind v4 + Blade work. Components must look polished and production-grade, with dark: variants throughout.\n\nDELIVERABLES:\n1. Migrations: themes, theme_files, theme_settings, pages, navigation_menus, navigation_items per spec 01 (enums TEXT+CHECK, follow indexes/uniques).\n2. Models + factories: Theme, ThemeFile, ThemeSettings, Page, NavigationMenu, NavigationItem. BelongsToStore on themes, pages, navigation_menus (per Phase 1 trait list). Relationships per roadmap.\n3. Enums: ThemeStatus, PageStatus, NavigationItemType.\n4. Storefront Blade layout structure per roadmap Step 3.3 in resources/views/ (follow spec 04 layout: header with nav, announcement bar, main, footer, cart drawer placeholder slot for Phase 4). Blade components per roadmap: product-card, price, badge, quantity-selector, address-form, order-summary, breadcrumbs, pagination (storefront namespace, e.g. <x-storefront.product-card>). Dark mode dark: variants everywhere. Skip links + ARIA basics per spec 04.\n5. ThemeSettingsService: singleton registered in AppServiceProvider, loads + caches active theme settings for current store (cache invalidation on update).\n6. App\\Services\\NavigationService: buildTree(NavigationMenu): array, resolveUrl(NavigationItem): string (link/page/collection/product types), per-store cache 5-min TTL.\n7. Storefront Livewire components + routes (storefront middleware group):\n   - Storefront\\Home (dynamic sections from theme settings: hero, featured collections, featured products etc. per spec 04)\n   - Storefront\\Collections\\Index (all collections grid), Storefront\\Collections\\Show (product grid + filters/sort/pagination per spec 04)\n   - Storefront\\Products\\Show (variant selection via options, image gallery, add-to-cart button which can dispatch an event/stub until Phase 4 implements cart — wire the UI now, the actual CartService lands in Phase 4; leave a clearly-marked integration point)\n   - Storefront\\Pages\\Show (CMS page rendering)\n   - Search components are Phase 8 — add a search icon/placeholder in header only.\n   Routes per spec 02 storefront section: /, /collections, /collections/{handle}, /products/{handle}, /pages/{handle} etc. — check spec 02 for exact paths/names.\n8. Seeders: ThemeSeeder (themes + files + settings), PageSeeder, NavigationSeeder per spec 07, wired into DatabaseSeeder (idempotent).\n9. Tests: roadmap maps no dedicated Phase 3 feature test files, but you MUST add storefront rendering coverage (this protects later phases): create tests/Feature/Storefront/StorefrontPagesTest.php with cases: home renders 200 with store name + products, collections index renders, collection show renders products with pagination, product page renders title/price/options, CMS page renders published page, draft page 404s, 404 for unknown product/collection handle. Use createStoreContext() + Host header pattern from existing tenancy tests.\n\nQUALITY BARS:\n- php artisan migrate:fresh --seed succeeds; storefront pages render with seeded data (verify by hitting routes in feature tests; also npm run build must succeed if you touch CSS/JS).\n- Full suite green: php artisan test --compact. Pint clean (vendor/bin/pint --dirty --format agent).\n- Explicit return types, casts(), PHP 8.4, curly braces, no em-dashes. Polished UI: consistent spacing, hover/focus states, responsive (sm/md/lg/xl), dark mode.\n\nFinal message: files created/changed (grouped), key decisions (theme settings shape, section rendering approach, add-to-cart stub location for Phase 4), test summary.","agentId":"a23bd9da03123eb37","agentType":"general-purpose","content":[{"type":"text","text":"Phase 3 is complete. All quality gates pass: `php artisan migrate:fresh --seed` succeeds, full suite green (98 passed, 5 todos, 0 failures), Pint clean, `npm run build` succeeds, and seeded pages were smoke-checked through the HTTP kernel against `shop.test` (/, /collections, /collections/new-arrivals, /products/{handle}, /pages/about all 200; unknown handles 404 with styled error page).\n\n## Files created/changed\n\n**Migrations** (`database/migrations/2026_06_09_2000xx_*`): themes, theme_files, theme_settings (theme_id PK, JSON settings), pages, navigation_menus, navigation_items, with the spec's uniques/indexes; enums as `$table->enum()` (TEXT+CHECK on SQLite, matching Phase 2 style).\n\n**Models/Enums/Factories**: `Theme` (BelongsToStore, hasMany files, hasOne settings), `ThemeFile` (no timestamps), `ThemeSettings` (theme_id PK, `settings_json` array cast, cache invalidation on saved/deleted), `Page` (BelongsToStore, `scopePublished`), `NavigationMenu` (BelongsToStore, ordered items), `NavigationItem` (no timestamps); enums `ThemeStatus`, `PageStatus`, `NavigationItemType`; 6 factories with spec states (`draft`, `archived`, `page()/collection()/product()`). Also added `scopePublished` to `Product` and `Collection`.\n\n**Services**: `app/Services/ThemeSettingsService.php` (singleton; `defaults()` is the canonical flat-key settings shape, stored settings `array_replace`d over defaults; per-store cache `theme_settings:{storeId}`, 5-min TTL plus model-event invalidation) and `app/Services/NavigationService.php` (`buildTree(NavigationMenu): array`, `resolveUrl(NavigationItem): string`, cached `tree($handle)` per store, 5-min TTL; bulk handle-map resolution, items with deleted resources omitted). Plus `app/Support/Storefront/PriceFormatter.php` (`24.99 EUR` format).\n\n**Layout/components**: Replaced `resources/views/layouts/storefront.blade.php` with the full shell (skip link, dismissible announcement bar persisted in localStorage, sticky header with main-menu nav + mobile drawer + search/account/cart icons, footer with footer-menu/social/payment row, clearly marked Phase 4 cart-drawer mount point); partials in `resources/views/storefront/partials/` (header, footer, announcement-bar, collection-card, collection-filters). Eight components in `resources/views/components/storefront/` used as `<x-storefront.price>` etc.: product-card, price, badge, quantity-selector (Alpine + `$wire.entangle`), address-form, order-summary, breadcrumbs (with JSON-LD), pagination. Styled storefront 404/503 in `resources/views/storefront/errors/` wired via host-aware render hooks in `bootstrap/app.php`. Dark-mode `dark:` variants and focus-visible rings throughout; `.sf-prose` rich-text styles and theme color CSS vars (`--sf-primary/--sf-secondary`) added to `resources/css/app.css`.\n\n**Livewire pages + routes** (`routes/web.php`, storefront middleware group): `Storefront\\Home` (theme-driven section order: hero, featured collections, featured products, newsletter, rich-text), `Collections\\Index`, `Collections\\Show` (in-stock/price/type/vendor filters, 4 sort options, paginated 12/page from theme settings, active filter pills, mobile filter drawer), `Products\\Show` (option pills/selects/color swatches, image gallery with thumbnails, stock messaging live regions, quantity selector), `Pages\\Show`. `Livewire::addPersistentMiddleware([ResolveStore::class])` keeps tenant scoping on Livewire update requests.\n\n**Seeders**: ThemeSeeder, PageSeeder (5 full CMS pages), NavigationSeeder per spec 07, idempotent (verified by double-seeding: still 2 themes / 5 pages / 3 menus / 13 items), wired into DatabaseSeeder.\n\n**Tests**: `tests/Feature/Storefront/StorefrontPagesTest.php` (12 cases: all required cases plus theme-driven home, navigation rendering, cross-store isolation, and a Livewire variant-selection/add-to-cart test) and `tests/Feature/Storefront/ThemeAndNavigationServicesTest.php` (7 cases: defaults, merge, draft-theme ignore, cache invalidation, tree building, broken-link omission, URL resolution). Tests use `createStoreContext()` + full `http://{hostname}/path` URLs (the Host header alone does not drive ResolveStore).\n\n## Key decisions\n\n- **Theme settings shape**: flat keys matching spec 07 (`hero_heading`, `featured_collection_handles`, `products_per_page`, ...) plus a `sections` ordered list; `ThemeSettingsService::defaults()` is canonical so the storefront renders fully without any theme row.\n- **Section rendering**: Home loops `sections` and `@include`s `resources/views/storefront/sections/{name}.blade.php`, so reordering/toggling is purely settings-driven.\n- **Add-to-cart stub**: `Products\\Show::addToCart()` validates the selected variant/stock, then dispatches the `cart-updated` browser event (`variantId`, `itemCount`) and shows \"Added to cart\"; the method body carries a `Phase 4 integration point` comment for CartService, and the layout has a marked mount point for the global cart drawer. Header cart button and order-summary discount input are also comment-marked for Phase 4.\n- **Component namespace**: components live in `resources/views/components/storefront/` so the default `<x-storefront.product-card>` dot syntax works with zero registration (the roadmap's alternative `anonymousComponentPath` namespace would force `::` syntax).\n- One noteworthy bug found en route: `__('Pagination')` resolves to the framework's `pagination.php` lang group (array) on macOS's case-insensitive filesystem; the pagination nav uses a literal `aria-label=\"Pagination\"` with an explanatory comment."}],"totalDurationMs":1707752,"totalTokens":251872,"totalToolUseCount":170,"usage":{"input_tokens":2,"cache_creation_input_tokens":1521,"cache_read_input_tokens":248152,"output_tokens":2197,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":1521},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2197,"cache_read_input_tokens":248152,"cache_creation_input_tokens":1521,"cache_creation":{"ephemeral_5m_input_tokens":1521,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":9,"searchCount":0,"bashCount":51,"editFileCount":91,"linesAdded":4323,"linesRemoved":96,"otherToolCount":19}},"sourceToolAssistantUUID":"dcff7caf-9e10-4588-9ecc-49b1f985ea12","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"45bdea36-84e8-4173-a438-833dde839519","isSidechain":false,"attachment":{"type":"queued_command","prompt":"/btw which llm do the subagents use","source_uuid":"b0604f65-58ad-4177-b3f0-24ab0c9b4864","commandMode":"prompt"},"type":"attachment","uuid":"7dd7b102-d0c6-47f2-8fa4-d176ea242745","timestamp":"2026-06-09T19:20:40.114Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7dd7b102-d0c6-47f2-8fa4-d176ea242745","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01U8FASwtMjR9PiJFoKSi4tV","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISwAMKYggOGAIqQLEyjyAnWuZjkRHDdYVCHOA3ZJjfTwZaqL9+EEjrNaC4clI+YleNfS2ySjNndvPBrbm9BVel6bdlCKCF2S4x/TEyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzpDKT59aaIiXMO7VUaDKskYyq46muZ6t0UCiIwjBQ32vRffpA3038n8JsyMQoGGxMNJgiGBBN1MZKr4M7VVG83k2P+BZNs2kVKz3dxKosCml+lvyURVm/aSkav1obdZfWAdniKP08K+wzTlm2MyS/QsPyS/Sg3fnDpuyE4+mAkxSaRuRvMYloiOs3fn6trcg2tTRPi7VctPt3YVPGZ+q5mzayi+QsCNTRcHFnL55O/zNIrqEVA3KiKy08dke65Y6jyAkf1uZsa3Cdb/pL+KzQhVdDoX5e9u1EG2QP3OXQkzJ6n+AfvPPaFKFwnFkHZKxHx7kRSjwqDaHOPYpHWrWuQfRbsrkl7qeH5ghZOqreJIPMcyUGSRlI9R+NLHk8tCtJl5nRpFvSb9VkqtsQ2X9xz2VLUj2a4eUUycLq9lYRIZkKGuvf66CfNu6EKmvPygAdUBiZ/05dL0rwcGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":64,"cache_creation_input_tokens":4321,"cache_read_input_tokens":106995,"output_tokens":415,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4321,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":64,"output_tokens":415,"cache_read_input_tokens":106995,"cache_creation_input_tokens":4321,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4321},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtEBLTWbXsiVZTWnSUwQ","type":"assistant","uuid":"2d382785-0e26-4b05-ac9c-ffa0817e214c","timestamp":"2026-06-09T19:20:50.133Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2d382785-0e26-4b05-ac9c-ffa0817e214c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01U8FASwtMjR9PiJFoKSi4tV","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISyAQKYwgOGAIqQGAlF2ztQ7MWxOvHFXykNhWVRemluxyfFzae1/u0V/BMJrKD9IWBY1XdLZ/tEywbycHl5AduSd1/z6I1Zyy6xHQyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMsm5ZfEAfAaXKS0H4Ggyjs9jUV59CM6wjz2AiMOmrTb2PeAtClf/Hod8RxNn2iTWBcWbz/3qOKN3zkaOY9Z+NrdvVq20dxuTzc/jjHyqSA3mHj1dvJHYdKck4NcfTuZk/2PNoRUeloSH5aK8uj3kx+O4fpYJPR0Bvj1vpYjYsYXydHQJge2yqmjiW0ZpCt4ouBzXUtTnFWu9/K+atQa5W5IRyCLvm7jFMsTFPzJQP02+bijuO5PQqg+Rkbwvsn4O/JrAuQu9AkVvZq1lygPhmaAXUxswbOhQtOiqepYrpFfq5rQj7ShecWMTpdGAPB/oa4PXxqCuleO/7D/E5eH6DeCtljRtrJn8KPjpkbLTGNw93XsKvPY8jXk3tfHMa5PkFf8191jYQ21IE8J4hgyZbj7MbRoODkY7uGblVGCRmKQ9uSUDL0dbbfw1dWwTlsMl4YhLuzmlgXVOXbG79DtRmPXDbgINY04/jKLTyOBxjMwnIz4ve3k0gjreZvNHKUzvDfYzi+4TOTie3nwewcuMbb/QXskF7rGilWzOVS92PFEvHdfG+6Y5aeI51Bagv33/t/X1t1AyJj+ll/Ns6cDCp5FsQfRybbMb8l7Izj9qsFFX2SG1Ej9GmmD7mWYnF98IuyxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":64,"cache_creation_input_tokens":4321,"cache_read_input_tokens":106995,"output_tokens":415,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4321,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":64,"output_tokens":415,"cache_read_input_tokens":106995,"cache_creation_input_tokens":4321,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4321},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtEBLTWbXsiVZTWnSUwQ","type":"assistant","uuid":"a3787fa5-800f-49d5-be14-fe39274f517d","timestamp":"2026-06-09T19:20:50.133Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a3787fa5-800f-49d5-be14-fe39274f517d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01U8FASwtMjR9PiJFoKSi4tV","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_013UEbY48J3pkK4bHTxz3oFU","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 3: Themes, pages, navigation, storefront layout and catalog pages\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 3"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":64,"cache_creation_input_tokens":4321,"cache_read_input_tokens":106995,"output_tokens":415,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4321,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":64,"output_tokens":415,"cache_read_input_tokens":106995,"cache_creation_input_tokens":4321,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4321},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtEBLTWbXsiVZTWnSUwQ","type":"assistant","uuid":"3dacd748-acbb-432f-9420-664577466e02","timestamp":"2026-06-09T19:20:51.473Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"3dacd748-acbb-432f-9420-664577466e02","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"3dacd748-acbb-432f-9420-664577466e02","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_013UEbY48J3pkK4bHTxz3oFU","type":"tool_result","content":"  Tests:    5 todos, 98 passed (244 assertions)\n  Duration: 4.40s\n\n5aee8dc4 Phase 3: Themes, pages, navigation, storefront layout and catalog pages","is_error":false}]},"uuid":"29600ec7-5a17-4ae7-b01d-2b568b732204","timestamp":"2026-06-09T19:20:56.302Z","toolUseResult":{"stdout":"  Tests:    5 todos, 98 passed (244 assertions)\n  Duration: 4.40s\n\n5aee8dc4 Phase 3: Themes, pages, navigation, storefront layout and catalog pages","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"3dacd748-acbb-432f-9420-664577466e02","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"29600ec7-5a17-4ae7-b01d-2b568b732204","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01NS9CYsAcVXeRrrZQTLiYSD","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01UgdHNdKoevzsPXkFMQ4Jnd","name":"Edit","input":{"replace_all":false,"file_path":"/Users/fabianwesner/Herd/shop/specs/progress.md","old_string":"| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |","new_string":"| 3 | Themes, pages, navigation, storefront layout + components | DONE (commit 5aee8dc4) | full suite 98 passed, 5 todos; Storefront/* rendering tests added |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | in progress | Unit/*, Cart/CartServiceTest, Checkout/* |"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":553,"cache_read_input_tokens":111316,"output_tokens":378,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":553,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":378,"cache_read_input_tokens":111316,"cache_creation_input_tokens":553,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":553},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtECR94uvEcTVkYt8uXB","type":"assistant","uuid":"cf5ef2e2-69fb-4ec7-9122-60833509d283","timestamp":"2026-06-09T19:21:02.431Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cf5ef2e2-69fb-4ec7-9122-60833509d283","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01UgdHNdKoevzsPXkFMQ4Jnd","type":"tool_result","content":"The file /Users/fabianwesner/Herd/shop/specs/progress.md has been updated successfully. (file state is current in your context — no need to Read it back)"}]},"uuid":"b3d7c21e-667b-4b19-b61e-3e010927461f","timestamp":"2026-06-09T19:21:02.448Z","toolUseResult":{"filePath":"/Users/fabianwesner/Herd/shop/specs/progress.md","oldString":"| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |","newString":"| 3 | Themes, pages, navigation, storefront layout + components | DONE (commit 5aee8dc4) | full suite 98 passed, 5 todos; Storefront/* rendering tests added |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | in progress | Unit/*, Cart/CartServiceTest, Checkout/* |","originalFile":"# Implementation Progress\n\nTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n\n| Phase | Scope | Status | Tests |\n|-------|-------|--------|-------|\n| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |\n| 2 | Catalog: products, options, variants, inventory, collections, media | DONE | full suite 79 passed, 5 todos (4 deferred to P5, 1 to P4) |\n| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |\n| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |\n| 6 | Customer accounts | pending | Customers/*, finish CustomerAuthTest |\n| 7 | Admin panel (all sections) | pending | Admin/* |\n| API | Spec 02 REST APIs + Sanctum | pending | Api/*, Auth/SanctumTokenTest, Cart/CartApiTest |\n| 8 | Search (FTS5) | pending | Search/* |\n| 9 | Analytics | pending | Analytics/* |\n| 10 | Apps & webhooks | pending | Webhooks/* |\n| 11 | Polish, seeders (spec 07), error pages, dark mode, a11y | pending | - |\n| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | pending | Browser/* |\n\n## Log\n\n- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n- 2026-06-09: Phase 2 done. Catalog migrations (9 tables), models, enums, ProductService/VariantMatrixService/InventoryService/MediaService, HandleGenerator, ProcessMediaUpload job (GD), Collection+Product seeders (25 products, 127 variants). Order-reference checks implemented behind Schema::hasTable('order_lines') guard; 3 order-dependent test cases todo'd for Phase 5.\n","structuredPatch":[{"oldStart":6,"oldLines":8,"newStart":6,"newLines":8,"lines":[" |-------|-------|--------|-------|"," | 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |"," | 2 | Catalog: products, options, variants, inventory, collections, media | DONE | full suite 79 passed, 5 todos (4 deferred to P5, 1 to P4) |","-| 3 | Themes, pages, navigation, storefront layout + components | pending | (rendering covered later) |","-| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | pending | Unit/*, Cart/CartServiceTest, Checkout/* |","+| 3 | Themes, pages, navigation, storefront layout + components | DONE (commit 5aee8dc4) | full suite 98 passed, 5 todos; Storefront/* rendering tests added |","+| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | in progress | Unit/*, Cart/CartServiceTest, Checkout/* |"," | 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |"," | 6 | Customer accounts | pending | Customers/*, finish CustomerAuthTest |"," | 7 | Admin panel (all sections) | pending | Admin/* |"]}],"userModified":false,"replaceAll":false},"sourceToolAssistantUUID":"cf5ef2e2-69fb-4ec7-9122-60833509d283","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b3d7c21e-667b-4b19-b61e-3e010927461f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01HMsi1jrNHEhEBgXcnkK1X5","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIShQoKYggOGAIqQD7xbYj+nFVu6DAkBaJOSEZmdYgz0e2htqKmvkqon5B2yjwwOSJhykRjrmb7GOBFrqM+93V0w7HvUcASWZDdl14yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxJFz/dymT9/iTXgXMaDBZ7JxyVAGfvqyDzaSIw1yR/YDSux4v6NAJGek5Rn9CD7B3TcUtfUYoIDesmP3rbp7BEOZsQj3/tvghKobXGKtAI6X+3YvoLbpI2tCrPgJWkg08BUtgbNs1X6T4ILbIndPM47LrYICdLE79P7dqkxQ8ypcT+gO4/5aPenFPnaM3a7rugBRxYGcyEcJ2cJpMr/9a6gsKEbo6MDVRTmd+GYZP4ybtZJMh8ukoYza3aUsavBLYC3dTYcNLy4zccLDausxG8YSCZlfDIHcepEZ1O1wByXfJsYDmSTSeiieARCco02byFJHr4LWtTBeJVRNzycYllPtG5nJk0SBBNxgQs5SR/EaWNwnH3iXnYggf/ghj2Ix6vQ3Y39h6fiaPbz9C3np8g/PW267qlDifNKeoarjVk9tk14B7fBD4Z6XrfogR8T0/76iIABgFDDoKQvpEKIEaSqjd3ueB412+WOMu8npEj3aiIEqAsyNDTSJGI82q9pS3kJ796NV1e85/PrJbz3lLU993cm2AI4GnVY7ntjcm1szcsDWStkS4DU8euucZQBU2qwvohbkfYurNrnu64p6bsSxxcbGmAH3dJH8ZGoYP1jNo3UYJqnnGstKCnl/+7aOv3Nl2xGB8/HtTpWM+s18XvgbbB9dcFUUCFFFa5Y+W9kMtFdk6K5kXVsy7O322L8de/02ff0R5mgFM7sS4qV1auukp8Y6jdSwlcShjItOQyURHr+MZdDMajJmXPmHTPNixW0uR8dIVTR36V22Rcd+YCEJDd6hBaYaHc9Th8pfEKFBYqIQXZ6wFQDlp4+rbZbPb4zaGF1lExMcI3xAfBWBPvzvJRItwEnedAvE6UlbblIW+n28J1jXlXXNRJ6YwumIEjTwemwFhH6gbv2v//OL7Noo81lYb5ML8Y9sh6jRa5VMGJV+AEdsJghwa+kAWHxfiN8bFDsF4SvFU/uk+8YVPMdrqxxfEEiXwjL8p3j/ojNs4shARff8N0xAiCiWTU36zTHTpNwUI8ARilKqY0hBqbOwHqDcY7FPqM6dLmckTl/bAND8ouTiAMJZQs8FTpJ8D0ch+MRYgISoR4m9QpT6xrybJe5UDNUBx4kYvy1v/Erp0im2SG7Ld2fDH89GNET9K7MwYgwvEDJKWN7Sj1ZpSvh41ezN+PmbK/86uuFY73cr+cG/adZdZnuDVtVnN1UkQxX0Wnc8/rphA9q8Hrd5bsPs67jGtL6KgufQ8i01cCN5tEEHAUFKmppxMe+PKL33PEzTUYHu4gBonLWoIWeQwnG6RUQkGsA+Yu2ckND57s5ps41mXTWDQaa0qyUqAsN/3IRKKusKxbsw/Ryl7CCEh45tQixtINoRHUVQ4tDHX1MvNDtkWpa4rkju8w0aqMIlJ7DpOexF0M1sJIBym86YXCdp/Ar8hKgKbTZ62hX5gIJtVoTbB6Qag2sQ/Jd4DaG0sC1He78CMK+we/76Yz0cLfCW1q6D7VHfG+HcKUpt+00rdyoCjrpqBRwpa58IaEWBtIFdYAteQGkkY1LHm+mdzPitVZfNqeJAsp68grTtXNGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":435,"cache_read_input_tokens":111869,"output_tokens":3948,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":435,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3948,"cache_read_input_tokens":111869,"cache_creation_input_tokens":435,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":435},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtECsWL9YBKqB628eD4p","type":"assistant","uuid":"e019ff07-f8b9-4b20-ac24-0dee0add3108","timestamp":"2026-06-09T19:21:11.174Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e019ff07-f8b9-4b20-ac24-0dee0add3108","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01HMsi1jrNHEhEBgXcnkK1X5","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISnwIKYwgOGAIqQLzOFXhJMM8Fyr/Anhs8k26e3owbEAwpxaODg+sgQrQE72hCxN6Esgck9HYIhvvu73QDkxLDQ3wup52NpGI1b0gyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMCzGe9moziw5xC+clGgyeGR0sy0OTJX52n44iMKvL8KnFY5gaBIRTrDW3JwxPk0QSwLiJOe3tsCUO/utGfzjKx/01+Z+jasZYYhm1NCpqeUn89OAJ8Oy2aqEo+BzUjaFnRBVy5qSdQEWpFt43GBxpH0pyxol0g1NslvyRsAMhg1Om+fE8GTPEl0v6EnwuVAvt3rbPf41wOku4RhQI/MHffF4xhn4zdpbotaxxW985BHIqXujBshZblxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":435,"cache_read_input_tokens":111869,"output_tokens":3948,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":435,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3948,"cache_read_input_tokens":111869,"cache_creation_input_tokens":435,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":435},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtECsWL9YBKqB628eD4p","type":"assistant","uuid":"45c5b4d8-c35f-4e5e-bb68-da85ccc687fe","timestamp":"2026-06-09T19:21:11.175Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"45c5b4d8-c35f-4e5e-bb68-da85ccc687fe","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01HMsi1jrNHEhEBgXcnkK1X5","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_018ctAsNQE8BDQ1PzM8rZaHu","name":"Agent","input":{"description":"Implement Phase 4 Cart/Checkout","name":"phase4-cart-checkout","prompt":"You are implementing Phase 4 (Cart, Checkout, Discounts, Shipping, Taxes) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-3 are complete and committed: tenancy (current_store container binding, BelongsToStore trait, ResolveStore middleware), auth (web + customer guards, Pest helpers createStoreContext()/actingAsAdmin()/actingAsCustomer()), catalog (Product/ProductVariant/InventoryItem/InventoryService with reserve/release/commit/restock + InsufficientInventoryException), storefront layout (resources/views/layouts/storefront.blade.php with a marked cart-drawer mount point; Storefront\\Products\\Show has a marked addToCart() Phase 4 integration point; order-summary component has a marked discount input point; header cart button marked too). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 4\" section (lines ~442-597) and the test spec tables for tests/Unit/PricingEngineTest.php, DiscountCalculatorTest.php, TaxCalculatorTest.php, ShippingCalculatorTest.php, CartVersionTest.php (lines ~1007-1101) and tests/Feature/Cart/CartServiceTest.php, tests/Feature/Checkout/* (lines ~1276-1385).\n- specs/01-DATABASE-SCHEMA.md — carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings, discounts tables (exact columns).\n- specs/05-BUSINESS-LOGIC.md — cart rules, checkout state machine, pricing pipeline, discount rules, shipping zone matching, tax calculation sections (read all relevant sections fully; this is the heart of the system).\n- specs/04-STOREFRONT-UI.md — cart page, cart drawer, checkout UI, confirmation sections.\n- specs/07-SEEDERS-AND-TEST-DATA.md — ShippingSeeder, TaxSettingsSeeder, DiscountSeeder definitions.\n- Study existing conventions: app/Services/*, app/Models/*, app/Enums/*, app/Exceptions/*, tests/Pest.php, resources/views/components/storefront/*.\n\nDELIVERABLES:\n1. Migrations: carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings, discounts per spec 01. Money INTEGER cents, enums TEXT+CHECK, JSON columns as *_json TEXT.\n2. Models + factories (+ states): Cart, CartLine, Checkout, ShippingZone, ShippingRate, TaxSettings, Discount. BelongsToStore on carts, checkouts, discounts, shipping_zones per Phase 1 trait list.\n3. Enums: CartStatus, CheckoutStatus (Started, Addressed, ShippingSelected, PaymentPending/payment_selected — follow spec 01 exact stored values), DiscountType, DiscountValueType (Percent/Fixed/FreeShipping with lowercase stored values), DiscountStatus, ShippingRateType, TaxMode.\n4. Services (follow roadmap method signatures exactly):\n   - App\\Services\\CartService: create, addLine (validates product/variant active + inventory policy, increments existing line), updateLineQuantity (qty 0 removes), removeLine, getOrCreateForSession, mergeOnLogin (guest into customer cart, sums quantities, guest cart → abandoned). EVERY mutation increments cart version; CartVersionMismatchException (for API expected_version, used in API phase).\n   - App\\Services\\DiscountService: validate(code, store, cart) — active, date window, usage limit, minimum purchase from rules_json, case-insensitive; InvalidDiscountException with reason codes (not_found, expired, not_yet_active, usage_limit_reached, minimum_not_met, disabled). calculate(discount, subtotal, lines): DiscountResult — percent/fixed/free_shipping, proportional allocation across qualifying lines, rounding remainder to last qualifying line.\n   - App\\Services\\ShippingCalculator: getAvailableRates(store, address) — zone matching countries_json then regions_json, skip inactive rates, zero/empty handling when nothing requires shipping; calculate(rate, cart) — flat/weight/price range types per spec 05.\n   - App\\Services\\TaxCalculator: calculate(amount, settings, address): TaxResult; extractInclusive(gross, rateBasisPoints); addExclusive(net, rateBasisPoints). Integer math, basis points.\n   - App\\Services\\PricingEngine: calculate(Checkout): PricingResult — pipeline subtotal → discount → discounted subtotal → shipping (free_shipping zeroes it) → tax (inclusive extract vs exclusive add, shipping taxable per settings) → total. Deterministic. Snapshot to checkouts.totals_json.\n   - Value objects: App\\ValueObjects\\PricingResult (subtotal, discount, shipping, taxLines, taxTotal, total, currency), App\\ValueObjects\\TaxLine (name, rate bp, amount cents), plus DiscountResult/TaxResult as needed.\n   - App\\Services\\CheckoutService: state machine per roadmap step 4.8 — createFromCart (rejects empty cart), setAddress (started→addressed, validates email + required address fields, recalculates pricing), setShippingMethod (addressed→shipping_selected, validates rate zone matches address; auto/skip when nothing requires shipping with shipping=0), selectPaymentMethod (shipping_selected→payment_selected: sets expires_at, RESERVES inventory via InventoryService), expireCheckout (releases reserved inventory, →expired). completeCheckout belongs to Phase 5 (payments/orders) — define the method signature and guard but leave the order-creation integration clearly marked and throw a \\LogicException('Phase 5') for now, and todo the affected test cases (see below).\n   - Jobs: App\\Jobs\\ExpireAbandonedCheckouts (every 15 min in routes/console.php; expires past-due active checkouts, releases inventory), App\\Jobs\\CleanupAbandonedCarts (daily; active carts untouched 14 days → abandoned).\n5. Cart merge on customer login: wire CartService::mergeOnLogin into the customer login flow (Phase 1 built CustomerLoginController). Un-todo the cart-merge case in tests/Feature/Auth/CustomerAuthTest.php.\n6. Storefront UI (Livewire, polished, dark mode, responsive):\n   - Storefront\\CartDrawer mounted in the layout (slide-out: lines, qty controls, discount code input, subtotal, checkout button; listens for cart-updated events; header cart count badge live).\n   - Storefront\\Cart\\Show full cart page (/cart) with shipping estimate.\n   - Wire Products\\Show::addToCart() to CartService (replace the stub), session cart binding.\n   - Storefront\\Checkout\\Show multi-step (/checkout): Contact/Address → Shipping method → Payment method selection with stepper UI per spec 04. The actual payment submission/completion UI lands in Phase 5 — build the steps through payment method selection and leave the pay button integration point clearly marked.\n7. Seeders: ShippingSeeder, TaxSettingsSeeder, DiscountSeeder per spec 07 wired into DatabaseSeeder (idempotent). Adjust seeding order: TaxSettings, Shipping before products is fine per roadmap order (Organization...TaxSettingsSeeder, ShippingSeeder, then CollectionSeeder...).\n8. Tests — implement EXACTLY the roadmap table cases:\n   - tests/Unit/PricingEngineTest.php (14), DiscountCalculatorTest.php (13), TaxCalculatorTest.php (7), ShippingCalculatorTest.php (9), CartVersionTest.php (5).\n   - tests/Feature/Cart/CartServiceTest.php (12).\n   - tests/Feature/Checkout/CheckoutFlowTest.php (5 — the two cases requiring completed orders (\"completes full checkout happy path\", \"prevents duplicate orders\") → ->todo('Phase 5'); implement the rest including expiry/inventory release).\n   - tests/Feature/Checkout/CheckoutStateTest.php (9 — \"payment_selected to completed\" → todo Phase 5; rest fully).\n   - tests/Feature/Checkout/PricingIntegrationTest.php (5), DiscountTest.php (6 — \"increments usage count on order completion\" → todo Phase 5), ShippingTest.php (5), TaxTest.php (4).\n   - Add Livewire tests for CartDrawer/Cart page basics (add/update/remove via UI) in tests/Feature/Storefront/CartUiTest.php.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; full suite green (php artisan test --compact); vendor/bin/pint --dirty --format agent clean; npm run build succeeds if CSS/JS touched. Explicit return types, casts(), PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (pricing pipeline details, rounding allocation, checkout state values, session cart key), deferred-to-Phase-5 test list, full test summary. Also update specs/progress.md Phase 4 row + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":435,"cache_read_input_tokens":111869,"output_tokens":3948,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":435,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3948,"cache_read_input_tokens":111869,"cache_creation_input_tokens":435,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":435},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtECsWL9YBKqB628eD4p","type":"assistant","uuid":"65b44afb-2d09-46a6-b441-cad1100c3862","timestamp":"2026-06-09T19:21:48.305Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"65b44afb-2d09-46a6-b441-cad1100c3862","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_018ctAsNQE8BDQ1PzM8rZaHu","type":"tool_result","content":[{"type":"text","text":"Phase 4 is complete. Full suite: **202 passed, 8 todos, 0 failures**. `migrate:fresh --seed` succeeds, Pint clean, `npm run build` succeeds.\n\n## Files created/changed\n\n**Migrations** (`database/migrations/2026_06_09_3000xx_*`): carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings (store_id PK), discounts. Money as integer cents, enum columns with CHECK constraints, JSON as `*_json` text.\n\n**Models + factories**: `Cart`, `CartLine`, `Checkout`, `ShippingZone`, `ShippingRate`, `TaxSettings`, `Discount` in `app/Models/` with matching factories (states per spec 07: `forCustomer`/`converted`/`abandoned`, checkout payment states, `fixed()`/`freeShipping()`/`expired()`/`maxedOut()`/`automatic()`/`draft()`/`disabled()`, `inactive`/`weightBased`, plus `flatAmount()`/`rateBasisPoints()`/`pricesIncludeTax()` helpers). `BelongsToStore` on Cart, Checkout, Discount, ShippingZone per the Phase 1 trait list.\n\n**Enums**: `CartStatus`, `CheckoutStatus`, `DiscountType`, `DiscountValueType`, `DiscountStatus`, `ShippingRateType`, `TaxMode`.\n\n**Services** (`app/Services/`): `CartService`, `DiscountService`, `ShippingCalculator`, `TaxCalculator`, `PricingEngine`, `CheckoutService`. **Value objects** (`app/ValueObjects/`): `PricingResult`, `TaxLine`, `TaxResult`, `DiscountResult`. **Exceptions**: `CartVersionMismatchException`, `InvalidDiscountException` (with `reason` property), `InvalidCheckoutTransitionException`, `InvalidShippingRateException`.\n\n**Jobs**: `ExpireAbandonedCheckouts` (every 15 min), `CleanupAbandonedCarts` (daily, 14-day threshold) — scheduled in `routes/console.php`.\n\n**UI**: `Storefront\\CartDrawer` (mounted in `layouts/storefront.blade.php`, slide-out with qty steppers, discount input, totals), `Storefront\\Cart\\Show` (/cart, table + mobile cards + shipping estimate by country), `Storefront\\Checkout\\Show` (/checkout, 4-step stepper with edit links, address-form reuse, shipping-rate radio cards, payment method radios), shared `Concerns\\InteractsWithCart` trait. Header cart button now opens the drawer with a live Alpine count badge fed by `cart-updated` browser events. `Products\\Show::addToCart()` stub replaced with real CartService integration. Routes `/cart` + `/checkout` added.\n\n**Seeders**: `TaxSettingsSeeder` (19% inclusive, both stores), `ShippingSeeder` (Fashion: Domestic/EU/Rest of World; Electronics: free DE), `DiscountSeeder` (WELCOME10, FLAT5, FREESHIP, EXPIRED20, MAXED) — all idempotent, wired into `DatabaseSeeder` in roadmap order.\n\n**Login merge**: `CustomerLoginController` now merges the session guest cart into the customer cart after login (claims the guest cart if the customer has none).\n\n## Key decisions\n- **Session cart key**: `cart_id` (spec 05 §4.1); pre-checkout discount code lives in session `cart_discount_code` (carts have no discount column) and is copied to `checkouts.discount_code` at checkout creation.\n- **Checkout status enum**: `CheckoutStatus::PaymentSelected = 'payment_selected'` — case named after the spec 01/05 stored value; the roadmap's \"PaymentPending\" label conflicted with both.\n- **Merge semantics**: quantities are **summed** for duplicate variants (roadmap test table: 2+1=3), guest cart → abandoned; spec 05's MAX pseudocode was overridden per the task brief.\n- **Pricing pipeline**: subtotal → discount (percent uses `intdiv(subtotal*pct,100)`, so 10% of 4998 = 499 per roadmap) → discounted subtotal → shipping (zeroed by free_shipping or when nothing requires shipping) → tax → total. Tax-inclusive total = discounted subtotal + shipping (tax inside); exclusive adds tax on top. Shipping is taxable by default (`config_json.shipping_taxable`). Snapshot persisted to `totals_json` by the engine; invalid codes at recalc degrade to zero discount.\n- **Rounding**: per-line discount allocation rounds each line, last qualifying line gets the remainder (sum always exact). `TaxCalculator::addExclusive` uses **intdiv truncation** (spec tables demand 5499@19% = 1044 and 8999@7% = 629; spec 8.2's \"ROUND\" contradicts its own test fixtures); inclusive extraction uses `intdiv(gross*10000, 10000+rate)` per spec.\n- **Zone matching**: all matching zones' active rates are returned, ordered region-match > country-match > lowest zone id (the multi-zone unit test requires rates from every matching zone).\n- **State machine**: `setAddress` allowed from started/addressed/shipping_selected and resets shipping selection (re-pricing on address change); `selectPaymentMethod` reserves inventory in a transaction and sets `expires_at = +24h`; `expireCheckout` releases reservations only from payment_selected.\n\n## Deferred to Phase 5 (todo'd)\n- CheckoutFlowTest: \"completes full checkout happy path\", \"prevents duplicate orders from same checkout\"\n- CheckoutStateTest: \"transitions from payment_selected to completed\"\n- DiscountTest: \"increments usage count on order completion\"\n- `CheckoutService::completeCheckout()` guards the transition then throws `LogicException('Phase 5...')` with the order-creation integration point documented; the checkout page step 5 marks the pay-button mount point.\n\n## Test summary\n202 passed / 8 todos (4 new Phase 5 + 4 pre-existing from Phase 2/5 deferrals), 453 assertions. New: PricingEngineTest 14, DiscountCalculatorTest 13, TaxCalculatorTest 7, ShippingCalculatorTest 9, CartVersionTest 5, CartServiceTest 12, CheckoutFlowTest 3+2 todo, CheckoutStateTest 8+1 todo, PricingIntegrationTest 5, DiscountTest 5+1 todo, ShippingTest 5, TaxTest 4, CartUiTest 13 (Livewire + HTTP smoke). One Phase 3 test (\"stubs add to cart\") was updated to assert the real cart line instead of the stub payload. `specs/progress.md` Phase 4 row and log updated."},{"type":"text","text":"agentId: a1164194376804efc (use SendMessage with to: 'a1164194376804efc' to continue this agent)\n<usage>subagent_tokens: 257859\ntool_uses: 166\nduration_ms: 1714040</usage>"}]}]},"uuid":"14fba3e3-5064-4150-ae2f-a4451e861604","timestamp":"2026-06-09T19:50:22.347Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 4 (Cart, Checkout, Discounts, Shipping, Taxes) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-3 are complete and committed: tenancy (current_store container binding, BelongsToStore trait, ResolveStore middleware), auth (web + customer guards, Pest helpers createStoreContext()/actingAsAdmin()/actingAsCustomer()), catalog (Product/ProductVariant/InventoryItem/InventoryService with reserve/release/commit/restock + InsufficientInventoryException), storefront layout (resources/views/layouts/storefront.blade.php with a marked cart-drawer mount point; Storefront\\Products\\Show has a marked addToCart() Phase 4 integration point; order-summary component has a marked discount input point; header cart button marked too). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 4\" section (lines ~442-597) and the test spec tables for tests/Unit/PricingEngineTest.php, DiscountCalculatorTest.php, TaxCalculatorTest.php, ShippingCalculatorTest.php, CartVersionTest.php (lines ~1007-1101) and tests/Feature/Cart/CartServiceTest.php, tests/Feature/Checkout/* (lines ~1276-1385).\n- specs/01-DATABASE-SCHEMA.md — carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings, discounts tables (exact columns).\n- specs/05-BUSINESS-LOGIC.md — cart rules, checkout state machine, pricing pipeline, discount rules, shipping zone matching, tax calculation sections (read all relevant sections fully; this is the heart of the system).\n- specs/04-STOREFRONT-UI.md — cart page, cart drawer, checkout UI, confirmation sections.\n- specs/07-SEEDERS-AND-TEST-DATA.md — ShippingSeeder, TaxSettingsSeeder, DiscountSeeder definitions.\n- Study existing conventions: app/Services/*, app/Models/*, app/Enums/*, app/Exceptions/*, tests/Pest.php, resources/views/components/storefront/*.\n\nDELIVERABLES:\n1. Migrations: carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings, discounts per spec 01. Money INTEGER cents, enums TEXT+CHECK, JSON columns as *_json TEXT.\n2. Models + factories (+ states): Cart, CartLine, Checkout, ShippingZone, ShippingRate, TaxSettings, Discount. BelongsToStore on carts, checkouts, discounts, shipping_zones per Phase 1 trait list.\n3. Enums: CartStatus, CheckoutStatus (Started, Addressed, ShippingSelected, PaymentPending/payment_selected — follow spec 01 exact stored values), DiscountType, DiscountValueType (Percent/Fixed/FreeShipping with lowercase stored values), DiscountStatus, ShippingRateType, TaxMode.\n4. Services (follow roadmap method signatures exactly):\n   - App\\Services\\CartService: create, addLine (validates product/variant active + inventory policy, increments existing line), updateLineQuantity (qty 0 removes), removeLine, getOrCreateForSession, mergeOnLogin (guest into customer cart, sums quantities, guest cart → abandoned). EVERY mutation increments cart version; CartVersionMismatchException (for API expected_version, used in API phase).\n   - App\\Services\\DiscountService: validate(code, store, cart) — active, date window, usage limit, minimum purchase from rules_json, case-insensitive; InvalidDiscountException with reason codes (not_found, expired, not_yet_active, usage_limit_reached, minimum_not_met, disabled). calculate(discount, subtotal, lines): DiscountResult — percent/fixed/free_shipping, proportional allocation across qualifying lines, rounding remainder to last qualifying line.\n   - App\\Services\\ShippingCalculator: getAvailableRates(store, address) — zone matching countries_json then regions_json, skip inactive rates, zero/empty handling when nothing requires shipping; calculate(rate, cart) — flat/weight/price range types per spec 05.\n   - App\\Services\\TaxCalculator: calculate(amount, settings, address): TaxResult; extractInclusive(gross, rateBasisPoints); addExclusive(net, rateBasisPoints). Integer math, basis points.\n   - App\\Services\\PricingEngine: calculate(Checkout): PricingResult — pipeline subtotal → discount → discounted subtotal → shipping (free_shipping zeroes it) → tax (inclusive extract vs exclusive add, shipping taxable per settings) → total. Deterministic. Snapshot to checkouts.totals_json.\n   - Value objects: App\\ValueObjects\\PricingResult (subtotal, discount, shipping, taxLines, taxTotal, total, currency), App\\ValueObjects\\TaxLine (name, rate bp, amount cents), plus DiscountResult/TaxResult as needed.\n   - App\\Services\\CheckoutService: state machine per roadmap step 4.8 — createFromCart (rejects empty cart), setAddress (started→addressed, validates email + required address fields, recalculates pricing), setShippingMethod (addressed→shipping_selected, validates rate zone matches address; auto/skip when nothing requires shipping with shipping=0), selectPaymentMethod (shipping_selected→payment_selected: sets expires_at, RESERVES inventory via InventoryService), expireCheckout (releases reserved inventory, →expired). completeCheckout belongs to Phase 5 (payments/orders) — define the method signature and guard but leave the order-creation integration clearly marked and throw a \\LogicException('Phase 5') for now, and todo the affected test cases (see below).\n   - Jobs: App\\Jobs\\ExpireAbandonedCheckouts (every 15 min in routes/console.php; expires past-due active checkouts, releases inventory), App\\Jobs\\CleanupAbandonedCarts (daily; active carts untouched 14 days → abandoned).\n5. Cart merge on customer login: wire CartService::mergeOnLogin into the customer login flow (Phase 1 built CustomerLoginController). Un-todo the cart-merge case in tests/Feature/Auth/CustomerAuthTest.php.\n6. Storefront UI (Livewire, polished, dark mode, responsive):\n   - Storefront\\CartDrawer mounted in the layout (slide-out: lines, qty controls, discount code input, subtotal, checkout button; listens for cart-updated events; header cart count badge live).\n   - Storefront\\Cart\\Show full cart page (/cart) with shipping estimate.\n   - Wire Products\\Show::addToCart() to CartService (replace the stub), session cart binding.\n   - Storefront\\Checkout\\Show multi-step (/checkout): Contact/Address → Shipping method → Payment method selection with stepper UI per spec 04. The actual payment submission/completion UI lands in Phase 5 — build the steps through payment method selection and leave the pay button integration point clearly marked.\n7. Seeders: ShippingSeeder, TaxSettingsSeeder, DiscountSeeder per spec 07 wired into DatabaseSeeder (idempotent). Adjust seeding order: TaxSettings, Shipping before products is fine per roadmap order (Organization...TaxSettingsSeeder, ShippingSeeder, then CollectionSeeder...).\n8. Tests — implement EXACTLY the roadmap table cases:\n   - tests/Unit/PricingEngineTest.php (14), DiscountCalculatorTest.php (13), TaxCalculatorTest.php (7), ShippingCalculatorTest.php (9), CartVersionTest.php (5).\n   - tests/Feature/Cart/CartServiceTest.php (12).\n   - tests/Feature/Checkout/CheckoutFlowTest.php (5 — the two cases requiring completed orders (\"completes full checkout happy path\", \"prevents duplicate orders\") → ->todo('Phase 5'); implement the rest including expiry/inventory release).\n   - tests/Feature/Checkout/CheckoutStateTest.php (9 — \"payment_selected to completed\" → todo Phase 5; rest fully).\n   - tests/Feature/Checkout/PricingIntegrationTest.php (5), DiscountTest.php (6 — \"increments usage count on order completion\" → todo Phase 5), ShippingTest.php (5), TaxTest.php (4).\n   - Add Livewire tests for CartDrawer/Cart page basics (add/update/remove via UI) in tests/Feature/Storefront/CartUiTest.php.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; full suite green (php artisan test --compact); vendor/bin/pint --dirty --format agent clean; npm run build succeeds if CSS/JS touched. Explicit return types, casts(), PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (pricing pipeline details, rounding allocation, checkout state values, session cart key), deferred-to-Phase-5 test list, full test summary. Also update specs/progress.md Phase 4 row + log.","agentId":"a1164194376804efc","agentType":"general-purpose","content":[{"type":"text","text":"Phase 4 is complete. Full suite: **202 passed, 8 todos, 0 failures**. `migrate:fresh --seed` succeeds, Pint clean, `npm run build` succeeds.\n\n## Files created/changed\n\n**Migrations** (`database/migrations/2026_06_09_3000xx_*`): carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings (store_id PK), discounts. Money as integer cents, enum columns with CHECK constraints, JSON as `*_json` text.\n\n**Models + factories**: `Cart`, `CartLine`, `Checkout`, `ShippingZone`, `ShippingRate`, `TaxSettings`, `Discount` in `app/Models/` with matching factories (states per spec 07: `forCustomer`/`converted`/`abandoned`, checkout payment states, `fixed()`/`freeShipping()`/`expired()`/`maxedOut()`/`automatic()`/`draft()`/`disabled()`, `inactive`/`weightBased`, plus `flatAmount()`/`rateBasisPoints()`/`pricesIncludeTax()` helpers). `BelongsToStore` on Cart, Checkout, Discount, ShippingZone per the Phase 1 trait list.\n\n**Enums**: `CartStatus`, `CheckoutStatus`, `DiscountType`, `DiscountValueType`, `DiscountStatus`, `ShippingRateType`, `TaxMode`.\n\n**Services** (`app/Services/`): `CartService`, `DiscountService`, `ShippingCalculator`, `TaxCalculator`, `PricingEngine`, `CheckoutService`. **Value objects** (`app/ValueObjects/`): `PricingResult`, `TaxLine`, `TaxResult`, `DiscountResult`. **Exceptions**: `CartVersionMismatchException`, `InvalidDiscountException` (with `reason` property), `InvalidCheckoutTransitionException`, `InvalidShippingRateException`.\n\n**Jobs**: `ExpireAbandonedCheckouts` (every 15 min), `CleanupAbandonedCarts` (daily, 14-day threshold) — scheduled in `routes/console.php`.\n\n**UI**: `Storefront\\CartDrawer` (mounted in `layouts/storefront.blade.php`, slide-out with qty steppers, discount input, totals), `Storefront\\Cart\\Show` (/cart, table + mobile cards + shipping estimate by country), `Storefront\\Checkout\\Show` (/checkout, 4-step stepper with edit links, address-form reuse, shipping-rate radio cards, payment method radios), shared `Concerns\\InteractsWithCart` trait. Header cart button now opens the drawer with a live Alpine count badge fed by `cart-updated` browser events. `Products\\Show::addToCart()` stub replaced with real CartService integration. Routes `/cart` + `/checkout` added.\n\n**Seeders**: `TaxSettingsSeeder` (19% inclusive, both stores), `ShippingSeeder` (Fashion: Domestic/EU/Rest of World; Electronics: free DE), `DiscountSeeder` (WELCOME10, FLAT5, FREESHIP, EXPIRED20, MAXED) — all idempotent, wired into `DatabaseSeeder` in roadmap order.\n\n**Login merge**: `CustomerLoginController` now merges the session guest cart into the customer cart after login (claims the guest cart if the customer has none).\n\n## Key decisions\n- **Session cart key**: `cart_id` (spec 05 §4.1); pre-checkout discount code lives in session `cart_discount_code` (carts have no discount column) and is copied to `checkouts.discount_code` at checkout creation.\n- **Checkout status enum**: `CheckoutStatus::PaymentSelected = 'payment_selected'` — case named after the spec 01/05 stored value; the roadmap's \"PaymentPending\" label conflicted with both.\n- **Merge semantics**: quantities are **summed** for duplicate variants (roadmap test table: 2+1=3), guest cart → abandoned; spec 05's MAX pseudocode was overridden per the task brief.\n- **Pricing pipeline**: subtotal → discount (percent uses `intdiv(subtotal*pct,100)`, so 10% of 4998 = 499 per roadmap) → discounted subtotal → shipping (zeroed by free_shipping or when nothing requires shipping) → tax → total. Tax-inclusive total = discounted subtotal + shipping (tax inside); exclusive adds tax on top. Shipping is taxable by default (`config_json.shipping_taxable`). Snapshot persisted to `totals_json` by the engine; invalid codes at recalc degrade to zero discount.\n- **Rounding**: per-line discount allocation rounds each line, last qualifying line gets the remainder (sum always exact). `TaxCalculator::addExclusive` uses **intdiv truncation** (spec tables demand 5499@19% = 1044 and 8999@7% = 629; spec 8.2's \"ROUND\" contradicts its own test fixtures); inclusive extraction uses `intdiv(gross*10000, 10000+rate)` per spec.\n- **Zone matching**: all matching zones' active rates are returned, ordered region-match > country-match > lowest zone id (the multi-zone unit test requires rates from every matching zone).\n- **State machine**: `setAddress` allowed from started/addressed/shipping_selected and resets shipping selection (re-pricing on address change); `selectPaymentMethod` reserves inventory in a transaction and sets `expires_at = +24h`; `expireCheckout` releases reservations only from payment_selected.\n\n## Deferred to Phase 5 (todo'd)\n- CheckoutFlowTest: \"completes full checkout happy path\", \"prevents duplicate orders from same checkout\"\n- CheckoutStateTest: \"transitions from payment_selected to completed\"\n- DiscountTest: \"increments usage count on order completion\"\n- `CheckoutService::completeCheckout()` guards the transition then throws `LogicException('Phase 5...')` with the order-creation integration point documented; the checkout page step 5 marks the pay-button mount point.\n\n## Test summary\n202 passed / 8 todos (4 new Phase 5 + 4 pre-existing from Phase 2/5 deferrals), 453 assertions. New: PricingEngineTest 14, DiscountCalculatorTest 13, TaxCalculatorTest 7, ShippingCalculatorTest 9, CartVersionTest 5, CartServiceTest 12, CheckoutFlowTest 3+2 todo, CheckoutStateTest 8+1 todo, PricingIntegrationTest 5, DiscountTest 5+1 todo, ShippingTest 5, TaxTest 4, CartUiTest 13 (Livewire + HTTP smoke). One Phase 3 test (\"stubs add to cart\") was updated to assert the real cart line instead of the stub payload. `specs/progress.md` Phase 4 row and log updated."}],"totalDurationMs":1714040,"totalTokens":257859,"totalToolUseCount":166,"usage":{"input_tokens":2,"cache_creation_input_tokens":631,"cache_read_input_tokens":254731,"output_tokens":2495,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":631},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2495,"cache_read_input_tokens":254731,"cache_creation_input_tokens":631,"cache_creation":{"ephemeral_5m_input_tokens":631,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":8,"searchCount":0,"bashCount":52,"editFileCount":106,"linesAdded":6264,"linesRemoved":148,"otherToolCount":0}},"sourceToolAssistantUUID":"65b44afb-2d09-46a6-b441-cad1100c3862","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"14fba3e3-5064-4150-ae2f-a4451e861604","isSidechain":false,"attachment":{"type":"edited_text_file","filename":"/Users/fabianwesner/Herd/shop/specs/progress.md","snippet":"2\t\n3\tTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n4\t\n5\t| Phase | Scope | Status | Tests |\n6\t|-------|-------|--------|-------|\n7\t| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |\n8\t| 2 | Catalog: products, options, variants, inventory, collections, media | DONE | full suite 79 passed, 5 todos (4 deferred to P5, 1 to P4) |\n9\t| 3 | Themes, pages, navigation, storefront layout + components | DONE (commit 5aee8dc4) | full suite 98 passed, 5 todos; Storefront/* rendering tests added |\n10\t| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | DONE | full suite 202 passed, 8 todos; Unit/* (48 new), Cart/CartServiceTest (12), Checkout/* (34), Storefront/CartUiTest (13) |\n11\t| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | pending | Orders/*, Payments/* |\n12\t| 6 | Customer accounts | pending | Customers/*, finish CustomerAuthTest |\n13\t| 7 | Admin panel (all sections) | pending | Admin/* |\n14\t| API | Spec 02 REST APIs + Sanctum | pending | Api/*, Auth/SanctumTokenTest, Cart/CartApiTest |\n15\t| 8 | Search (FTS5) | pending | Search/* |\n16\t| 9 | Analytics | pending | Analytics/* |\n17\t| 10 | Apps & webhooks | pending | Webhooks/* |\n18\t| 11 | Polish, seeders (spec 07), error pages, dark mode, a11y | pending | - |\n19\t| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | pending | Browser/* |\n20\t\n21\t## Log\n22\t\n23\t- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n24\t- 2026-06-09: Phase 2 done. Catalog migrations (9 tables), models, enums, ProductService/VariantMatrixService/InventoryService/MediaService, HandleGenerator, ProcessMediaUpload job (GD), Collection+Product seeders (25 products, 127 variants). Order-reference checks implemented behind Schema::hasTable('order_lines') guard; 3 order-dependent test cases todo'd for Phase 5.\n25\t- 2026-06-09: Phase 4 done. Migrations for carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings, discounts. Models + factories + 7 enums. Services: CartService (session key `cart_id`, version bump on every mutation, sum-quantities merge on login), DiscountService (reason-coded InvalidDiscountException, largest-remainder allocation), ShippingCalculator (specificity-ordered zone matching, flat/weight/price rates), TaxCalculator (basis points, intdiv for exclusive add and inclusive extract), PricingEngine (deterministic pipeline, snapshot to totals_json; inclusive total = discounted subtotal + shipping), CheckoutService state machine (payment_selected reserves inventory + 24h expires_at; completeCheckout guarded, throws LogicException until Phase 5). Jobs ExpireAbandonedCheckouts (15 min) + CleanupAbandonedCarts (daily) scheduled in routes/console.php. Storefront UI: CartDrawer (global, listens cart-updated/open-cart), /cart page with shipping estimate, /checkout 4-step stepper through payment method selection (pay button is the Phase 5 mount point), live header badge, real addToCart. Seeders: TaxSettingsSeeder, ShippingSeeder, DiscountSeeder (WELCOME10/FLAT5/FREESHIP/EXPIRED20/MAXED). Cart merge wired into CustomerLoginController; CustomerAuthTest merge case implemented. 4 test cases todo'd for Phase 5 (order completion paths)."},"type":"attachment","uuid":"b3ebdeb8-12ab-48a4-b30f-4617b75f89f8","timestamp":"2026-06-09T19:50:22.372Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"b3ebdeb8-12ab-48a4-b30f-4617b75f89f8","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"b3ebdeb8-12ab-48a4-b30f-4617b75f89f8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01GgTP2XYFfgBL2ox66LPGdw","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_0171kWcDbhm6GL7CEdoycBUr","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 4: Cart, checkout state machine, discounts, shipping, taxes, pricing engine + storefront cart/checkout UI\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 4"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":1644,"cache_creation_input_tokens":6474,"cache_read_input_tokens":112304,"output_tokens":200,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":6474,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":1644,"output_tokens":200,"cache_read_input_tokens":112304,"cache_creation_input_tokens":6474,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":6474},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtGScFgYYGdYFxTMxRFT","type":"assistant","uuid":"070d5048-5e3a-4416-8f6c-90a9f46004c7","timestamp":"2026-06-09T19:50:27.574Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"070d5048-5e3a-4416-8f6c-90a9f46004c7","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_0171kWcDbhm6GL7CEdoycBUr","type":"tool_result","content":"  Tests:    8 todos, 202 passed (453 assertions)\n  Duration: 5.70s\n\n2da25abb Phase 4: Cart, checkout state machine, discounts, shipping, taxes, pricing engine + storefront cart/checkout UI","is_error":false}]},"uuid":"9c3c140e-1b75-493f-bae3-6326b0ce540e","timestamp":"2026-06-09T19:50:33.676Z","toolUseResult":{"stdout":"  Tests:    8 todos, 202 passed (453 assertions)\n  Duration: 5.70s\n\n2da25abb Phase 4: Cart, checkout state machine, discounts, shipping, taxes, pricing engine + storefront cart/checkout UI","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"070d5048-5e3a-4416-8f6c-90a9f46004c7","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9c3c140e-1b75-493f-bae3-6326b0ce540e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01V4uHyxabpzq9myjh6WePUR","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS4AIKYwgOGAIqQFA7sLKh3gvg4+6auLqQnCa8TeAxT8l52DvLcNMTJexgHErYLB08zvmg6ksgr1guZWLveHj3DO2zcJ33hivTqiMyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIM4addDhdAbzgoARWrGgz4gQxXWihNm8weZ90iMPPbBrDuGztTOpsWFyZNAmpVyrp0eUVAzDpAUhiEZ4JYCI44FTty/5ixYsstgHIeLSqqAeqL1WtV2ssKkuFXchyCcCv3qa6TH4JGv8paQbR6AQ+Cj/7VQ9RvyEUV2oaXOCe+/ZSDaESrJL9+rk4bbkCCSL3gsfWzrDC3NcqbpnI1m/Gy+BbLHMB+kQ75kWTLdu52IIoBzBVCMJf6P6zeXUe1Uxl0Tb7SbHu1TDIKRktqF1rtZXNCyC/aKGP8g+CmO+r+58THD1U/p2L+tHvgnYJgRXm3bhMhI/7yNK2CGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1933,"cache_read_input_tokens":118778,"output_tokens":2994,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1933,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2994,"cache_read_input_tokens":118778,"cache_creation_input_tokens":1933,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1933},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtGTSXp7wUWDKrRbotXg","type":"assistant","uuid":"da114b10-2d42-4c13-b702-8230b9c9ba3c","timestamp":"2026-06-09T19:50:37.179Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"da114b10-2d42-4c13-b702-8230b9c9ba3c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01V4uHyxabpzq9myjh6WePUR","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_015Wiq11FzrLJBRoVWa6doLZ","name":"Agent","input":{"description":"Implement Phase 5 Orders/Payments","name":"phase5-orders","prompt":"You are implementing Phase 5 (Payments, Orders, Fulfillment) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, SQLite, Pest v4). Phases 1-4 are complete and committed: tenancy/auth/policies, catalog (+InventoryService reserve/release/commit/restock), storefront, cart/checkout (CheckoutService state machine where completeCheckout() is guarded but throws LogicException('Phase 5') at the order-creation integration point; checkout UI step \"pay button\" mount point is marked; PricingEngine snapshots totals_json). Customer + CustomerAddress models/migrations already exist from Phase 1. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 5\" section (lines ~599-744) and test spec tables for tests/Feature/Orders/* and tests/Feature/Payments/* (lines ~1388-1472).\n- specs/01-DATABASE-SCHEMA.md — orders, order_lines, payments, refunds, fulfillments, fulfillment_lines tables (customers/customer_addresses already exist — verify they match spec and add missing columns via new migration if needed).\n- specs/05-BUSINESS-LOGIC.md — order creation, order numbering, payment flows (mock PSP, magic cards, bank transfer deferred capture), refunds, fulfillment rules + guard, cancellation, digital auto-fulfillment sections.\n- specs/07-SEEDERS-AND-TEST-DATA.md — CustomerSeeder, OrderSeeder definitions.\n- Study existing: app/Services/CheckoutService.php (completeCheckout integration point), app/Services/InventoryService.php, app/Enums, app/Exceptions, tests/Pest.php, resources/views/storefront/ checkout views (pay button mount point), app/Policies (FulfillmentPolicy, RefundPolicy, OrderPolicy exist from Phase 1).\n\nDELIVERABLES:\n1. Migrations: orders, order_lines, payments, refunds, fulfillments, fulfillment_lines per spec 01 (verify customers/customer_addresses against spec; patch via migration if columns missing). Note: Phase 2 left order-reference checks behind Schema::hasTable('order_lines') guards in app/Support/OrderReferenceChecker.php — once your migration lands, those activate; un-todo the 3 deferred Phase 2 test cases (ProductCrudTest x2, VariantTest x1) and the StoreIsolationTest order case.\n2. Models + factories (+ states like paid()/pending()/fulfilled()): Order, OrderLine, Payment, Refund, Fulfillment, FulfillmentLine. BelongsToStore on orders.\n3. Enums: OrderStatus, FinancialStatus, FulfillmentStatus, PaymentMethod (CreditCard/Paypal/BankTransfer), PaymentStatus, RefundStatus, FulfillmentShipmentStatus.\n4. Payments: App\\Contracts\\PaymentProvider interface (charge(Checkout, PaymentMethod, array $details): PaymentResult; refund(Payment, int $amount): RefundResult), App\\Services\\Payments\\MockPaymentProvider — magic cards 4242424242424242 success, 4000000000000002 decline (errorCode card_declined), 4000000000009995 insufficient_funds; paypal instant capture; bank_transfer pending (deferred capture); mock_ reference IDs; no external calls. Bind interface in AppServiceProvider. PaymentResult/RefundResult value objects.\n5. App\\Services\\OrderService: createFromCheckout (atomic: order + lines with title_snapshot/sku_snapshot, commit inventory for captured payments / keep reserved for bank transfer pending per spec 05, cart → converted, discount usage_count increment, OrderCreated event), generateOrderNumber (sequential per store #1001...; safe under concurrency), cancel (only if unfulfilled; releases or restocks inventory per financial status, OrderCancelled event).\n6. Complete CheckoutService::completeCheckout(checkout, array $paymentDetails): idempotent (same order returned on repeat call), charges via PaymentProvider, on decline raises a clear exception/returns failure without state corruption, creates payment record, creates order via OrderService, checkout → completed, CheckoutCompleted event. Statuses per spec: credit card/paypal → financial_status paid, order status paid? (check spec 05: order status after payment — follow spec exactly; bank transfer → pending).\n7. App\\Services\\RefundService: create(order, payment, amount, reason, restock) — validates amount vs remaining refundable, provider refund, partial → partially_refunded, full → refunded, restock flag calls InventoryService::restock per line (per spec), OrderRefunded event.\n8. App\\Services\\FulfillmentService: create (lines + quantities, validates qty <= remaining unfulfilled, FulfillmentGuardException unless financial_status paid|partially_refunded), markAsShipped (tracking, shipped_at), markAsDelivered (delivered_at, FulfillmentDelivered event), updates order.fulfillment_status partial/fulfilled, OrderFulfilled event when complete.\n9. Bank transfer admin confirmation: ConfirmBankTransferPayment action/service method per roadmap 5.3b (validate method+pending, → paid, payment captured, commit reserved inventory, digital auto-fulfillment delivered when all requires_shipping=false, OrderPaid event). Job App\\Jobs\\CancelUnpaidBankTransferOrders (daily, config-driven days default 7, cancels + releases inventory) scheduled in routes/console.php.\n10. Events: OrderCreated, OrderPaid, OrderFulfilled, OrderCancelled, OrderRefunded, CheckoutCompleted (+ FulfillmentDelivered). Plain event classes.\n11. Storefront checkout completion UI: wire the pay step — credit card form (number/exp/cvc) for credit_card, simple confirm for paypal/bank_transfer; on success redirect to /checkout/confirmation/{token or order} (check spec 02/04 for exact route) rendering Storefront\\Checkout\\Confirmation (order number, items, totals, next steps; bank transfer shows pending-payment instructions). Declined card shows error and stays on payment step.\n12. Seeders: CustomerSeeder (customers + addresses) and OrderSeeder (sample orders with lines, payments, fulfillments across statuses) per spec 07, wired into DatabaseSeeder (idempotent; migrate:fresh --seed must succeed).\n13. Tests — implement EXACTLY the roadmap tables: tests/Feature/Orders/OrderCreationTest.php (9), RefundTest.php (7 — role-based case uses actingAsAdmin + policy), FulfillmentTest.php (13), tests/Feature/Payments/MockPaymentProviderTest.php (6), PaymentServiceTest.php (5), BankTransferConfirmationTest.php (6). Un-todo ALL deferred cases: CheckoutFlowTest (happy path, duplicate prevention), CheckoutStateTest (payment_selected→completed), DiscountTest (usage increment), ProductCrudTest (2 order-reference cases), VariantTest (orphan archive with order refs), StoreIsolationTest (order scoping). After this phase ZERO todos must remain in the suite.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green with zero todos; vendor/bin/pint --dirty --format agent clean; npm run build if assets touched. Explicit return types, casts(), PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (order numbering concurrency, status mapping after payment, inventory commit timing for bank transfer, idempotency mechanism), confirmation route, full test summary (must state zero todos). Update specs/progress.md Phase 5 row + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1933,"cache_read_input_tokens":118778,"output_tokens":2994,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1933,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2994,"cache_read_input_tokens":118778,"cache_creation_input_tokens":1933,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1933},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtGTSXp7wUWDKrRbotXg","type":"assistant","uuid":"318d2c2c-bc9c-4cb5-af65-0998c6105f1c","timestamp":"2026-06-09T19:51:09.786Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"318d2c2c-bc9c-4cb5-af65-0998c6105f1c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_015Wiq11FzrLJBRoVWa6doLZ","type":"tool_result","content":[{"type":"text","text":"Phase 5 (Payments, Orders, Fulfillment) is complete. Full suite: **259 passed, 0 failed, ZERO todos** (573 assertions). `php artisan migrate:fresh --seed` succeeds, `vendor/bin/pint --dirty` clean, `npm run build` succeeds, all Blade views compile.\n\n## Files created/changed\n\n**Migrations** (batch 400001-400006): `orders` (with all spec indexes), `order_lines`, `payments` (created_at only), `refunds`, `fulfillments` (+ `delivered_at`), `fulfillment_lines` (unique fulfillment+order_line). Existing `customers`/`customer_addresses` migrations already match spec 01 — no patch needed.\n\n**Models + factories**: `Order` (BelongsToStore, refundedAmount/remainingRefundableAmount/isFullyDigital helpers), `OrderLine` (fulfilledQuantity/unfulfilledQuantity), `Payment` (`raw_json_encrypted` uses `encrypted:array` cast), `Refund`, `Fulfillment`, `FulfillmentLine`; factories with `paid()/pending()/fulfilled()/cancelled()/totaling()`, `captured()/pending()/refunded()`, `shipped()/delivered()`, `forVariant()` states. Customer gained `orders()`/`carts()` relations.\n\n**Enums** (7): OrderStatus, FinancialStatus (with `allowsFulfillment()`), FulfillmentStatus, PaymentMethod, PaymentStatus, RefundStatus, FulfillmentShipmentStatus.\n\n**Payments**: `App\\Contracts\\PaymentProvider`, `App\\Services\\Payments\\MockPaymentProvider` (magic cards 4242→captured, ...0002→card_declined, ...9995→insufficient_funds; paypal instant capture; bank_transfer pending; `mock_`/`mock_re_` reference IDs), `PaymentResult`/`RefundResult` value objects, bound in `AppServiceProvider::register()`.\n\n**Services**: `OrderService` (createFromCheckout, generateOrderNumber, cancel, confirmBankTransferPayment), `RefundService`, `FulfillmentService` (create with guard, markAsShipped, markAsDelivered, autoFulfillDigital), `CheckoutService::completeCheckout()` completed. Exceptions: `PaymentFailedException` (carries errorCode), `FulfillmentGuardException`.\n\n**Events** (7 plain classes): OrderCreated, OrderPaid, OrderFulfilled, OrderCancelled, OrderRefunded (order + refund), CheckoutCompleted (checkout + order), FulfillmentDelivered.\n\n**Job**: `CancelUnpaidBankTransferOrders`, scheduled daily in `routes/console.php`; per-store `bank_transfer_cancel_days` from store_settings, default 7.\n\n**UI**: checkout pay step wired in `Show.php`/`show.blade.php` (card number/name/expiry/CVC form for credit_card, confirm-style buttons \"Pay with PayPal\"/\"Place order\" per spec 04; decline shows inline error and stays on step 5). New `Storefront\\Checkout\\Confirmation` component + view (checkmark header, order number, items, address/payment grid, totals, bank-transfer instructions callout with Mock Bank AG/IBAN, Continue shopping/View order actions).\n\n**Seeders**: `CustomerSeeder` (10 fashion + 2 electronics customers, spec addresses for John/Jane), `OrderSeeder` (orders #1001-#1015 + #5001-#5003 with lines, payments, fulfillments, refunds, WELCOME10 allocations on #1015), both idempotent, wired into DatabaseSeeder.\n\n## Key decisions\n- **Idempotency**: added a nullable **unique `checkout_id` FK on orders** (the one schema extension beyond spec 01, which has no order↔checkout link). `completeCheckout()` returns the existing order before re-charging; the unique index is the DB backstop.\n- **Order numbering concurrency**: max numeric order number per store + 1 (start #1001, prefix from `store_settings.order_number_prefix`), computed inside the creation transaction (SQLite serializes writers) with the unique `(store_id, order_number)` index as a guard.\n- **Status mapping per spec 05 §11.1**: credit_card/paypal → order `paid`, financial `paid`, payment `captured`, inventory **committed**; bank_transfer → `pending`/`pending`/`pending`, inventory **stays reserved** until admin confirmation, which commits it (and auto-fulfills fully digital orders as `delivered`).\n- **Decline handling**: spec's \"release on decline\" + \"retry on payment step\" are contradictory (a successful retry after release would drive reserved negative on commit). I keep the reservation on decline — no state corruption, clean retry; the 24h checkout expiry job releases abandoned reservations. Documented in code.\n- **FulfillmentTest count**: the roadmap table for FulfillmentTest contains 12 rows (the prompt said 13); all 12 are implemented exactly, plus 4 extra Storefront UI tests for pay step/confirmation.\n\n## Confirmation route\n`GET /checkout/{checkoutId}/confirmation` → `storefront.checkout.confirmation` → `Storefront\\Checkout\\Confirmation` (per spec 02 §1.4), store-scoped via the storefront middleware + Order global scope.\n\n## Tests\nNew: `tests/Feature/Orders/OrderCreationTest.php` (9), `RefundTest.php` (7, role case via Gate against OrderPolicy::createRefund), `FulfillmentTest.php` (12), `tests/Feature/Payments/MockPaymentProviderTest.php` (6), `PaymentServiceTest.php` (5), `BankTransferConfirmationTest.php` (6), `tests/Feature/Storefront/CheckoutUiTest.php` (4). Un-todo'd all 8 deferred cases: CheckoutFlowTest (2), CheckoutStateTest (1), DiscountTest (1), ProductCrudTest (2), VariantTest (1), StoreIsolationTest (1). `grep todo( tests/` returns nothing — **zero todos remain**. `specs/progress.md` Phase 5 row marked DONE with a log entry."},{"type":"text","text":"agentId: ac0e81897d8cb1642 (use SendMessage with to: 'ac0e81897d8cb1642' to continue this agent)\n<usage>subagent_tokens: 247638\ntool_uses: 147\nduration_ms: 1445672</usage>"}]}]},"uuid":"8403e426-920b-4dfe-8bd1-01d96bf393fe","timestamp":"2026-06-09T20:15:15.461Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 5 (Payments, Orders, Fulfillment) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, SQLite, Pest v4). Phases 1-4 are complete and committed: tenancy/auth/policies, catalog (+InventoryService reserve/release/commit/restock), storefront, cart/checkout (CheckoutService state machine where completeCheckout() is guarded but throws LogicException('Phase 5') at the order-creation integration point; checkout UI step \"pay button\" mount point is marked; PricingEngine snapshots totals_json). Customer + CustomerAddress models/migrations already exist from Phase 1. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 5\" section (lines ~599-744) and test spec tables for tests/Feature/Orders/* and tests/Feature/Payments/* (lines ~1388-1472).\n- specs/01-DATABASE-SCHEMA.md — orders, order_lines, payments, refunds, fulfillments, fulfillment_lines tables (customers/customer_addresses already exist — verify they match spec and add missing columns via new migration if needed).\n- specs/05-BUSINESS-LOGIC.md — order creation, order numbering, payment flows (mock PSP, magic cards, bank transfer deferred capture), refunds, fulfillment rules + guard, cancellation, digital auto-fulfillment sections.\n- specs/07-SEEDERS-AND-TEST-DATA.md — CustomerSeeder, OrderSeeder definitions.\n- Study existing: app/Services/CheckoutService.php (completeCheckout integration point), app/Services/InventoryService.php, app/Enums, app/Exceptions, tests/Pest.php, resources/views/storefront/ checkout views (pay button mount point), app/Policies (FulfillmentPolicy, RefundPolicy, OrderPolicy exist from Phase 1).\n\nDELIVERABLES:\n1. Migrations: orders, order_lines, payments, refunds, fulfillments, fulfillment_lines per spec 01 (verify customers/customer_addresses against spec; patch via migration if columns missing). Note: Phase 2 left order-reference checks behind Schema::hasTable('order_lines') guards in app/Support/OrderReferenceChecker.php — once your migration lands, those activate; un-todo the 3 deferred Phase 2 test cases (ProductCrudTest x2, VariantTest x1) and the StoreIsolationTest order case.\n2. Models + factories (+ states like paid()/pending()/fulfilled()): Order, OrderLine, Payment, Refund, Fulfillment, FulfillmentLine. BelongsToStore on orders.\n3. Enums: OrderStatus, FinancialStatus, FulfillmentStatus, PaymentMethod (CreditCard/Paypal/BankTransfer), PaymentStatus, RefundStatus, FulfillmentShipmentStatus.\n4. Payments: App\\Contracts\\PaymentProvider interface (charge(Checkout, PaymentMethod, array $details): PaymentResult; refund(Payment, int $amount): RefundResult), App\\Services\\Payments\\MockPaymentProvider — magic cards 4242424242424242 success, 4000000000000002 decline (errorCode card_declined), 4000000000009995 insufficient_funds; paypal instant capture; bank_transfer pending (deferred capture); mock_ reference IDs; no external calls. Bind interface in AppServiceProvider. PaymentResult/RefundResult value objects.\n5. App\\Services\\OrderService: createFromCheckout (atomic: order + lines with title_snapshot/sku_snapshot, commit inventory for captured payments / keep reserved for bank transfer pending per spec 05, cart → converted, discount usage_count increment, OrderCreated event), generateOrderNumber (sequential per store #1001...; safe under concurrency), cancel (only if unfulfilled; releases or restocks inventory per financial status, OrderCancelled event).\n6. Complete CheckoutService::completeCheckout(checkout, array $paymentDetails): idempotent (same order returned on repeat call), charges via PaymentProvider, on decline raises a clear exception/returns failure without state corruption, creates payment record, creates order via OrderService, checkout → completed, CheckoutCompleted event. Statuses per spec: credit card/paypal → financial_status paid, order status paid? (check spec 05: order status after payment — follow spec exactly; bank transfer → pending).\n7. App\\Services\\RefundService: create(order, payment, amount, reason, restock) — validates amount vs remaining refundable, provider refund, partial → partially_refunded, full → refunded, restock flag calls InventoryService::restock per line (per spec), OrderRefunded event.\n8. App\\Services\\FulfillmentService: create (lines + quantities, validates qty <= remaining unfulfilled, FulfillmentGuardException unless financial_status paid|partially_refunded), markAsShipped (tracking, shipped_at), markAsDelivered (delivered_at, FulfillmentDelivered event), updates order.fulfillment_status partial/fulfilled, OrderFulfilled event when complete.\n9. Bank transfer admin confirmation: ConfirmBankTransferPayment action/service method per roadmap 5.3b (validate method+pending, → paid, payment captured, commit reserved inventory, digital auto-fulfillment delivered when all requires_shipping=false, OrderPaid event). Job App\\Jobs\\CancelUnpaidBankTransferOrders (daily, config-driven days default 7, cancels + releases inventory) scheduled in routes/console.php.\n10. Events: OrderCreated, OrderPaid, OrderFulfilled, OrderCancelled, OrderRefunded, CheckoutCompleted (+ FulfillmentDelivered). Plain event classes.\n11. Storefront checkout completion UI: wire the pay step — credit card form (number/exp/cvc) for credit_card, simple confirm for paypal/bank_transfer; on success redirect to /checkout/confirmation/{token or order} (check spec 02/04 for exact route) rendering Storefront\\Checkout\\Confirmation (order number, items, totals, next steps; bank transfer shows pending-payment instructions). Declined card shows error and stays on payment step.\n12. Seeders: CustomerSeeder (customers + addresses) and OrderSeeder (sample orders with lines, payments, fulfillments across statuses) per spec 07, wired into DatabaseSeeder (idempotent; migrate:fresh --seed must succeed).\n13. Tests — implement EXACTLY the roadmap tables: tests/Feature/Orders/OrderCreationTest.php (9), RefundTest.php (7 — role-based case uses actingAsAdmin + policy), FulfillmentTest.php (13), tests/Feature/Payments/MockPaymentProviderTest.php (6), PaymentServiceTest.php (5), BankTransferConfirmationTest.php (6). Un-todo ALL deferred cases: CheckoutFlowTest (happy path, duplicate prevention), CheckoutStateTest (payment_selected→completed), DiscountTest (usage increment), ProductCrudTest (2 order-reference cases), VariantTest (orphan archive with order refs), StoreIsolationTest (order scoping). After this phase ZERO todos must remain in the suite.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green with zero todos; vendor/bin/pint --dirty --format agent clean; npm run build if assets touched. Explicit return types, casts(), PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (order numbering concurrency, status mapping after payment, inventory commit timing for bank transfer, idempotency mechanism), confirmation route, full test summary (must state zero todos). Update specs/progress.md Phase 5 row + log.","agentId":"ac0e81897d8cb1642","agentType":"general-purpose","content":[{"type":"text","text":"Phase 5 (Payments, Orders, Fulfillment) is complete. Full suite: **259 passed, 0 failed, ZERO todos** (573 assertions). `php artisan migrate:fresh --seed` succeeds, `vendor/bin/pint --dirty` clean, `npm run build` succeeds, all Blade views compile.\n\n## Files created/changed\n\n**Migrations** (batch 400001-400006): `orders` (with all spec indexes), `order_lines`, `payments` (created_at only), `refunds`, `fulfillments` (+ `delivered_at`), `fulfillment_lines` (unique fulfillment+order_line). Existing `customers`/`customer_addresses` migrations already match spec 01 — no patch needed.\n\n**Models + factories**: `Order` (BelongsToStore, refundedAmount/remainingRefundableAmount/isFullyDigital helpers), `OrderLine` (fulfilledQuantity/unfulfilledQuantity), `Payment` (`raw_json_encrypted` uses `encrypted:array` cast), `Refund`, `Fulfillment`, `FulfillmentLine`; factories with `paid()/pending()/fulfilled()/cancelled()/totaling()`, `captured()/pending()/refunded()`, `shipped()/delivered()`, `forVariant()` states. Customer gained `orders()`/`carts()` relations.\n\n**Enums** (7): OrderStatus, FinancialStatus (with `allowsFulfillment()`), FulfillmentStatus, PaymentMethod, PaymentStatus, RefundStatus, FulfillmentShipmentStatus.\n\n**Payments**: `App\\Contracts\\PaymentProvider`, `App\\Services\\Payments\\MockPaymentProvider` (magic cards 4242→captured, ...0002→card_declined, ...9995→insufficient_funds; paypal instant capture; bank_transfer pending; `mock_`/`mock_re_` reference IDs), `PaymentResult`/`RefundResult` value objects, bound in `AppServiceProvider::register()`.\n\n**Services**: `OrderService` (createFromCheckout, generateOrderNumber, cancel, confirmBankTransferPayment), `RefundService`, `FulfillmentService` (create with guard, markAsShipped, markAsDelivered, autoFulfillDigital), `CheckoutService::completeCheckout()` completed. Exceptions: `PaymentFailedException` (carries errorCode), `FulfillmentGuardException`.\n\n**Events** (7 plain classes): OrderCreated, OrderPaid, OrderFulfilled, OrderCancelled, OrderRefunded (order + refund), CheckoutCompleted (checkout + order), FulfillmentDelivered.\n\n**Job**: `CancelUnpaidBankTransferOrders`, scheduled daily in `routes/console.php`; per-store `bank_transfer_cancel_days` from store_settings, default 7.\n\n**UI**: checkout pay step wired in `Show.php`/`show.blade.php` (card number/name/expiry/CVC form for credit_card, confirm-style buttons \"Pay with PayPal\"/\"Place order\" per spec 04; decline shows inline error and stays on step 5). New `Storefront\\Checkout\\Confirmation` component + view (checkmark header, order number, items, address/payment grid, totals, bank-transfer instructions callout with Mock Bank AG/IBAN, Continue shopping/View order actions).\n\n**Seeders**: `CustomerSeeder` (10 fashion + 2 electronics customers, spec addresses for John/Jane), `OrderSeeder` (orders #1001-#1015 + #5001-#5003 with lines, payments, fulfillments, refunds, WELCOME10 allocations on #1015), both idempotent, wired into DatabaseSeeder.\n\n## Key decisions\n- **Idempotency**: added a nullable **unique `checkout_id` FK on orders** (the one schema extension beyond spec 01, which has no order↔checkout link). `completeCheckout()` returns the existing order before re-charging; the unique index is the DB backstop.\n- **Order numbering concurrency**: max numeric order number per store + 1 (start #1001, prefix from `store_settings.order_number_prefix`), computed inside the creation transaction (SQLite serializes writers) with the unique `(store_id, order_number)` index as a guard.\n- **Status mapping per spec 05 §11.1**: credit_card/paypal → order `paid`, financial `paid`, payment `captured`, inventory **committed**; bank_transfer → `pending`/`pending`/`pending`, inventory **stays reserved** until admin confirmation, which commits it (and auto-fulfills fully digital orders as `delivered`).\n- **Decline handling**: spec's \"release on decline\" + \"retry on payment step\" are contradictory (a successful retry after release would drive reserved negative on commit). I keep the reservation on decline — no state corruption, clean retry; the 24h checkout expiry job releases abandoned reservations. Documented in code.\n- **FulfillmentTest count**: the roadmap table for FulfillmentTest contains 12 rows (the prompt said 13); all 12 are implemented exactly, plus 4 extra Storefront UI tests for pay step/confirmation.\n\n## Confirmation route\n`GET /checkout/{checkoutId}/confirmation` → `storefront.checkout.confirmation` → `Storefront\\Checkout\\Confirmation` (per spec 02 §1.4), store-scoped via the storefront middleware + Order global scope.\n\n## Tests\nNew: `tests/Feature/Orders/OrderCreationTest.php` (9), `RefundTest.php` (7, role case via Gate against OrderPolicy::createRefund), `FulfillmentTest.php` (12), `tests/Feature/Payments/MockPaymentProviderTest.php` (6), `PaymentServiceTest.php` (5), `BankTransferConfirmationTest.php` (6), `tests/Feature/Storefront/CheckoutUiTest.php` (4). Un-todo'd all 8 deferred cases: CheckoutFlowTest (2), CheckoutStateTest (1), DiscountTest (1), ProductCrudTest (2), VariantTest (1), StoreIsolationTest (1). `grep todo( tests/` returns nothing — **zero todos remain**. `specs/progress.md` Phase 5 row marked DONE with a log entry."}],"totalDurationMs":1445672,"totalTokens":247638,"totalToolUseCount":147,"usage":{"input_tokens":2,"cache_creation_input_tokens":1448,"cache_read_input_tokens":243963,"output_tokens":2225,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":1448},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2225,"cache_read_input_tokens":243963,"cache_creation_input_tokens":1448,"cache_creation":{"ephemeral_5m_input_tokens":1448,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":7,"searchCount":0,"bashCount":69,"editFileCount":71,"linesAdded":3998,"linesRemoved":136,"otherToolCount":0}},"sourceToolAssistantUUID":"318d2c2c-bc9c-4cb5-af65-0998c6105f1c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8403e426-920b-4dfe-8bd1-01d96bf393fe","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01LpDR1a2ciMj77kH2G9U2bK","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Jj3WYyme7r6woPdYXRPoSq","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 5: Mock PSP payments, orders, refunds, fulfillments, checkout completion + confirmation page\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 5"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":5298,"cache_read_input_tokens":120711,"output_tokens":193,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":5298,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":193,"cache_read_input_tokens":120711,"cache_creation_input_tokens":5298,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":5298},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtJLg1iXjHgyyQuN8f1W","type":"assistant","uuid":"48bc80fb-a0e0-45d0-9dda-ea73725213b4","timestamp":"2026-06-09T20:15:25.073Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"48bc80fb-a0e0-45d0-9dda-ea73725213b4","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"48bc80fb-a0e0-45d0-9dda-ea73725213b4","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Jj3WYyme7r6woPdYXRPoSq","type":"tool_result","content":"  Tests:    259 passed (573 assertions)\n  Duration: 6.62s\n\n25fb0354 Phase 5: Mock PSP payments, orders, refunds, fulfillments, checkout completion + confirmation page","is_error":false}]},"uuid":"17da5b01-b6c3-4ed7-a876-47f42400356a","timestamp":"2026-06-09T20:15:32.172Z","toolUseResult":{"stdout":"  Tests:    259 passed (573 assertions)\n  Duration: 6.62s\n\n25fb0354 Phase 5: Mock PSP payments, orders, refunds, fulfillments, checkout completion + confirmation page","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"48bc80fb-a0e0-45d0-9dda-ea73725213b4","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"17da5b01-b6c3-4ed7-a876-47f42400356a","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"89ffab9c-94ce-46d4-a919-c0541c82f86b","timestamp":"2026-06-09T20:15:32.176Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"89ffab9c-94ce-46d4-a919-c0541c82f86b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Vo3vwJkHTVfVVHACm99Ups","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISlwMKYggOGAIqQOMymKpHkAluDsSEYwz76d1Vnkd7au9+swHaR7YUgNVD72wD0Ky2+ayP6Y/HgxkjwdDImOtbPBx8Lfy/UqRmS20yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzTZUPtIL8qJgQ/2mMaDAx7dHf+9E2LDBHrVyIw2W1O/T7s5vc0iv9a1b2h/2XitMIQjBv44VeopvsISG9Krsk4G0m8Y2vDWYS6hUkWKuIB9Pj7vjp/csC446llb6pHRs7YxMV5bhOljSfLsOakxwrLuR/2+Qac7dRH4GsFJGA6idlzanYxbyabOttbr/o51dE9gqvdxdJBkMMn4rnnfozujqpoiudBMPZUfkL8wLxL6I7DmsCPnpBhi54v1udnbPoYRdSQstHvYgHDXTdP9ev066adsTgk3GjGV58JSjxTf/BclfD0D15i8LvT0pGio+HIWvmYCd/LQO+EJPy6TIBKez0oQwykJEiW0lZlejr+NJgRMt1tbo+m32/LX/fHZ7+8aS7KV1RM/I1YyhS5nQI2bBgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":272,"cache_read_input_tokens":126009,"output_tokens":1619,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":272,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":1619,"cache_read_input_tokens":126009,"cache_creation_input_tokens":272,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":272},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtJMuLvuS9C312ChQCVt","type":"assistant","uuid":"1978c430-80cf-4637-ae5b-96349be72525","timestamp":"2026-06-09T20:15:36.992Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1978c430-80cf-4637-ae5b-96349be72525","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Vo3vwJkHTVfVVHACm99Ups","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISmQIKYwgOGAIqQHinZQGtm+Obc9e7bUaYynOiGLBsPwYVS2Ythg007YjbGL1/cW2GLqE8bw1xn+/zW3BEV0BSd4TdEEmvLjQcsKEyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMdbJTED8ayYoN6fI+GgwtiAVyhhH6+ltfYawiMBIRAEX2+1MLrep3D3IMb+oVFD1GS1hYZneOptXW7jVTLgxSrshyXm/evOYoYU2rIypkL3/YYL82Uta3Cxwug3YL+zdKCox/r7hkhthZTxStkw78gRQ/8azWi58ZEEvtdjsU412uLUnsvbN95nm7IaK7HXYbLZPCFaI3S8wcrAEF7fEaMGVRR1fOBbn2LyhLTjAMrE2YBhgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":272,"cache_read_input_tokens":126009,"output_tokens":1619,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":272,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":1619,"cache_read_input_tokens":126009,"cache_creation_input_tokens":272,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":272},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtJMuLvuS9C312ChQCVt","type":"assistant","uuid":"f5995dc0-c9a9-46e1-b84c-ee565dac3d77","timestamp":"2026-06-09T20:15:36.993Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f5995dc0-c9a9-46e1-b84c-ee565dac3d77","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Vo3vwJkHTVfVVHACm99Ups","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011nEk4FdhwXYeKHKMptENws","name":"Agent","input":{"description":"Implement Phase 6 Customer Accounts","name":"phase6-accounts","prompt":"You are implementing Phase 6 (Customer Accounts) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Tailwind v4, SQLite, Pest v4). Phases 1-5 are complete and committed: tenancy/auth (customer guard + CustomerUserProvider, login/register Livewire components at /account/login and /account/register from Phase 1), catalog, storefront layout (resources/views/layouts/storefront.blade.php + components like <x-storefront.address-form>), cart/checkout, orders/payments/fulfillments (Order, OrderLine, Payment, Fulfillment models; Customer + CustomerAddress models exist with factories). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 6\" section (lines ~746-770) and test tables for tests/Feature/Customers/CustomerAccountTest.php and AddressManagementTest.php (lines ~1475-1499).\n- specs/04-STOREFRONT-UI.md — account pages sections (dashboard, order history, order detail with timeline, address book).\n- specs/02-API-ROUTES.md — customer account route definitions (exact paths/names).\n- specs/06-AUTH-AND-SECURITY.md — customer auth/session rules relevant to account area.\n- Study existing: app/Livewire/Storefront/Account/Auth/*, routes/web.php storefront group, resources/views/components/storefront/*, tests/Pest.php (actingAsCustomer), app/Models/Customer.php, CustomerAddress.php, Order.php.\n\nDELIVERABLES:\n1. Livewire components + routes (storefront middleware + customer auth middleware; unauthenticated → redirect /account/login):\n   - Storefront\\Account\\Dashboard (GET /account): overview, customer name, recent orders, links.\n   - Storefront\\Account\\Orders\\Index (GET /account/orders): paginated order history (number, date, status badges, total).\n   - Storefront\\Account\\Orders\\Show (GET /account/orders/{orderNumber}): order detail with timeline (placed/paid/fulfilled/delivered events from order+payments+fulfillments data), line items, totals, addresses; 404 for other customers' orders.\n   - Storefront\\Account\\Addresses\\Index (GET /account/addresses): address book CRUD (create/edit/delete/set default; default flips others off), validation of required fields, reuse <x-storefront.address-form> where sensible.\n   - Profile editing per spec 04 (name, marketing_opt_in) — put it where spec 04 says (dashboard or separate section).\n   - Logout: POST /account/logout invalidates session, regenerates token, redirects to /account/login (verify Phase 1 implementation matches; fix if needed).\n2. Polished UI consistent with the existing storefront (dark mode, responsive, focus states, status badges via <x-storefront.badge>).\n3. Account navigation (sidebar/tabs per spec 04) and header account icon linking to /account when logged in.\n4. Checkout prefill: when a customer is logged in, checkout address step prefills from default address and email (check spec 04/05 for the requirement; implement if specified).\n5. Tests — EXACTLY the roadmap tables: tests/Feature/Customers/CustomerAccountTest.php (6 cases), tests/Feature/Customers/AddressManagementTest.php (7 cases). Use actingAsCustomer() + storefront host pattern from existing tests.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos (php artisan test --compact); vendor/bin/pint --dirty --format agent clean; npm run build if assets touched. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed, key decisions, test summary. Update specs/progress.md Phase 6 row + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":272,"cache_read_input_tokens":126009,"output_tokens":1619,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":272,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":1619,"cache_read_input_tokens":126009,"cache_creation_input_tokens":272,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":272},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtJMuLvuS9C312ChQCVt","type":"assistant","uuid":"07caf57c-f72b-492c-8d5e-77027e0036cd","timestamp":"2026-06-09T20:15:53.900Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"07caf57c-f72b-492c-8d5e-77027e0036cd","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_011nEk4FdhwXYeKHKMptENws","type":"tool_result","content":[{"type":"text","text":"Phase 6 (Customer Accounts) is complete. Full suite: 273 passed, 0 todos; `migrate:fresh --seed` succeeds; pint clean; `npm run build` done; all pages verified in the browser via Playwright on `acme-fashion.test`.\n\n## Files created\n- `app/Livewire/Storefront/Account/Dashboard.php` + `resources/views/livewire/storefront/account/dashboard.blade.php` - GET /account: welcome heading, quick-link cards (orders/addresses/logout), last 5 orders table, and the profile form (name + marketing_opt_in via `updateProfile`, flash confirmation). Spec 04 defines no separate profile page/route, so profile editing lives on the dashboard.\n- `app/Livewire/Storefront/Account/Orders/Index.php` + view - GET /account/orders: paginated (10/page) history, desktop table / mobile cards, status + fulfillment badges, reuses `x-storefront.pagination`.\n- `app/Livewire/Storefront/Account/Orders/Show.php` + view - GET /account/orders/{orderNumber}: breadcrumbs, status badges, timeline (placed from `placed_at`, paid from the captured payment, fulfilled/delivered from fulfillments, cancelled), line items with snapshots/thumbnails, shipping/billing/payment grid, totals, tracking links (`target=\"_blank\" rel=\"noopener noreferrer\"`). Scoped to `auth('customer')->user()->orders()` so other customers' orders 404. URLs carry the bare number (`/account/orders/1042`) matched against the stored `#`-prefixed `order_number` (a `#` can't live in a URL path).\n- `app/Livewire/Storefront/Account/Addresses/Index.php` + view - GET /account/addresses: card grid with Default badge/primary border, modal CRUD reusing `<x-storefront.address-form prefix=\"form\">`, `wire:confirm` delete, `setDefault` flips others off in a transaction, first saved address auto-defaults, deleting the default promotes the newest remaining one. Foreign address ids `abort(404)`. Form `postal_code` maps to the spec 01 JSON `zip` key (company/province_code preserved on edit).\n- `resources/views/components/storefront/account-nav.blade.php` (tabs + logout form, aria-current) and `order-status-badge.blade.php` (spec 04 colors: pending yellow, paid green, fulfilled blue, cancelled gray, refunded red).\n- `app/Support/Storefront/Countries.php` - shared country map (address-form blade now uses it).\n- `tests/Feature/Customers/CustomerAccountTest.php` (6 cases) and `AddressManagementTest.php` (7 cases) - exactly the roadmap tables, using `actingAsCustomer()` + storefront-host HTTP requests, Livewire tests for profile/address actions.\n\n## Files changed\n- `routes/web.php` - replaced the Phase 1 placeholder `/account` closure with the four Livewire routes inside the existing `storefront` + `auth:customer` group.\n- `app/Models/CustomerAddress.php` - added `toCheckoutAddress()` (zip→postal_code) and `summaryLine()`.\n- `app/Livewire/Storefront/Checkout/Show.php` + checkout view - spec 04 checkout prefill: address step prefills from the customer's default address when the checkout has no address yet (email prefill already existed), plus the \"Select a saved address\" dropdown with \"Use a new address\" reset; covered by a new test in `CheckoutUiTest`.\n- `app/Http/Controllers/Storefront/Auth/CustomerLoginController.php` - logout now `session()->invalidate()` (was `regenerate()`) + `regenerateToken()`, matching spec 06.\n- `resources/views/livewire/storefront/checkout/confirmation.blade.php` - \"View order\" now links to the order detail page per spec 04.\n- Deleted `resources/views/storefront/account/index.blade.php` (placeholder replaced by Dashboard).\n- `specs/progress.md` - Phase 6 row set to DONE + detailed log entry.\n\n## Key decisions\n- Header account icon already linked to /account when logged in (Phase 3) - verified, no change needed.\n- Authorization is by relationship scoping (`customer->orders()` / `customer->addresses()`) returning 404 rather than 403, satisfying the roadmap's \"403 or 404\" expectation.\n- Browser verification covered login → dashboard → order history → order #1002 detail (timeline with tracking) → address create via modal → checkout prefill and saved-address switching."},{"type":"text","text":"agentId: a94e46415fdbce5a2 (use SendMessage with to: 'a94e46415fdbce5a2' to continue this agent)\n<usage>subagent_tokens: 205341\ntool_uses: 161\nduration_ms: 1285130</usage>"}]}]},"uuid":"10054dbb-4e3c-4f17-abdc-6973db3cffa3","timestamp":"2026-06-09T20:37:19.036Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 6 (Customer Accounts) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Tailwind v4, SQLite, Pest v4). Phases 1-5 are complete and committed: tenancy/auth (customer guard + CustomerUserProvider, login/register Livewire components at /account/login and /account/register from Phase 1), catalog, storefront layout (resources/views/layouts/storefront.blade.php + components like <x-storefront.address-form>), cart/checkout, orders/payments/fulfillments (Order, OrderLine, Payment, Fulfillment models; Customer + CustomerAddress models exist with factories). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 6\" section (lines ~746-770) and test tables for tests/Feature/Customers/CustomerAccountTest.php and AddressManagementTest.php (lines ~1475-1499).\n- specs/04-STOREFRONT-UI.md — account pages sections (dashboard, order history, order detail with timeline, address book).\n- specs/02-API-ROUTES.md — customer account route definitions (exact paths/names).\n- specs/06-AUTH-AND-SECURITY.md — customer auth/session rules relevant to account area.\n- Study existing: app/Livewire/Storefront/Account/Auth/*, routes/web.php storefront group, resources/views/components/storefront/*, tests/Pest.php (actingAsCustomer), app/Models/Customer.php, CustomerAddress.php, Order.php.\n\nDELIVERABLES:\n1. Livewire components + routes (storefront middleware + customer auth middleware; unauthenticated → redirect /account/login):\n   - Storefront\\Account\\Dashboard (GET /account): overview, customer name, recent orders, links.\n   - Storefront\\Account\\Orders\\Index (GET /account/orders): paginated order history (number, date, status badges, total).\n   - Storefront\\Account\\Orders\\Show (GET /account/orders/{orderNumber}): order detail with timeline (placed/paid/fulfilled/delivered events from order+payments+fulfillments data), line items, totals, addresses; 404 for other customers' orders.\n   - Storefront\\Account\\Addresses\\Index (GET /account/addresses): address book CRUD (create/edit/delete/set default; default flips others off), validation of required fields, reuse <x-storefront.address-form> where sensible.\n   - Profile editing per spec 04 (name, marketing_opt_in) — put it where spec 04 says (dashboard or separate section).\n   - Logout: POST /account/logout invalidates session, regenerates token, redirects to /account/login (verify Phase 1 implementation matches; fix if needed).\n2. Polished UI consistent with the existing storefront (dark mode, responsive, focus states, status badges via <x-storefront.badge>).\n3. Account navigation (sidebar/tabs per spec 04) and header account icon linking to /account when logged in.\n4. Checkout prefill: when a customer is logged in, checkout address step prefills from default address and email (check spec 04/05 for the requirement; implement if specified).\n5. Tests — EXACTLY the roadmap tables: tests/Feature/Customers/CustomerAccountTest.php (6 cases), tests/Feature/Customers/AddressManagementTest.php (7 cases). Use actingAsCustomer() + storefront host pattern from existing tests.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos (php artisan test --compact); vendor/bin/pint --dirty --format agent clean; npm run build if assets touched. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed, key decisions, test summary. Update specs/progress.md Phase 6 row + log.","agentId":"a94e46415fdbce5a2","agentType":"general-purpose","content":[{"type":"text","text":"Phase 6 (Customer Accounts) is complete. Full suite: 273 passed, 0 todos; `migrate:fresh --seed` succeeds; pint clean; `npm run build` done; all pages verified in the browser via Playwright on `acme-fashion.test`.\n\n## Files created\n- `app/Livewire/Storefront/Account/Dashboard.php` + `resources/views/livewire/storefront/account/dashboard.blade.php` - GET /account: welcome heading, quick-link cards (orders/addresses/logout), last 5 orders table, and the profile form (name + marketing_opt_in via `updateProfile`, flash confirmation). Spec 04 defines no separate profile page/route, so profile editing lives on the dashboard.\n- `app/Livewire/Storefront/Account/Orders/Index.php` + view - GET /account/orders: paginated (10/page) history, desktop table / mobile cards, status + fulfillment badges, reuses `x-storefront.pagination`.\n- `app/Livewire/Storefront/Account/Orders/Show.php` + view - GET /account/orders/{orderNumber}: breadcrumbs, status badges, timeline (placed from `placed_at`, paid from the captured payment, fulfilled/delivered from fulfillments, cancelled), line items with snapshots/thumbnails, shipping/billing/payment grid, totals, tracking links (`target=\"_blank\" rel=\"noopener noreferrer\"`). Scoped to `auth('customer')->user()->orders()` so other customers' orders 404. URLs carry the bare number (`/account/orders/1042`) matched against the stored `#`-prefixed `order_number` (a `#` can't live in a URL path).\n- `app/Livewire/Storefront/Account/Addresses/Index.php` + view - GET /account/addresses: card grid with Default badge/primary border, modal CRUD reusing `<x-storefront.address-form prefix=\"form\">`, `wire:confirm` delete, `setDefault` flips others off in a transaction, first saved address auto-defaults, deleting the default promotes the newest remaining one. Foreign address ids `abort(404)`. Form `postal_code` maps to the spec 01 JSON `zip` key (company/province_code preserved on edit).\n- `resources/views/components/storefront/account-nav.blade.php` (tabs + logout form, aria-current) and `order-status-badge.blade.php` (spec 04 colors: pending yellow, paid green, fulfilled blue, cancelled gray, refunded red).\n- `app/Support/Storefront/Countries.php` - shared country map (address-form blade now uses it).\n- `tests/Feature/Customers/CustomerAccountTest.php` (6 cases) and `AddressManagementTest.php` (7 cases) - exactly the roadmap tables, using `actingAsCustomer()` + storefront-host HTTP requests, Livewire tests for profile/address actions.\n\n## Files changed\n- `routes/web.php` - replaced the Phase 1 placeholder `/account` closure with the four Livewire routes inside the existing `storefront` + `auth:customer` group.\n- `app/Models/CustomerAddress.php` - added `toCheckoutAddress()` (zip→postal_code) and `summaryLine()`.\n- `app/Livewire/Storefront/Checkout/Show.php` + checkout view - spec 04 checkout prefill: address step prefills from the customer's default address when the checkout has no address yet (email prefill already existed), plus the \"Select a saved address\" dropdown with \"Use a new address\" reset; covered by a new test in `CheckoutUiTest`.\n- `app/Http/Controllers/Storefront/Auth/CustomerLoginController.php` - logout now `session()->invalidate()` (was `regenerate()`) + `regenerateToken()`, matching spec 06.\n- `resources/views/livewire/storefront/checkout/confirmation.blade.php` - \"View order\" now links to the order detail page per spec 04.\n- Deleted `resources/views/storefront/account/index.blade.php` (placeholder replaced by Dashboard).\n- `specs/progress.md` - Phase 6 row set to DONE + detailed log entry.\n\n## Key decisions\n- Header account icon already linked to /account when logged in (Phase 3) - verified, no change needed.\n- Authorization is by relationship scoping (`customer->orders()` / `customer->addresses()`) returning 404 rather than 403, satisfying the roadmap's \"403 or 404\" expectation.\n- Browser verification covered login → dashboard → order history → order #1002 detail (timeline with tracking) → address create via modal → checkout prefill and saved-address switching."}],"totalDurationMs":1285130,"totalTokens":205341,"totalToolUseCount":161,"usage":{"input_tokens":2,"cache_creation_input_tokens":129,"cache_read_input_tokens":203582,"output_tokens":1628,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":129},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1628,"cache_read_input_tokens":203582,"cache_creation_input_tokens":129,"cache_creation":{"ephemeral_5m_input_tokens":129,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":21,"searchCount":0,"bashCount":72,"editFileCount":31,"linesAdded":1623,"linesRemoved":69,"otherToolCount":37}},"sourceToolAssistantUUID":"07caf57c-f72b-492c-8d5e-77027e0036cd","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"10054dbb-4e3c-4f17-abdc-6973db3cffa3","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01X9zyqLDLUA4MP7Q5mSCujN","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISxw0KYggOGAIqQD97NRYuhqQmuP26R66zuuxvWKiFDpoc2F54F7KO9rgM4+qzEKA3zsIH9tKFP4BdogYxtlE+mQeoVmUi0juBAk4yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzgXcSo73itYnyfbZAaDKsNBM6c9GetRUobiSIwbTGdLPawF3jS+ddx3ff6V4AAGwC/Q/VuH9POFoclKAMaIUfOFUEywV7e4Y+WTOAAKpIMZQCVaNjK6poJsybEYLgXS36W6t6Lqb4XpeaVZsQSigPpDTaS5yHWVHtSXKJoX4/5Z0x5Wqm72UkgeJlQJVA4bubr0NEGjvMy3pO6NhBtuw9ATmnV1RMRXNb4W59itQYV1kHXXn5Ud/sE/owzFNCkPSP3/9fs7htlnsNCX6nyRfzM0iQnUKlQe+adBWt3VbjogTlMRpILjf7Rm4Kg/qzVHpxpzxpnA706XrUjtOOJSBGDsx1J8evG9LvA8Yu6l8rnc/JLmeV2OChmjAEclxiKLwwqHbBBo/ikOA/nFx4qv+R9PoNkCumuJ3EEVx4IJz+1FYkn++1ejP1ljG34CJg7e/MerJQP9gg3+CMXjKmMJhUAwdrgUhTtFBQ/ggmPMUz36NmxuECGhi3/P7xeuU2OpMaekikyIPqLB8RbqdARl8axoMgyxql0NrZjeOFal2+rejiD52DFYJxMjNhoAmwJFfftO9mr6RLUsMNUIZ1z/g8kzPYml2qc1sC3ZvEi2O5DVN5fZN2cwEVgR5zQ5e4zjih3GwkHo8i5r8dsiq9tAHcWwltBX30h1fE3opVFmL7xOTB++kX5gcZXB0D1pIcF1l4hd3uXXL6hN1dPTSolcVh1QCC7VRIHcqYNOiPJByin/4jLSSez4nuGLP4c8ui87GC/HFIEFJaV7neoi/ol85K6amh/+a8q0OBg583MYpCTNT7OjRLs5nHTmwQa3Chp91l0Sr3+ZrMfC3PPs2LXbPNAT4DOA7HqbEOrY5NfZsPDNqc/mxNH7R31LK8Iz1+0Q0U3yz3/Ub1SZM1HyvZvR9K37RABkG8JXabM9pJQcHLvS3TrScn7E/w64RamLqoLuT4V5kxvAe2OnsXbwgLJcycbLhacA2rS00zqcEYKlM6qVdXct7ccEqS60JaSwPo863tKJbPgTUm97HLwx+M5Uq0hAtfQ6r09N1+YwRh68VnZAsBO0R8yRLFgpbrCG45z7O1mlQDsefMwAZgABWyfeqW3M75PpYtmq2ia5tbxC/oc6p+tLCOweLy9x+hgjshJuNwCm2aW3BgkJzbBiM5Ks6F9FG7ClfpKIBsPR+ZiCqz37w1pZ16MqmfA8Zc8CpfVsXlkWZq9BsSoJ0OrJWA6zg/iIfRuFgTpQOyAjkgyShWkZl+Mh5s4hu8sIXiT6OCKplPWSr5B+d3JarURK5uI10KZzbRZoXERfoIOXGR0gM6A4AMyitCYQOyq9Cb93fgkH0PcwGfYe66s4KoX43bndxqhSDE3FL4CMbS0RwExArfpZhfTYuRucvbD6rprwz7sVWnJiRzSv6NsA3QHSetg0a6nqqEcTFbIeioc0YRRLfp9JQKv9l2A8cQbGTmcccQ0pQ+1HOfCSiFl6NiRsCZbhBXD0SRhqLTIFIz1p4FLAiLLhC7XRkOOP4feioQTc1uSbKtpt9kz/olgB3EcQp/stlBuDHMWyF4vTp/hjW5GwHhfW6PDSgHKVzjkQ7mGwTEDee9HOvxSW8C63bO3+1Kr4ETvS4jkhJ7OMZDlThj37vFnjdksTYKmyuC26BgKiJ5TV0D9tYeEdnaeEfoRKZhH0Sap6By8ZuJtYCrmkwoBL+n0iRONHpj+90Ngob1GLaif8oJcBSuCVtFehMM2J6cUVmTTYkdZ4elEcTc4eczY+c2cYSURClWLffK5W75hjMAPP6/F6AoIXD5h/y0vqAFzReoMiMjzIi7gWE+rC6GIFLEGBNHSQhuRuDq8XpqLF8mdTgmdVtu327hVkoEmtCoSR4N23ZrrflTbUBzoDXe3iZslycMB0N0zWTpl2glZhqiBDCfz4agLwoGyqZ6++iUUsGJ9C+XDKj3EmFaSrc38q0+VVvEooBFA+2DC3fRvxlEgfFnnInoK+s1XlLt6lcXMxPUe7gzA0CloVuGG/40iPvzp5VCcugH5jsQbUFbjO5+sDg7UTbocfKqFs9sVPiqb4UNR6+ghbFOLpX+D9qt6aBcjdwXTdTyXB0XmURqGp5lmc9vcz2AszV5mIhqFJPsjVPMO2fRX44mx0bqxgklmwaiMJD3V9c6hn0wYS4JrW+s7Y3jVGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3427,"cache_read_input_tokens":126281,"output_tokens":913,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3427,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":913,"cache_read_input_tokens":126281,"cache_creation_input_tokens":3427,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3427},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtL2EgwNmQnRsGfpTEQG","type":"assistant","uuid":"81725e77-61e5-448a-95d9-e01d6f0e218c","timestamp":"2026-06-09T20:37:31.462Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"81725e77-61e5-448a-95d9-e01d6f0e218c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01X9zyqLDLUA4MP7Q5mSCujN","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISzgMKYwgOGAIqQBs6YO3CwTdzCoo3PD7/Hpl1iYVXnsKub366w6Eoiw25cLHELq4EtvyKgdpMfQix7ooYvzDjsBfihdxDp+TwMzYyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIM0BpyQtUjUZsjd6JaGgwBKky74ydppUEXOcciMITcanEb4tn2Ks3JBs2uHs/WfMRnYgam+W+bRuA0POo+E3U9McVP8gFhBClCz1buMyqYAg9v7PWK33T2lucgyxLFnwiBNdfZyK1T9Gzd6wz/txxsR3HeFeYhnhjFnmZU28BqI+jY2FKjksxnUnK7DnSEnYIyCVwnT5DOuNhmHcJHcCkhHFOfKfYHJjV6QEK+uHuCn58Zp87MER74XJX25qehpNBSIv+P0W0OdQXXuj8HRxxeiiUHZrzDZW1bO0eK9wEzbWudbFzghfhFKAAwe80bszsik9gpGJGOKvximcie3Xd8fPJCNr+BfIaV4uTMC6tuvBUa3wYkfhokwz3g9alz41dZRuGotFTtqaiTJ7JG7tW/BqObM2QDJEdvPBjK9U355QxA9w9aZCjeiiv+0wLCjgby3AgyOWRx/cDxWKsPgyekK7OQjLpvZt8YAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3427,"cache_read_input_tokens":126281,"output_tokens":913,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3427,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":913,"cache_read_input_tokens":126281,"cache_creation_input_tokens":3427,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3427},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtL2EgwNmQnRsGfpTEQG","type":"assistant","uuid":"a9ccd988-b0b7-43d4-88a6-e0a9c4b07e4b","timestamp":"2026-06-09T20:37:31.463Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a9ccd988-b0b7-43d4-88a6-e0a9c4b07e4b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01X9zyqLDLUA4MP7Q5mSCujN","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017J5bqR7FLHGctAL2pbbPSG","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 6: Customer account area - dashboard, order history with timeline, address book, checkout prefill\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 6"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3427,"cache_read_input_tokens":126281,"output_tokens":913,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3427,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":913,"cache_read_input_tokens":126281,"cache_creation_input_tokens":3427,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3427},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtL2EgwNmQnRsGfpTEQG","type":"assistant","uuid":"178cdc2d-dfcb-4a1d-b6f5-592877bd04d1","timestamp":"2026-06-09T20:37:32.790Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"178cdc2d-dfcb-4a1d-b6f5-592877bd04d1","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017J5bqR7FLHGctAL2pbbPSG","type":"tool_result","content":"  Tests:    273 passed (616 assertions)\n  Duration: 7.03s\n\n490ad663 Phase 6: Customer account area - dashboard, order history with timeline, address book, checkout prefill","is_error":false}]},"uuid":"124cc07d-53a3-4e21-b974-8785e6523413","timestamp":"2026-06-09T20:37:40.362Z","toolUseResult":{"stdout":"  Tests:    273 passed (616 assertions)\n  Duration: 7.03s\n\n490ad663 Phase 6: Customer account area - dashboard, order history with timeline, address book, checkout prefill","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"178cdc2d-dfcb-4a1d-b6f5-592877bd04d1","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"124cc07d-53a3-4e21-b974-8785e6523413","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_019754YpdwRxScNchYqguFBU","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01APp15Sbe4CtkMexSeZsFZc","name":"Agent","input":{"description":"Implement Phase 7a Admin core","name":"phase7a-admin-core","prompt":"You are implementing Phase 7a (Admin Panel core) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-6 are complete and committed: tenancy (admin middleware group: session current_store_id + store_users membership check), admin auth at /admin/login (web guard), full catalog/cart/checkout/orders/payments/fulfillments domain services (ProductService, VariantMatrixService, InventoryService, MediaService + ProcessMediaUpload job, OrderService incl. confirmBankTransferPayment, RefundService, FulfillmentService with FulfillmentGuardException), policies implementing the role permission matrix (Owner/Admin/Staff/Support via ChecksStoreRole trait), customer accounts. There is a placeholder admin dashboard view from Phase 1. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/03-ADMIN-UI.md — FULL file. This is your primary spec: layout, sidebar structure, dashboard KPIs/chart, product list/form (variants builder, media), order list/detail (timeline, fulfillment modal, refund modal, bank transfer confirm), customer pages. Follow it exactly for the sections you build.\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 7\" steps 7.1-7.4 (lines ~772-827) and test tables for tests/Feature/Admin/DashboardTest.php, ProductManagementTest.php, OrderManagementTest.php (lines ~1501-1537).\n- specs/02-API-ROUTES.md — admin web route definitions (exact paths/names for /admin/*).\n- Study existing: app/Livewire/Admin/Auth/Login.php, resources/views (layouts), app/Policies/*, app/Services/*, tests/Pest.php (actingAsAdmin sets session current_store_id), app/Models/*. Use Flux UI Free components (flux:button, flux:input, flux:modal, flux:badge, etc.) — free tier only, no Pro components (no flux:table Pro, no flux:date-picker Pro; build tables with plain Tailwind).\n\nDELIVERABLES:\n1. Admin layout per spec 03: resources/views/layouts/admin.blade.php (or livewire/admin/layout pattern — follow spec 03), with Admin\\Layout\\Sidebar (fixed 256px desktop, overlay mobile, nav groups per spec 03 sidebar structure: Dashboard, Orders, Products, Collections, Inventory, Customers, Discounts, Analytics, Themes, Pages, Navigation, Apps, Settings etc.), Admin\\Layout\\TopBar (store selector dropdown switching session current_store_id among user's stores, user menu with logout, mobile hamburger), Breadcrumbs, toast notifications via Livewire events (global toast component). Dark mode + responsive.\n2. Admin\\Dashboard (GET /admin): KPI tiles (total sales for period, order count, AOV, conversion rate — conversion can compute from orders/carts until Phase 9 analytics; mark integration point), last-30-days orders line chart (lightweight: inline SVG or Alpine + no new npm deps unless already present), recent orders table (last 10), date range filter (7/30/90 days presets per spec 03).\n3. Admin\\Products\\Index (GET /admin/products): search, status filter tabs, bulk actions (archive, delete) with checkbox selection, pagination, per spec 03 (columns, empty states). Admin\\Products\\Form (GET /admin/products/create + /admin/products/{id}/edit, shared component create/edit mode per roadmap): title, description, status, vendor, type, tags, pricing, variants builder (add options Size/Color with values, auto-generate matrix via VariantMatrixService, per-variant price/SKU/barcode/weight/inventory qty rows), media upload (WithFileUploads, multiple, reorder, alt text, delete), inventory policy/tracking fields, collections assignment, SEO/handle field per spec 03. Enforce policies (Support read-only, Staff cannot delete/archive per matrix; use authorize()).\n4. Admin\\Orders\\Index (GET /admin/orders): status filter tabs (all/pending/paid/fulfilled/cancelled/refunded), search by order number/email, date range filter, pagination. Admin\\Orders\\Show (GET /admin/orders/{id}): header with badges, timeline (placed/paid/fulfillments/refunds/cancellation events), line items with fulfillment state, totals incl. discount/shipping/tax, customer + addresses panel, payment panel (incl. Confirm Payment button for pending bank transfers → OrderService::confirmBankTransferPayment), fulfillment modal (select lines + quantities, tracking company/number/url, submit via FulfillmentService; mark shipped/delivered actions), refund modal (amount partial/full, reason, restock checkbox via RefundService), cancel order action (reason prompt, OrderService::cancel). All actions policy-guarded with toasts on success/error.\n5. Admin\\Customers\\Index (GET /admin/customers): search, list per spec 03. Admin\\Customers\\Show (GET /admin/customers/{id}): info, stats, orders list, addresses (read-only acceptable if spec 03 says so — follow spec).\n6. Routes in routes/web.php under the existing admin middleware group with auth; named routes per spec 02. Update the Phase 1 placeholder dashboard route. Store selector must update session and redirect.\n7. Tests — EXACTLY the roadmap tables: tests/Feature/Admin/DashboardTest.php (4), ProductManagementTest.php (8), OrderManagementTest.php (5). Also strengthen the 3 service-level cases from Phase 2's ProductCrudTest that noted \"admin UI in Phase 7\" ONLY if trivial (listing via GET /admin/products) — optional, do not break existing tests. Use actingAsAdmin().\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean; npm run build succeeds. Polished professional admin UI (consistent with Flux), dark mode, responsive. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (layout pattern, chart approach, store selector mechanics), test summary. Update specs/progress.md (add Phase 7a row note) + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":985,"cache_read_input_tokens":129708,"output_tokens":2402,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":985,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2402,"cache_read_input_tokens":129708,"cache_creation_input_tokens":985,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":985},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtL3odrsqRNpqm9fZ4R7","type":"assistant","uuid":"67f9d9c9-6c91-4692-889a-2361ee62d761","timestamp":"2026-06-09T20:38:13.967Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"67f9d9c9-6c91-4692-889a-2361ee62d761","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"67f9d9c9-6c91-4692-889a-2361ee62d761","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01APp15Sbe4CtkMexSeZsFZc","type":"tool_result","content":[{"type":"text","text":"Phase 7a (Admin Panel core) is complete. Full suite green (290 passed, 0 todos), Pint clean, `npm run build` and `php artisan migrate:fresh --seed` succeed, and everything was verified live in the browser via Playwright.\n\n## Files created/changed\n\n**Layout shell**\n- `resources/views/layouts/admin.blade.php` - component layout (`#[Layout('layouts::admin')]`, matching the existing `layouts::auth` convention) with global Alpine toast container\n- `app/Livewire/Admin/Layout/Sidebar.php` + `resources/views/livewire/admin/layout/sidebar.blade.php`\n- `app/Livewire/Admin/Layout/TopBar.php` + `resources/views/livewire/admin/layout/top-bar.blade.php`\n- `app/Livewire/Admin/Concerns/SendsToasts.php` (dispatch + session-flash toast helpers)\n- Blade components: `resources/views/components/admin/{breadcrumbs,card,status-badge}.blade.php`\n\n**Pages (class-based Livewire + views in `resources/views/livewire/admin/...`)**\n- `app/Livewire/Admin/Dashboard.php` - KPI tiles with vs-previous-period badges, inline SVG line chart, recent 10 orders, 7/30/90-day presets\n- `app/Livewire/Admin/Products/Index.php` - search, status tabs, type filter, sortable columns (inventory via subquery sum), bulk set-active/archive/delete with confirm modal, empty states\n- `app/Livewire/Admin/Products/Form.php` - shared create/edit form: options builder with live matrix regeneration, per-variant SKU/barcode/price/compare-at/weight/qty/ship rows, media upload (WithFileUploads, alt text, wire:sort reorder, delete), collections, SEO handle, publishing\n- `app/Livewire/Admin/Orders/{Index,Show}.php` - status tabs, search, date range; detail with timeline, fulfillment guard callout, Confirm Payment (bank transfer), fulfillment/refund/cancel modals wired to OrderService/FulfillmentService/RefundService\n- `app/Livewire/Admin/Customers/{Index,Show}.php` - search list with orders count/total spent; detail with info, paginated order history, full address CRUD modal (per spec 03 section 9.2)\n\n**Other**\n- `routes/web.php` - 8 named routes in the existing `['auth','admin']` group; placeholder dashboard route and `resources/views/admin/dashboard.blade.php` removed\n- `tests/Pest.php` - new `createStoreMember(Store, StoreUserRole)` helper\n- `tests/Feature/Admin/{DashboardTest(4),ProductManagementTest(8),OrderManagementTest(5)}.php` - exactly the roadmap tables\n- `specs/progress.md` - Phase 7 split into 7a (DONE) / 7b (pending) + detailed log entry\n\n## Key decisions\n- **Layout pattern**: full HTML component layout at `layouts::admin` embedding Sidebar/TopBar Livewire components; mobile sidebar is a pure-Alpine overlay toggled by a `toggle-admin-sidebar` window event (no server roundtrip). Sidebar items for unbuilt sections render disabled (\"Coming soon\") and auto-activate via `Route::has()` as later phases register routes.\n- **Chart**: dependency-free inline SVG polyline computed server-side (no npm additions).\n- **Store selector**: `switchStore()` validates membership, writes session `current_store_id`, full redirect to `/admin` so ResolveStore rebinds the tenant; verified live with a temporary second membership (revoked membership correctly 403s).\n- **Toasts**: Livewire `toast` events reach the layout listener via `x-on:toast.window`; redirects use `session('toast')` flash replayed on load.\n- **Route param rename**: product edit uses `{productId}` because a `{product}` param collides with the component's `$product` model property during Livewire param auto-assignment.\n- **Variant edits survive matrix rebuilds**: option/value sync is diff-based (case-insensitive value matching) and form rows are re-applied by sorted value-combination keys after `VariantMatrixService::rebuildMatrix`, so untouched combinations keep variants and inventory.\n- **Conversion rate**: orders/carts ratio, explicitly marked in PHPDoc as the Phase 9 analytics integration point.\n- ProductCrudTest \"Phase 7\" notes did not exist in the current codebase, so no changes there.\n\n## Tests\n17 new admin tests (4 dashboard, 8 products, 5 orders) covering happy paths plus role restrictions (Support read-only with 403 on create/fulfill/refund, Staff create-but-not-delete). Full suite: **290 passed, 674 assertions, 0 todos**. Browser-verified: login, dashboard, products list/edit, bank-transfer confirm to paid, fulfillment create/ship/deliver with timeline updates, toast rendering, customer detail, 375px mobile overlay, store switching."},{"type":"text","text":"agentId: a04a87cd887618894 (use SendMessage with to: 'a04a87cd887618894' to continue this agent)\n<usage>subagent_tokens: 328984\ntool_uses: 186\nduration_ms: 30134502</usage>"}]}]},"uuid":"da150e1b-b300-4909-99c7-7ad172406e18","timestamp":"2026-06-10T05:00:28.473Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 7a (Admin Panel core) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-6 are complete and committed: tenancy (admin middleware group: session current_store_id + store_users membership check), admin auth at /admin/login (web guard), full catalog/cart/checkout/orders/payments/fulfillments domain services (ProductService, VariantMatrixService, InventoryService, MediaService + ProcessMediaUpload job, OrderService incl. confirmBankTransferPayment, RefundService, FulfillmentService with FulfillmentGuardException), policies implementing the role permission matrix (Owner/Admin/Staff/Support via ChecksStoreRole trait), customer accounts. There is a placeholder admin dashboard view from Phase 1. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/03-ADMIN-UI.md — FULL file. This is your primary spec: layout, sidebar structure, dashboard KPIs/chart, product list/form (variants builder, media), order list/detail (timeline, fulfillment modal, refund modal, bank transfer confirm), customer pages. Follow it exactly for the sections you build.\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 7\" steps 7.1-7.4 (lines ~772-827) and test tables for tests/Feature/Admin/DashboardTest.php, ProductManagementTest.php, OrderManagementTest.php (lines ~1501-1537).\n- specs/02-API-ROUTES.md — admin web route definitions (exact paths/names for /admin/*).\n- Study existing: app/Livewire/Admin/Auth/Login.php, resources/views (layouts), app/Policies/*, app/Services/*, tests/Pest.php (actingAsAdmin sets session current_store_id), app/Models/*. Use Flux UI Free components (flux:button, flux:input, flux:modal, flux:badge, etc.) — free tier only, no Pro components (no flux:table Pro, no flux:date-picker Pro; build tables with plain Tailwind).\n\nDELIVERABLES:\n1. Admin layout per spec 03: resources/views/layouts/admin.blade.php (or livewire/admin/layout pattern — follow spec 03), with Admin\\Layout\\Sidebar (fixed 256px desktop, overlay mobile, nav groups per spec 03 sidebar structure: Dashboard, Orders, Products, Collections, Inventory, Customers, Discounts, Analytics, Themes, Pages, Navigation, Apps, Settings etc.), Admin\\Layout\\TopBar (store selector dropdown switching session current_store_id among user's stores, user menu with logout, mobile hamburger), Breadcrumbs, toast notifications via Livewire events (global toast component). Dark mode + responsive.\n2. Admin\\Dashboard (GET /admin): KPI tiles (total sales for period, order count, AOV, conversion rate — conversion can compute from orders/carts until Phase 9 analytics; mark integration point), last-30-days orders line chart (lightweight: inline SVG or Alpine + no new npm deps unless already present), recent orders table (last 10), date range filter (7/30/90 days presets per spec 03).\n3. Admin\\Products\\Index (GET /admin/products): search, status filter tabs, bulk actions (archive, delete) with checkbox selection, pagination, per spec 03 (columns, empty states). Admin\\Products\\Form (GET /admin/products/create + /admin/products/{id}/edit, shared component create/edit mode per roadmap): title, description, status, vendor, type, tags, pricing, variants builder (add options Size/Color with values, auto-generate matrix via VariantMatrixService, per-variant price/SKU/barcode/weight/inventory qty rows), media upload (WithFileUploads, multiple, reorder, alt text, delete), inventory policy/tracking fields, collections assignment, SEO/handle field per spec 03. Enforce policies (Support read-only, Staff cannot delete/archive per matrix; use authorize()).\n4. Admin\\Orders\\Index (GET /admin/orders): status filter tabs (all/pending/paid/fulfilled/cancelled/refunded), search by order number/email, date range filter, pagination. Admin\\Orders\\Show (GET /admin/orders/{id}): header with badges, timeline (placed/paid/fulfillments/refunds/cancellation events), line items with fulfillment state, totals incl. discount/shipping/tax, customer + addresses panel, payment panel (incl. Confirm Payment button for pending bank transfers → OrderService::confirmBankTransferPayment), fulfillment modal (select lines + quantities, tracking company/number/url, submit via FulfillmentService; mark shipped/delivered actions), refund modal (amount partial/full, reason, restock checkbox via RefundService), cancel order action (reason prompt, OrderService::cancel). All actions policy-guarded with toasts on success/error.\n5. Admin\\Customers\\Index (GET /admin/customers): search, list per spec 03. Admin\\Customers\\Show (GET /admin/customers/{id}): info, stats, orders list, addresses (read-only acceptable if spec 03 says so — follow spec).\n6. Routes in routes/web.php under the existing admin middleware group with auth; named routes per spec 02. Update the Phase 1 placeholder dashboard route. Store selector must update session and redirect.\n7. Tests — EXACTLY the roadmap tables: tests/Feature/Admin/DashboardTest.php (4), ProductManagementTest.php (8), OrderManagementTest.php (5). Also strengthen the 3 service-level cases from Phase 2's ProductCrudTest that noted \"admin UI in Phase 7\" ONLY if trivial (listing via GET /admin/products) — optional, do not break existing tests. Use actingAsAdmin().\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean; npm run build succeeds. Polished professional admin UI (consistent with Flux), dark mode, responsive. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (layout pattern, chart approach, store selector mechanics), test summary. Update specs/progress.md (add Phase 7a row note) + log.","agentId":"a04a87cd887618894","agentType":"general-purpose","content":[{"type":"text","text":"Phase 7a (Admin Panel core) is complete. Full suite green (290 passed, 0 todos), Pint clean, `npm run build` and `php artisan migrate:fresh --seed` succeed, and everything was verified live in the browser via Playwright.\n\n## Files created/changed\n\n**Layout shell**\n- `resources/views/layouts/admin.blade.php` - component layout (`#[Layout('layouts::admin')]`, matching the existing `layouts::auth` convention) with global Alpine toast container\n- `app/Livewire/Admin/Layout/Sidebar.php` + `resources/views/livewire/admin/layout/sidebar.blade.php`\n- `app/Livewire/Admin/Layout/TopBar.php` + `resources/views/livewire/admin/layout/top-bar.blade.php`\n- `app/Livewire/Admin/Concerns/SendsToasts.php` (dispatch + session-flash toast helpers)\n- Blade components: `resources/views/components/admin/{breadcrumbs,card,status-badge}.blade.php`\n\n**Pages (class-based Livewire + views in `resources/views/livewire/admin/...`)**\n- `app/Livewire/Admin/Dashboard.php` - KPI tiles with vs-previous-period badges, inline SVG line chart, recent 10 orders, 7/30/90-day presets\n- `app/Livewire/Admin/Products/Index.php` - search, status tabs, type filter, sortable columns (inventory via subquery sum), bulk set-active/archive/delete with confirm modal, empty states\n- `app/Livewire/Admin/Products/Form.php` - shared create/edit form: options builder with live matrix regeneration, per-variant SKU/barcode/price/compare-at/weight/qty/ship rows, media upload (WithFileUploads, alt text, wire:sort reorder, delete), collections, SEO handle, publishing\n- `app/Livewire/Admin/Orders/{Index,Show}.php` - status tabs, search, date range; detail with timeline, fulfillment guard callout, Confirm Payment (bank transfer), fulfillment/refund/cancel modals wired to OrderService/FulfillmentService/RefundService\n- `app/Livewire/Admin/Customers/{Index,Show}.php` - search list with orders count/total spent; detail with info, paginated order history, full address CRUD modal (per spec 03 section 9.2)\n\n**Other**\n- `routes/web.php` - 8 named routes in the existing `['auth','admin']` group; placeholder dashboard route and `resources/views/admin/dashboard.blade.php` removed\n- `tests/Pest.php` - new `createStoreMember(Store, StoreUserRole)` helper\n- `tests/Feature/Admin/{DashboardTest(4),ProductManagementTest(8),OrderManagementTest(5)}.php` - exactly the roadmap tables\n- `specs/progress.md` - Phase 7 split into 7a (DONE) / 7b (pending) + detailed log entry\n\n## Key decisions\n- **Layout pattern**: full HTML component layout at `layouts::admin` embedding Sidebar/TopBar Livewire components; mobile sidebar is a pure-Alpine overlay toggled by a `toggle-admin-sidebar` window event (no server roundtrip). Sidebar items for unbuilt sections render disabled (\"Coming soon\") and auto-activate via `Route::has()` as later phases register routes.\n- **Chart**: dependency-free inline SVG polyline computed server-side (no npm additions).\n- **Store selector**: `switchStore()` validates membership, writes session `current_store_id`, full redirect to `/admin` so ResolveStore rebinds the tenant; verified live with a temporary second membership (revoked membership correctly 403s).\n- **Toasts**: Livewire `toast` events reach the layout listener via `x-on:toast.window`; redirects use `session('toast')` flash replayed on load.\n- **Route param rename**: product edit uses `{productId}` because a `{product}` param collides with the component's `$product` model property during Livewire param auto-assignment.\n- **Variant edits survive matrix rebuilds**: option/value sync is diff-based (case-insensitive value matching) and form rows are re-applied by sorted value-combination keys after `VariantMatrixService::rebuildMatrix`, so untouched combinations keep variants and inventory.\n- **Conversion rate**: orders/carts ratio, explicitly marked in PHPDoc as the Phase 9 analytics integration point.\n- ProductCrudTest \"Phase 7\" notes did not exist in the current codebase, so no changes there.\n\n## Tests\n17 new admin tests (4 dashboard, 8 products, 5 orders) covering happy paths plus role restrictions (Support read-only with 403 on create/fulfill/refund, Staff create-but-not-delete). Full suite: **290 passed, 674 assertions, 0 todos**. Browser-verified: login, dashboard, products list/edit, bank-transfer confirm to paid, fulfillment create/ship/deliver with timeline updates, toast rendering, customer detail, 375px mobile overlay, store switching."}],"totalDurationMs":30134502,"totalTokens":328984,"totalToolUseCount":186,"usage":{"input_tokens":2,"cache_creation_input_tokens":518,"cache_read_input_tokens":326687,"output_tokens":1777,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":518},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1777,"cache_read_input_tokens":326687,"cache_creation_input_tokens":518,"cache_creation":{"ephemeral_5m_input_tokens":518,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":28,"searchCount":0,"bashCount":50,"editFileCount":36,"linesAdded":3998,"linesRemoved":35,"otherToolCount":72}},"sourceToolAssistantUUID":"67f9d9c9-6c91-4692-889a-2361ee62d761","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"da150e1b-b300-4909-99c7-7ad172406e18","isSidechain":false,"attachment":{"type":"date_change","newDate":"2026-06-10"},"type":"attachment","uuid":"591a5edd-2f55-4445-ab9f-b18cf1d49f5f","timestamp":"2026-06-10T05:00:28.475Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"591a5edd-2f55-4445-ab9f-b18cf1d49f5f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012PebTYJbcK7nFJD8AddCDd","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01BaVhm51FSw7dTsnV8ZHVaE","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 7a: Admin panel core - layout, dashboard, products (variants builder, media), orders (fulfillment/refund/confirm), customers\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 7a"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":46,"cache_creation_input_tokens":134947,"cache_read_input_tokens":0,"output_tokens":204,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":134947,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":46,"output_tokens":204,"cache_read_input_tokens":0,"cache_creation_input_tokens":134947,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":134947},"type":"message"}],"speed":"standard"},"diagnostics":{"cache_miss_reason":{"type":"previous_message_not_found"}}},"requestId":"req_011CbtzPdAZ66TDM7fQo5cZh","type":"assistant","uuid":"0b035362-441c-4ad7-8b1e-76ae2644dff7","timestamp":"2026-06-10T05:00:34.912Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0b035362-441c-4ad7-8b1e-76ae2644dff7","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01BaVhm51FSw7dTsnV8ZHVaE","type":"tool_result","content":"  Tests:    290 passed (674 assertions)\n  Duration: 8.51s\n\na7106314 Phase 7a: Admin panel core - layout, dashboard, products (variants builder, media), orders (fulfillment/refund/confirm), customers","is_error":false}]},"uuid":"5143caad-e442-445b-8952-ee47f6d7cba7","timestamp":"2026-06-10T05:00:43.776Z","toolUseResult":{"stdout":"  Tests:    290 passed (674 assertions)\n  Duration: 8.51s\n\na7106314 Phase 7a: Admin panel core - layout, dashboard, products (variants builder, media), orders (fulfillment/refund/confirm), customers","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"0b035362-441c-4ad7-8b1e-76ae2644dff7","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5143caad-e442-445b-8952-ee47f6d7cba7","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01WUVheVinz5KToca3ix6Ckg","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISmgIKYwgOGAIqQCtBvIcx9oURsC8vPENYtyvP9iMvY1sZikownMYQoJAkuCly0RYz0a2okGtzNPvseKiFrcTfRhn4ZUFYfbAPr8QyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMfQpRzmedGVXUXHCSGgyyB2E7vqG8BM6DAZsiMCzFB3Q4aUwrpWPA0cpYKEy4tV+TNTmQ8ziCzy2oYCF0JhBAQrFxxjhUJnTUfe09ySplzdUOKINgynjEtee0PNauixjfIusPl0ZzCR4KDeGrH6SSydx4QwPLEWu9INZ9Q07aNTSyK6ECSRqLBOgKCfm8yLxA0KtfNzOnlZ/YMpc7uR1vvcB8AS+XYPPHdaAy49bs830Wi/gYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":336,"cache_read_input_tokens":134947,"output_tokens":2241,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":336,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2241,"cache_read_input_tokens":134947,"cache_creation_input_tokens":336,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":336},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtzQkjkCET3XFhNmGfRF","type":"assistant","uuid":"dad011fc-9246-4aa4-ad30-b821b80e91ca","timestamp":"2026-06-10T05:00:47.869Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"dad011fc-9246-4aa4-ad30-b821b80e91ca","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01WUVheVinz5KToca3ix6Ckg","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01S3AhX6rv5thdFM25oPvADM","name":"Agent","input":{"description":"Implement Phase 7b Admin rest","name":"phase7b-admin-rest","prompt":"You are implementing Phase 7b (remaining Admin Panel sections) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-6 and 7a are complete and committed. Phase 7a built the admin shell: layouts::admin component layout, Sidebar (app/Livewire/Admin/Layout/Sidebar.php — unbuilt sections render disabled \"Coming soon\" and auto-activate via Route::has() once you register the routes), TopBar with store selector, SendsToasts concern, x-admin.breadcrumbs/card/status-badge components, Dashboard, Products Index/Form, Orders Index/Show, Customers Index/Show. Domain services exist for everything (collections, discounts, shipping zones/rates, tax settings, themes + ThemeSettingsService, pages, navigation + NavigationService, inventory). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/03-ADMIN-UI.md — FULL file, especially sections for Collections, Discounts, Inventory, Settings (General/Domains/Shipping/Taxes/Checkout/Notifications tabs), Themes (cards + editor), Pages, Navigation, and anything else in scope. Follow exactly.\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 7\" step 7.5 (lines ~828-853) and test tables for tests/Feature/Admin/DiscountManagementTest.php and SettingsTest.php (lines ~1540-1562).\n- specs/02-API-ROUTES.md — admin web route paths/names for these sections.\n- Study Phase 7a conventions FIRST (app/Livewire/Admin/*, resources/views/livewire/admin/*, how Index/Form/Show pages, modals, toasts, policies, breadcrumbs and tests are done) and mirror them exactly.\n\nDELIVERABLES (all routes registered in routes/web.php admin group with names per spec 02; all policy-guarded per the permission matrix; polished Flux UI Free + Tailwind, dark mode, responsive):\n1. Admin\\Collections\\Index + Admin\\Collections\\Form (shared create/edit): title, handle, description, status, product picker (search + add/remove), drag/reorder products (wire:sort like media reorder in Products\\Form), image/SEO fields per spec 03.\n2. Admin\\Discounts\\Index (status/type filters, usage column) + Admin\\Discounts\\Form (shared create/edit): code, type code/automatic, value type percent/fixed/free_shipping, value, starts/ends dates, usage limit, minimum purchase rule, status; code uniqueness per store validation.\n3. Admin\\Inventory\\Index (spec 03 section 8): list/filter inventory items (search by product/SKU, low-stock filter), inline quantity adjustment (set/add with reason if spec says), per-location ignored (single location).\n4. Admin\\Settings\\Index: tabbed settings per spec 03 — General (store name, currency, contact, order number prefix etc.), Domains (list/add/remove store_domains, primary flag), Checkout + Notifications tabs per spec 03. Admin\\Settings\\Shipping: zones CRUD (name, countries multi-select, regions), rates CRUD per zone (name, type flat/weight/price, config ranges, active). Admin\\Settings\\Taxes: mode toggle, manual rate basis points, prices_include_tax, shipping_taxable.\n5. Admin\\Themes\\Index: theme cards with Publish/Duplicate/Delete actions (publish swaps active theme, cache invalidation via ThemeSettingsService). Admin\\Themes\\Editor: left sections list (ordering/toggle), center live preview (iframe of storefront home is acceptable if spec 03 agrees), right settings fields (hero heading, colors, products per page etc. from ThemeSettingsService::defaults() shape); save updates theme_settings + invalidates cache.\n6. Admin\\Pages\\Index + Admin\\Pages\\Form (shared create/edit): title, handle, body rich text (simple toolbar/textarea approach acceptable per Flux Free constraints — follow spec 03 as closely as feasible without paid deps), status draft/published/archived, SEO fields.\n7. Admin\\Navigation\\Index: menu list + item management with drag-and-drop ordering (wire:sort), item types link/page/collection/product with resource pickers, nesting if spec 01/03 defines parent_id. NavigationService cache invalidation on changes.\n8. Update Sidebar links for all new sections (they auto-activate via Route::has(); verify each link points at the right route name).\n9. Tests — EXACTLY the roadmap tables: tests/Feature/Admin/DiscountManagementTest.php (6 cases), tests/Feature/Admin/SettingsTest.php (5 cases incl. \"manages store domains\" and \"restricts settings to owner and admin roles\" 403 for staff). PLUS add solid Livewire feature coverage for each new section (Collections form create/edit + product attach/reorder; Inventory adjustment; Themes publish/duplicate/delete + editor save; Pages CRUD + publish; Navigation item CRUD + reorder) in tests/Feature/Admin/{CollectionManagementTest,InventoryManagementTest,ThemeManagementTest,PageManagementTest,NavigationManagementTest}.php — aim for the same rigor as existing admin tests, including at least one role-restriction case per section per the permission matrix (themes: staff 403; settings: staff 403; products-level rules already covered).\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean; npm run build succeeds. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions, test summary. Update specs/progress.md Phase 7b row + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":336,"cache_read_input_tokens":134947,"output_tokens":2241,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":336,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2241,"cache_read_input_tokens":134947,"cache_creation_input_tokens":336,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":336},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbtzQkjkCET3XFhNmGfRF","type":"assistant","uuid":"664de5d9-c615-454a-a983-7cebe279b7ef","timestamp":"2026-06-10T05:01:13.979Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"664de5d9-c615-454a-a983-7cebe279b7ef","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01S3AhX6rv5thdFM25oPvADM","type":"tool_result","content":[{"type":"text","text":"Phase 7b complete. All quality gates green: `migrate:fresh --seed` succeeds, full suite **338 passed, 0 todos** (up from 290), `pint --dirty` clean, `npm run build` succeeds.\n\n## Files created/changed\n\n**Livewire components (`app/Livewire/Admin/`)**\n- `Collections/Index.php` + `Collections/Form.php` — list (search/status/products_count/delete modal); shared create-edit form with per-store unique handle (auto-slug), debounced product picker, assigned list with thumbnails, `wire:sort` drag reorder buffered in state and synced to `collection_products.position` on save\n- `Discounts/Index.php` + `Discounts/Form.php` — list with schedule-aware status filter (active/scheduled/expired/disabled), type filter, value + usage (\"3 / unlimited\") columns; form with code/automatic radios, Generate code, percent/fixed/free_shipping (percent stored whole-number, fixed in minor units), per-store code uniqueness, min purchase + specific products/collections + one-per-customer into `rules_json` (matching `DiscountService` keys), usage limit, start/end dates, Active/Disabled switch\n- `Inventory/Index.php` — search by product/SKU, in/low(≤5)/out stock filters on `on_hand - reserved`, inline on-hand inputs clamped ≥0, guarded by `ProductPolicy::update` (Support read-only), policy badges\n- `Settings/Index.php` (tabbed page, `?tab=`) embedding child components `General` (store name/contact/order prefix + currency/locale/timezone), `Domains` (add modal with hostname regex + uniqueness, set-primary per type, last-domain protection), `Checkout` (guest checkout, `bank_transfer_cancel_days`), `Notifications`; `Settings/Shipping.php` (zone cards with country checklist + regions, flat/weight/price rates with multi-range configs matching `ShippingCalculator`'s shape, inline active toggles, test-address tool); `Settings/Taxes.php` (manual/provider mode, rate % → `default_rate_bps`, prices_include_tax, shipping_taxable, provider + API key)\n- `Themes/Index.php` + `Themes/Editor.php` — card grid (published card ring-highlighted; Publish demotes others + `ThemeSettingsService::forget`; Duplicate copies settings as draft; published theme undeletable); three-panel editor (left: fixed groups + orderable/toggleable home sections driving the `sections` array via `wire:sort`; center: iframe of primary storefront domain; right: dynamic text/textarea/color/select/number/checkbox fields over `ThemeSettingsService::defaults()`), Save & publish\n- `Pages/Index.php` + `Pages/Form.php` — search list; title/handle (unique per store)/16-row body/status draft-published-archived/published_at backfill on publish/delete modal\n- `Navigation/Index.php` — menu cards, buffered item editor with link/page/collection/product modal + resource pickers, `wire:sort` reorder, transactional diff save + `NavigationService::forget` (nesting omitted: no `parent_id` in spec 01)\n\n**Other:** `app/Policies/NavigationMenuPolicy.php` (view = owner/admin/staff, update = owner/admin per spec 06 matrix), `resources/views/components/admin/settings-tabs.blade.php`, 14 blade views under `resources/views/livewire/admin/{collections,discounts,inventory,settings,themes,pages,navigation}/`, routes in `routes/web.php` (param style `{collectionId}` etc. mirroring Phase 7a), `specs/progress.md` updated (7b row DONE + log entry).\n\n## Key decisions\n- Settings tabs follow spec 02/03 hybrid: General/Domains/Checkout/Notifications are child components of `/admin/settings?tab=`; Shipping and Taxes keep dedicated routes, all sharing one tab bar. All settings authorize via `StorePolicy` (staff → 403).\n- Taxes use the existing single `default_rate_bps` model (per the deliverable) rather than spec 03's per-zone rate table; carrier rate type omitted since `ShippingCalculator` doesn't implement it.\n- Theme/navigation cache invalidation verified end-to-end in tests (publish/save flips `ThemeSettingsService::all()` output; `NavigationService::tree()` refreshes after menu save).\n\n## Tests\nNew: `DiscountManagementTest` (6, exactly the roadmap table), `SettingsTest` (6 roadmap rows incl. staff 403 and domains), `CollectionManagementTest` (7), `InventoryManagementTest` (7), `ThemeManagementTest` (8), `PageManagementTest` (7), `NavigationManagementTest` (8) — each with at least one role-restriction case per the permission matrix. Sidebar links auto-activated via the existing `Route::has()` mechanism; Analytics/Apps/Developers correctly remain \"Coming soon\"."},{"type":"text","text":"agentId: aaf8c45178ed6fa97 (use SendMessage with to: 'aaf8c45178ed6fa97' to continue this agent)\n<usage>subagent_tokens: 284037\ntool_uses: 130\nduration_ms: 1487442</usage>"}]}]},"uuid":"b03d3d47-5356-4225-b2df-96140033fb50","timestamp":"2026-06-10T05:26:01.427Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 7b (remaining Admin Panel sections) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-6 and 7a are complete and committed. Phase 7a built the admin shell: layouts::admin component layout, Sidebar (app/Livewire/Admin/Layout/Sidebar.php — unbuilt sections render disabled \"Coming soon\" and auto-activate via Route::has() once you register the routes), TopBar with store selector, SendsToasts concern, x-admin.breadcrumbs/card/status-badge components, Dashboard, Products Index/Form, Orders Index/Show, Customers Index/Show. Domain services exist for everything (collections, discounts, shipping zones/rates, tax settings, themes + ThemeSettingsService, pages, navigation + NavigationService, inventory). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/03-ADMIN-UI.md — FULL file, especially sections for Collections, Discounts, Inventory, Settings (General/Domains/Shipping/Taxes/Checkout/Notifications tabs), Themes (cards + editor), Pages, Navigation, and anything else in scope. Follow exactly.\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 7\" step 7.5 (lines ~828-853) and test tables for tests/Feature/Admin/DiscountManagementTest.php and SettingsTest.php (lines ~1540-1562).\n- specs/02-API-ROUTES.md — admin web route paths/names for these sections.\n- Study Phase 7a conventions FIRST (app/Livewire/Admin/*, resources/views/livewire/admin/*, how Index/Form/Show pages, modals, toasts, policies, breadcrumbs and tests are done) and mirror them exactly.\n\nDELIVERABLES (all routes registered in routes/web.php admin group with names per spec 02; all policy-guarded per the permission matrix; polished Flux UI Free + Tailwind, dark mode, responsive):\n1. Admin\\Collections\\Index + Admin\\Collections\\Form (shared create/edit): title, handle, description, status, product picker (search + add/remove), drag/reorder products (wire:sort like media reorder in Products\\Form), image/SEO fields per spec 03.\n2. Admin\\Discounts\\Index (status/type filters, usage column) + Admin\\Discounts\\Form (shared create/edit): code, type code/automatic, value type percent/fixed/free_shipping, value, starts/ends dates, usage limit, minimum purchase rule, status; code uniqueness per store validation.\n3. Admin\\Inventory\\Index (spec 03 section 8): list/filter inventory items (search by product/SKU, low-stock filter), inline quantity adjustment (set/add with reason if spec says), per-location ignored (single location).\n4. Admin\\Settings\\Index: tabbed settings per spec 03 — General (store name, currency, contact, order number prefix etc.), Domains (list/add/remove store_domains, primary flag), Checkout + Notifications tabs per spec 03. Admin\\Settings\\Shipping: zones CRUD (name, countries multi-select, regions), rates CRUD per zone (name, type flat/weight/price, config ranges, active). Admin\\Settings\\Taxes: mode toggle, manual rate basis points, prices_include_tax, shipping_taxable.\n5. Admin\\Themes\\Index: theme cards with Publish/Duplicate/Delete actions (publish swaps active theme, cache invalidation via ThemeSettingsService). Admin\\Themes\\Editor: left sections list (ordering/toggle), center live preview (iframe of storefront home is acceptable if spec 03 agrees), right settings fields (hero heading, colors, products per page etc. from ThemeSettingsService::defaults() shape); save updates theme_settings + invalidates cache.\n6. Admin\\Pages\\Index + Admin\\Pages\\Form (shared create/edit): title, handle, body rich text (simple toolbar/textarea approach acceptable per Flux Free constraints — follow spec 03 as closely as feasible without paid deps), status draft/published/archived, SEO fields.\n7. Admin\\Navigation\\Index: menu list + item management with drag-and-drop ordering (wire:sort), item types link/page/collection/product with resource pickers, nesting if spec 01/03 defines parent_id. NavigationService cache invalidation on changes.\n8. Update Sidebar links for all new sections (they auto-activate via Route::has(); verify each link points at the right route name).\n9. Tests — EXACTLY the roadmap tables: tests/Feature/Admin/DiscountManagementTest.php (6 cases), tests/Feature/Admin/SettingsTest.php (5 cases incl. \"manages store domains\" and \"restricts settings to owner and admin roles\" 403 for staff). PLUS add solid Livewire feature coverage for each new section (Collections form create/edit + product attach/reorder; Inventory adjustment; Themes publish/duplicate/delete + editor save; Pages CRUD + publish; Navigation item CRUD + reorder) in tests/Feature/Admin/{CollectionManagementTest,InventoryManagementTest,ThemeManagementTest,PageManagementTest,NavigationManagementTest}.php — aim for the same rigor as existing admin tests, including at least one role-restriction case per section per the permission matrix (themes: staff 403; settings: staff 403; products-level rules already covered).\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean; npm run build succeeds. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions, test summary. Update specs/progress.md Phase 7b row + log.","agentId":"aaf8c45178ed6fa97","agentType":"general-purpose","content":[{"type":"text","text":"Phase 7b complete. All quality gates green: `migrate:fresh --seed` succeeds, full suite **338 passed, 0 todos** (up from 290), `pint --dirty` clean, `npm run build` succeeds.\n\n## Files created/changed\n\n**Livewire components (`app/Livewire/Admin/`)**\n- `Collections/Index.php` + `Collections/Form.php` — list (search/status/products_count/delete modal); shared create-edit form with per-store unique handle (auto-slug), debounced product picker, assigned list with thumbnails, `wire:sort` drag reorder buffered in state and synced to `collection_products.position` on save\n- `Discounts/Index.php` + `Discounts/Form.php` — list with schedule-aware status filter (active/scheduled/expired/disabled), type filter, value + usage (\"3 / unlimited\") columns; form with code/automatic radios, Generate code, percent/fixed/free_shipping (percent stored whole-number, fixed in minor units), per-store code uniqueness, min purchase + specific products/collections + one-per-customer into `rules_json` (matching `DiscountService` keys), usage limit, start/end dates, Active/Disabled switch\n- `Inventory/Index.php` — search by product/SKU, in/low(≤5)/out stock filters on `on_hand - reserved`, inline on-hand inputs clamped ≥0, guarded by `ProductPolicy::update` (Support read-only), policy badges\n- `Settings/Index.php` (tabbed page, `?tab=`) embedding child components `General` (store name/contact/order prefix + currency/locale/timezone), `Domains` (add modal with hostname regex + uniqueness, set-primary per type, last-domain protection), `Checkout` (guest checkout, `bank_transfer_cancel_days`), `Notifications`; `Settings/Shipping.php` (zone cards with country checklist + regions, flat/weight/price rates with multi-range configs matching `ShippingCalculator`'s shape, inline active toggles, test-address tool); `Settings/Taxes.php` (manual/provider mode, rate % → `default_rate_bps`, prices_include_tax, shipping_taxable, provider + API key)\n- `Themes/Index.php` + `Themes/Editor.php` — card grid (published card ring-highlighted; Publish demotes others + `ThemeSettingsService::forget`; Duplicate copies settings as draft; published theme undeletable); three-panel editor (left: fixed groups + orderable/toggleable home sections driving the `sections` array via `wire:sort`; center: iframe of primary storefront domain; right: dynamic text/textarea/color/select/number/checkbox fields over `ThemeSettingsService::defaults()`), Save & publish\n- `Pages/Index.php` + `Pages/Form.php` — search list; title/handle (unique per store)/16-row body/status draft-published-archived/published_at backfill on publish/delete modal\n- `Navigation/Index.php` — menu cards, buffered item editor with link/page/collection/product modal + resource pickers, `wire:sort` reorder, transactional diff save + `NavigationService::forget` (nesting omitted: no `parent_id` in spec 01)\n\n**Other:** `app/Policies/NavigationMenuPolicy.php` (view = owner/admin/staff, update = owner/admin per spec 06 matrix), `resources/views/components/admin/settings-tabs.blade.php`, 14 blade views under `resources/views/livewire/admin/{collections,discounts,inventory,settings,themes,pages,navigation}/`, routes in `routes/web.php` (param style `{collectionId}` etc. mirroring Phase 7a), `specs/progress.md` updated (7b row DONE + log entry).\n\n## Key decisions\n- Settings tabs follow spec 02/03 hybrid: General/Domains/Checkout/Notifications are child components of `/admin/settings?tab=`; Shipping and Taxes keep dedicated routes, all sharing one tab bar. All settings authorize via `StorePolicy` (staff → 403).\n- Taxes use the existing single `default_rate_bps` model (per the deliverable) rather than spec 03's per-zone rate table; carrier rate type omitted since `ShippingCalculator` doesn't implement it.\n- Theme/navigation cache invalidation verified end-to-end in tests (publish/save flips `ThemeSettingsService::all()` output; `NavigationService::tree()` refreshes after menu save).\n\n## Tests\nNew: `DiscountManagementTest` (6, exactly the roadmap table), `SettingsTest` (6 roadmap rows incl. staff 403 and domains), `CollectionManagementTest` (7), `InventoryManagementTest` (7), `ThemeManagementTest` (8), `PageManagementTest` (7), `NavigationManagementTest` (8) — each with at least one role-restriction case per the permission matrix. Sidebar links auto-activated via the existing `Route::has()` mechanism; Analytics/Apps/Developers correctly remain \"Coming soon\"."}],"totalDurationMs":1487442,"totalTokens":284037,"totalToolUseCount":130,"usage":{"input_tokens":2,"cache_creation_input_tokens":88,"cache_read_input_tokens":282211,"output_tokens":1736,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":88},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1736,"cache_read_input_tokens":282211,"cache_creation_input_tokens":88,"cache_creation":{"ephemeral_5m_input_tokens":88,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":11,"searchCount":0,"bashCount":39,"editFileCount":53,"linesAdded":5809,"linesRemoved":34,"otherToolCount":27}},"sourceToolAssistantUUID":"664de5d9-c615-454a-a983-7cebe279b7ef","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"b03d3d47-5356-4225-b2df-96140033fb50","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"b03d3d47-5356-4225-b2df-96140033fb50","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01DZX5RdMgCnvYxNGDyVNAma","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01657gv2uxMqW9ggyUhyoDpf","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 7b: Admin panel - collections, discounts, inventory, settings (general/domains/shipping/taxes), themes, pages, navigation\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 7b"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4071,"cache_read_input_tokens":135283,"output_tokens":204,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4071,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":204,"cache_read_input_tokens":135283,"cache_creation_input_tokens":4071,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4071},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu2LdiSkYYEKvuqBhxLG","type":"assistant","uuid":"40082bb0-a094-4584-bdd6-71c13ecf85c5","timestamp":"2026-06-10T05:26:07.509Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"40082bb0-a094-4584-bdd6-71c13ecf85c5","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01657gv2uxMqW9ggyUhyoDpf","type":"tool_result","content":"  Tests:    338 passed (820 assertions)\n  Duration: 12.31s\n\n14510aff Phase 7b: Admin panel - collections, discounts, inventory, settings (general/domains/shipping/taxes), themes, pages, navigation","is_error":false}]},"uuid":"c506c40d-7ef8-4233-954a-c24ca9f71103","timestamp":"2026-06-10T05:26:20.338Z","toolUseResult":{"stdout":"  Tests:    338 passed (820 assertions)\n  Duration: 12.31s\n\n14510aff Phase 7b: Admin panel - collections, discounts, inventory, settings (general/domains/shipping/taxes), themes, pages, navigation","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"40082bb0-a094-4584-bdd6-71c13ecf85c5","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c506c40d-7ef8-4233-954a-c24ca9f71103","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RHHMnZ2GBbo4uodWnnqPRi","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISlQMKYggOGAIqQMYOlSXWOhJw0aobgknLIFKefYuhev8prtnAUpW57BcpGZYlbYjYRdNZ6kG72j010ZjpSRsaghPRMb/Bj4QUvygyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgz9RBz21HxwunsUX9YaDCZ5kTRmDwH52i2RryIwYbdLVCKz4rYw6lh6d9eMltY5Qgc9S4Li/juWCo6uFGMGf57YPxiYcz+c5tVqPzs8KuABye7mgRh2DaaM467pwhvPsWZOeZIsH+WwoY3ztAvs3n3hWvoe9vtcpQjKgpQ5vx8098Mue9U0W2+W2EsnsFdOGxMCGW6Kaki7TIFvLraQwyvmixGfFzCZ4mFMUjMCRlhWjNORLyISQvcX8II0KcbuDKQ1atQj55WOQW4IYNPlzQuwUIcRaC5Fn6EgS2rZrKqdq/E23hsCEKc0AmnJrKS+t6n5IDTjwu5XXHeCW3FLPYV3twS/QnoqbowHO3/pqG4t0CEgh4yoevWg2J9lTvepLgLu0iFe5RoODoA/ckxPHTMYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":291,"cache_read_input_tokens":139354,"output_tokens":2151,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":291,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2151,"cache_read_input_tokens":139354,"cache_creation_input_tokens":291,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":291},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu2N2Qy4Qu1EB6qWQJWu","type":"assistant","uuid":"4c42c22c-51e4-4af6-b3e6-63e1f5159f16","timestamp":"2026-06-10T05:26:25.731Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4c42c22c-51e4-4af6-b3e6-63e1f5159f16","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RHHMnZ2GBbo4uodWnnqPRi","type":"message","role":"assistant","content":[{"type":"text","text":"Admin panel complete (338 passed). Launching the API phase (spec 02 REST APIs + Sanctum tokens)."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":291,"cache_read_input_tokens":139354,"output_tokens":2151,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":291,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2151,"cache_read_input_tokens":139354,"cache_creation_input_tokens":291,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":291},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu2N2Qy4Qu1EB6qWQJWu","type":"assistant","uuid":"74e472d8-be7c-4d76-9858-ea58580ae074","timestamp":"2026-06-10T05:26:25.735Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"74e472d8-be7c-4d76-9858-ea58580ae074","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RHHMnZ2GBbo4uodWnnqPRi","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017WgT2TQY4DiJwBjBNpV7tu","name":"Agent","input":{"description":"Implement REST APIs + Sanctum","name":"phase-api","prompt":"You are implementing the REST API phase of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, SQLite, Pest v4). Phases 1-7 are complete and committed: tenancy (ResolveStore middleware, current_store container binding, BelongsToStore scope), full domain services (CartService with version + CartVersionMismatchException, CheckoutService state machine incl. completeCheckout via MockPaymentProvider, OrderService, FulfillmentService, RefundService, ProductService), admin panel, storefront. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/02-API-ROUTES.md — FULL file. Primary spec: exact endpoints, request/response shapes, auth, rate limits, error formats for the storefront API (/api/storefront/v1) and admin API (/api/admin/v1).\n- specs/06-AUTH-AND-SECURITY.md — Sanctum personal access tokens, abilities (read-products/write-products/read-orders/write-orders etc.), rate limiter definitions.\n- specs/09-IMPLEMENTATION-ROADMAP.md — test tables for tests/Feature/Auth/SanctumTokenTest.php (lines ~1189-1198), tests/Feature/Cart/CartApiTest.php (~1297-1309), tests/Feature/Api/StorefrontCartApiTest.php, StorefrontCheckoutApiTest.php, AdminProductApiTest.php, AdminOrderApiTest.php (lines ~1633-1688), and bootstrap rate limiter list (line ~1944).\n- Study existing: app/Services/*, app/Http/Middleware/ResolveStore.php, bootstrap/app.php, app/Providers/AppServiceProvider.php (rate limiters), tests/Pest.php, composer.json (check if laravel/sanctum is installed; if not, install it: composer require laravel/sanctum + publish/migrate per docs — this dependency is approved since the spec mandates it).\n\nDELIVERABLES:\n1. Sanctum setup: personal access tokens for Users (admin API). Token abilities enforced per spec 06. Token creation UI belongs to Admin\\Developers\\Index — build that admin page now too (list tokens with abilities/last used, create token modal showing plaintext once, revoke), route /admin/settings/developers or per spec 02/03 path, sidebar link (auto-activates via Route::has()).\n2. routes/api.php (register in bootstrap/app.php withRouting):\n   - Storefront API /api/storefront/v1 (ResolveStore storefront context by hostname, throttle api.storefront 120/min/IP): carts CRUD per spec 02 (POST /carts, GET /carts/{id}, POST /carts/{id}/lines, PUT /carts/{id}/lines/{lineId}, DELETE /carts/{id}/lines/{lineId}; expected_version handling → 409 with current cart state; 404 unknown cart; 422 validation), checkouts (POST /checkouts, GET /checkouts/{id}, PUT address, PUT shipping-method returning available rates, POST apply-discount, PUT payment-method, POST /checkouts/{id}/pay with card fields → completes checkout, 422 on decline with message), plus products/collections read endpoints if spec 02 defines them.\n   - Admin API /api/admin/v1/stores/{storeId}/... (auth:sanctum + ability middleware + verify token user is member of {storeId} store, throttle api.admin 60/min/token): products CRUD (Eloquent API Resources, pagination meta), orders (list with status filter, show with lines/payments/fulfillments, POST fulfillments, POST refunds) per spec 02.\n   - Error format per spec 02 (consistent JSON error envelope: code/message/details — follow spec exactly).\n2b. The admin API must bind current_store from the {storeId} route param (bypassing session): extend ResolveStore or a dedicated middleware per spec 02/06.\n3. Rate limiters in AppServiceProvider per roadmap: api.admin 60/min per token, api.storefront 120/min per IP, checkout 10/min per session, search 30/min per IP, analytics 60/min per IP, webhooks 100/min per IP (login 5/min exists). Apply per spec 02.\n4. API Resources (app/Http/Resources): CartResource, CheckoutResource, ProductResource, OrderResource etc. with shapes per spec 02.\n5. Tests — EXACTLY the roadmap tables: tests/Feature/Auth/SanctumTokenTest.php (5), tests/Feature/Cart/CartApiTest.php (8 incl. 409 version mismatch + 121-request rate limit case), tests/Feature/Api/StorefrontCartApiTest.php (8), StorefrontCheckoutApiTest.php (9), AdminProductApiTest.php (7), AdminOrderApiTest.php (6). Plus a couple of tests for the Developers admin page (create/revoke token, role restriction owner/admin only).\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (storeId binding, ability names, error envelope, version handling), whether sanctum was installed or already present, test summary. Update specs/progress.md API row + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":291,"cache_read_input_tokens":139354,"output_tokens":2151,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":291,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2151,"cache_read_input_tokens":139354,"cache_creation_input_tokens":291,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":291},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu2N2Qy4Qu1EB6qWQJWu","type":"assistant","uuid":"a7512cf5-7048-4694-af06-4fe3c1da7790","timestamp":"2026-06-10T05:26:49.724Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a7512cf5-7048-4694-af06-4fe3c1da7790","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017WgT2TQY4DiJwBjBNpV7tu","type":"tool_result","content":[{"type":"text","text":"REST API phase complete. Full suite: 386 passed (1104 assertions), 0 todos; `migrate:fresh --seed` ok; pint clean. Worked on current branch, nothing committed.\n\n## Files created/changed\n\n**Sanctum (newly installed, was not present)**\n- `composer.json`/`composer.lock`: added `laravel/sanctum ^4.3` (spec-mandated, approved)\n- `config/sanctum.php`: `token_prefix` = `shop_`, default expiration 525600 min (1 year) per spec 06\n- `database/migrations/2026_06_10_053315_create_personal_access_tokens_table.php` (published)\n- `app/Models/User.php`: added `HasApiTokens`\n- `app/Support/TokenAbilities.php`: the 18 abilities from spec 06 section 1.3\n\n**Routing/middleware/limiters**\n- `routes/api.php` (new), registered via `withRouting(api:)` in `bootstrap/app.php`\n- `app/Http/Middleware/ResolveStore.php`: new `api-admin` context — binds `current_store` from the `{storeId}` route param, verifies the Sanctum user's membership (404 unknown store, 403 non-member, 403 mutations on suspended stores)\n- `bootstrap/app.php`: `abilities`/`ability` aliases (Sanctum CheckAbilities); JSON error envelopes for `api/*` (404 \"The requested resource was not found.\", 403 \"You do not have permission to perform this action.\", `InsufficientInventoryException` → 422 validation shape, `FulfillmentGuardException` → 409)\n- `app/Providers/AppServiceProvider.php`: limiters per roadmap — `api.admin` 60/min per token id (IP fallback), `api.storefront` 120/min/IP, `checkout` 10/min per session (IP fallback on stateless API), `search` 30, `analytics` 60, `webhooks` 100; all return the spec 429 body `{message, retry_after}`\n\n**Controllers/Resources**\n- `app/Http/Controllers/Api/Storefront/CartController.php`, `CheckoutController.php`\n- `app/Http/Controllers/Api/Admin/ProductController.php`, `OrderController.php`, `OrderFulfillmentController.php`, `OrderRefundController.php`\n- `app/Http/Resources/Storefront/CartResource.php`, `CheckoutResource.php` (unwrapped, spec shapes incl. totals + `available_shipping_methods`); `app/Http/Resources/Admin/ProductListResource`, `ProductResource`, `OrderListResource`, `OrderResource`, `FulfillmentResource`, `RefundResource` (`data`-wrapped, manual `meta` pagination envelope)\n- `app/Exceptions/CartVersionMismatchException.php`: now carries `expectedVersion`/`currentVersion` properties\n\n**Developers admin page**\n- `app/Livewire/Admin/Developers/Index.php` + `resources/views/livewire/admin/developers/index.blade.php`: token table (name, ability badges, last used, created, revoke with confirm), generate modal (name + ability checkboxes), plaintext shown once in a callout; route `/admin/developers` (`admin.developers.index`, sidebar auto-enabled); `StorePolicy::manageDevelopers` (owner/admin only)\n\n**Tests (exactly per roadmap tables)**\n- `tests/Feature/Auth/SanctumTokenTest.php` (5), `tests/Feature/Cart/CartApiTest.php` (8, incl. 409 version mismatch and the 121-request rate-limit case), `tests/Feature/Api/StorefrontCartApiTest.php` (8), `StorefrontCheckoutApiTest.php` (9), `AdminProductApiTest.php` (7), `AdminOrderApiTest.php` (6), plus `tests/Feature/Admin/DevelopersTest.php` (5)\n\n**Docs**: `specs/progress.md` API row → DONE + detailed log entry.\n\n## Key decisions\n- **storeId binding**: `store.resolve:api-admin` runs after `auth:sanctum`; `current_store` container binding makes `BelongsToStore` global scopes enforce tenancy, so cross-store lookups 404 naturally.\n- **Ability names**: exactly spec 06 (`read-products`, `write-products`, `read-orders`, `write-orders`, ...), enforced with Sanctum's `abilities:` middleware per route (403 on missing ability).\n- **Version handling**: accepts both `cart_version` (spec 02) and `expected_version` (roadmap); 409 returns `error_code: version_conflict`, `current_version`, and the full current cart state.\n- **Roadmap-over-spec conflicts**: POST cart lines returns 200 with the full cart (roadmap tables) instead of spec 02's 201; admin products default page size 15 (roadmap) instead of 25 (orders keep spec's 25).\n- **Fulfillment POST** creates + immediately marks shipped (spec 02 describes it as \"mark items as shipped\" and shows `status: shipped`).\n- **Discount errors**: `expired` → 400 `discount_expired`, usage limit → 400 `discount_usage_exceeded`, others 422; payment decline → 422 with `error_code`; pay in wrong state → 409; expired checkout → 410.\n- **Deferred per roadmap**: storefront search/analytics endpoints (Phases 8/9), tokenized `GET /orders/{orderNumber}` (not in this phase's deliverables), webhooks UI section (Phase 10, no table exists yet — placeholder text on the Developers page)."},{"type":"text","text":"agentId: a510d66f2ca1526f7 (use SendMessage with to: 'a510d66f2ca1526f7' to continue this agent)\n<usage>subagent_tokens: 258158\ntool_uses: 121\nduration_ms: 1385877</usage>"}]}]},"uuid":"3236b05a-7b4d-4784-ba6d-52489fdd31d1","timestamp":"2026-06-10T05:49:55.603Z","toolUseResult":{"status":"completed","prompt":"You are implementing the REST API phase of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, SQLite, Pest v4). Phases 1-7 are complete and committed: tenancy (ResolveStore middleware, current_store container binding, BelongsToStore scope), full domain services (CartService with version + CartVersionMismatchException, CheckoutService state machine incl. completeCheckout via MockPaymentProvider, OrderService, FulfillmentService, RefundService, ProductService), admin panel, storefront. Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/02-API-ROUTES.md — FULL file. Primary spec: exact endpoints, request/response shapes, auth, rate limits, error formats for the storefront API (/api/storefront/v1) and admin API (/api/admin/v1).\n- specs/06-AUTH-AND-SECURITY.md — Sanctum personal access tokens, abilities (read-products/write-products/read-orders/write-orders etc.), rate limiter definitions.\n- specs/09-IMPLEMENTATION-ROADMAP.md — test tables for tests/Feature/Auth/SanctumTokenTest.php (lines ~1189-1198), tests/Feature/Cart/CartApiTest.php (~1297-1309), tests/Feature/Api/StorefrontCartApiTest.php, StorefrontCheckoutApiTest.php, AdminProductApiTest.php, AdminOrderApiTest.php (lines ~1633-1688), and bootstrap rate limiter list (line ~1944).\n- Study existing: app/Services/*, app/Http/Middleware/ResolveStore.php, bootstrap/app.php, app/Providers/AppServiceProvider.php (rate limiters), tests/Pest.php, composer.json (check if laravel/sanctum is installed; if not, install it: composer require laravel/sanctum + publish/migrate per docs — this dependency is approved since the spec mandates it).\n\nDELIVERABLES:\n1. Sanctum setup: personal access tokens for Users (admin API). Token abilities enforced per spec 06. Token creation UI belongs to Admin\\Developers\\Index — build that admin page now too (list tokens with abilities/last used, create token modal showing plaintext once, revoke), route /admin/settings/developers or per spec 02/03 path, sidebar link (auto-activates via Route::has()).\n2. routes/api.php (register in bootstrap/app.php withRouting):\n   - Storefront API /api/storefront/v1 (ResolveStore storefront context by hostname, throttle api.storefront 120/min/IP): carts CRUD per spec 02 (POST /carts, GET /carts/{id}, POST /carts/{id}/lines, PUT /carts/{id}/lines/{lineId}, DELETE /carts/{id}/lines/{lineId}; expected_version handling → 409 with current cart state; 404 unknown cart; 422 validation), checkouts (POST /checkouts, GET /checkouts/{id}, PUT address, PUT shipping-method returning available rates, POST apply-discount, PUT payment-method, POST /checkouts/{id}/pay with card fields → completes checkout, 422 on decline with message), plus products/collections read endpoints if spec 02 defines them.\n   - Admin API /api/admin/v1/stores/{storeId}/... (auth:sanctum + ability middleware + verify token user is member of {storeId} store, throttle api.admin 60/min/token): products CRUD (Eloquent API Resources, pagination meta), orders (list with status filter, show with lines/payments/fulfillments, POST fulfillments, POST refunds) per spec 02.\n   - Error format per spec 02 (consistent JSON error envelope: code/message/details — follow spec exactly).\n2b. The admin API must bind current_store from the {storeId} route param (bypassing session): extend ResolveStore or a dedicated middleware per spec 02/06.\n3. Rate limiters in AppServiceProvider per roadmap: api.admin 60/min per token, api.storefront 120/min per IP, checkout 10/min per session, search 30/min per IP, analytics 60/min per IP, webhooks 100/min per IP (login 5/min exists). Apply per spec 02.\n4. API Resources (app/Http/Resources): CartResource, CheckoutResource, ProductResource, OrderResource etc. with shapes per spec 02.\n5. Tests — EXACTLY the roadmap tables: tests/Feature/Auth/SanctumTokenTest.php (5), tests/Feature/Cart/CartApiTest.php (8 incl. 409 version mismatch + 121-request rate limit case), tests/Feature/Api/StorefrontCartApiTest.php (8), StorefrontCheckoutApiTest.php (9), AdminProductApiTest.php (7), AdminOrderApiTest.php (6). Plus a couple of tests for the Developers admin page (create/revoke token, role restriction owner/admin only).\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (storeId binding, ability names, error envelope, version handling), whether sanctum was installed or already present, test summary. Update specs/progress.md API row + log.","agentId":"a510d66f2ca1526f7","agentType":"general-purpose","content":[{"type":"text","text":"REST API phase complete. Full suite: 386 passed (1104 assertions), 0 todos; `migrate:fresh --seed` ok; pint clean. Worked on current branch, nothing committed.\n\n## Files created/changed\n\n**Sanctum (newly installed, was not present)**\n- `composer.json`/`composer.lock`: added `laravel/sanctum ^4.3` (spec-mandated, approved)\n- `config/sanctum.php`: `token_prefix` = `shop_`, default expiration 525600 min (1 year) per spec 06\n- `database/migrations/2026_06_10_053315_create_personal_access_tokens_table.php` (published)\n- `app/Models/User.php`: added `HasApiTokens`\n- `app/Support/TokenAbilities.php`: the 18 abilities from spec 06 section 1.3\n\n**Routing/middleware/limiters**\n- `routes/api.php` (new), registered via `withRouting(api:)` in `bootstrap/app.php`\n- `app/Http/Middleware/ResolveStore.php`: new `api-admin` context — binds `current_store` from the `{storeId}` route param, verifies the Sanctum user's membership (404 unknown store, 403 non-member, 403 mutations on suspended stores)\n- `bootstrap/app.php`: `abilities`/`ability` aliases (Sanctum CheckAbilities); JSON error envelopes for `api/*` (404 \"The requested resource was not found.\", 403 \"You do not have permission to perform this action.\", `InsufficientInventoryException` → 422 validation shape, `FulfillmentGuardException` → 409)\n- `app/Providers/AppServiceProvider.php`: limiters per roadmap — `api.admin` 60/min per token id (IP fallback), `api.storefront` 120/min/IP, `checkout` 10/min per session (IP fallback on stateless API), `search` 30, `analytics` 60, `webhooks` 100; all return the spec 429 body `{message, retry_after}`\n\n**Controllers/Resources**\n- `app/Http/Controllers/Api/Storefront/CartController.php`, `CheckoutController.php`\n- `app/Http/Controllers/Api/Admin/ProductController.php`, `OrderController.php`, `OrderFulfillmentController.php`, `OrderRefundController.php`\n- `app/Http/Resources/Storefront/CartResource.php`, `CheckoutResource.php` (unwrapped, spec shapes incl. totals + `available_shipping_methods`); `app/Http/Resources/Admin/ProductListResource`, `ProductResource`, `OrderListResource`, `OrderResource`, `FulfillmentResource`, `RefundResource` (`data`-wrapped, manual `meta` pagination envelope)\n- `app/Exceptions/CartVersionMismatchException.php`: now carries `expectedVersion`/`currentVersion` properties\n\n**Developers admin page**\n- `app/Livewire/Admin/Developers/Index.php` + `resources/views/livewire/admin/developers/index.blade.php`: token table (name, ability badges, last used, created, revoke with confirm), generate modal (name + ability checkboxes), plaintext shown once in a callout; route `/admin/developers` (`admin.developers.index`, sidebar auto-enabled); `StorePolicy::manageDevelopers` (owner/admin only)\n\n**Tests (exactly per roadmap tables)**\n- `tests/Feature/Auth/SanctumTokenTest.php` (5), `tests/Feature/Cart/CartApiTest.php` (8, incl. 409 version mismatch and the 121-request rate-limit case), `tests/Feature/Api/StorefrontCartApiTest.php` (8), `StorefrontCheckoutApiTest.php` (9), `AdminProductApiTest.php` (7), `AdminOrderApiTest.php` (6), plus `tests/Feature/Admin/DevelopersTest.php` (5)\n\n**Docs**: `specs/progress.md` API row → DONE + detailed log entry.\n\n## Key decisions\n- **storeId binding**: `store.resolve:api-admin` runs after `auth:sanctum`; `current_store` container binding makes `BelongsToStore` global scopes enforce tenancy, so cross-store lookups 404 naturally.\n- **Ability names**: exactly spec 06 (`read-products`, `write-products`, `read-orders`, `write-orders`, ...), enforced with Sanctum's `abilities:` middleware per route (403 on missing ability).\n- **Version handling**: accepts both `cart_version` (spec 02) and `expected_version` (roadmap); 409 returns `error_code: version_conflict`, `current_version`, and the full current cart state.\n- **Roadmap-over-spec conflicts**: POST cart lines returns 200 with the full cart (roadmap tables) instead of spec 02's 201; admin products default page size 15 (roadmap) instead of 25 (orders keep spec's 25).\n- **Fulfillment POST** creates + immediately marks shipped (spec 02 describes it as \"mark items as shipped\" and shows `status: shipped`).\n- **Discount errors**: `expired` → 400 `discount_expired`, usage limit → 400 `discount_usage_exceeded`, others 422; payment decline → 422 with `error_code`; pay in wrong state → 409; expired checkout → 410.\n- **Deferred per roadmap**: storefront search/analytics endpoints (Phases 8/9), tokenized `GET /orders/{orderNumber}` (not in this phase's deliverables), webhooks UI section (Phase 10, no table exists yet — placeholder text on the Developers page)."}],"totalDurationMs":1385877,"totalTokens":258158,"totalToolUseCount":121,"usage":{"input_tokens":2,"cache_creation_input_tokens":3284,"cache_read_input_tokens":252920,"output_tokens":1952,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":3284},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1952,"cache_read_input_tokens":252920,"cache_creation_input_tokens":3284,"cache_creation":{"ephemeral_5m_input_tokens":3284,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":14,"searchCount":0,"bashCount":64,"editFileCount":43,"linesAdded":2970,"linesRemoved":74,"otherToolCount":0}},"sourceToolAssistantUUID":"a7512cf5-7048-4694-af06-4fe3c1da7790","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3236b05a-7b4d-4784-ba6d-52489fdd31d1","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VQKXksQzptqtzC92RQkhbu","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017ah6ki2Tk2uJmEu8yYgjMZ","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"API phase: Sanctum tokens, storefront cart/checkout API, admin products/orders API, rate limiters, developers page\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit API phase"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4186,"cache_read_input_tokens":139645,"output_tokens":193,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4186,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":193,"cache_read_input_tokens":139645,"cache_creation_input_tokens":4186,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4186},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu4AMYZDJTN69TkogS2w","type":"assistant","uuid":"db219523-3023-455f-98ec-9ccb829288b7","timestamp":"2026-06-10T05:50:01.891Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"db219523-3023-455f-98ec-9ccb829288b7","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017ah6ki2Tk2uJmEu8yYgjMZ","type":"tool_result","content":"  Tests:    386 passed (1104 assertions)\n  Duration: 13.48s\n\n6fa30e3d API phase: Sanctum tokens, storefront cart/checkout API, admin products/orders API, rate limiters, developers page","is_error":false}]},"uuid":"5bc19cba-3603-4d86-bd06-0aa9e4c3d5e1","timestamp":"2026-06-10T05:50:15.800Z","toolUseResult":{"stdout":"  Tests:    386 passed (1104 assertions)\n  Duration: 13.48s\n\n6fa30e3d API phase: Sanctum tokens, storefront cart/checkout API, admin products/orders API, rate limiters, developers page","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"db219523-3023-455f-98ec-9ccb829288b7","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5bc19cba-3603-4d86-bd06-0aa9e4c3d5e1","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018iMK2VdMJtPSg6tCipYsLn","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS1QQKYggOGAIqQLoO5lhnhxjxgyUKjgq48aHjI1ILdPomiI1zN3M7PXs9stYvro0g0XrNkfWcMp4SKpXFyFyoP/2B6GtCyLxatfwyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzCmTUQ0l7HIcBb78gaDKNqvrVtGqOaOgxgcyIwcjbq7r6MBHJGCTBu4Blx8BNDxIX6yWDJPH4Ytr708yH+3SITSQ58LDLldVoa+HdsKqADYtR/zpItF88JrTMjwbxX9xnlzBhR7BOySHmf5ai41di2qS7yi9mJ7XAPFz9akrh4jiuCK5GK4Bwtwac2mkb47BNknxJc3gN77eHK681CAEFkMsTr00m0fKB1zF16VZ5NiAV2Qr/Nyal4TeOIGHpjZsO/DUa39rXHVGZcsaDcDkSakJLtwDqWdHY3uR3wjnNTzTej6o7JkprV23vozgD5EbGn6jXlKdOER+JRUjNigsVwNIGm374P5p1MFy8TsYf3tRHZOMPhVR5p+VX9VHEO38YYICqdXKCRXFrfrSTNWKkipjpC3KfsI8e2of127Ni6NkTc97b22vIvDwslRcz6YgV9f7D0Us6P4H3SP33MmuaJUMF/blIXazKnkSOTaIr9FIS54Q5hFnn9haZ6W/F642fnb5D6SpAxPUzSE/gL79SmjqhcAbSsJul4bItrRrbvG7QEFDC0N1JKZMwy36hiI71WVRaSEma/CtYwUagIRTgqIP8aU3dDsUh15IWjYwmssMnOCKvfwjjp3EOLCRTzRy8rgkBlP7URXnrhiVGGbdUYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":276,"cache_read_input_tokens":143831,"output_tokens":2687,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":276,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2687,"cache_read_input_tokens":143831,"cache_creation_input_tokens":276,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":276},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu4BqqgVBEDcG6kT6o38","type":"assistant","uuid":"f047b68d-a91d-472e-a535-42646911dee8","timestamp":"2026-06-10T05:50:25.073Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f047b68d-a91d-472e-a535-42646911dee8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018iMK2VdMJtPSg6tCipYsLn","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISxAIKYwgOGAIqQA+2zxlpJPMViy4S3y3dQtjB8rMq4X8yesg0OMyoAH+KziDlBBemCljiKf1UJ5pqZhNEYuIX/bOAqQg3ZFHjmcoyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMgRIMFIEdCmgJhrBtGgzIjFnSHaRhWmMugykiMHgcS/UkqRUTqxqNjvH5xEHre93Hk6HmwdX0JbshKV3M3itOstomYGWFyvGZ4kOUPCqOAcrD8wcR6dFARJHUB6KuL1SyW4G4Uxwalj0G07B13V1M9pdA19OCCeOtUHF8ZVx8TpdBqkuY6FXKNrwnwnIc3Kv+kN7xntKJkZ+aisFnfjly8i7Zk1KyPZaHaf4W29+87qOQFQ7qeMvkPtg17xDscqrPFa3J3MfzF6/zT2sp5b9CYAQwdJrwTtRUVM1wN9oYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":276,"cache_read_input_tokens":143831,"output_tokens":2687,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":276,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2687,"cache_read_input_tokens":143831,"cache_creation_input_tokens":276,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":276},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu4BqqgVBEDcG6kT6o38","type":"assistant","uuid":"70d5f201-ddbe-42ae-aadc-4fcd159d41fe","timestamp":"2026-06-10T05:50:25.073Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"70d5f201-ddbe-42ae-aadc-4fcd159d41fe","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018iMK2VdMJtPSg6tCipYsLn","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_015sumf26R9MdBwoqMCSedrt","name":"Agent","input":{"description":"Implement Search + Analytics","name":"phase89-search-analytics","prompt":"You are implementing Phase 8 (Search, SQLite FTS5) and Phase 9 (Analytics) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-7 + API are complete and committed: tenancy, catalog, storefront (header has a search icon placeholder from Phase 3), cart/checkout/orders, full admin panel (sidebar links auto-activate via Route::has(); Analytics + Search settings currently \"Coming soon\"), REST APIs + rate limiters (search 30/min/IP and analytics 60/min/IP already registered in AppServiceProvider). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 8: Search\" (lines ~856-887) and \"Phase 9: Analytics\" (lines ~889-916), test tables for tests/Feature/Search/SearchTest.php + AutocompleteTest.php and tests/Feature/Analytics/EventIngestionTest.php + AggregationTest.php (lines ~1566-1607).\n- specs/01-DATABASE-SCHEMA.md — search_settings, search_queries, products_fts (FTS5 virtual table), analytics_events, analytics_daily tables.\n- specs/05-BUSINESS-LOGIC.md — search behavior (relevance, filters, synonyms/stop words if specified) and analytics aggregation rules.\n- specs/04-STOREFRONT-UI.md — search modal + search results page sections.\n- specs/03-ADMIN-UI.md — Analytics dashboard section and Search settings section.\n- specs/02-API-ROUTES.md — search/autocomplete/analytics endpoints (storefront API + web).\n- specs/07-SEEDERS-AND-TEST-DATA.md — AnalyticsSeeder, SearchSettingsSeeder.\n- Study existing conventions: app/Services/*, app/Livewire/Storefront/*, app/Livewire/Admin/*, app/Observers (may be empty), AppServiceProvider, tests.\n\nDELIVERABLES — Phase 8 Search:\n1. Migrations: search_settings (store_id PK), search_queries, and a raw-SQL FTS5 virtual table migration creating products_fts (title, description, vendor, product_type, tags; content-synced from products). Ensure RefreshDatabase/test runs work with the virtual table (SQLite in tests uses file or :memory: — verify and make migrations idempotent/safe).\n2. Models: SearchSettings, SearchQuery (BelongsToStore on search_queries per Phase 1 list) + factories.\n3. App\\Services\\SearchService: search(store, query, filters, perPage): LengthAwarePaginator (FTS5 MATCH with store scoping, filters vendor/price range/collection, sort relevance/price/newest, logs search_queries row), autocomplete(store, prefix, limit) (prefix matching, min length), syncProduct(Product), removeProduct(int). Apply synonyms/stop words from search_settings per spec 05 if defined.\n4. App\\Observers\\ProductObserver: sync on created/updated, remove on deleted; register in AppServiceProvider. Reindex command or admin button to rebuild index (per spec 03 Search settings: synonyms, stop words, reindex button).\n5. Storefront UI: Storefront\\Search\\Modal (search-as-you-type autocomplete, opens from header icon, keyboard accessible) + Storefront\\Search\\Index (GET /search?q= results page with filters vendor/price/collection, sort, pagination). Wire header search icon. Storefront search API endpoints per spec 02 (with search rate limiter).\n6. Admin\\Search\\Settings page (synonyms, stop words, reindex button) at the spec 02/03 route, sidebar auto-activates.\n7. Index seeded products after seeding (SearchSettingsSeeder + reindex in seeder or observer-driven).\n\nDELIVERABLES — Phase 9 Analytics:\n8. Migrations: analytics_events, analytics_daily (composite PK store_id+date) per spec 01. Models + factories (BelongsToStore on analytics_events).\n9. App\\Services\\AnalyticsService: track(store, type, properties, sessionId, customerId), getDailyMetrics(store, start, end). Event types: page_view, product_view, add_to_cart, remove_from_cart, checkout_started, checkout_completed, search.\n10. Event tracking wiring: track storefront page views/product views/add-to-cart/checkout events server-side where spec 05/02 specifies (e.g., in Livewire components/services or a POST /api/storefront/v1/analytics/events endpoint per spec 02 with analytics rate limiter — follow spec 02). Search tracking via SearchService.\n11. App\\Jobs\\AggregateAnalytics: daily via routes/console.php; idempotent aggregation into analytics_daily (orders_count, revenue_amount, aov_amount, visits_count, add_to_cart_count, checkout_started_count, conversion per spec).\n12. Admin\\Analytics\\Index page per spec 03: sales chart, traffic, funnel visualization (page_view → product_view → add_to_cart → checkout_started → checkout_completed), date range; reuse Phase 7a SVG chart approach (no new npm deps). Sidebar auto-activates. Also: Phase 7a Dashboard left a marked conversion-rate integration point — switch it to analytics-based conversion if spec 03 says so, else leave.\n13. AnalyticsSeeder per spec 07 (events over last 30 days + run aggregation), wired into DatabaseSeeder.\n14. Tests — EXACTLY the roadmap tables: tests/Feature/Search/SearchTest.php (5), AutocompleteTest.php (3), tests/Feature/Analytics/EventIngestionTest.php (5), AggregationTest.php (3). Plus reasonable Livewire tests for Search modal/page and Admin Analytics/Search settings pages (a few cases each, mirroring existing admin test rigor incl. role restrictions where the matrix applies: analytics view = owner/admin/staff).\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds (FTS index populated; analytics aggregated); FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean; npm run build if assets touched. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (FTS5 sync strategy + test-db compatibility, autocomplete approach, tracking wiring points, aggregation idempotency), test summary. Update specs/progress.md rows 8+9 + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":276,"cache_read_input_tokens":143831,"output_tokens":2687,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":276,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2687,"cache_read_input_tokens":143831,"cache_creation_input_tokens":276,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":276},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu4BqqgVBEDcG6kT6o38","type":"assistant","uuid":"2f40008c-51ef-4f7e-a6af-6c16fc762dff","timestamp":"2026-06-10T05:50:54.015Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"2f40008c-51ef-4f7e-a6af-6c16fc762dff","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"2f40008c-51ef-4f7e-a6af-6c16fc762dff","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_015sumf26R9MdBwoqMCSedrt","type":"tool_result","content":[{"type":"text","text":"Phases 8 (Search) and 9 (Analytics) are complete: full suite 422 passed, 0 todos, pint clean, `migrate:fresh --seed` OK, `npm run build` OK, live smoke-tested on shop.test.\n\n## Files created/changed\n\n**Phase 8 Search**\n- Migrations: `database/migrations/2026_06_10_600001_create_search_settings_table.php`, `600002_create_search_queries_table.php`, `600003_create_products_fts_virtual_table.php` (raw SQL FTS5)\n- Models/factories: `app/Models/SearchSettings.php`, `SearchQuery.php` (BelongsToStore) + `database/factories/SearchSettingsFactory.php`, `SearchQueryFactory.php`\n- `app/Services/SearchService.php` (search/autocomplete/countMatches/facetValues/syncProduct/removeProduct/reindexStore), `app/Observers/ProductObserver.php` (registered in `app/Providers/AppServiceProvider.php`)\n- Storefront: `app/Livewire/Storefront/Search/{Modal,Index}.php` + blades in `resources/views/livewire/storefront/search/`, header icon wired (`storefront/partials/header.blade.php`), modal mounted in `layouts/storefront.blade.php`, search form added to the 404 page, route `GET /search` (`storefront.search`)\n- API: `app/Http/Controllers/Api/Storefront/SearchController.php` for `GET /api/storefront/v1/search` + `/search/suggest` under `throttle:search` (`routes/api.php`)\n- Admin: `app/Livewire/Admin/Search/Settings.php` + blade at `GET /admin/search/settings` (synonyms rows, stop-words textarea, synchronous Reindex now button; owner/admin only)\n- `database/seeders/SearchSettingsSeeder.php` (spec 07 3.18 values for both stores + reindex)\n\n**Phase 9 Analytics**\n- Migrations: `2026_06_10_700001_create_analytics_events_table.php` (unique store_id+client_event_id), `700002_create_analytics_daily_table.php` (composite PK)\n- Models/factories: `app/Models/AnalyticsEvent.php` (BelongsToStore), `AnalyticsDaily.php` + factories (AnalyticsEventFactory per spec 07 2.26 with pageView/productView/addToCart states)\n- `app/Services/AnalyticsService.php` (track with dedupe, getDailyMetrics, eventCountsBetween), `app/Jobs/AggregateAnalytics.php` (scheduled dailyAt 01:00 in `routes/console.php`)\n- Ingestion: `app/Http/Controllers/Api/Storefront/AnalyticsEventController.php` for `POST /api/storefront/v1/analytics/events` (`throttle:analytics`, batch 1-50, 202 {accepted, rejected})\n- Tracking wiring: product_view + add_to_cart in `Storefront/Products/Show.php`, remove_from_cart in `Concerns/InteractsWithCart.php`, checkout_started in `CheckoutService::createFromCart`, checkout_completed via new `app/Listeners/LogOrderAnalyticsEvent.php` (OrderCreated, per spec 05 §17), search via SearchService, page_view via a small vanilla-JS fetch snippet in the storefront layout\n- Admin: `app/Livewire/Admin/Analytics/Index.php` + blade at `GET /admin/analytics` (KPI tiles with vs-previous badges, SVG sales chart reusing Phase 7a geometry, 5-step funnel with Tailwind bars, top products, top referrers, today/7d/30d/custom range); `StorePolicy::viewAnalytics` (owner/admin/staff); sidebar auto-enabled. Dashboard conversion integration point switched to analytics_daily visits with cart-based fallback.\n- `database/seeders/AnalyticsSeeder.php` (31 daily rows, ~3% growth; 220 events/35 sessions/7 days, 30% customer-attributed), both seeders in DatabaseSeeder\n\n## Key decisions\n- **FTS5 sync strategy**: regular (non-contentless) FTS5 table with `rowid = product id`, kept in sync by ProductObserver (delete+insert, since FTS5 has no UPDATE); query-time exclusion of non-published products per spec 05 §16.3. Migration is `CREATE VIRTUAL TABLE IF NOT EXISTS` and sqlite-driver-guarded, so RefreshDatabase (`:memory:`) and `migrate:fresh` both work; verified FTS5 is available in the bundled SQLite.\n- **FTS5 quirk found**: FTS5 stores UNINDEXED column values as text, so integer comparisons on `store_id` silently match nothing; all index queries use `CAST(store_id AS INTEGER) = ?`.\n- **Query building**: tokens sanitized to letters/digits (no FTS5 escaping needed), stop words removed (falling back to the original tokens if everything is a stop word), synonyms expanded into OR groups with multi-word synonyms as quoted phrases, trailing `*` prefix on the last token (so full search doubles as autocomplete); autocomplete minimum prefix 2 chars.\n- **Search logging**: `search()` logs to search_queries plus a `search` analytics event; the Livewire results page passes `logQuery` so only query-text changes log, not filter/pagination re-renders.\n- **Aggregation idempotency**: AggregateAnalytics fully recomputes each (store, date) and upserts; revenue/AOV come from `checkout_completed` event `total_amount` properties, visits = distinct page_view sessions. Optional date arg, defaults to yesterday.\n- **Ingestion dedupe**: unique (store_id, client_event_id) index + swallowed UniqueConstraintViolationException; duplicates counted as `rejected` in the 202 response. Customer attribution via `$request->user('customer')`.\n- **AnalyticsSeeder** seeds analytics_daily directly with spec 07's growth algorithm (running the job would overwrite the 30-day trend with only 7 days of events), so the table is populated exactly per spec ranges.\n\n## Tests\nRoadmap tables implemented exactly: `tests/Feature/Search/SearchTest.php` (5), `AutocompleteTest.php` (3), `tests/Feature/Analytics/EventIngestionTest.php` (5), `AggregationTest.php` (3). Plus `tests/Feature/Storefront/SearchUiTest.php` (8: results page, empty state, vendor filter, price sort, modal suggestions/min-prefix, both search APIs), `tests/Feature/Admin/AnalyticsTest.php` (7: render, KPIs from daily rows, date range, funnel from events, owner/admin/staff allowed, support 403), `tests/Feature/Admin/SearchSettingsTest.php` (5: render, save synonyms/stop words, remove group, reindex rebuilds index, staff 403). Full suite: **422 passed (1207 assertions), 0 todos**. specs/progress.md rows 8+9 and the log updated."},{"type":"text","text":"agentId: a5b8fdd31f067495e (use SendMessage with to: 'a5b8fdd31f067495e' to continue this agent)\n<usage>subagent_tokens: 266720\ntool_uses: 200\nduration_ms: 1898221</usage>"}]}]},"uuid":"3bda3cd8-6dfd-4184-8934-2cf091be29ea","timestamp":"2026-06-10T06:22:32.241Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 8 (Search, SQLite FTS5) and Phase 9 (Analytics) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-7 + API are complete and committed: tenancy, catalog, storefront (header has a search icon placeholder from Phase 3), cart/checkout/orders, full admin panel (sidebar links auto-activate via Route::has(); Analytics + Search settings currently \"Coming soon\"), REST APIs + rate limiters (search 30/min/IP and analytics 60/min/IP already registered in AppServiceProvider). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 8: Search\" (lines ~856-887) and \"Phase 9: Analytics\" (lines ~889-916), test tables for tests/Feature/Search/SearchTest.php + AutocompleteTest.php and tests/Feature/Analytics/EventIngestionTest.php + AggregationTest.php (lines ~1566-1607).\n- specs/01-DATABASE-SCHEMA.md — search_settings, search_queries, products_fts (FTS5 virtual table), analytics_events, analytics_daily tables.\n- specs/05-BUSINESS-LOGIC.md — search behavior (relevance, filters, synonyms/stop words if specified) and analytics aggregation rules.\n- specs/04-STOREFRONT-UI.md — search modal + search results page sections.\n- specs/03-ADMIN-UI.md — Analytics dashboard section and Search settings section.\n- specs/02-API-ROUTES.md — search/autocomplete/analytics endpoints (storefront API + web).\n- specs/07-SEEDERS-AND-TEST-DATA.md — AnalyticsSeeder, SearchSettingsSeeder.\n- Study existing conventions: app/Services/*, app/Livewire/Storefront/*, app/Livewire/Admin/*, app/Observers (may be empty), AppServiceProvider, tests.\n\nDELIVERABLES — Phase 8 Search:\n1. Migrations: search_settings (store_id PK), search_queries, and a raw-SQL FTS5 virtual table migration creating products_fts (title, description, vendor, product_type, tags; content-synced from products). Ensure RefreshDatabase/test runs work with the virtual table (SQLite in tests uses file or :memory: — verify and make migrations idempotent/safe).\n2. Models: SearchSettings, SearchQuery (BelongsToStore on search_queries per Phase 1 list) + factories.\n3. App\\Services\\SearchService: search(store, query, filters, perPage): LengthAwarePaginator (FTS5 MATCH with store scoping, filters vendor/price range/collection, sort relevance/price/newest, logs search_queries row), autocomplete(store, prefix, limit) (prefix matching, min length), syncProduct(Product), removeProduct(int). Apply synonyms/stop words from search_settings per spec 05 if defined.\n4. App\\Observers\\ProductObserver: sync on created/updated, remove on deleted; register in AppServiceProvider. Reindex command or admin button to rebuild index (per spec 03 Search settings: synonyms, stop words, reindex button).\n5. Storefront UI: Storefront\\Search\\Modal (search-as-you-type autocomplete, opens from header icon, keyboard accessible) + Storefront\\Search\\Index (GET /search?q= results page with filters vendor/price/collection, sort, pagination). Wire header search icon. Storefront search API endpoints per spec 02 (with search rate limiter).\n6. Admin\\Search\\Settings page (synonyms, stop words, reindex button) at the spec 02/03 route, sidebar auto-activates.\n7. Index seeded products after seeding (SearchSettingsSeeder + reindex in seeder or observer-driven).\n\nDELIVERABLES — Phase 9 Analytics:\n8. Migrations: analytics_events, analytics_daily (composite PK store_id+date) per spec 01. Models + factories (BelongsToStore on analytics_events).\n9. App\\Services\\AnalyticsService: track(store, type, properties, sessionId, customerId), getDailyMetrics(store, start, end). Event types: page_view, product_view, add_to_cart, remove_from_cart, checkout_started, checkout_completed, search.\n10. Event tracking wiring: track storefront page views/product views/add-to-cart/checkout events server-side where spec 05/02 specifies (e.g., in Livewire components/services or a POST /api/storefront/v1/analytics/events endpoint per spec 02 with analytics rate limiter — follow spec 02). Search tracking via SearchService.\n11. App\\Jobs\\AggregateAnalytics: daily via routes/console.php; idempotent aggregation into analytics_daily (orders_count, revenue_amount, aov_amount, visits_count, add_to_cart_count, checkout_started_count, conversion per spec).\n12. Admin\\Analytics\\Index page per spec 03: sales chart, traffic, funnel visualization (page_view → product_view → add_to_cart → checkout_started → checkout_completed), date range; reuse Phase 7a SVG chart approach (no new npm deps). Sidebar auto-activates. Also: Phase 7a Dashboard left a marked conversion-rate integration point — switch it to analytics-based conversion if spec 03 says so, else leave.\n13. AnalyticsSeeder per spec 07 (events over last 30 days + run aggregation), wired into DatabaseSeeder.\n14. Tests — EXACTLY the roadmap tables: tests/Feature/Search/SearchTest.php (5), AutocompleteTest.php (3), tests/Feature/Analytics/EventIngestionTest.php (5), AggregationTest.php (3). Plus reasonable Livewire tests for Search modal/page and Admin Analytics/Search settings pages (a few cases each, mirroring existing admin test rigor incl. role restrictions where the matrix applies: analytics view = owner/admin/staff).\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds (FTS index populated; analytics aggregated); FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean; npm run build if assets touched. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (FTS5 sync strategy + test-db compatibility, autocomplete approach, tracking wiring points, aggregation idempotency), test summary. Update specs/progress.md rows 8+9 + log.","agentId":"a5b8fdd31f067495e","agentType":"general-purpose","content":[{"type":"text","text":"Phases 8 (Search) and 9 (Analytics) are complete: full suite 422 passed, 0 todos, pint clean, `migrate:fresh --seed` OK, `npm run build` OK, live smoke-tested on shop.test.\n\n## Files created/changed\n\n**Phase 8 Search**\n- Migrations: `database/migrations/2026_06_10_600001_create_search_settings_table.php`, `600002_create_search_queries_table.php`, `600003_create_products_fts_virtual_table.php` (raw SQL FTS5)\n- Models/factories: `app/Models/SearchSettings.php`, `SearchQuery.php` (BelongsToStore) + `database/factories/SearchSettingsFactory.php`, `SearchQueryFactory.php`\n- `app/Services/SearchService.php` (search/autocomplete/countMatches/facetValues/syncProduct/removeProduct/reindexStore), `app/Observers/ProductObserver.php` (registered in `app/Providers/AppServiceProvider.php`)\n- Storefront: `app/Livewire/Storefront/Search/{Modal,Index}.php` + blades in `resources/views/livewire/storefront/search/`, header icon wired (`storefront/partials/header.blade.php`), modal mounted in `layouts/storefront.blade.php`, search form added to the 404 page, route `GET /search` (`storefront.search`)\n- API: `app/Http/Controllers/Api/Storefront/SearchController.php` for `GET /api/storefront/v1/search` + `/search/suggest` under `throttle:search` (`routes/api.php`)\n- Admin: `app/Livewire/Admin/Search/Settings.php` + blade at `GET /admin/search/settings` (synonyms rows, stop-words textarea, synchronous Reindex now button; owner/admin only)\n- `database/seeders/SearchSettingsSeeder.php` (spec 07 3.18 values for both stores + reindex)\n\n**Phase 9 Analytics**\n- Migrations: `2026_06_10_700001_create_analytics_events_table.php` (unique store_id+client_event_id), `700002_create_analytics_daily_table.php` (composite PK)\n- Models/factories: `app/Models/AnalyticsEvent.php` (BelongsToStore), `AnalyticsDaily.php` + factories (AnalyticsEventFactory per spec 07 2.26 with pageView/productView/addToCart states)\n- `app/Services/AnalyticsService.php` (track with dedupe, getDailyMetrics, eventCountsBetween), `app/Jobs/AggregateAnalytics.php` (scheduled dailyAt 01:00 in `routes/console.php`)\n- Ingestion: `app/Http/Controllers/Api/Storefront/AnalyticsEventController.php` for `POST /api/storefront/v1/analytics/events` (`throttle:analytics`, batch 1-50, 202 {accepted, rejected})\n- Tracking wiring: product_view + add_to_cart in `Storefront/Products/Show.php`, remove_from_cart in `Concerns/InteractsWithCart.php`, checkout_started in `CheckoutService::createFromCart`, checkout_completed via new `app/Listeners/LogOrderAnalyticsEvent.php` (OrderCreated, per spec 05 §17), search via SearchService, page_view via a small vanilla-JS fetch snippet in the storefront layout\n- Admin: `app/Livewire/Admin/Analytics/Index.php` + blade at `GET /admin/analytics` (KPI tiles with vs-previous badges, SVG sales chart reusing Phase 7a geometry, 5-step funnel with Tailwind bars, top products, top referrers, today/7d/30d/custom range); `StorePolicy::viewAnalytics` (owner/admin/staff); sidebar auto-enabled. Dashboard conversion integration point switched to analytics_daily visits with cart-based fallback.\n- `database/seeders/AnalyticsSeeder.php` (31 daily rows, ~3% growth; 220 events/35 sessions/7 days, 30% customer-attributed), both seeders in DatabaseSeeder\n\n## Key decisions\n- **FTS5 sync strategy**: regular (non-contentless) FTS5 table with `rowid = product id`, kept in sync by ProductObserver (delete+insert, since FTS5 has no UPDATE); query-time exclusion of non-published products per spec 05 §16.3. Migration is `CREATE VIRTUAL TABLE IF NOT EXISTS` and sqlite-driver-guarded, so RefreshDatabase (`:memory:`) and `migrate:fresh` both work; verified FTS5 is available in the bundled SQLite.\n- **FTS5 quirk found**: FTS5 stores UNINDEXED column values as text, so integer comparisons on `store_id` silently match nothing; all index queries use `CAST(store_id AS INTEGER) = ?`.\n- **Query building**: tokens sanitized to letters/digits (no FTS5 escaping needed), stop words removed (falling back to the original tokens if everything is a stop word), synonyms expanded into OR groups with multi-word synonyms as quoted phrases, trailing `*` prefix on the last token (so full search doubles as autocomplete); autocomplete minimum prefix 2 chars.\n- **Search logging**: `search()` logs to search_queries plus a `search` analytics event; the Livewire results page passes `logQuery` so only query-text changes log, not filter/pagination re-renders.\n- **Aggregation idempotency**: AggregateAnalytics fully recomputes each (store, date) and upserts; revenue/AOV come from `checkout_completed` event `total_amount` properties, visits = distinct page_view sessions. Optional date arg, defaults to yesterday.\n- **Ingestion dedupe**: unique (store_id, client_event_id) index + swallowed UniqueConstraintViolationException; duplicates counted as `rejected` in the 202 response. Customer attribution via `$request->user('customer')`.\n- **AnalyticsSeeder** seeds analytics_daily directly with spec 07's growth algorithm (running the job would overwrite the 30-day trend with only 7 days of events), so the table is populated exactly per spec ranges.\n\n## Tests\nRoadmap tables implemented exactly: `tests/Feature/Search/SearchTest.php` (5), `AutocompleteTest.php` (3), `tests/Feature/Analytics/EventIngestionTest.php` (5), `AggregationTest.php` (3). Plus `tests/Feature/Storefront/SearchUiTest.php` (8: results page, empty state, vendor filter, price sort, modal suggestions/min-prefix, both search APIs), `tests/Feature/Admin/AnalyticsTest.php` (7: render, KPIs from daily rows, date range, funnel from events, owner/admin/staff allowed, support 403), `tests/Feature/Admin/SearchSettingsTest.php` (5: render, save synonyms/stop words, remove group, reindex rebuilds index, staff 403). Full suite: **422 passed (1207 assertions), 0 todos**. specs/progress.md rows 8+9 and the log updated."}],"totalDurationMs":1898221,"totalTokens":266720,"totalToolUseCount":200,"usage":{"input_tokens":2,"cache_creation_input_tokens":88,"cache_read_input_tokens":264133,"output_tokens":2497,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":88},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2497,"cache_read_input_tokens":264133,"cache_creation_input_tokens":88,"cache_creation":{"ephemeral_5m_input_tokens":88,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":8,"searchCount":0,"bashCount":88,"editFileCount":77,"linesAdded":4174,"linesRemoved":230,"otherToolCount":27}},"sourceToolAssistantUUID":"2f40008c-51ef-4f7e-a6af-6c16fc762dff","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3bda3cd8-6dfd-4184-8934-2cf091be29ea","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"e1729cbf-a09b-472a-bb65-07efabd25972","timestamp":"2026-06-10T06:22:32.243Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e1729cbf-a09b-472a-bb65-07efabd25972","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01TJqvvacojLJYA3W2Bs12Ds","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01VgMxg8s5Zjm9Et9b4CrbMP","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phases 8+9: SQLite FTS5 search (service, modal, results, admin settings) and analytics (tracking, aggregation, admin dashboard)\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phases 8+9"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":5275,"cache_read_input_tokens":144107,"output_tokens":208,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":5275,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":208,"cache_read_input_tokens":144107,"cache_creation_input_tokens":5275,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":5275},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu6eaiq4bn2LMcQoFtUa","type":"assistant","uuid":"aab23f29-c715-42e0-9b60-c0a53b6e5983","timestamp":"2026-06-10T06:22:39.692Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"aab23f29-c715-42e0-9b60-c0a53b6e5983","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01VgMxg8s5Zjm9Et9b4CrbMP","type":"tool_result","content":"  Tests:    422 passed (1207 assertions)\n  Duration: 14.70s\n\n51ebde96 Phases 8+9: SQLite FTS5 search (service, modal, results, admin settings) and analytics (tracking, aggregation, admin dashboard)","is_error":false}]},"uuid":"ae735256-5ff0-4f01-a636-bd99f031f0fa","timestamp":"2026-06-10T06:22:54.945Z","toolUseResult":{"stdout":"  Tests:    422 passed (1207 assertions)\n  Duration: 14.70s\n\n51ebde96 Phases 8+9: SQLite FTS5 search (service, modal, results, admin settings) and analytics (tracking, aggregation, admin dashboard)","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"aab23f29-c715-42e0-9b60-c0a53b6e5983","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ae735256-5ff0-4f01-a636-bd99f031f0fa","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_014EyJQ6PCtEgimeaF1de9nS","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISjQIKYwgOGAIqQDUVt52KC3pVCsdVXOdYKhX2dsqsPlNPUzgY7Wbt4o5MdMf8U7V5UpExKeG/xfUYU+lc24LRekIJQ4Bfhsl5Fz8yDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMI6fumFSSzxEbNV5MGgwrRR6PSBS6gqxnT5IiMAVnz+5fLrsScLSZYs19IdwC/aAALHuuP1KG8pcOySAz6hCWzhZI4eCj+E0NRLrzBipYzpkvMPC4uAou2+T7NiWo1VaHKUX4XOQxhQnyCMLZIo28EL9CDxOtVWd4Nlmq4/aklFrLPr9YViBc1QX8aCcdrbC1bhBhHDOdI6oGaH59zVb3TvLUjfGfYxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":430,"cache_read_input_tokens":149382,"output_tokens":2014,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":430,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2014,"cache_read_input_tokens":149382,"cache_creation_input_tokens":430,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":430},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu6gFeRFQNxastTWBGDv","type":"assistant","uuid":"1ccc48da-45d7-4d3e-80d0-015203b80e12","timestamp":"2026-06-10T06:22:59.488Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1ccc48da-45d7-4d3e-80d0-015203b80e12","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_014EyJQ6PCtEgimeaF1de9nS","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PTbBxvm8XBY18CNeupkNt6","name":"Agent","input":{"description":"Implement Apps + Webhooks","name":"phase10-webhooks","prompt":"You are implementing Phase 10 (Apps and Webhooks) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, SQLite, Pest v4). Phases 1-9 + API are complete and committed: tenancy, full commerce domain (events OrderCreated/OrderPaid/OrderFulfilled/OrderCancelled/OrderRefunded/CheckoutCompleted exist as plain event classes), admin panel (sidebar links auto-activate via Route::has(); Apps currently \"Coming soon\"; Developers page exists at /admin/developers with Sanctum token management and a webhooks placeholder), REST APIs (webhooks rate limiter 100/min/IP registered). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 10\" (lines ~918-950) and test tables for tests/Feature/Webhooks/WebhookDeliveryTest.php + WebhookSignatureTest.php (lines ~1610-1630).\n- specs/01-DATABASE-SCHEMA.md — apps, app_installations, oauth_clients, oauth_tokens, webhook_subscriptions, webhook_deliveries tables.\n- specs/05-BUSINESS-LOGIC.md — webhook/event sections (event catalog, payload shapes, retry/circuit breaker rules).\n- specs/03-ADMIN-UI.md — Apps directory/detail pages, Developers webhook subscription management.\n- specs/02-API-ROUTES.md — any webhook/app API routes.\n- specs/07-SEEDERS-AND-TEST-DATA.md — app/webhook seed data if defined.\n- Study existing: app/Events/*, app/Jobs/*, app/Livewire/Admin/Developers/Index.php, AppServiceProvider, routes/console.php, tests.\n\nDELIVERABLES:\n1. Migrations: apps, app_installations, oauth_clients, oauth_tokens, webhook_subscriptions, webhook_deliveries per spec 01 (OAuth is deferred/stubbed per roadmap tech decisions — tables + models only, no Passport).\n2. Models + factories: App (consider class name collision care — use App\\Models\\App or alias per spec; pick a safe approach e.g. model class `App` in App\\Models with explicit table), AppInstallation, OauthClient, OauthToken, WebhookSubscription (BelongsToStore), WebhookDelivery.\n3. App\\Services\\WebhookService: dispatch(store, eventType, payload) finds active matching subscriptions and queues DeliverWebhook jobs (creates webhook_deliveries rows), sign(payload, secret) HMAC-SHA256, verify(payload, signature, secret) timing-safe.\n4. App\\Jobs\\DeliverWebhook: HTTP POST JSON with headers X-Platform-Signature, X-Platform-Event, X-Platform-Delivery-Id, X-Platform-Timestamp; Laravel backoff [60, 300, 1800, 7200, 43200] (6 total attempts); records response code/body/attempt_count in webhook_deliveries; marks failed after final attempt; circuit breaker pauses subscription after 5 consecutive failures (and resets counter on success). Use Http facade (testable with Http::fake()).\n5. Event wiring: listeners (or a single subscriber) translating domain events to webhook event types per spec 05 catalog (order.created, order.paid, order.fulfilled, order.cancelled, order.refunded, product.created/updated/deleted etc. — follow spec 05/01 exactly) with payload shapes per spec; registered in AppServiceProvider/EventServiceProvider pattern used in this app.\n6. Admin UI: Admin\\Apps\\Index (app directory: list available apps with install action per spec 03), Admin\\Apps\\Show (installed app detail incl. its webhook subscriptions/status), webhook subscription management on the Developers page (create subscription with target URL + event types + secret generation, list with status/last delivery, pause/resume, recent deliveries with response codes, replace the placeholder). Policy: apps/developers = owner/admin per matrix.\n7. Seeders per spec 07 (sample apps + installation + webhook subscription if defined), wired into DatabaseSeeder.\n8. Tests — EXACTLY the roadmap tables: tests/Feature/Webhooks/WebhookDeliveryTest.php (5 — use Http::fake + Queue/Bus assertions; the retry/backoff case verifies attempt accounting, the circuit breaker case pauses after 5 consecutive failures), WebhookSignatureTest.php (4). Plus admin UI tests (tests/Feature/Admin/AppsTest.php and webhook-subscription cases added to DevelopersTest or a new file): install app, subscription CRUD/pause, role restriction.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (event catalog mapping, retry/circuit breaker mechanics, App model naming), test summary. Update specs/progress.md row 10 + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":430,"cache_read_input_tokens":149382,"output_tokens":2014,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":430,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":2014,"cache_read_input_tokens":149382,"cache_creation_input_tokens":430,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":430},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu6gFeRFQNxastTWBGDv","type":"assistant","uuid":"4d463abe-ec5c-4cf5-970a-5a7e5ae76027","timestamp":"2026-06-10T06:23:22.324Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4d463abe-ec5c-4cf5-970a-5a7e5ae76027","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01PTbBxvm8XBY18CNeupkNt6","type":"tool_result","content":[{"type":"text","text":"Phase 10 is complete. Full suite: 444 passed, 0 todos; `migrate:fresh --seed` succeeds; pint clean.\n\n## Files created/changed\n\n**Migrations (6, per spec 01 Epic 8)**\n- `database/migrations/2026_06_10_800001..800006`: `apps`, `app_installations` (unique store+app), `oauth_clients`, `oauth_tokens`, `webhook_subscriptions`, `webhook_deliveries`\n\n**Models + enums + factories**\n- `app/Models/App.php`, `AppInstallation.php`, `OauthClient.php`, `OauthToken.php`, `WebhookSubscription.php` (BelongsToStore, `encrypted` cast on signing secret, `latestDelivery` ofMany), `WebhookDelivery.php`\n- `app/Enums/AppStatus.php`, `AppInstallationStatus.php`, `WebhookSubscriptionStatus.php`, `WebhookDeliveryStatus.php`\n- `database/factories/` for all six models (with `paused`/`disabled`/`succeeded`/`failed`/`uninstalled` states)\n\n**Webhook engine**\n- `app/Services/WebhookService.php`: `EVENT_TYPES` catalog, `dispatch()` (active subscriptions queried `withoutGlobalScope` + explicit store_id since queue context has no `current_store`; one shared event UUID; versioned envelope `{id, event, api_version: v1, store_id, created_at, data}` per spec 02 §9), `sign()` HMAC-SHA256 hex, `verify()` via `hash_equals`\n- `app/Jobs/DeliverWebhook.php`: `tries=6`, `backoff=[60,300,1800,7200,43200]`; Http facade POST with `X-Platform-Signature/-Event/-Delivery-Id/-Timestamp`; records attempt_count/response_code/snippet/last_attempt_at\n- `app/Listeners/DispatchWebhooks.php` (union-typed `handle`, auto-discovered, verified via `event:list`); `app/Observers/ProductObserver.php` extended for product webhooks\n\n**Admin UI + routes + policy**\n- `app/Livewire/Admin/Apps/Index.php` + `Show.php` and views (installed cards + available directory with install/uninstall; detail with scopes, webhook table, usage panel); routes `admin.apps.index` / `admin.apps.show` (sidebar auto-enables); `StorePolicy::manageApps` (owner/admin)\n- `app/Livewire/Admin/Developers/Index.php` + view: placeholder replaced with subscription table, add/edit modal, one-time `whsec_` secret callout, pause/resume, delete, recent-deliveries panel\n\n**Seeders / tests / docs**\n- `database/seeders/AppSeeder.php` (idempotent: 3 apps + oauth clients, 1 installation on acme-fashion, 2 subscriptions, 4 deliveries), wired into `DatabaseSeeder`\n- `tests/Feature/Webhooks/WebhookDeliveryTest.php` (5), `WebhookSignatureTest.php` (4) exactly per roadmap tables; `tests/Feature/Admin/AppsTest.php` (7); 6 webhook cases added to `DevelopersTest.php` (11 total)\n- `specs/progress.md` row 10 set to DONE + detailed log entry\n\n## Key decisions\n- **App model naming**: kept spec name `App\\Models\\App` with explicit `$table = 'apps'` and `UPDATED_AT = null`; imported as `App as AppModel` where the facade collides (seeder, Livewire components).\n- **Retry mechanics**: DB `attempt_count` is the attempt source of truth (incremented per run, robust under the sync test driver); non-final failures throw to trigger Laravel's backoff retry; the 6th attempt dead-letters as `failed` without throwing.\n- **Circuit breaker**: added a `consecutive_failures` column to `webhook_subscriptions` (the one deliberate addition over spec 01, since spec 05 §13.4 requires a persisted counter that resets on success); each failed HTTP attempt increments, 5 pauses with a logged warning, admin resume resets it; paused subscriptions receive no new deliveries and pending ones are marked failed.\n- **Event catalog**: order.created/paid/fulfilled/cancelled/refunded + checkout.completed via the `DispatchWebhooks` listener on existing domain events; product.created/updated/deleted via `ProductObserver` (product changes are model events, not event classes), with archiving emitting `product.deleted` per spec 05 §13.1. Admin select uses this catalog (spec 03's modal listed types like `customer.created` that nothing ever emits, so spec 05/01 won).\n- **OAuth**: deferred per roadmap; tables, models, factories, and seeded clients only, no Passport; the app detail \"usage\" panel shows token count and \"Never\" for API calls."},{"type":"text","text":"agentId: ab52ca1a5d5bcb662 (use SendMessage with to: 'ab52ca1a5d5bcb662' to continue this agent)\n<usage>subagent_tokens: 170518\ntool_uses: 109\nduration_ms: 1124085</usage>"}]}]},"uuid":"6216fb37-8c88-41a3-b28e-458d5d080eda","timestamp":"2026-06-10T06:42:06.413Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 10 (Apps and Webhooks) of a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, SQLite, Pest v4). Phases 1-9 + API are complete and committed: tenancy, full commerce domain (events OrderCreated/OrderPaid/OrderFulfilled/OrderCancelled/OrderRefunded/CheckoutCompleted exist as plain event classes), admin panel (sidebar links auto-activate via Route::has(); Apps currently \"Coming soon\"; Developers page exists at /admin/developers with Sanctum token management and a webhooks placeholder), REST APIs (webhooks rate limiter 100/min/IP registered). Work on the current branch; never create branches or commit.\n\nREQUIRED READING (fully, before coding):\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 10\" (lines ~918-950) and test tables for tests/Feature/Webhooks/WebhookDeliveryTest.php + WebhookSignatureTest.php (lines ~1610-1630).\n- specs/01-DATABASE-SCHEMA.md — apps, app_installations, oauth_clients, oauth_tokens, webhook_subscriptions, webhook_deliveries tables.\n- specs/05-BUSINESS-LOGIC.md — webhook/event sections (event catalog, payload shapes, retry/circuit breaker rules).\n- specs/03-ADMIN-UI.md — Apps directory/detail pages, Developers webhook subscription management.\n- specs/02-API-ROUTES.md — any webhook/app API routes.\n- specs/07-SEEDERS-AND-TEST-DATA.md — app/webhook seed data if defined.\n- Study existing: app/Events/*, app/Jobs/*, app/Livewire/Admin/Developers/Index.php, AppServiceProvider, routes/console.php, tests.\n\nDELIVERABLES:\n1. Migrations: apps, app_installations, oauth_clients, oauth_tokens, webhook_subscriptions, webhook_deliveries per spec 01 (OAuth is deferred/stubbed per roadmap tech decisions — tables + models only, no Passport).\n2. Models + factories: App (consider class name collision care — use App\\Models\\App or alias per spec; pick a safe approach e.g. model class `App` in App\\Models with explicit table), AppInstallation, OauthClient, OauthToken, WebhookSubscription (BelongsToStore), WebhookDelivery.\n3. App\\Services\\WebhookService: dispatch(store, eventType, payload) finds active matching subscriptions and queues DeliverWebhook jobs (creates webhook_deliveries rows), sign(payload, secret) HMAC-SHA256, verify(payload, signature, secret) timing-safe.\n4. App\\Jobs\\DeliverWebhook: HTTP POST JSON with headers X-Platform-Signature, X-Platform-Event, X-Platform-Delivery-Id, X-Platform-Timestamp; Laravel backoff [60, 300, 1800, 7200, 43200] (6 total attempts); records response code/body/attempt_count in webhook_deliveries; marks failed after final attempt; circuit breaker pauses subscription after 5 consecutive failures (and resets counter on success). Use Http facade (testable with Http::fake()).\n5. Event wiring: listeners (or a single subscriber) translating domain events to webhook event types per spec 05 catalog (order.created, order.paid, order.fulfilled, order.cancelled, order.refunded, product.created/updated/deleted etc. — follow spec 05/01 exactly) with payload shapes per spec; registered in AppServiceProvider/EventServiceProvider pattern used in this app.\n6. Admin UI: Admin\\Apps\\Index (app directory: list available apps with install action per spec 03), Admin\\Apps\\Show (installed app detail incl. its webhook subscriptions/status), webhook subscription management on the Developers page (create subscription with target URL + event types + secret generation, list with status/last delivery, pause/resume, recent deliveries with response codes, replace the placeholder). Policy: apps/developers = owner/admin per matrix.\n7. Seeders per spec 07 (sample apps + installation + webhook subscription if defined), wired into DatabaseSeeder.\n8. Tests — EXACTLY the roadmap tables: tests/Feature/Webhooks/WebhookDeliveryTest.php (5 — use Http::fake + Queue/Bus assertions; the retry/backoff case verifies attempt accounting, the circuit breaker case pauses after 5 consecutive failures), WebhookSignatureTest.php (4). Plus admin UI tests (tests/Feature/Admin/AppsTest.php and webhook-subscription cases added to DevelopersTest or a new file): install app, subscription CRUD/pause, role restriction.\n\nQUALITY BARS: php artisan migrate:fresh --seed succeeds; FULL suite green zero todos; vendor/bin/pint --dirty --format agent clean. Explicit return types, PHP 8.4, curly braces, no em-dashes.\n\nFinal message: files created/changed (grouped), key decisions (event catalog mapping, retry/circuit breaker mechanics, App model naming), test summary. Update specs/progress.md row 10 + log.","agentId":"ab52ca1a5d5bcb662","agentType":"general-purpose","content":[{"type":"text","text":"Phase 10 is complete. Full suite: 444 passed, 0 todos; `migrate:fresh --seed` succeeds; pint clean.\n\n## Files created/changed\n\n**Migrations (6, per spec 01 Epic 8)**\n- `database/migrations/2026_06_10_800001..800006`: `apps`, `app_installations` (unique store+app), `oauth_clients`, `oauth_tokens`, `webhook_subscriptions`, `webhook_deliveries`\n\n**Models + enums + factories**\n- `app/Models/App.php`, `AppInstallation.php`, `OauthClient.php`, `OauthToken.php`, `WebhookSubscription.php` (BelongsToStore, `encrypted` cast on signing secret, `latestDelivery` ofMany), `WebhookDelivery.php`\n- `app/Enums/AppStatus.php`, `AppInstallationStatus.php`, `WebhookSubscriptionStatus.php`, `WebhookDeliveryStatus.php`\n- `database/factories/` for all six models (with `paused`/`disabled`/`succeeded`/`failed`/`uninstalled` states)\n\n**Webhook engine**\n- `app/Services/WebhookService.php`: `EVENT_TYPES` catalog, `dispatch()` (active subscriptions queried `withoutGlobalScope` + explicit store_id since queue context has no `current_store`; one shared event UUID; versioned envelope `{id, event, api_version: v1, store_id, created_at, data}` per spec 02 §9), `sign()` HMAC-SHA256 hex, `verify()` via `hash_equals`\n- `app/Jobs/DeliverWebhook.php`: `tries=6`, `backoff=[60,300,1800,7200,43200]`; Http facade POST with `X-Platform-Signature/-Event/-Delivery-Id/-Timestamp`; records attempt_count/response_code/snippet/last_attempt_at\n- `app/Listeners/DispatchWebhooks.php` (union-typed `handle`, auto-discovered, verified via `event:list`); `app/Observers/ProductObserver.php` extended for product webhooks\n\n**Admin UI + routes + policy**\n- `app/Livewire/Admin/Apps/Index.php` + `Show.php` and views (installed cards + available directory with install/uninstall; detail with scopes, webhook table, usage panel); routes `admin.apps.index` / `admin.apps.show` (sidebar auto-enables); `StorePolicy::manageApps` (owner/admin)\n- `app/Livewire/Admin/Developers/Index.php` + view: placeholder replaced with subscription table, add/edit modal, one-time `whsec_` secret callout, pause/resume, delete, recent-deliveries panel\n\n**Seeders / tests / docs**\n- `database/seeders/AppSeeder.php` (idempotent: 3 apps + oauth clients, 1 installation on acme-fashion, 2 subscriptions, 4 deliveries), wired into `DatabaseSeeder`\n- `tests/Feature/Webhooks/WebhookDeliveryTest.php` (5), `WebhookSignatureTest.php` (4) exactly per roadmap tables; `tests/Feature/Admin/AppsTest.php` (7); 6 webhook cases added to `DevelopersTest.php` (11 total)\n- `specs/progress.md` row 10 set to DONE + detailed log entry\n\n## Key decisions\n- **App model naming**: kept spec name `App\\Models\\App` with explicit `$table = 'apps'` and `UPDATED_AT = null`; imported as `App as AppModel` where the facade collides (seeder, Livewire components).\n- **Retry mechanics**: DB `attempt_count` is the attempt source of truth (incremented per run, robust under the sync test driver); non-final failures throw to trigger Laravel's backoff retry; the 6th attempt dead-letters as `failed` without throwing.\n- **Circuit breaker**: added a `consecutive_failures` column to `webhook_subscriptions` (the one deliberate addition over spec 01, since spec 05 §13.4 requires a persisted counter that resets on success); each failed HTTP attempt increments, 5 pauses with a logged warning, admin resume resets it; paused subscriptions receive no new deliveries and pending ones are marked failed.\n- **Event catalog**: order.created/paid/fulfilled/cancelled/refunded + checkout.completed via the `DispatchWebhooks` listener on existing domain events; product.created/updated/deleted via `ProductObserver` (product changes are model events, not event classes), with archiving emitting `product.deleted` per spec 05 §13.1. Admin select uses this catalog (spec 03's modal listed types like `customer.created` that nothing ever emits, so spec 05/01 won).\n- **OAuth**: deferred per roadmap; tables, models, factories, and seeded clients only, no Passport; the app detail \"usage\" panel shows token count and \"Never\" for API calls."}],"totalDurationMs":1124085,"totalTokens":170518,"totalToolUseCount":109,"usage":{"input_tokens":2,"cache_creation_input_tokens":759,"cache_read_input_tokens":167979,"output_tokens":1778,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":759},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1778,"cache_read_input_tokens":167979,"cache_creation_input_tokens":759,"cache_creation":{"ephemeral_5m_input_tokens":759,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":10,"searchCount":0,"bashCount":51,"editFileCount":48,"linesAdded":2797,"linesRemoved":36,"otherToolCount":0}},"sourceToolAssistantUUID":"4d463abe-ec5c-4cf5-970a-5a7e5ae76027","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"6216fb37-8c88-41a3-b28e-458d5d080eda","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"6216fb37-8c88-41a3-b28e-458d5d080eda","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_014xhdL1MwoR6buRC918dXhT","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TscSy116ZveraK96kwAFVX","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 10: Apps directory and webhook engine - HMAC delivery, retries, circuit breaker, admin subscription management\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 10"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3828,"cache_read_input_tokens":149812,"output_tokens":196,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3828,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":196,"cache_read_input_tokens":149812,"cache_creation_input_tokens":3828,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3828},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu898o2nV1HYXZmrfazk","type":"assistant","uuid":"8e7347ee-75c3-4f06-867b-96ef1ef551da","timestamp":"2026-06-10T06:42:12.932Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8e7347ee-75c3-4f06-867b-96ef1ef551da","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TscSy116ZveraK96kwAFVX","type":"tool_result","content":"  Tests:    444 passed (1268 assertions)\n  Duration: 16.58s\n\n90588df7 Phase 10: Apps directory and webhook engine - HMAC delivery, retries, circuit breaker, admin subscription management","is_error":false}]},"uuid":"a2fa3765-074b-4299-906a-6d3544ad4fd0","timestamp":"2026-06-10T06:42:29.936Z","toolUseResult":{"stdout":"  Tests:    444 passed (1268 assertions)\n  Duration: 16.58s\n\n90588df7 Phase 10: Apps directory and webhook engine - HMAC delivery, retries, circuit breaker, admin subscription management","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"8e7347ee-75c3-4f06-867b-96ef1ef551da","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a2fa3765-074b-4299-906a-6d3544ad4fd0","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_015vTEGdQer5gcVT5mZvqmLv","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISrgQKYggOGAIqQK9ak6Qi+FW1o6FfnadILf8zIGh2XO8YS1jE6LR8yPMT3Y3Go8YgwFKXckgZW4IZ/hrnFhdpBUVh0WmRjbZnHwMyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxukuUk891TG2Id5LIaDHD/9kz1J3LHOFuqMyIwyEuZK6rTZyneipXECnYCAPvHmZiR/futlMn4pvc5pjCXX3DX5D771POc5C+tgA81KvkCxI1z76IlKq82rMHceiEX4AqHxxUWORgKytCv/QlqCSGJFIrOhOFdFygEuiGhSQGac/dkkBWVmjOozqP/797lW43n+orzoNv0bcuRLIluriMm6wJct7zcmSwN3fx9hz4U+GzX7flsPkOMFpPhQh1Ce8OhJnFicsF6ZiN+f5dIZ9/Vyc6png6uQnCpbMKH53STwVKKPD2U3JJzb5AXY4nyHYRQwmYauw+v7hzJbTN2xGfk3/4pAyt2E7kdtSFMkkOh8PzhyAgR1LR7JDwOuRmS/rx9I8yiLLcKzL+afjXQi2Sa+SK+20oWZL65P/JCWnxngeZGK0UD0dktF92WRFBgokn79NYPQSdP/uqcY1Y8LWb6Ct+whHg/1ezKyxhhM8ODaOSaoBGXRRJC1rQAfP3c9w26i20gbUIv4cl9+BVPcU32pG0uMuuX2Mijmylz6piG1URC27o3QnYDdXeMHaNdr9LYCCFGT1EAqDmR8uVmLCiPWRkqrUbtkTEYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":278,"cache_read_input_tokens":153640,"output_tokens":1635,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":278,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1635,"cache_read_input_tokens":153640,"cache_creation_input_tokens":278,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":278},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu8AsDDiZMXrnfTU5H2v","type":"assistant","uuid":"17438fab-3124-4bfa-974a-11ef38d480cb","timestamp":"2026-06-10T06:42:36.947Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"17438fab-3124-4bfa-974a-11ef38d480cb","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_015vTEGdQer5gcVT5mZvqmLv","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISngIKYwgOGAIqQNpz7oASlhNH39xZwi/GmrQf7QQ8VrRRRtrvMifmMDEX7a2gf30c6kGf/GcWhtCHZmfiSOl7/YUFGKQ2WO/27BcyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIM1zkVeZSKrnjUISrSGgwm0DvpR42Jo7yBK2AiMI5pyvKDewc6EsBXUHRCq9uneey82vq5KRqIbXBptDDg2C0TzI80wZko2fJ2ftcwaCppQ9FxsRMTtYg/XUmSnlwRfaWwQ+wM6iDgrLIoLj2SZ/P3HY8UFoNFtsG/HIAmaS2HABdRPjAUlMLM5kmTS0YSFG+OcuAfgvgMIOs4tZM1+YpdStTIR88qRuGirwo+U0uGJ9Tedkjx4nvbGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":278,"cache_read_input_tokens":153640,"output_tokens":1635,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":278,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1635,"cache_read_input_tokens":153640,"cache_creation_input_tokens":278,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":278},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu8AsDDiZMXrnfTU5H2v","type":"assistant","uuid":"5fe8336f-e03a-4087-90f1-e13594275c68","timestamp":"2026-06-10T06:42:36.951Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5fe8336f-e03a-4087-90f1-e13594275c68","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_015vTEGdQer5gcVT5mZvqmLv","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01RWgTGGfDBv9ZkjegZwMNJK","name":"Agent","input":{"description":"Implement Phase 11 Polish","name":"phase11-polish","prompt":"You are implementing Phase 11 (Polish) of a now feature-complete multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-10 are committed; full suite is 444 passed / 0 todos. Work on the current branch; never create branches or commit.\n\nREQUIRED READING:\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 11: Polish\" (lines ~952-963) and \"7. Verification Checklist\" (lines ~2023-2039).\n- specs/07-SEEDERS-AND-TEST-DATA.md — FULL file. Audit every seeder definition against what exists in database/seeders/; fix gaps.\n- specs/04-STOREFRONT-UI.md — accessibility + responsive + dark mode requirements sections.\n- specs/03-ADMIN-UI.md — same for admin.\n- specs/06-AUTH-AND-SECURITY.md — security headers/CSRF/session hardening items if specified (verify implemented; implement if missing).\n\nTASKS:\n1. Seeder audit: compare database/seeders/* against spec 07 in detail (stores, users, customers, products/variants/options counts, collections, discounts, orders matrix incl. statuses, themes, pages, navigation, analytics, search settings, apps). Fix discrepancies. php artisan migrate:fresh --seed must produce the spec'd demo dataset. CRITICAL: the demo store must keep a storefront domain `shop.test` (Herd hostname).\n2. Accessibility audit (storefront + admin): skip links on all pages, ARIA labels on all interactive icon-only buttons, focus management in modals/drawers (focus trap or at least focus on open + Escape close), form labels, alt text. Fix gaps. aria-live for cart updates/toasts.\n3. Responsive pass: verify key pages at sm/md/lg/xl (storefront home/collection/product/cart/checkout/account; admin dashboard/products/orders/settings) by reading the blades for missing responsive classes; fix obvious issues (overflow tables → horizontal scroll wrappers, grids collapsing, etc.).\n4. Dark mode pass: grep blades for elements missing dark: variants on bg/text/border where siblings have them; fix inconsistencies.\n5. Error pages: styled 404 and 503 matching the storefront theme exist (Phase 3) — verify they render for storefront hosts AND that admin/api contexts return appropriate formats; add a styled generic 500 page; verify 419 (CSRF) handling is sane.\n6. Structured logging: JSON channel exists in config/logging.php (Phase 1) — verify and ensure key business events (order created/paid, payment failed, webhook delivery failure) log structured entries; add where missing (lightweight listener or inline).\n7. Verification checklist runs (fix anything that fails): composer install clean, npm run build clean, php artisan migrate:fresh --seed clean, full test suite, vendor/bin/pint --format agent (whole codebase, not just dirty), php artisan route:list (review for duplicates/conflicts), php artisan config:cache + config:clear (no env() outside config), php artisan optimize:clear.\n8. Add a pragmatic smoke test file tests/Feature/SmokeTest.php: iterate over every public storefront GET route and key admin GET routes (acting as owner) asserting 200 and no Livewire/Blade errors, so regressions surface cheaply.\n\nQUALITY BARS: FULL suite green zero todos; pint clean on whole codebase; npm run build succeeds. No em-dashes. Do not weaken any existing tests.\n\nFinal message: seeder gaps found+fixed, a11y/responsive/dark-mode fixes (summary), error/logging changes, checklist results, test summary. Update specs/progress.md row 11 + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":278,"cache_read_input_tokens":153640,"output_tokens":1635,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":278,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1635,"cache_read_input_tokens":153640,"cache_creation_input_tokens":278,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":278},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu8AsDDiZMXrnfTU5H2v","type":"assistant","uuid":"f394ecb0-ea5d-4878-8c59-fc9eefb65963","timestamp":"2026-06-10T06:42:55.930Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f394ecb0-ea5d-4878-8c59-fc9eefb65963","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01RWgTGGfDBv9ZkjegZwMNJK","type":"tool_result","content":[{"type":"text","text":"Phase 11 (Polish) is complete. Full suite: **450 passed, 0 failures, 0 todos** (was 444; +3 StructuredLoggingTest, +3 SmokeTest).\n\n## Seeder audit (spec 07)\nAudited all 19 seeders line-by-line against the spec. The dataset was already near-perfect: 2 stores, 4 domains (including `shop.test` kept on Acme Fashion), 5 users/roles, 20+5 products with full option/variant/inventory graphs, 6 collections, 5 discounts, 12 customers with spec'd addresses, 15+3 orders covering the full status matrix (pending bank transfer, partial fulfillment, partial refund, cancelled+refund, digital auto-fulfilled, discounted), themes, 5 pages, 3 menus, 31 analytics_daily rows + 220 events, search settings, apps/webhooks.\n- **One gap fixed:** Mechanical Keyboard (E4) now assigned to the Electronics \"Featured\" collection per spec section 4 (`database/seeders/ProductSeeder.php`).\n- Note: the spec's \"107 total variants\" line is an arithmetic error; its own per-product counts sum to 117, which the seeder matches exactly. `migrate:fresh --seed` runs clean.\n\n## Accessibility fixes\nAudit found phases 1-10 already strong (all icon-only buttons have aria-labels, all imgs have alt, dialogs have roles + Escape). Gaps fixed:\n- Admin layout: added skip link + `main#main-content` (`resources/views/layouts/admin.blade.php`); storefront already had one.\n- Cart drawer: focus moves to close button on open (`cart-drawer.blade.php`).\n- Mobile nav drawer: focus moves into panel on open (`storefront/partials/header.blade.php`).\n- Header cart button: sr-only `aria-live` region announcing item count changes.\n- Account address modal: focuses first control on open.\n- aria-labels added to admin theme color inputs and the media alt-text editor input.\n\n## Responsive + dark mode\n- All admin tables already wrapped in `overflow-x-auto`; storefront tables have mobile card alternatives or column hiding; product grids responsive at all breakpoints. No fixes needed.\n- Dark-mode scan found only 2 light-only class groups, both intentional (hero CTA on dark gradient, alt-text input on dark scrim).\n\n## Error pages + logging\n- Added styled generic `resources/views/errors/{404,419,500,503}.blade.php` for admin/non-tenant contexts; storefront keeps its themed 404/503 via the existing render hooks in `bootstrap/app.php`; API keeps JSON envelopes. 419 page offers a \"go back\" link.\n- New `app/Listeners/LogStructuredBusinessEvent.php` (auto-discovered) writes `order.created/paid/cancelled/refunded` to the JSON `structured` channel; `payment.failed` logged in `CheckoutService::completeCheckout`; `webhook.delivery_failed` logged in `DeliverWebhook` when attempts are exhausted. Covered by `tests/Feature/Orders/StructuredLoggingTest.php`.\n\n## Smoke test\n`tests/Feature/SmokeTest.php` seeds the full demo dataset and asserts 200 on every public storefront GET route (home, collections x6, all 23 active products, all 5 pages, search, cart, auth pages), all customer account pages including every demo order detail, and 29 admin pages as the demo owner. Runs in ~2.3s.\n\n## Verification checklist results\n- composer install: clean. npm run build: clean (242 KB CSS). migrate:fresh --seed: clean.\n- route:list: 93 routes, no duplicates/conflicts.\n- config:cache + config:clear: OK (no env() outside config). optimize:clear: OK.\n- pint on whole codebase: pass.\n- One adjustment: raised `memory_limit` to 512M in `phpunit.xml`; the full-suite run with the new smoke test's repeated full seeding exceeded PHP's 128M default mid-suite (no test was weakened).\n\n`specs/progress.md` row 11 set to DONE with a detailed log entry. No commits made, working on current branch."},{"type":"text","text":"agentId: a7118dae002fa5091 (use SendMessage with to: 'a7118dae002fa5091' to continue this agent)\n<usage>subagent_tokens: 232337\ntool_uses: 156\nduration_ms: 1295120</usage>"}]}]},"uuid":"d537dc02-c291-4ba2-98c0-b7bd4e03166f","timestamp":"2026-06-10T07:04:31.053Z","toolUseResult":{"status":"completed","prompt":"You are implementing Phase 11 (Polish) of a now feature-complete multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Flux UI Free v2, Tailwind v4, SQLite, Pest v4). Phases 1-10 are committed; full suite is 444 passed / 0 todos. Work on the current branch; never create branches or commit.\n\nREQUIRED READING:\n- specs/09-IMPLEMENTATION-ROADMAP.md — \"Phase 11: Polish\" (lines ~952-963) and \"7. Verification Checklist\" (lines ~2023-2039).\n- specs/07-SEEDERS-AND-TEST-DATA.md — FULL file. Audit every seeder definition against what exists in database/seeders/; fix gaps.\n- specs/04-STOREFRONT-UI.md — accessibility + responsive + dark mode requirements sections.\n- specs/03-ADMIN-UI.md — same for admin.\n- specs/06-AUTH-AND-SECURITY.md — security headers/CSRF/session hardening items if specified (verify implemented; implement if missing).\n\nTASKS:\n1. Seeder audit: compare database/seeders/* against spec 07 in detail (stores, users, customers, products/variants/options counts, collections, discounts, orders matrix incl. statuses, themes, pages, navigation, analytics, search settings, apps). Fix discrepancies. php artisan migrate:fresh --seed must produce the spec'd demo dataset. CRITICAL: the demo store must keep a storefront domain `shop.test` (Herd hostname).\n2. Accessibility audit (storefront + admin): skip links on all pages, ARIA labels on all interactive icon-only buttons, focus management in modals/drawers (focus trap or at least focus on open + Escape close), form labels, alt text. Fix gaps. aria-live for cart updates/toasts.\n3. Responsive pass: verify key pages at sm/md/lg/xl (storefront home/collection/product/cart/checkout/account; admin dashboard/products/orders/settings) by reading the blades for missing responsive classes; fix obvious issues (overflow tables → horizontal scroll wrappers, grids collapsing, etc.).\n4. Dark mode pass: grep blades for elements missing dark: variants on bg/text/border where siblings have them; fix inconsistencies.\n5. Error pages: styled 404 and 503 matching the storefront theme exist (Phase 3) — verify they render for storefront hosts AND that admin/api contexts return appropriate formats; add a styled generic 500 page; verify 419 (CSRF) handling is sane.\n6. Structured logging: JSON channel exists in config/logging.php (Phase 1) — verify and ensure key business events (order created/paid, payment failed, webhook delivery failure) log structured entries; add where missing (lightweight listener or inline).\n7. Verification checklist runs (fix anything that fails): composer install clean, npm run build clean, php artisan migrate:fresh --seed clean, full test suite, vendor/bin/pint --format agent (whole codebase, not just dirty), php artisan route:list (review for duplicates/conflicts), php artisan config:cache + config:clear (no env() outside config), php artisan optimize:clear.\n8. Add a pragmatic smoke test file tests/Feature/SmokeTest.php: iterate over every public storefront GET route and key admin GET routes (acting as owner) asserting 200 and no Livewire/Blade errors, so regressions surface cheaply.\n\nQUALITY BARS: FULL suite green zero todos; pint clean on whole codebase; npm run build succeeds. No em-dashes. Do not weaken any existing tests.\n\nFinal message: seeder gaps found+fixed, a11y/responsive/dark-mode fixes (summary), error/logging changes, checklist results, test summary. Update specs/progress.md row 11 + log.","agentId":"a7118dae002fa5091","agentType":"general-purpose","content":[{"type":"text","text":"Phase 11 (Polish) is complete. Full suite: **450 passed, 0 failures, 0 todos** (was 444; +3 StructuredLoggingTest, +3 SmokeTest).\n\n## Seeder audit (spec 07)\nAudited all 19 seeders line-by-line against the spec. The dataset was already near-perfect: 2 stores, 4 domains (including `shop.test` kept on Acme Fashion), 5 users/roles, 20+5 products with full option/variant/inventory graphs, 6 collections, 5 discounts, 12 customers with spec'd addresses, 15+3 orders covering the full status matrix (pending bank transfer, partial fulfillment, partial refund, cancelled+refund, digital auto-fulfilled, discounted), themes, 5 pages, 3 menus, 31 analytics_daily rows + 220 events, search settings, apps/webhooks.\n- **One gap fixed:** Mechanical Keyboard (E4) now assigned to the Electronics \"Featured\" collection per spec section 4 (`database/seeders/ProductSeeder.php`).\n- Note: the spec's \"107 total variants\" line is an arithmetic error; its own per-product counts sum to 117, which the seeder matches exactly. `migrate:fresh --seed` runs clean.\n\n## Accessibility fixes\nAudit found phases 1-10 already strong (all icon-only buttons have aria-labels, all imgs have alt, dialogs have roles + Escape). Gaps fixed:\n- Admin layout: added skip link + `main#main-content` (`resources/views/layouts/admin.blade.php`); storefront already had one.\n- Cart drawer: focus moves to close button on open (`cart-drawer.blade.php`).\n- Mobile nav drawer: focus moves into panel on open (`storefront/partials/header.blade.php`).\n- Header cart button: sr-only `aria-live` region announcing item count changes.\n- Account address modal: focuses first control on open.\n- aria-labels added to admin theme color inputs and the media alt-text editor input.\n\n## Responsive + dark mode\n- All admin tables already wrapped in `overflow-x-auto`; storefront tables have mobile card alternatives or column hiding; product grids responsive at all breakpoints. No fixes needed.\n- Dark-mode scan found only 2 light-only class groups, both intentional (hero CTA on dark gradient, alt-text input on dark scrim).\n\n## Error pages + logging\n- Added styled generic `resources/views/errors/{404,419,500,503}.blade.php` for admin/non-tenant contexts; storefront keeps its themed 404/503 via the existing render hooks in `bootstrap/app.php`; API keeps JSON envelopes. 419 page offers a \"go back\" link.\n- New `app/Listeners/LogStructuredBusinessEvent.php` (auto-discovered) writes `order.created/paid/cancelled/refunded` to the JSON `structured` channel; `payment.failed` logged in `CheckoutService::completeCheckout`; `webhook.delivery_failed` logged in `DeliverWebhook` when attempts are exhausted. Covered by `tests/Feature/Orders/StructuredLoggingTest.php`.\n\n## Smoke test\n`tests/Feature/SmokeTest.php` seeds the full demo dataset and asserts 200 on every public storefront GET route (home, collections x6, all 23 active products, all 5 pages, search, cart, auth pages), all customer account pages including every demo order detail, and 29 admin pages as the demo owner. Runs in ~2.3s.\n\n## Verification checklist results\n- composer install: clean. npm run build: clean (242 KB CSS). migrate:fresh --seed: clean.\n- route:list: 93 routes, no duplicates/conflicts.\n- config:cache + config:clear: OK (no env() outside config). optimize:clear: OK.\n- pint on whole codebase: pass.\n- One adjustment: raised `memory_limit` to 512M in `phpunit.xml`; the full-suite run with the new smoke test's repeated full seeding exceeded PHP's 128M default mid-suite (no test was weakened).\n\n`specs/progress.md` row 11 set to DONE with a detailed log entry. No commits made, working on current branch."}],"totalDurationMs":1295120,"totalTokens":232337,"totalToolUseCount":156,"usage":{"input_tokens":2,"cache_creation_input_tokens":921,"cache_read_input_tokens":229961,"output_tokens":1453,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":921},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1453,"cache_read_input_tokens":229961,"cache_creation_input_tokens":921,"cache_creation":{"ephemeral_5m_input_tokens":921,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":17,"searchCount":0,"bashCount":91,"editFileCount":29,"linesAdded":590,"linesRemoved":66,"otherToolCount":19}},"sourceToolAssistantUUID":"f394ecb0-ea5d-4878-8c59-fc9eefb65963","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d537dc02-c291-4ba2-98c0-b7bd4e03166f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01JPEHnoiUw2kqKDRVm8Et5k","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01E5zKXVRtNxQ5xo2J5sxUFf","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4 && git add -A && git commit -q -m \"Phase 11: Polish - seeder audit vs spec 07, accessibility fixes, error pages, structured logging, smoke tests\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Verify tests and commit Phase 11"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3176,"cache_read_input_tokens":153918,"output_tokens":198,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3176,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":198,"cache_read_input_tokens":153918,"cache_creation_input_tokens":3176,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3176},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9rFwQt8m72UMqoP5Q6","type":"assistant","uuid":"d53b73c2-c679-4a99-b1bf-9efcbe1426ee","timestamp":"2026-06-10T07:04:38.496Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d53b73c2-c679-4a99-b1bf-9efcbe1426ee","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01E5zKXVRtNxQ5xo2J5sxUFf","type":"tool_result","content":"  Tests:    450 passed (1351 assertions)\n  Duration: 17.64s\n\n0a78457a Phase 11: Polish - seeder audit vs spec 07, accessibility fixes, error pages, structured logging, smoke tests","is_error":false}]},"uuid":"07196d0a-fbda-40fa-a58e-0261dea4bfb7","timestamp":"2026-06-10T07:04:56.485Z","toolUseResult":{"stdout":"  Tests:    450 passed (1351 assertions)\n  Duration: 17.64s\n\n0a78457a Phase 11: Polish - seeder audit vs spec 07, accessibility fixes, error pages, structured logging, smoke tests","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"d53b73c2-c679-4a99-b1bf-9efcbe1426ee","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"07196d0a-fbda-40fa-a58e-0261dea4bfb7","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Hpi7uRZhJ8iCMRVuo5Jasg","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":282,"cache_read_input_tokens":157094,"output_tokens":800,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":282,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":800,"cache_read_input_tokens":157094,"cache_creation_input_tokens":282,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":282},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9t8HqaoakgH5uFc4cB","type":"assistant","uuid":"eab18831-b2ba-48b1-8187-efb814e54e64","timestamp":"2026-06-10T07:05:08.733Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"eab18831-b2ba-48b1-8187-efb814e54e64","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Hpi7uRZhJ8iCMRVuo5Jasg","type":"message","role":"assistant","content":[{"type":"text","text":"Phase 11 committed (450 passed). Now Phase 12: the browser test suite per spec 08. Let me check its structure to split the work sensibly."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":282,"cache_read_input_tokens":157094,"output_tokens":800,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":282,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":800,"cache_read_input_tokens":157094,"cache_creation_input_tokens":282,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":282},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9t8HqaoakgH5uFc4cB","type":"assistant","uuid":"320a94d6-0606-4662-a26a-57ecad28e52e","timestamp":"2026-06-10T07:05:08.747Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"320a94d6-0606-4662-a26a-57ecad28e52e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Hpi7uRZhJ8iCMRVuo5Jasg","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_014kjYX4ecAFV5LissVETecx","name":"Bash","input":{"command":"grep -n \"^#\\|^##\\|^###\" specs/08-PLAYWRIGHT-E2E-PLAN.md | head -60; echo ---; wc -l specs/08-PLAYWRIGHT-E2E-PLAN.md; echo ---; grep -c \"pest-plugin-browser\" composer.json composer.lock 2>/dev/null; php -r '$c=json_decode(file_get_contents(\"composer.json\"),true); print_r(array_keys($c[\"require-dev\"]));'","description":"Inspect spec 08 structure and browser plugin presence"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":282,"cache_read_input_tokens":157094,"output_tokens":800,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":282,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":800,"cache_read_input_tokens":157094,"cache_creation_input_tokens":282,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":282},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9t8HqaoakgH5uFc4cB","type":"assistant","uuid":"0471d186-5fff-4190-a1c5-868fcc02a061","timestamp":"2026-06-10T07:05:10.917Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0471d186-5fff-4190-a1c5-868fcc02a061","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_014kjYX4ecAFV5LissVETecx","type":"tool_result","content":"1:# 08 - Playwright E2E Test Plan\n7:## Test Suite Summary\n33:## Test Infrastructure Requirements\n35:### Framework\n42:### Pest v4 Browser Testing API Reference\n58:### Environment Configuration\n72:### Prerequisites Before Running\n81:## Seeded Data Dependency Table\n108:## Test Execution Matrix\n144:## Test Directory Structure\n172:## Suite 1: Smoke Tests\n180:### Test 1.1: Loads the storefront home page\n193:### Test 1.2: Loads a collection page\n206:### Test 1.3: Loads a product page\n220:### Test 1.4: Loads the cart page\n233:### Test 1.5: Loads the customer login page\n246:### Test 1.6: Loads the admin login page\n259:### Test 1.7: Loads the about page\n272:### Test 1.8: Loads the search page\n285:### Test 1.9: Loads all collections listing\n298:### Test 1.10: Has no errors on critical pages (batch)\n312:## Suite 2: Admin Authentication\n318:### Authentication Flow\n338:### Test 2.1: Can log in as admin\n354:### Test 2.2: Shows error for invalid credentials\n370:### Test 2.3: Shows error for empty email\n385:### Test 2.4: Shows error for empty password\n400:### Test 2.5: Redirects unauthenticated users to login from dashboard\n413:### Test 2.6: Redirects unauthenticated users to login from products\n426:### Test 2.7: Can log out\n444:### Test 2.8: Can navigate through admin sidebar sections\n470:### Test 2.9: Can navigate to analytics from sidebar\n487:### Test 2.10: Can navigate to themes from sidebar\n508:## Suite 3: Admin Product Management\n514:### Product Lifecycle States\n528:### Test 3.1: Shows the product list with seeded products\n546:### Test 3.2: Can create a new product\n571:### Test 3.3: Can edit an existing product title\n591:### Test 3.4: Can archive a product\n619:### Test 3.5: Shows draft products only in admin, not storefront\n640:### Test 3.6: Can search products in admin\n656:### Test 3.7: Can filter products by status in admin\n676:## Suite 4: Admin Order Management\n682:### Order State Transitions (via admin actions)\n700:### Test 4.1: Shows the order list with seeded orders\n715:### Test 4.2: Can filter orders by status\n735:### Test 4.3: Shows order detail with line items and totals\n755:### Test 4.4: Shows order timeline events\n772:### Test 4.5: Can create a fulfillment\n793:### Test 4.6: Can process a refund\n814:### Test 4.7: Shows customer information in order detail\n830:### Test 4.8: Can confirm bank transfer payment\n851:### Test 4.9: Shows fulfillment guard for unpaid order\n868:### Test 4.10: Can mark fulfillment as shipped\n886:### Test 4.11: Can mark fulfillment as delivered\n906:## Suite 5: Admin Discount Management\n912:### Discount Types\n922:### Test 5.1: Shows seeded discount codes\n939:### Test 5.2: Can create a new percentage discount code\n962:### Test 5.3: Can create a fixed amount discount code\n---\n    3173 specs/08-PLAYWRIGHT-E2E-PLAN.md\n---\ncomposer.json:0\ncomposer.lock:1\nArray\n(\n    [0] => fakerphp/faker\n    [1] => laravel/boost\n    [2] => laravel/pail\n    [3] => laravel/pint\n    [4] => laravel/sail\n    [5] => mockery/mockery\n    [6] => nunomaduro/collision\n    [7] => pestphp/pest\n    [8] => pestphp/pest-plugin-laravel\n)","is_error":false}]},"uuid":"49c800a9-f09d-4921-8c76-578d8f8b0b35","timestamp":"2026-06-10T07:05:11.036Z","toolUseResult":{"stdout":"1:# 08 - Playwright E2E Test Plan\n7:## Test Suite Summary\n33:## Test Infrastructure Requirements\n35:### Framework\n42:### Pest v4 Browser Testing API Reference\n58:### Environment Configuration\n72:### Prerequisites Before Running\n81:## Seeded Data Dependency Table\n108:## Test Execution Matrix\n144:## Test Directory Structure\n172:## Suite 1: Smoke Tests\n180:### Test 1.1: Loads the storefront home page\n193:### Test 1.2: Loads a collection page\n206:### Test 1.3: Loads a product page\n220:### Test 1.4: Loads the cart page\n233:### Test 1.5: Loads the customer login page\n246:### Test 1.6: Loads the admin login page\n259:### Test 1.7: Loads the about page\n272:### Test 1.8: Loads the search page\n285:### Test 1.9: Loads all collections listing\n298:### Test 1.10: Has no errors on critical pages (batch)\n312:## Suite 2: Admin Authentication\n318:### Authentication Flow\n338:### Test 2.1: Can log in as admin\n354:### Test 2.2: Shows error for invalid credentials\n370:### Test 2.3: Shows error for empty email\n385:### Test 2.4: Shows error for empty password\n400:### Test 2.5: Redirects unauthenticated users to login from dashboard\n413:### Test 2.6: Redirects unauthenticated users to login from products\n426:### Test 2.7: Can log out\n444:### Test 2.8: Can navigate through admin sidebar sections\n470:### Test 2.9: Can navigate to analytics from sidebar\n487:### Test 2.10: Can navigate to themes from sidebar\n508:## Suite 3: Admin Product Management\n514:### Product Lifecycle States\n528:### Test 3.1: Shows the product list with seeded products\n546:### Test 3.2: Can create a new product\n571:### Test 3.3: Can edit an existing product title\n591:### Test 3.4: Can archive a product\n619:### Test 3.5: Shows draft products only in admin, not storefront\n640:### Test 3.6: Can search products in admin\n656:### Test 3.7: Can filter products by status in admin\n676:## Suite 4: Admin Order Management\n682:### Order State Transitions (via admin actions)\n700:### Test 4.1: Shows the order list with seeded orders\n715:### Test 4.2: Can filter orders by status\n735:### Test 4.3: Shows order detail with line items and totals\n755:### Test 4.4: Shows order timeline events\n772:### Test 4.5: Can create a fulfillment\n793:### Test 4.6: Can process a refund\n814:### Test 4.7: Shows customer information in order detail\n830:### Test 4.8: Can confirm bank transfer payment\n851:### Test 4.9: Shows fulfillment guard for unpaid order\n868:### Test 4.10: Can mark fulfillment as shipped\n886:### Test 4.11: Can mark fulfillment as delivered\n906:## Suite 5: Admin Discount Management\n912:### Discount Types\n922:### Test 5.1: Shows seeded discount codes\n939:### Test 5.2: Can create a new percentage discount code\n962:### Test 5.3: Can create a fixed amount discount code\n---\n    3173 specs/08-PLAYWRIGHT-E2E-PLAN.md\n---\ncomposer.json:0\ncomposer.lock:1\nArray\n(\n    [0] => fakerphp/faker\n    [1] => laravel/boost\n    [2] => laravel/pail\n    [3] => laravel/pint\n    [4] => laravel/sail\n    [5] => mockery/mockery\n    [6] => nunomaduro/collision\n    [7] => pestphp/pest\n    [8] => pestphp/pest-plugin-laravel\n)","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"0471d186-5fff-4190-a1c5-868fcc02a061","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"49c800a9-f09d-4921-8c76-578d8f8b0b35","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"49c800a9-f09d-4921-8c76-578d8f8b0b35","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Ad2zyKjQMFKuzhCEeQBto3","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_013ftFS5FGvPjuRtLK9CjZ9Q","name":"Bash","input":{"command":"sed -n 7,171p specs/08-PLAYWRIGHT-E2E-PLAN.md","description":"Read spec 08 infrastructure and suite overview"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2121,"cache_read_input_tokens":157376,"output_tokens":118,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2121,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":118,"cache_read_input_tokens":157376,"cache_creation_input_tokens":2121,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2121},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9uCbppE1osH7biqzHK","type":"assistant","uuid":"2216d00e-742a-4896-98eb-23ccb70a662b","timestamp":"2026-06-10T07:05:16.223Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2216d00e-742a-4896-98eb-23ccb70a662b","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_013ftFS5FGvPjuRtLK9CjZ9Q","type":"tool_result","content":"## Test Suite Summary\n\n| Suite | File | Tests | Purpose | Dependencies |\n|-------|------|:-----:|---------|--------------|\n| 1 - Smoke Tests | `tests/Browser/SmokeTest.php` | 10 | Hit every major page, assert HTTP 200 and no JS errors | Store 1, Products, Collections, Pages |\n| 2 - Admin Authentication | `tests/Browser/Admin/AuthenticationTest.php` | 10 | Admin login, logout, invalid credentials, session access control | Admin user |\n| 3 - Admin Product Management | `tests/Browser/Admin/ProductManagementTest.php` | 7 | Product CRUD: listing, creating, editing, archiving, filtering | Admin user, Products (incl. #15 draft) |\n| 4 - Admin Order Management | `tests/Browser/Admin/OrderManagementTest.php` | 11 | Order listing, filtering, detail view, fulfillment, refund, confirm payment, fulfillment guard, mark shipped/delivered | Admin user, Orders (#1001, #1005), Customer |\n| 5 - Admin Discount Management | `tests/Browser/Admin/DiscountManagementTest.php` | 6 | Discount code listing, creation, editing | Admin user, Discounts |\n| 6 - Admin Settings | `tests/Browser/Admin/SettingsTest.php` | 7 | Store settings, shipping zones, tax config, domains | Admin user, Shipping zones, Store 1 |\n| 7 - Storefront Browsing | `tests/Browser/Storefront/BrowsingTest.php` | 15 | Home page, collections, product detail, variants, search, pages | Products, Collections, Pages, Products #15/#17/#18 |\n| 8 - Cart Flow | `tests/Browser/Storefront/CartTest.php` | 12 | Cart lifecycle: add, update qty, remove, discounts, totals | Products, Discounts (all codes) |\n| 9 - Checkout Flow | `tests/Browser/Storefront/CheckoutTest.php` | 13 | Full checkout: contact, address, shipping, payment method selection, payment, confirmation, magic card decline, bank transfer flow | Products, Shipping zones, Discounts |\n| 10 - Customer Account | `tests/Browser/Storefront/CustomerAccountTest.php` | 12 | Registration, login, order history, addresses, logout | Customer user, Orders (#1001/#1002/#1004) |\n| 11 - Inventory Enforcement | `tests/Browser/Storefront/InventoryTest.php` | 4 | Inventory policy enforcement: deny vs. continue | Products #17 (deny), #18 (continue), #1 |\n| 12 - Tenant Isolation | `tests/Browser/Storefront/TenantIsolationTest.php` | 5 | Multi-store data isolation verification | Store 1, Admin user, Customer user |\n| 13 - Responsive / Mobile | `tests/Browser/Storefront/ResponsiveTest.php` | 8 | Mobile and tablet viewport rendering and interaction | Products, Admin user |\n| 14 - Accessibility | `tests/Browser/Storefront/AccessibilityTest.php` | 11 | Heading hierarchy, ARIA labels, form labels, keyboard nav | Products, Store 1 |\n| 15 - Admin Collections | `tests/Browser/Admin/CollectionManagementTest.php` | 3 | Collection CRUD in admin | Admin user, Collections |\n| 16 - Admin Customers | `tests/Browser/Admin/CustomerManagementTest.php` | 3 | Customer listing and detail views | Admin user, Customer user, Orders |\n| 17 - Admin Pages | `tests/Browser/Admin/PageManagementTest.php` | 3 | CMS page management | Admin user, Pages |\n| 18 - Admin Analytics | `tests/Browser/Admin/AnalyticsTest.php` | 3 | Analytics dashboard rendering | Admin user, Orders |\n| **Total** | **18 files** | **143** | | |\n\n---\n\n## Test Infrastructure Requirements\n\n### Framework\n\n- **Test runner:** Pest v4 with browser testing capabilities (Playwright under the hood)\n- **Test traits:** Each browser test file must use `TestCase` and `RefreshDatabase`\n- **Configuration:** Register the `Browser` test directory in `tests/Pest.php` with appropriate base classes\n- **Base URL:** Configured via `APP_URL` in `.env.testing`, set to `http://acme-fashion.test`\n\n### Pest v4 Browser Testing API Reference\n\nThe coding agent should use these Pest v4 browser methods:\n\n| Method | Purpose |\n|--------|---------|\n| `visit(url)` | Open a real browser and navigate to the given URL |\n| `visit([url1, url2, ...])` | Visit multiple pages (for batch smoke testing) |\n| `fill(field, value)` | Type a value into a named form field |\n| `click(text)` | Click a visible element matching the given text |\n| `assertSee(text)` | Assert the page contains the given visible text |\n| `assertNoJavascriptErrors()` | Assert no uncaught JS exceptions occurred |\n| `assertNoConsoleLogs()` | Assert no console warnings or errors were logged |\n\nAdditionally, standard Laravel test features are available within browser tests: factories, `Event::fake()`, `Notification::fake()`, `$this->actingAs()`, and model queries.\n\n### Environment Configuration\n\nThe `.env.testing` file must contain the following keys:\n\n| Key | Value | Purpose |\n|-----|-------|---------|\n| `APP_ENV` | `testing` | Laravel environment |\n| `APP_URL` | `http://acme-fashion.test` | Browser base URL (served by Herd) |\n| `DB_CONNECTION` | `sqlite` | Database driver |\n| `DB_DATABASE` | Absolute path to test SQLite file | Isolated test database |\n| `PAYMENT_PROVIDER` | `mock` | Mock PSP - no external API keys needed |\n| `MAIL_MAILER` | `array` | Trap emails in memory |\n| `QUEUE_CONNECTION` | `sync` | Process jobs synchronously |\n\n### Prerequisites Before Running\n\n1. Database seeded with `php artisan migrate:fresh --seed`\n2. Laravel Herd serving `acme-fashion.test`\n3. Playwright browsers installed via `npx playwright install`\n4. Frontend assets built via `npm run build`\n\n---\n\n## Seeded Data Dependency Table\n\nAll tests depend on the database seeder providing this baseline data. Each test gets a fresh database via `RefreshDatabase`, then the seeder repopulates it.\n\nEach browser test file must set `protected bool $seed = true;` on the test class (or call `$this->seed(DatabaseSeeder::class)` in `beforeEach`) to ensure the database is populated after RefreshDatabase clears it. Laravel's `RefreshDatabase` trait does NOT automatically run seeders unless explicitly configured.\n\n| Entity | Key Details | Used By Suites |\n|--------|-------------|----------------|\n| **Admin user** | Email: `admin@acme.test`, password: `password`, role: `owner` on Store 1 | 2, 3, 4, 5, 6, 12, 13, 15, 16, 17, 18 |\n| **Customer user** | Email: `customer@acme.test`, password: `password`, name: \"John Doe\", belongs to Store 1 | 10, 12 |\n| **Store 1** | Name: \"Acme Fashion\", handle: `acme-fashion`, domain: `acme-fashion.test`, currency: EUR | 1, 6, 7, 12, 14 |\n| **Product #1** | Title: \"Classic Cotton T-Shirt\", handle: `classic-cotton-t-shirt`, price: 24.99 EUR, status: active, options: Size (S/M/L/XL), Color (Black/White/Navy), inventory: in stock | 1, 3, 7, 8, 9, 11, 13, 14 |\n| **Product #2** | Title: \"Premium Slim Fit Jeans\", handle: `premium-slim-fit-jeans`, status: active, has compare-at pricing (sale), options: Size, Color | 7, 8 |\n| **Product #15** | Status: `draft` - must NOT appear on storefront | 3, 7 |\n| **Product #17** | Status: active, inventory: 0 on hand, policy: `deny` - displays \"Sold out\", add-to-cart disabled | 7, 11 |\n| **Product #18** | Status: active, inventory: 0 on hand, policy: `continue` - displays \"Available on backorder\", add-to-cart enabled | 7, 11 |\n| **Products (20 total)** | Seeded across collections, with variants, options, images, inventory | 1, 3, 7, 8, 9, 11, 13 |\n| **Collections** | \"T-Shirts\" (handle: `t-shirts`), \"New Arrivals\" (handle: `new-arrivals`), plus others | 1, 7, 13, 15 |\n| **Orders** | #1001 (status: paid, fulfillment: unfulfilled, customer: customer@acme.test), #1002, #1004 also belonging to the same customer | 4, 10, 16, 18 |\n| **Discounts** | WELCOME10 (10% off, min 20 EUR purchase, active), FLAT5 (5 EUR fixed, active), FREESHIP (free shipping, active), EXPIRED20 (expired end date), MAXED (usage_count >= usage_limit) | 5, 8, 9 |\n| **Shipping zones** | \"Domestic\" zone (countries: DE) with rate \"Standard Shipping\" at 4.99 EUR flat; \"International\" zone with its own rates | 6, 9 |\n| **Tax settings** | Store 1: manual mode, prices_include_tax varies by test | 6 |\n| **Pages** | \"About\" (handle: `about`, status: published) | 1, 7, 17 |\n| **Navigation** | Main menu with links to collections, about page | 7 |\n\n---\n\n## Test Execution Matrix\n\nTests should be executed in the order shown below. Later suites depend on the infrastructure and pages verified by earlier suites.\n\n```mermaid\ngraph TD\n    S1[Suite 1: Smoke Tests] --> S2[Suite 2: Admin Auth]\n    S1 --> S7[Suite 7: Storefront Browsing]\n    S2 --> S3[Suite 3: Admin Products]\n    S2 --> S4[Suite 4: Admin Orders]\n    S2 --> S5[Suite 5: Admin Discounts]\n    S2 --> S6[Suite 6: Admin Settings]\n    S2 --> S15[Suite 15: Admin Collections]\n    S2 --> S16[Suite 16: Admin Customers]\n    S2 --> S17[Suite 17: Admin Pages]\n    S2 --> S18[Suite 18: Admin Analytics]\n    S7 --> S8[Suite 8: Cart Flow]\n    S8 --> S9[Suite 9: Checkout Flow]\n    S7 --> S10[Suite 10: Customer Account]\n    S7 --> S11[Suite 11: Inventory Enforcement]\n    S7 --> S12[Suite 12: Tenant Isolation]\n    S7 --> S13[Suite 13: Responsive / Mobile]\n    S7 --> S14[Suite 14: Accessibility]\n```\n\n| Execution Phase | Suites | Rationale |\n|-----------------|--------|-----------|\n| Phase 1 | Suite 1 (Smoke) | Verifies all routes load before deeper testing |\n| Phase 2 | Suites 2, 7 | Core auth and storefront browsing - gate to all further tests |\n| Phase 3 | Suites 3, 4, 5, 6, 10, 11, 15, 16, 17, 18 | Admin CRUD and storefront feature suites (can run in parallel) |\n| Phase 4 | Suite 8 (Cart) | Depends on storefront browsing working |\n| Phase 5 | Suite 9 (Checkout) | Depends on cart flow working. Tests payment method selection (credit card, PayPal, bank transfer), magic card declines, and bank transfer instructions. |\n| Phase 6 | Suites 12, 13, 14 | Cross-cutting concerns: isolation, responsive, accessibility |\n\n---\n\n## Test Directory Structure\n\n```\ntests/Browser/\n    SmokeTest.php\n    Admin/\n        AuthenticationTest.php\n        ProductManagementTest.php\n        OrderManagementTest.php\n        DiscountManagementTest.php\n        SettingsTest.php\n        CollectionManagementTest.php\n        CustomerManagementTest.php\n        PageManagementTest.php\n        AnalyticsTest.php\n    Storefront/\n        BrowsingTest.php\n        CartTest.php\n        CheckoutTest.php\n        CustomerAccountTest.php\n        InventoryTest.php\n        TenantIsolationTest.php\n        ResponsiveTest.php\n        AccessibilityTest.php\n```\n\n---","is_error":false}]},"uuid":"aa01c242-636f-4c11-a5ff-e1203c718c33","timestamp":"2026-06-10T07:05:16.301Z","toolUseResult":{"stdout":"## Test Suite Summary\n\n| Suite | File | Tests | Purpose | Dependencies |\n|-------|------|:-----:|---------|--------------|\n| 1 - Smoke Tests | `tests/Browser/SmokeTest.php` | 10 | Hit every major page, assert HTTP 200 and no JS errors | Store 1, Products, Collections, Pages |\n| 2 - Admin Authentication | `tests/Browser/Admin/AuthenticationTest.php` | 10 | Admin login, logout, invalid credentials, session access control | Admin user |\n| 3 - Admin Product Management | `tests/Browser/Admin/ProductManagementTest.php` | 7 | Product CRUD: listing, creating, editing, archiving, filtering | Admin user, Products (incl. #15 draft) |\n| 4 - Admin Order Management | `tests/Browser/Admin/OrderManagementTest.php` | 11 | Order listing, filtering, detail view, fulfillment, refund, confirm payment, fulfillment guard, mark shipped/delivered | Admin user, Orders (#1001, #1005), Customer |\n| 5 - Admin Discount Management | `tests/Browser/Admin/DiscountManagementTest.php` | 6 | Discount code listing, creation, editing | Admin user, Discounts |\n| 6 - Admin Settings | `tests/Browser/Admin/SettingsTest.php` | 7 | Store settings, shipping zones, tax config, domains | Admin user, Shipping zones, Store 1 |\n| 7 - Storefront Browsing | `tests/Browser/Storefront/BrowsingTest.php` | 15 | Home page, collections, product detail, variants, search, pages | Products, Collections, Pages, Products #15/#17/#18 |\n| 8 - Cart Flow | `tests/Browser/Storefront/CartTest.php` | 12 | Cart lifecycle: add, update qty, remove, discounts, totals | Products, Discounts (all codes) |\n| 9 - Checkout Flow | `tests/Browser/Storefront/CheckoutTest.php` | 13 | Full checkout: contact, address, shipping, payment method selection, payment, confirmation, magic card decline, bank transfer flow | Products, Shipping zones, Discounts |\n| 10 - Customer Account | `tests/Browser/Storefront/CustomerAccountTest.php` | 12 | Registration, login, order history, addresses, logout | Customer user, Orders (#1001/#1002/#1004) |\n| 11 - Inventory Enforcement | `tests/Browser/Storefront/InventoryTest.php` | 4 | Inventory policy enforcement: deny vs. continue | Products #17 (deny), #18 (continue), #1 |\n| 12 - Tenant Isolation | `tests/Browser/Storefront/TenantIsolationTest.php` | 5 | Multi-store data isolation verification | Store 1, Admin user, Customer user |\n| 13 - Responsive / Mobile | `tests/Browser/Storefront/ResponsiveTest.php` | 8 | Mobile and tablet viewport rendering and interaction | Products, Admin user |\n| 14 - Accessibility | `tests/Browser/Storefront/AccessibilityTest.php` | 11 | Heading hierarchy, ARIA labels, form labels, keyboard nav | Products, Store 1 |\n| 15 - Admin Collections | `tests/Browser/Admin/CollectionManagementTest.php` | 3 | Collection CRUD in admin | Admin user, Collections |\n| 16 - Admin Customers | `tests/Browser/Admin/CustomerManagementTest.php` | 3 | Customer listing and detail views | Admin user, Customer user, Orders |\n| 17 - Admin Pages | `tests/Browser/Admin/PageManagementTest.php` | 3 | CMS page management | Admin user, Pages |\n| 18 - Admin Analytics | `tests/Browser/Admin/AnalyticsTest.php` | 3 | Analytics dashboard rendering | Admin user, Orders |\n| **Total** | **18 files** | **143** | | |\n\n---\n\n## Test Infrastructure Requirements\n\n### Framework\n\n- **Test runner:** Pest v4 with browser testing capabilities (Playwright under the hood)\n- **Test traits:** Each browser test file must use `TestCase` and `RefreshDatabase`\n- **Configuration:** Register the `Browser` test directory in `tests/Pest.php` with appropriate base classes\n- **Base URL:** Configured via `APP_URL` in `.env.testing`, set to `http://acme-fashion.test`\n\n### Pest v4 Browser Testing API Reference\n\nThe coding agent should use these Pest v4 browser methods:\n\n| Method | Purpose |\n|--------|---------|\n| `visit(url)` | Open a real browser and navigate to the given URL |\n| `visit([url1, url2, ...])` | Visit multiple pages (for batch smoke testing) |\n| `fill(field, value)` | Type a value into a named form field |\n| `click(text)` | Click a visible element matching the given text |\n| `assertSee(text)` | Assert the page contains the given visible text |\n| `assertNoJavascriptErrors()` | Assert no uncaught JS exceptions occurred |\n| `assertNoConsoleLogs()` | Assert no console warnings or errors were logged |\n\nAdditionally, standard Laravel test features are available within browser tests: factories, `Event::fake()`, `Notification::fake()`, `$this->actingAs()`, and model queries.\n\n### Environment Configuration\n\nThe `.env.testing` file must contain the following keys:\n\n| Key | Value | Purpose |\n|-----|-------|---------|\n| `APP_ENV` | `testing` | Laravel environment |\n| `APP_URL` | `http://acme-fashion.test` | Browser base URL (served by Herd) |\n| `DB_CONNECTION` | `sqlite` | Database driver |\n| `DB_DATABASE` | Absolute path to test SQLite file | Isolated test database |\n| `PAYMENT_PROVIDER` | `mock` | Mock PSP - no external API keys needed |\n| `MAIL_MAILER` | `array` | Trap emails in memory |\n| `QUEUE_CONNECTION` | `sync` | Process jobs synchronously |\n\n### Prerequisites Before Running\n\n1. Database seeded with `php artisan migrate:fresh --seed`\n2. Laravel Herd serving `acme-fashion.test`\n3. Playwright browsers installed via `npx playwright install`\n4. Frontend assets built via `npm run build`\n\n---\n\n## Seeded Data Dependency Table\n\nAll tests depend on the database seeder providing this baseline data. Each test gets a fresh database via `RefreshDatabase`, then the seeder repopulates it.\n\nEach browser test file must set `protected bool $seed = true;` on the test class (or call `$this->seed(DatabaseSeeder::class)` in `beforeEach`) to ensure the database is populated after RefreshDatabase clears it. Laravel's `RefreshDatabase` trait does NOT automatically run seeders unless explicitly configured.\n\n| Entity | Key Details | Used By Suites |\n|--------|-------------|----------------|\n| **Admin user** | Email: `admin@acme.test`, password: `password`, role: `owner` on Store 1 | 2, 3, 4, 5, 6, 12, 13, 15, 16, 17, 18 |\n| **Customer user** | Email: `customer@acme.test`, password: `password`, name: \"John Doe\", belongs to Store 1 | 10, 12 |\n| **Store 1** | Name: \"Acme Fashion\", handle: `acme-fashion`, domain: `acme-fashion.test`, currency: EUR | 1, 6, 7, 12, 14 |\n| **Product #1** | Title: \"Classic Cotton T-Shirt\", handle: `classic-cotton-t-shirt`, price: 24.99 EUR, status: active, options: Size (S/M/L/XL), Color (Black/White/Navy), inventory: in stock | 1, 3, 7, 8, 9, 11, 13, 14 |\n| **Product #2** | Title: \"Premium Slim Fit Jeans\", handle: `premium-slim-fit-jeans`, status: active, has compare-at pricing (sale), options: Size, Color | 7, 8 |\n| **Product #15** | Status: `draft` - must NOT appear on storefront | 3, 7 |\n| **Product #17** | Status: active, inventory: 0 on hand, policy: `deny` - displays \"Sold out\", add-to-cart disabled | 7, 11 |\n| **Product #18** | Status: active, inventory: 0 on hand, policy: `continue` - displays \"Available on backorder\", add-to-cart enabled | 7, 11 |\n| **Products (20 total)** | Seeded across collections, with variants, options, images, inventory | 1, 3, 7, 8, 9, 11, 13 |\n| **Collections** | \"T-Shirts\" (handle: `t-shirts`), \"New Arrivals\" (handle: `new-arrivals`), plus others | 1, 7, 13, 15 |\n| **Orders** | #1001 (status: paid, fulfillment: unfulfilled, customer: customer@acme.test), #1002, #1004 also belonging to the same customer | 4, 10, 16, 18 |\n| **Discounts** | WELCOME10 (10% off, min 20 EUR purchase, active), FLAT5 (5 EUR fixed, active), FREESHIP (free shipping, active), EXPIRED20 (expired end date), MAXED (usage_count >= usage_limit) | 5, 8, 9 |\n| **Shipping zones** | \"Domestic\" zone (countries: DE) with rate \"Standard Shipping\" at 4.99 EUR flat; \"International\" zone with its own rates | 6, 9 |\n| **Tax settings** | Store 1: manual mode, prices_include_tax varies by test | 6 |\n| **Pages** | \"About\" (handle: `about`, status: published) | 1, 7, 17 |\n| **Navigation** | Main menu with links to collections, about page | 7 |\n\n---\n\n## Test Execution Matrix\n\nTests should be executed in the order shown below. Later suites depend on the infrastructure and pages verified by earlier suites.\n\n```mermaid\ngraph TD\n    S1[Suite 1: Smoke Tests] --> S2[Suite 2: Admin Auth]\n    S1 --> S7[Suite 7: Storefront Browsing]\n    S2 --> S3[Suite 3: Admin Products]\n    S2 --> S4[Suite 4: Admin Orders]\n    S2 --> S5[Suite 5: Admin Discounts]\n    S2 --> S6[Suite 6: Admin Settings]\n    S2 --> S15[Suite 15: Admin Collections]\n    S2 --> S16[Suite 16: Admin Customers]\n    S2 --> S17[Suite 17: Admin Pages]\n    S2 --> S18[Suite 18: Admin Analytics]\n    S7 --> S8[Suite 8: Cart Flow]\n    S8 --> S9[Suite 9: Checkout Flow]\n    S7 --> S10[Suite 10: Customer Account]\n    S7 --> S11[Suite 11: Inventory Enforcement]\n    S7 --> S12[Suite 12: Tenant Isolation]\n    S7 --> S13[Suite 13: Responsive / Mobile]\n    S7 --> S14[Suite 14: Accessibility]\n```\n\n| Execution Phase | Suites | Rationale |\n|-----------------|--------|-----------|\n| Phase 1 | Suite 1 (Smoke) | Verifies all routes load before deeper testing |\n| Phase 2 | Suites 2, 7 | Core auth and storefront browsing - gate to all further tests |\n| Phase 3 | Suites 3, 4, 5, 6, 10, 11, 15, 16, 17, 18 | Admin CRUD and storefront feature suites (can run in parallel) |\n| Phase 4 | Suite 8 (Cart) | Depends on storefront browsing working |\n| Phase 5 | Suite 9 (Checkout) | Depends on cart flow working. Tests payment method selection (credit card, PayPal, bank transfer), magic card declines, and bank transfer instructions. |\n| Phase 6 | Suites 12, 13, 14 | Cross-cutting concerns: isolation, responsive, accessibility |\n\n---\n\n## Test Directory Structure\n\n```\ntests/Browser/\n    SmokeTest.php\n    Admin/\n        AuthenticationTest.php\n        ProductManagementTest.php\n        OrderManagementTest.php\n        DiscountManagementTest.php\n        SettingsTest.php\n        CollectionManagementTest.php\n        CustomerManagementTest.php\n        PageManagementTest.php\n        AnalyticsTest.php\n    Storefront/\n        BrowsingTest.php\n        CartTest.php\n        CheckoutTest.php\n        CustomerAccountTest.php\n        InventoryTest.php\n        TenantIsolationTest.php\n        ResponsiveTest.php\n        AccessibilityTest.php\n```\n\n---","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"2216d00e-742a-4896-98eb-23ccb70a662b","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"aa01c242-636f-4c11-a5ff-e1203c718c33","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_014KoTew1q3HFuYSANsKce1m","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4690,"cache_read_input_tokens":159497,"output_tokens":3109,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4690,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3109,"cache_read_input_tokens":159497,"cache_creation_input_tokens":4690,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4690},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9uawF4omnKM9cFTvg9","type":"assistant","uuid":"69c11d42-5997-4881-8748-30533dabcc4d","timestamp":"2026-06-10T07:05:42.467Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"69c11d42-5997-4881-8748-30533dabcc4d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_014KoTew1q3HFuYSANsKce1m","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISygMKYwgOGAIqQE8LT0/+CxHeqOLKCLKMKhSfVGzU7XV4uQrkCOd7SggkQJm/YSZw5M2QqLKyarzdzL0gDxXIMhJ/HP5kuC20pvkyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMnvtE9MO0+P2HdaFcGgyc0n1V6zOGQkc78O4iMPbroel0ZnE1axnUgJmHxyIPb5qtq4U2sABNrXTQHmIPxKavojLuHg5YbC1pvdUQESqUAv1s/o6W2ktvYX4RhPeCQ/1Ldvesv6jAwfEwGQRn7KRGrEmjLShihPaMXXq8CNkklp2IzhB4uNCylWvEsiRN0JQa2FQC8vl1x+tXKwc+aIvdsPu8LiCaLIU1wVAiDD+SAZK9gJiUKDeR/x9fzpvXcyQ3GsnWBiiskI+P/1a1IH17hCK1HpYURMc5QTM/t2L1p6uk2TnPr5/uq3+dC3tTHv8D8ni/ceB4fo2KwISA7wQTtBLyqcKTIp/dxDYpJg+mJc85aDj2WeXcTikYZciwvwhU/eCEqhMj9xrUvZIgwK9dAwApbYUgLvkWrth9XiaTfaNZWJDV3yQ4sY/HB9RTUT9PT26FJScZDtf7iROBLRzxYP2zUxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4690,"cache_read_input_tokens":159497,"output_tokens":3109,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4690,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3109,"cache_read_input_tokens":159497,"cache_creation_input_tokens":4690,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4690},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9uawF4omnKM9cFTvg9","type":"assistant","uuid":"8dc09a70-05e6-4747-930a-98a4b06014da","timestamp":"2026-06-10T07:05:42.468Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8dc09a70-05e6-4747-930a-98a4b06014da","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_014KoTew1q3HFuYSANsKce1m","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01AxCD5qmUXTSX4tJSHRzN29","name":"Agent","input":{"description":"Browser tests part 1","name":"phase12a-browser","prompt":"You are implementing Part 1 of the browser test suite (spec 08) for a feature-complete multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Tailwind v4, SQLite, Pest v4). Phases 1-11 committed; full suite 450 passed / 0 todos. The app is served by Laravel Herd at shop.test; the demo store \"Acme Fashion\" has storefront domains shop.test AND acme-fashion.test. Work on the current branch; never create branches or commit.\n\nREQUIRED READING:\n- specs/08-PLAYWRIGHT-E2E-PLAN.md — read the infrastructure sections (lines 1-171) fully, then Suite 1 (Smoke, 10 tests), Suite 2 (Admin Authentication, 10), Suite 7 (Storefront Browsing, 15), Suite 8 (Cart Flow, 12), Suite 9 (Checkout Flow, 13) — every test definition in detail. Implement EXACTLY those tests.\n- tests/Pest.php, tests/TestCase.php, existing feature tests for conventions; database/seeders for the demo data the tests depend on.\n- Use Boost's search-docs tool or https://pestphp.com/docs/browser-testing for Pest v4 browser testing specifics if needed.\n\nSETUP TASKS:\n1. Install pestphp/pest-plugin-browser (composer require --dev; spec-mandated, approved). Run `npx playwright install` if browsers are missing (Playwright may already be installed via the MCP server; check `npx playwright --version` and ~/Library/Caches/ms-playwright). If a sandbox restriction blocks installation, retry with the sandbox disabled.\n2. Create .env.testing per spec 08 (APP_ENV=testing, APP_URL=http://acme-fashion.test, sqlite DB — IMPORTANT: decide between the spec's absolute-path test sqlite file vs the existing in-memory/RefreshDatabase setup so that BOTH the existing 450 feature/unit tests AND browser tests keep working; phpunit.xml currently configures the test env — reconcile carefully and verify the full existing suite still passes afterward).\n3. Register tests/Browser in phpunit.xml testsuites + tests/Pest.php (RefreshDatabase + seeding: each browser test file seeds the full DatabaseSeeder per spec 08, e.g. via a pest()->group/in() config with $seed or beforeEach seeding).\n4. Verify tenancy works in browser tests: Pest's browser server must receive a Host the ResolveStore middleware can resolve (acme-fashion.test is seeded as a storefront domain). Get ONE trivial test green first (visit('/')->assertSee('Acme Fashion' or similar)) before writing the rest.\n\nIMPLEMENT (exactly per spec 08 definitions, same names/assertions/steps):\n- tests/Browser/SmokeTest.php (Suite 1, 10 tests)\n- tests/Browser/Admin/AuthenticationTest.php (Suite 2, 10 tests) — note admin login flow: /admin/login on the storefront domain per the seeded domains; follow spec's described flow\n- tests/Browser/Storefront/BrowsingTest.php (Suite 7, 15 tests)\n- tests/Browser/Storefront/CartTest.php (Suite 8, 12 tests)\n- tests/Browser/Storefront/CheckoutTest.php (Suite 9, 13 tests — full checkout incl. credit card magic numbers 4242.../decline 4000...0002, PayPal, bank transfer instructions, discount codes)\n\nRULES:\n- If a test exposes a REAL BUG in the application (wrong behavior vs spec), FIX THE APPLICATION (and note it). If the test fails because the spec's described UI differs slightly from the implemented UI (e.g., button label), prefer adjusting the app toward the spec when reasonable, else adapt the selector while preserving the test's intent. Never weaken assertions to force green.\n- Browser tests are slow; run them per-file while developing (php artisan test --compact tests/Browser/SmokeTest.php etc.).\n- When done run: the ENTIRE suite including browser tests once (php artisan test --compact) and report exact counts; vendor/bin/pint --dirty --format agent.\n\nFinal message: setup decisions (.env.testing/phpunit reconciliation, host strategy), the 5 files with test counts, any APPLICATION BUGS found and fixed, full-suite result. Update specs/progress.md row 12 (note part 1 done) + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4690,"cache_read_input_tokens":159497,"output_tokens":3109,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4690,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":3109,"cache_read_input_tokens":159497,"cache_creation_input_tokens":4690,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4690},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011Cbu9uawF4omnKM9cFTvg9","type":"assistant","uuid":"5e9cb3aa-6d57-473f-883b-499ee9db2925","timestamp":"2026-06-10T07:06:04.699Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"5e9cb3aa-6d57-473f-883b-499ee9db2925","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"5e9cb3aa-6d57-473f-883b-499ee9db2925","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01AxCD5qmUXTSX4tJSHRzN29","type":"tool_result","content":[{"type":"text","text":"All done. Final report:\n\n## Setup decisions\n\n- **Server/host strategy**: Pest's browser plugin serves the Laravel app **in-process** (Amp socket server on `127.0.0.1:<random port>` inside the test process), so the existing `phpunit.xml` in-memory SQLite + `RefreshDatabase` setup is shared with browser-issued requests and was left untouched. The spec's \"hit acme-fashion.test via Herd\" approach is impossible here: the plugin's Amp DNS resolver bypasses macOS `/etc/resolver` (Herd dnsmasq), so `acme-fashion.test` doesn't resolve in-process. Instead, the Browser suite's `beforeEach` seeds the full `DatabaseSeeder` and registers an extra `store_domains` row mapping `127.0.0.1` → Acme Fashion, so tenancy still resolves through the real `ResolveStore` middleware + domain table (`tests/Pest.php`, `registerBrowserTestDomain()`).\n- **`.env.testing`** created per spec (APP_ENV/APP_URL/`PAYMENT_PROVIDER=mock`/array mail/sync queue, sqlite path) **plus `APP_KEY` copied from `.env`** — critical because once `.env.testing` exists Laravel stops falling back to `.env`. `phpunit.xml` `<env>` values still take precedence, so the DB stays `:memory:` and all 450 existing tests are unaffected.\n- `tests/Browser` registered in `phpunit.xml` testsuites and `tests/Pest.php` (TestCase + RefreshDatabase + `$this->seed()` + `Http::fake()` per test). Shared helpers added: `browserLoginAsAdmin`, `browserAddClassicTeeToCart`, `browserFillCheckoutAddress`, `browserReachCheckoutPaymentStep`. `tests/Browser/Screenshots` and `database/testing.sqlite` gitignored.\n\n## Files implemented (60 tests, all green)\n\n- `tests/Browser/SmokeTest.php` — 10\n- `tests/Browser/Admin/AuthenticationTest.php` — 10\n- `tests/Browser/Storefront/BrowsingTest.php` — 15\n- `tests/Browser/Storefront/CartTest.php` — 12\n- `tests/Browser/Storefront/CheckoutTest.php` — 13 (magic cards 4242/…0002 declined/…9995 insufficient, PayPal, bank transfer IBAN/BIC/reference, FLAT5 totals 24.98, DE vs US zones)\n\n## Application bugs / spec deviations fixed (app changed toward spec)\n\n1. **Checkout payment UX deviated from spec 04/08**: payment was split into step 4 (select method, \"Continue to payment\") + step 5 (pay form). Spec 04 mandates a single \"Payment Method & Pay\" step with live-switching forms (test 9.13). Merged: radios + method form render together; `payNow()` persists the method (`selectPaymentMethod` when still `shipping_selected`, updates it when switched at the pay step). `selectPayment` action removed; existing CheckoutUiTest still green.\n2. **No DE postal-code format validation** (test 9.7): added `regex:/^\\d{5}$/` for DE + friendly `validationAttributes` in `app/Livewire/Storefront/Checkout/Show.php`.\n3. **Native browser validation hid server validation errors** (tests 2.3/2.4/9.5/9.6): added `novalidate` to admin login + checkout contact/address forms; added missing password `@error` block to admin login.\n4. **Login labels**: admin \"Login\" → \"Sign in\", customer \"Login\" → \"Log in\" (spec 08 1.5/1.6/2.x); settings heading \"Settings\" → \"Store Settings\" (2.8/6.1). Feature tests updated accordingly.\n5. **Discount not-found message** \"This discount code does not exist.\" → \"Invalid discount code.\" per spec 04 (test 8.7); CartUiTest updated.\n6. **Home page didn't show product #1** (test 7.1): featured products defaulted to latest-by-id, excluding Classic Cotton T-Shirt. `ThemeSeeder` now sets `featured_products_collection_handle = new-arrivals`.\n7. **Checkout completion 500'd in seeded environments with sync queue**: seeded webhook subscriptions made real outbound HTTP inline during pay. Test-side fix: `Http::fake()` in Browser `beforeEach` (job behavior itself is correct queue-retry design).\n\n## Result\n\n- Full suite: **510 passed (1641 assertions), 0 todos, ~81s** (`php artisan test --compact`), including all 60 browser tests; `vendor/bin/pint --dirty` clean.\n- `specs/progress.md` row 12 updated (part 1 done; suites 3-6, 10-18 = 83 tests + MCP acceptance remain) with a detailed log entry including browser-test gotchas (bare tag selectors not treated as CSS by the locator guesser, strict-mode scoping, cart drawer auto-opening over the Checkout link)."},{"type":"text","text":"agentId: aa227ac08dc987930 (use SendMessage with to: 'aa227ac08dc987930' to continue this agent)\n<usage>subagent_tokens: 271262\ntool_uses: 178\nduration_ms: 1958858</usage>"}]}]},"uuid":"9e70f09d-86d8-4608-9130-7695e00b2a0c","timestamp":"2026-06-10T07:38:43.561Z","toolUseResult":{"status":"completed","prompt":"You are implementing Part 1 of the browser test suite (spec 08) for a feature-complete multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, Tailwind v4, SQLite, Pest v4). Phases 1-11 committed; full suite 450 passed / 0 todos. The app is served by Laravel Herd at shop.test; the demo store \"Acme Fashion\" has storefront domains shop.test AND acme-fashion.test. Work on the current branch; never create branches or commit.\n\nREQUIRED READING:\n- specs/08-PLAYWRIGHT-E2E-PLAN.md — read the infrastructure sections (lines 1-171) fully, then Suite 1 (Smoke, 10 tests), Suite 2 (Admin Authentication, 10), Suite 7 (Storefront Browsing, 15), Suite 8 (Cart Flow, 12), Suite 9 (Checkout Flow, 13) — every test definition in detail. Implement EXACTLY those tests.\n- tests/Pest.php, tests/TestCase.php, existing feature tests for conventions; database/seeders for the demo data the tests depend on.\n- Use Boost's search-docs tool or https://pestphp.com/docs/browser-testing for Pest v4 browser testing specifics if needed.\n\nSETUP TASKS:\n1. Install pestphp/pest-plugin-browser (composer require --dev; spec-mandated, approved). Run `npx playwright install` if browsers are missing (Playwright may already be installed via the MCP server; check `npx playwright --version` and ~/Library/Caches/ms-playwright). If a sandbox restriction blocks installation, retry with the sandbox disabled.\n2. Create .env.testing per spec 08 (APP_ENV=testing, APP_URL=http://acme-fashion.test, sqlite DB — IMPORTANT: decide between the spec's absolute-path test sqlite file vs the existing in-memory/RefreshDatabase setup so that BOTH the existing 450 feature/unit tests AND browser tests keep working; phpunit.xml currently configures the test env — reconcile carefully and verify the full existing suite still passes afterward).\n3. Register tests/Browser in phpunit.xml testsuites + tests/Pest.php (RefreshDatabase + seeding: each browser test file seeds the full DatabaseSeeder per spec 08, e.g. via a pest()->group/in() config with $seed or beforeEach seeding).\n4. Verify tenancy works in browser tests: Pest's browser server must receive a Host the ResolveStore middleware can resolve (acme-fashion.test is seeded as a storefront domain). Get ONE trivial test green first (visit('/')->assertSee('Acme Fashion' or similar)) before writing the rest.\n\nIMPLEMENT (exactly per spec 08 definitions, same names/assertions/steps):\n- tests/Browser/SmokeTest.php (Suite 1, 10 tests)\n- tests/Browser/Admin/AuthenticationTest.php (Suite 2, 10 tests) — note admin login flow: /admin/login on the storefront domain per the seeded domains; follow spec's described flow\n- tests/Browser/Storefront/BrowsingTest.php (Suite 7, 15 tests)\n- tests/Browser/Storefront/CartTest.php (Suite 8, 12 tests)\n- tests/Browser/Storefront/CheckoutTest.php (Suite 9, 13 tests — full checkout incl. credit card magic numbers 4242.../decline 4000...0002, PayPal, bank transfer instructions, discount codes)\n\nRULES:\n- If a test exposes a REAL BUG in the application (wrong behavior vs spec), FIX THE APPLICATION (and note it). If the test fails because the spec's described UI differs slightly from the implemented UI (e.g., button label), prefer adjusting the app toward the spec when reasonable, else adapt the selector while preserving the test's intent. Never weaken assertions to force green.\n- Browser tests are slow; run them per-file while developing (php artisan test --compact tests/Browser/SmokeTest.php etc.).\n- When done run: the ENTIRE suite including browser tests once (php artisan test --compact) and report exact counts; vendor/bin/pint --dirty --format agent.\n\nFinal message: setup decisions (.env.testing/phpunit reconciliation, host strategy), the 5 files with test counts, any APPLICATION BUGS found and fixed, full-suite result. Update specs/progress.md row 12 (note part 1 done) + log.","agentId":"aa227ac08dc987930","agentType":"general-purpose","content":[{"type":"text","text":"All done. Final report:\n\n## Setup decisions\n\n- **Server/host strategy**: Pest's browser plugin serves the Laravel app **in-process** (Amp socket server on `127.0.0.1:<random port>` inside the test process), so the existing `phpunit.xml` in-memory SQLite + `RefreshDatabase` setup is shared with browser-issued requests and was left untouched. The spec's \"hit acme-fashion.test via Herd\" approach is impossible here: the plugin's Amp DNS resolver bypasses macOS `/etc/resolver` (Herd dnsmasq), so `acme-fashion.test` doesn't resolve in-process. Instead, the Browser suite's `beforeEach` seeds the full `DatabaseSeeder` and registers an extra `store_domains` row mapping `127.0.0.1` → Acme Fashion, so tenancy still resolves through the real `ResolveStore` middleware + domain table (`tests/Pest.php`, `registerBrowserTestDomain()`).\n- **`.env.testing`** created per spec (APP_ENV/APP_URL/`PAYMENT_PROVIDER=mock`/array mail/sync queue, sqlite path) **plus `APP_KEY` copied from `.env`** — critical because once `.env.testing` exists Laravel stops falling back to `.env`. `phpunit.xml` `<env>` values still take precedence, so the DB stays `:memory:` and all 450 existing tests are unaffected.\n- `tests/Browser` registered in `phpunit.xml` testsuites and `tests/Pest.php` (TestCase + RefreshDatabase + `$this->seed()` + `Http::fake()` per test). Shared helpers added: `browserLoginAsAdmin`, `browserAddClassicTeeToCart`, `browserFillCheckoutAddress`, `browserReachCheckoutPaymentStep`. `tests/Browser/Screenshots` and `database/testing.sqlite` gitignored.\n\n## Files implemented (60 tests, all green)\n\n- `tests/Browser/SmokeTest.php` — 10\n- `tests/Browser/Admin/AuthenticationTest.php` — 10\n- `tests/Browser/Storefront/BrowsingTest.php` — 15\n- `tests/Browser/Storefront/CartTest.php` — 12\n- `tests/Browser/Storefront/CheckoutTest.php` — 13 (magic cards 4242/…0002 declined/…9995 insufficient, PayPal, bank transfer IBAN/BIC/reference, FLAT5 totals 24.98, DE vs US zones)\n\n## Application bugs / spec deviations fixed (app changed toward spec)\n\n1. **Checkout payment UX deviated from spec 04/08**: payment was split into step 4 (select method, \"Continue to payment\") + step 5 (pay form). Spec 04 mandates a single \"Payment Method & Pay\" step with live-switching forms (test 9.13). Merged: radios + method form render together; `payNow()` persists the method (`selectPaymentMethod` when still `shipping_selected`, updates it when switched at the pay step). `selectPayment` action removed; existing CheckoutUiTest still green.\n2. **No DE postal-code format validation** (test 9.7): added `regex:/^\\d{5}$/` for DE + friendly `validationAttributes` in `app/Livewire/Storefront/Checkout/Show.php`.\n3. **Native browser validation hid server validation errors** (tests 2.3/2.4/9.5/9.6): added `novalidate` to admin login + checkout contact/address forms; added missing password `@error` block to admin login.\n4. **Login labels**: admin \"Login\" → \"Sign in\", customer \"Login\" → \"Log in\" (spec 08 1.5/1.6/2.x); settings heading \"Settings\" → \"Store Settings\" (2.8/6.1). Feature tests updated accordingly.\n5. **Discount not-found message** \"This discount code does not exist.\" → \"Invalid discount code.\" per spec 04 (test 8.7); CartUiTest updated.\n6. **Home page didn't show product #1** (test 7.1): featured products defaulted to latest-by-id, excluding Classic Cotton T-Shirt. `ThemeSeeder` now sets `featured_products_collection_handle = new-arrivals`.\n7. **Checkout completion 500'd in seeded environments with sync queue**: seeded webhook subscriptions made real outbound HTTP inline during pay. Test-side fix: `Http::fake()` in Browser `beforeEach` (job behavior itself is correct queue-retry design).\n\n## Result\n\n- Full suite: **510 passed (1641 assertions), 0 todos, ~81s** (`php artisan test --compact`), including all 60 browser tests; `vendor/bin/pint --dirty` clean.\n- `specs/progress.md` row 12 updated (part 1 done; suites 3-6, 10-18 = 83 tests + MCP acceptance remain) with a detailed log entry including browser-test gotchas (bare tag selectors not treated as CSS by the locator guesser, strict-mode scoping, cart drawer auto-opening over the Checkout link)."}],"totalDurationMs":1958858,"totalTokens":271262,"totalToolUseCount":178,"usage":{"input_tokens":2,"cache_creation_input_tokens":619,"cache_read_input_tokens":268700,"output_tokens":1941,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":619},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1941,"cache_read_input_tokens":268700,"cache_creation_input_tokens":619,"cache_creation":{"ephemeral_5m_input_tokens":619,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":17,"searchCount":0,"bashCount":107,"editFileCount":33,"linesAdded":963,"linesRemoved":151,"otherToolCount":21}},"sourceToolAssistantUUID":"5e9cb3aa-6d57-473f-883b-499ee9db2925","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9e70f09d-86d8-4608-9130-7695e00b2a0c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01CWatkJgPXugSZBZY3PM6h5","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISngIKYggOGAIqQMPJuRMaRtku6l4yB5Zu4wRDUz07v0ElMJLvkN3o6yWgO4hczcCklTFkfILqktUHzrTGJcfWYi+l2w9v03i9CW8yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwJmLENbENmDHT3qVMaDFkSdsXVc7kz/DhGjSIwbkyL0zsTQQdGGhfho6vBgDQy5LvGHsx/ruav/AXLmS1+XSRHBw8JfRUVcDqAjiRvKmqThxImcWcj/wcS4JIG5z1ZzV+EtEFcqjxk1sO1s26sU+eBsB2EevtBIrjMeyvLcC2TOXbicL12prADaWNJlBXRYXnPFSACVpDqeNV2NsQNV/zXvnC3ZTE5ZaclhZRXOyAp4Ieu2g/LwgUkGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4963,"cache_read_input_tokens":164187,"output_tokens":268,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4963,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":268,"cache_read_input_tokens":164187,"cache_creation_input_tokens":4963,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4963},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuCTZ6VWcd6mK274Xdmo","type":"assistant","uuid":"a1dbcde4-cf01-4c49-973a-cfa0dfb4c82d","timestamp":"2026-06-10T07:38:52.545Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a1dbcde4-cf01-4c49-973a-cfa0dfb4c82d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01CWatkJgPXugSZBZY3PM6h5","type":"message","role":"assistant","content":[{"type":"text","text":"Part 1 of the browser suite is green (510 total). Committing and launching Part 2 (remaining 83 browser tests)."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4963,"cache_read_input_tokens":164187,"output_tokens":268,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4963,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":268,"cache_read_input_tokens":164187,"cache_creation_input_tokens":4963,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4963},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuCTZ6VWcd6mK274Xdmo","type":"assistant","uuid":"07f8cb08-45d8-4212-9355-03fe36dea24e","timestamp":"2026-06-10T07:38:52.546Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"07f8cb08-45d8-4212-9355-03fe36dea24e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01CWatkJgPXugSZBZY3PM6h5","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01JPC4EJmN8XcpYbhEiJxqLg","name":"Bash","input":{"command":"git add -A && git commit -q -m \"Phase 12a: Pest browser test infrastructure + suites 1,2,7,8,9 (60 tests); checkout single pay step, validation fixes\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Commit browser tests part 1"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":4963,"cache_read_input_tokens":164187,"output_tokens":268,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":4963,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":268,"cache_read_input_tokens":164187,"cache_creation_input_tokens":4963,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":4963},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuCTZ6VWcd6mK274Xdmo","type":"assistant","uuid":"76800665-6d41-4429-bd0d-6918e484d7be","timestamp":"2026-06-10T07:38:53.964Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"76800665-6d41-4429-bd0d-6918e484d7be","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01JPC4EJmN8XcpYbhEiJxqLg","type":"tool_result","content":"1734bc9e Phase 12a: Pest browser test infrastructure + suites 1,2,7,8,9 (60 tests); checkout single pay step, validation fixes","is_error":false}]},"uuid":"2736f66f-7063-4b54-8dc7-7bf533ffe582","timestamp":"2026-06-10T07:38:54.127Z","toolUseResult":{"stdout":"1734bc9e Phase 12a: Pest browser test infrastructure + suites 1,2,7,8,9 (60 tests); checkout single pay step, validation fixes","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"76800665-6d41-4429-bd0d-6918e484d7be","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2736f66f-7063-4b54-8dc7-7bf533ffe582","isSidechain":false,"attachment":{"type":"task_reminder","content":[{"id":"31","subject":"Set up Pest browser testing infrastructure (.env.testing, plugin, phpunit, Pest.php)","description":"Install pestphp/pest-plugin-browser, create .env.testing reconciled with phpunit.xml, register tests/Browser in testsuites and Pest.php with seeding, get one trivial browser test green against acme-fashion.test.","activeForm":"Setting up browser test infrastructure","status":"completed","blocks":[],"blockedBy":[]},{"id":"32","subject":"Implement SmokeTest.php (Suite 1, 10 tests)","description":"tests/Browser/SmokeTest.php per spec 08 Suite 1.","activeForm":"Implementing SmokeTest","status":"completed","blocks":[],"blockedBy":[]},{"id":"33","subject":"Implement Admin/AuthenticationTest.php (Suite 2, 10 tests)","description":"tests/Browser/Admin/AuthenticationTest.php per spec 08 Suite 2.","activeForm":"Implementing Admin AuthenticationTest","status":"completed","blocks":[],"blockedBy":[]},{"id":"34","subject":"Implement Storefront/BrowsingTest.php (Suite 7, 15 tests)","description":"tests/Browser/Storefront/BrowsingTest.php per spec 08 Suite 7.","activeForm":"Implementing BrowsingTest","status":"completed","blocks":[],"blockedBy":[]},{"id":"35","subject":"Implement Storefront/CartTest.php (Suite 8, 12 tests)","description":"tests/Browser/Storefront/CartTest.php per spec 08 Suite 8.","activeForm":"Implementing CartTest","status":"completed","blocks":[],"blockedBy":[]},{"id":"36","subject":"Implement Storefront/CheckoutTest.php (Suite 9, 13 tests)","description":"tests/Browser/Storefront/CheckoutTest.php per spec 08 Suite 9, incl. magic card numbers, PayPal, bank transfer.","activeForm":"Implementing CheckoutTest","status":"completed","blocks":[],"blockedBy":[]},{"id":"37","subject":"Run full suite, pint, update specs/progress.md","description":"Run php artisan test --compact for entire suite, run pint --dirty, update progress.md row 12 + log.","activeForm":"Running full suite and finalizing","status":"in_progress","blocks":[],"blockedBy":[]}],"itemCount":7},"type":"attachment","uuid":"7db8f01c-2557-49d0-8aa4-5e7ea573ecc8","timestamp":"2026-06-10T07:38:54.139Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7db8f01c-2557-49d0-8aa4-5e7ea573ecc8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01NQuCjZu1x1HEyFZHwEc8vb","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_0181gJzU6FYYYmtndLuqH6vy","name":"Agent","input":{"description":"Browser tests part 2","name":"phase12b-browser","prompt":"You are implementing Part 2 (final) of the browser test suite (spec 08) for a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, SQLite, Pest v4). Phases 1-12a committed; full suite currently 510 passed / 0 todos including 60 browser tests (suites 1, 2, 7, 8, 9). Work on the current branch; never create branches or commit.\n\nINFRA (already built by part 1 — study it first): tests/Pest.php Browser config (TestCase + RefreshDatabase, beforeEach seeds DatabaseSeeder + registerBrowserTestDomain() mapping 127.0.0.1 to Acme Fashion + Http::fake()), helpers browserLoginAsAdmin / browserAddClassicTeeToCart / browserFillCheckoutAddress / browserReachCheckoutPaymentStep, .env.testing, phpunit.xml Browser testsuite. Read tests/Browser/SmokeTest.php and Admin/AuthenticationTest.php and Storefront/CartTest.php for established selector/style conventions and gotchas (bare tag selectors not treated as CSS, strict-mode scoping, cart drawer auto-open behavior).\n\nREQUIRED READING: specs/08-PLAYWRIGHT-E2E-PLAN.md — every test definition for the suites below. Implement EXACTLY those tests (names, steps, assertions):\n- Suite 3: tests/Browser/Admin/ProductManagementTest.php (7)\n- Suite 4: tests/Browser/Admin/OrderManagementTest.php (11)\n- Suite 5: tests/Browser/Admin/DiscountManagementTest.php (6)\n- Suite 6: tests/Browser/Admin/SettingsTest.php (7)\n- Suite 10: tests/Browser/Storefront/CustomerAccountTest.php (12)\n- Suite 11: tests/Browser/Storefront/InventoryTest.php (4)\n- Suite 12: tests/Browser/Storefront/TenantIsolationTest.php (5)\n- Suite 13: tests/Browser/Storefront/ResponsiveTest.php (8)\n- Suite 14: tests/Browser/Storefront/AccessibilityTest.php (11)\n- Suite 15: tests/Browser/Admin/CollectionManagementTest.php (3)\n- Suite 16: tests/Browser/Admin/CustomerManagementTest.php (3)\n- Suite 17: tests/Browser/Admin/PageManagementTest.php (3)\n- Suite 18: tests/Browser/Admin/AnalyticsTest.php (3)\nTotal: 83 tests.\n\nNOTES:\n- Customer login per seed data: customer@acme.test / password (verify against database/seeders/CustomerSeeder.php; if the seeded email differs, prefer adjusting the SEEDER toward spec 08's dependency table).\n- Tenant isolation tests involve the second store (Acme Electronics) — you may need to register a second browser domain mapping (e.g., a 127.0.0.1 alias is impossible; check how spec 08 defines these tests and use Playwright host handling or an extra hostname like 'localhost' mapped to store 2 in store_domains via a helper). Choose a robust approach that tests REAL isolation through ResolveStore.\n- Responsive tests use viewport helpers (Pest browser on('mobile')/resize — check plugin API via search-docs or pestphp.com/docs/browser-testing).\n- If a test exposes a REAL BUG or spec deviation in the app, FIX THE APP (note it). Never weaken assertions to force green.\n- Develop per-file (php artisan test --compact tests/Browser/Admin/ProductManagementTest.php), then run the FULL suite once at the end and report exact counts. vendor/bin/pint --dirty --format agent at the end.\n\nFinal message: the 13 files with counts, application bugs/deviations found+fixed, isolation-test approach, full-suite result. Update specs/progress.md row 12 (browser tests complete: 143 total) + log."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":395,"cache_creation_input_tokens":330,"cache_read_input_tokens":169150,"output_tokens":1512,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":330,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":395,"output_tokens":1512,"cache_read_input_tokens":169150,"cache_creation_input_tokens":330,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":330},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuCUL5SGzJuyiN3H4C4C","type":"assistant","uuid":"e09eb018-3f5e-4a5d-b8d3-a4fdf670bafd","timestamp":"2026-06-10T07:39:17.421Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e09eb018-3f5e-4a5d-b8d3-a4fdf670bafd","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_0181gJzU6FYYYmtndLuqH6vy","type":"tool_result","content":[{"type":"text","text":"Part 2 complete. All 18 suites of spec 08 are implemented: **143 browser tests, full suite 593 passed (2054 assertions), 0 todos, ~155s; pint clean.**\n\n## The 13 new files (83 tests)\n| File | Tests |\n|---|---|\n| tests/Browser/Admin/ProductManagementTest.php | 7 |\n| tests/Browser/Admin/OrderManagementTest.php | 11 |\n| tests/Browser/Admin/DiscountManagementTest.php | 6 |\n| tests/Browser/Admin/SettingsTest.php | 7 |\n| tests/Browser/Admin/CollectionManagementTest.php | 3 |\n| tests/Browser/Admin/CustomerManagementTest.php | 3 |\n| tests/Browser/Admin/PageManagementTest.php | 3 |\n| tests/Browser/Admin/AnalyticsTest.php | 3 |\n| tests/Browser/Storefront/CustomerAccountTest.php | 12 |\n| tests/Browser/Storefront/InventoryTest.php | 4 |\n| tests/Browser/Storefront/TenantIsolationTest.php | 5 |\n| tests/Browser/Storefront/ResponsiveTest.php | 8 |\n| tests/Browser/Storefront/AccessibilityTest.php | 11 |\n\nPlus new tests/Pest.php helpers: `browserLoginAsCustomer`, `browserOpenAdminOrder`, `browserCreateFulfillment`, `switchBrowserTestDomainToStore`.\n\n## Real bug found and fixed\n- **resources/views/livewire/admin/discounts/form.blade.php**: a Blade `@if` directive inside the `<flux:input>` component tag's attribute list (unsupported by the component-tag compiler) silently broke rendering of the discount value input — the admin could never enter a discount value in a real browser (feature tests missed it because they set the Livewire property directly). Replaced with a bound `:max` attribute.\n\n## Spec-08 alignment fixes to the app (noted where specs 03/04 said otherwise)\n- Refund toast \"Refund issued\" → \"Refund processed\" (08 §4.6; spec 03's toast table said \"Refund issued\" — conflict resolved toward 08 per task mandate, no feature tests asserted the old string).\n- Shipping rate save toast → \"Shipping rate saved\"; tax save toast → \"Tax settings saved\"; \"Tax Settings\" secondary heading added to the taxes tab (08 §6.4–6.6; 03 only had a generic \"Settings saved\").\n- Customer register heading/button \"Register\" → \"Create an account\"/\"Create account\" (deviation from BOTH spec 04 §10.2 and 08 — genuine fix).\n- Account-nav dashboard tab \"Account\" → \"My Account\" (08 §10.1/10.4 expect visible \"My Account\"; 04 doesn't spec tab labels).\n- Address book now shows an \"Address saved\" status message after save (08 §10.10/10.11; previously the modal closed silently).\n\n## Tenant-isolation approach\nThe plugin's in-process HTTP server always reconstructs requests with host `127.0.0.1`, so a second hostname can't reach ResolveStore. Instead, `switchBrowserTestDomainToStore()` re-points the seeded `127.0.0.1` `store_domains` row at Acme Electronics and forgets the `store_domain:127.0.0.1` cache key — test 12.1 verifies isolation in **both** directions through the real domain-resolution path (fashion never shows electronics data; the electronics storefront never shows fashion data). Admin/search isolation is additionally proven via the admin search UIs returning \"No … match your filters.\" for store-2 data, and the customer order history excludes #5001/#5002.\n\n## Test-side adaptations (seeded reality, not weakened assertions)\nProduct list paginates 15/20 so 3.1 sorts by Title and 3.3 uses admin search; 17.2 supplies handle `faq-e2e` (FAQ page already seeded per spec 07); 17.3 clicks the seeded \"About Us\" title; 3.4 clicks the Active tab (app default filter is All). Notable gotcha: Playwright `fill()` doesn't trigger Alpine `x-model` on the entangled PDP quantity input — 11.4 uses click+Backspace+type and asserts the Alpine state is 15 before proving the over-stock increment errors.\n\n## Incident (resolved)\nWhile cleaning failure-screenshot artifacts I ran `rm -rf .../Tests`, which on the case-insensitive macOS filesystem deleted `tests/`. Fully recovered: committed files restored via `git checkout`, all 13 new files and Pest.php helpers rewritten from session content, and the **entire suite re-run afterwards: 593 passed (2054 assertions)** — final state verified green.\n\nspecs/progress.md: row 12 marked DONE (143 browser tests, full suite 593 passed) and a detailed part-2 log entry appended."},{"type":"text","text":"agentId: a12c5bc2a067318a7 (use SendMessage with to: 'a12c5bc2a067318a7' to continue this agent)\n<usage>subagent_tokens: 420430\ntool_uses: 222\nduration_ms: 2976950</usage>"}]}]},"uuid":"6945d9b2-7cbc-4a16-b420-2deea7272387","timestamp":"2026-06-10T08:28:54.374Z","toolUseResult":{"status":"completed","prompt":"You are implementing Part 2 (final) of the browser test suite (spec 08) for a multi-tenant e-commerce platform in /Users/fabianwesner/Herd/shop (Laravel 12, Livewire v4, SQLite, Pest v4). Phases 1-12a committed; full suite currently 510 passed / 0 todos including 60 browser tests (suites 1, 2, 7, 8, 9). Work on the current branch; never create branches or commit.\n\nINFRA (already built by part 1 — study it first): tests/Pest.php Browser config (TestCase + RefreshDatabase, beforeEach seeds DatabaseSeeder + registerBrowserTestDomain() mapping 127.0.0.1 to Acme Fashion + Http::fake()), helpers browserLoginAsAdmin / browserAddClassicTeeToCart / browserFillCheckoutAddress / browserReachCheckoutPaymentStep, .env.testing, phpunit.xml Browser testsuite. Read tests/Browser/SmokeTest.php and Admin/AuthenticationTest.php and Storefront/CartTest.php for established selector/style conventions and gotchas (bare tag selectors not treated as CSS, strict-mode scoping, cart drawer auto-open behavior).\n\nREQUIRED READING: specs/08-PLAYWRIGHT-E2E-PLAN.md — every test definition for the suites below. Implement EXACTLY those tests (names, steps, assertions):\n- Suite 3: tests/Browser/Admin/ProductManagementTest.php (7)\n- Suite 4: tests/Browser/Admin/OrderManagementTest.php (11)\n- Suite 5: tests/Browser/Admin/DiscountManagementTest.php (6)\n- Suite 6: tests/Browser/Admin/SettingsTest.php (7)\n- Suite 10: tests/Browser/Storefront/CustomerAccountTest.php (12)\n- Suite 11: tests/Browser/Storefront/InventoryTest.php (4)\n- Suite 12: tests/Browser/Storefront/TenantIsolationTest.php (5)\n- Suite 13: tests/Browser/Storefront/ResponsiveTest.php (8)\n- Suite 14: tests/Browser/Storefront/AccessibilityTest.php (11)\n- Suite 15: tests/Browser/Admin/CollectionManagementTest.php (3)\n- Suite 16: tests/Browser/Admin/CustomerManagementTest.php (3)\n- Suite 17: tests/Browser/Admin/PageManagementTest.php (3)\n- Suite 18: tests/Browser/Admin/AnalyticsTest.php (3)\nTotal: 83 tests.\n\nNOTES:\n- Customer login per seed data: customer@acme.test / password (verify against database/seeders/CustomerSeeder.php; if the seeded email differs, prefer adjusting the SEEDER toward spec 08's dependency table).\n- Tenant isolation tests involve the second store (Acme Electronics) — you may need to register a second browser domain mapping (e.g., a 127.0.0.1 alias is impossible; check how spec 08 defines these tests and use Playwright host handling or an extra hostname like 'localhost' mapped to store 2 in store_domains via a helper). Choose a robust approach that tests REAL isolation through ResolveStore.\n- Responsive tests use viewport helpers (Pest browser on('mobile')/resize — check plugin API via search-docs or pestphp.com/docs/browser-testing).\n- If a test exposes a REAL BUG or spec deviation in the app, FIX THE APP (note it). Never weaken assertions to force green.\n- Develop per-file (php artisan test --compact tests/Browser/Admin/ProductManagementTest.php), then run the FULL suite once at the end and report exact counts. vendor/bin/pint --dirty --format agent at the end.\n\nFinal message: the 13 files with counts, application bugs/deviations found+fixed, isolation-test approach, full-suite result. Update specs/progress.md row 12 (browser tests complete: 143 total) + log.","agentId":"a12c5bc2a067318a7","agentType":"general-purpose","content":[{"type":"text","text":"Part 2 complete. All 18 suites of spec 08 are implemented: **143 browser tests, full suite 593 passed (2054 assertions), 0 todos, ~155s; pint clean.**\n\n## The 13 new files (83 tests)\n| File | Tests |\n|---|---|\n| tests/Browser/Admin/ProductManagementTest.php | 7 |\n| tests/Browser/Admin/OrderManagementTest.php | 11 |\n| tests/Browser/Admin/DiscountManagementTest.php | 6 |\n| tests/Browser/Admin/SettingsTest.php | 7 |\n| tests/Browser/Admin/CollectionManagementTest.php | 3 |\n| tests/Browser/Admin/CustomerManagementTest.php | 3 |\n| tests/Browser/Admin/PageManagementTest.php | 3 |\n| tests/Browser/Admin/AnalyticsTest.php | 3 |\n| tests/Browser/Storefront/CustomerAccountTest.php | 12 |\n| tests/Browser/Storefront/InventoryTest.php | 4 |\n| tests/Browser/Storefront/TenantIsolationTest.php | 5 |\n| tests/Browser/Storefront/ResponsiveTest.php | 8 |\n| tests/Browser/Storefront/AccessibilityTest.php | 11 |\n\nPlus new tests/Pest.php helpers: `browserLoginAsCustomer`, `browserOpenAdminOrder`, `browserCreateFulfillment`, `switchBrowserTestDomainToStore`.\n\n## Real bug found and fixed\n- **resources/views/livewire/admin/discounts/form.blade.php**: a Blade `@if` directive inside the `<flux:input>` component tag's attribute list (unsupported by the component-tag compiler) silently broke rendering of the discount value input — the admin could never enter a discount value in a real browser (feature tests missed it because they set the Livewire property directly). Replaced with a bound `:max` attribute.\n\n## Spec-08 alignment fixes to the app (noted where specs 03/04 said otherwise)\n- Refund toast \"Refund issued\" → \"Refund processed\" (08 §4.6; spec 03's toast table said \"Refund issued\" — conflict resolved toward 08 per task mandate, no feature tests asserted the old string).\n- Shipping rate save toast → \"Shipping rate saved\"; tax save toast → \"Tax settings saved\"; \"Tax Settings\" secondary heading added to the taxes tab (08 §6.4–6.6; 03 only had a generic \"Settings saved\").\n- Customer register heading/button \"Register\" → \"Create an account\"/\"Create account\" (deviation from BOTH spec 04 §10.2 and 08 — genuine fix).\n- Account-nav dashboard tab \"Account\" → \"My Account\" (08 §10.1/10.4 expect visible \"My Account\"; 04 doesn't spec tab labels).\n- Address book now shows an \"Address saved\" status message after save (08 §10.10/10.11; previously the modal closed silently).\n\n## Tenant-isolation approach\nThe plugin's in-process HTTP server always reconstructs requests with host `127.0.0.1`, so a second hostname can't reach ResolveStore. Instead, `switchBrowserTestDomainToStore()` re-points the seeded `127.0.0.1` `store_domains` row at Acme Electronics and forgets the `store_domain:127.0.0.1` cache key — test 12.1 verifies isolation in **both** directions through the real domain-resolution path (fashion never shows electronics data; the electronics storefront never shows fashion data). Admin/search isolation is additionally proven via the admin search UIs returning \"No … match your filters.\" for store-2 data, and the customer order history excludes #5001/#5002.\n\n## Test-side adaptations (seeded reality, not weakened assertions)\nProduct list paginates 15/20 so 3.1 sorts by Title and 3.3 uses admin search; 17.2 supplies handle `faq-e2e` (FAQ page already seeded per spec 07); 17.3 clicks the seeded \"About Us\" title; 3.4 clicks the Active tab (app default filter is All). Notable gotcha: Playwright `fill()` doesn't trigger Alpine `x-model` on the entangled PDP quantity input — 11.4 uses click+Backspace+type and asserts the Alpine state is 15 before proving the over-stock increment errors.\n\n## Incident (resolved)\nWhile cleaning failure-screenshot artifacts I ran `rm -rf .../Tests`, which on the case-insensitive macOS filesystem deleted `tests/`. Fully recovered: committed files restored via `git checkout`, all 13 new files and Pest.php helpers rewritten from session content, and the **entire suite re-run afterwards: 593 passed (2054 assertions)** — final state verified green.\n\nspecs/progress.md: row 12 marked DONE (143 browser tests, full suite 593 passed) and a detailed part-2 log entry appended."}],"totalDurationMs":2976950,"totalTokens":420430,"totalToolUseCount":222,"usage":{"input_tokens":2,"cache_creation_input_tokens":229,"cache_read_input_tokens":418488,"output_tokens":1711,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":229},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1711,"cache_read_input_tokens":418488,"cache_creation_input_tokens":229,"cache_creation":{"ephemeral_5m_input_tokens":229,"ephemeral_1h_input_tokens":0},"type":"message"}],"speed":"standard"},"toolStats":{"readCount":46,"searchCount":0,"bashCount":103,"editFileCount":68,"linesAdded":2482,"linesRemoved":119,"otherToolCount":5}},"sourceToolAssistantUUID":"e09eb018-3f5e-4a5d-b8d3-a4fdf670bafd","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"6945d9b2-7cbc-4a16-b420-2deea7272387","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"6945d9b2-7cbc-4a16-b420-2deea7272387","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01XUV8CX2PsoCAvmYmcPy4Ud","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISsQMKYggOGAIqQERxH3e3f5h/iIjo6uY1sBDZ33jem5iPkbv2I4phsHnKqgFI45ZyrmYpxTguVMl1tGHmBCtpRlVyjss6TsgMR3EyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwyrtsqRl0kxwo65aMaDDrbYpE/aooqxE3mSCIwhK2VcASdrfDTMDOEMDwkTO9IkEV5Vb3CLqV9VFlACEszjaMjIYjUUU46nKhkd4sZKvwBOmwcoscIJBARWM4YhScYLwT9dZULWtQu7NtS+S4pCyz/OdVLUBoLA9+oDI9jmx4+N0ox1l6E+fKKnJkNSZcG6+Z3NP2uF62ZgoqbAjNSCw1axLTUR4t6qF+W0M1kpBxxFPtMrfFhytHLpBaxLjpRNK3zLya6Fnr8/vI3XtAfIJUoFvIXxnZMXl0aQg4uMT0lhjIV6n7+j1VTHDmJ6c9cBDi6j8ZCfiaajNFFEqHrxPYAbR62TUjACkXkNI8yIItxzou9BtVZrgslyiOzkiu25qTsQrxlTcWxm/y0R1JEOkRWR53s98sbNS0rjt7L3FHYS3CF/UNNFwk772auGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3708,"cache_read_input_tokens":169480,"output_tokens":248,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3708,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":248,"cache_read_input_tokens":169480,"cache_creation_input_tokens":3708,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3708},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGHVqyC5h7eqVFRmzu5","type":"assistant","uuid":"cae7f264-6441-4fd3-898b-3145bc94941c","timestamp":"2026-06-10T08:29:00.848Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cae7f264-6441-4fd3-898b-3145bc94941c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01XUV8CX2PsoCAvmYmcPy4Ud","type":"message","role":"assistant","content":[{"type":"text","text":"All 143 browser tests are in. Given that agent's recovery incident, I'm re-running the entire suite myself before committing."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3708,"cache_read_input_tokens":169480,"output_tokens":248,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3708,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":248,"cache_read_input_tokens":169480,"cache_creation_input_tokens":3708,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3708},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGHVqyC5h7eqVFRmzu5","type":"assistant","uuid":"27be7888-ab76-47f7-a239-4eccaf698def","timestamp":"2026-06-10T08:29:00.848Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"27be7888-ab76-47f7-a239-4eccaf698def","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01XUV8CX2PsoCAvmYmcPy4Ud","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_014qPnJuNSfzSc3TYuPp9xNT","name":"Bash","input":{"command":"git status --short | head -40; php artisan test --compact 2>&1 | tail -6","description":"Run full suite including browser tests","timeout":400000},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3708,"cache_read_input_tokens":169480,"output_tokens":248,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3708,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":248,"cache_read_input_tokens":169480,"cache_creation_input_tokens":3708,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3708},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGHVqyC5h7eqVFRmzu5","type":"assistant","uuid":"d6f92056-fdf4-44f0-92e1-a0b19e2d4962","timestamp":"2026-06-10T08:29:01.815Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d6f92056-fdf4-44f0-92e1-a0b19e2d4962","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_014qPnJuNSfzSc3TYuPp9xNT","type":"tool_result","content":" M app/Livewire/Admin/Orders/Show.php\n M app/Livewire/Admin/Settings/Shipping.php\n M app/Livewire/Admin/Settings/Taxes.php\n M app/Livewire/Storefront/Account/Addresses/Index.php\n M resources/views/components/storefront/account-nav.blade.php\n M resources/views/livewire/admin/discounts/form.blade.php\n M resources/views/livewire/admin/settings/taxes.blade.php\n M resources/views/livewire/storefront/account/addresses/index.blade.php\n M resources/views/livewire/storefront/account/auth/register.blade.php\n M specs/progress.md\n M tests/Pest.php\n?? tests/Browser/Admin/AnalyticsTest.php\n?? tests/Browser/Admin/CollectionManagementTest.php\n?? tests/Browser/Admin/CustomerManagementTest.php\n?? tests/Browser/Admin/DiscountManagementTest.php\n?? tests/Browser/Admin/OrderManagementTest.php\n?? tests/Browser/Admin/PageManagementTest.php\n?? tests/Browser/Admin/ProductManagementTest.php\n?? tests/Browser/Admin/SettingsTest.php\n?? tests/Browser/Storefront/AccessibilityTest.php\n?? tests/Browser/Storefront/CustomerAccountTest.php\n?? tests/Browser/Storefront/InventoryTest.php\n?? tests/Browser/Storefront/ResponsiveTest.php\n?? tests/Browser/Storefront/TenantIsolationTest.php\n  \u001b[90m    Pest\\PendingCalls\\TestCall::__destruct()\u001b[39m\n\n\n\n  \u001b[44;1m INFO \u001b[49;22m Warning: socket_create_listen(): unable to bind to given address [1]: Operation not permitted in /Users/fabianwesner/Herd/shop/vendor/pestphp/pest-plugin-browser/src/Support/Port.php on line 21.","is_error":false}]},"uuid":"b8cab5dc-fcc4-4a9f-8aac-33bd1d3533a9","timestamp":"2026-06-10T08:29:02.375Z","toolUseResult":{"stdout":" M app/Livewire/Admin/Orders/Show.php\n M app/Livewire/Admin/Settings/Shipping.php\n M app/Livewire/Admin/Settings/Taxes.php\n M app/Livewire/Storefront/Account/Addresses/Index.php\n M resources/views/components/storefront/account-nav.blade.php\n M resources/views/livewire/admin/discounts/form.blade.php\n M resources/views/livewire/admin/settings/taxes.blade.php\n M resources/views/livewire/storefront/account/addresses/index.blade.php\n M resources/views/livewire/storefront/account/auth/register.blade.php\n M specs/progress.md\n M tests/Pest.php\n?? tests/Browser/Admin/AnalyticsTest.php\n?? tests/Browser/Admin/CollectionManagementTest.php\n?? tests/Browser/Admin/CustomerManagementTest.php\n?? tests/Browser/Admin/DiscountManagementTest.php\n?? tests/Browser/Admin/OrderManagementTest.php\n?? tests/Browser/Admin/PageManagementTest.php\n?? tests/Browser/Admin/ProductManagementTest.php\n?? tests/Browser/Admin/SettingsTest.php\n?? tests/Browser/Storefront/AccessibilityTest.php\n?? tests/Browser/Storefront/CustomerAccountTest.php\n?? tests/Browser/Storefront/InventoryTest.php\n?? tests/Browser/Storefront/ResponsiveTest.php\n?? tests/Browser/Storefront/TenantIsolationTest.php\n  \u001b[90m    Pest\\PendingCalls\\TestCall::__destruct()\u001b[39m\n\n\n\n  \u001b[44;1m INFO \u001b[49;22m Warning: socket_create_listen(): unable to bind to given address [1]: Operation not permitted in /Users/fabianwesner/Herd/shop/vendor/pestphp/pest-plugin-browser/src/Support/Port.php on line 21.","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"d6f92056-fdf4-44f0-92e1-a0b19e2d4962","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b8cab5dc-fcc4-4a9f-8aac-33bd1d3533a9","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PHobkepCYedGv9dpjxCwcu","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISrgMKYggOGAIqQNxBRM7G1Gu4F1H7jG2JrHzZBXNfL4XOaZBjFTXUGBxqnE8IyqHu58Y5fDPpZBoIblThxLiwrA8Qrx55KG+zpWkyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxx5q1py94rNIhOb8IaDIRf8AydEKoXFsCb7yIwKMCRjM8gLGx9+5M9dNueNfEOjviGhXTuNesMvzbcHIwQ4nAzM27tTkx9neIYCKJbKvkBhjinW5IymBkGujXuuzNoHhK1ZC5+ar3OmpVeG/vaIuMXt0vUCabsOhSPec0qPIxEBGGZeFSVShpKcS9yysux5TELExY3Ok3+igNlPXeyH99jHrDkLkNyuV7cST5G2GXF2I9ri1LzopZvgIVhdcsfIoMITgevA4Dv+f12G1MK2DUacfpSwDn5knplToq2kg3J7amCLdUh86rTkbMn08c3jFi9W0QEYTr8boiiNJBe2jEBFwJlrAJBUqWXDv+o+P0ZB8zbvYgiXKKGRGYbY5n0+ej13GybthyLST2C1NYc6CjA25pEUQL2GZUMUf8kN3vKfiZTPB0ugoJDGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":945,"cache_read_input_tokens":173188,"output_tokens":313,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":945,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":313,"cache_read_input_tokens":173188,"cache_creation_input_tokens":945,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":945},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGJ6FvG1MtvNphaLw6E","type":"assistant","uuid":"d87eb663-e853-41ae-be7b-70bc6991a010","timestamp":"2026-06-10T08:29:11.258Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d87eb663-e853-41ae-be7b-70bc6991a010","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PHobkepCYedGv9dpjxCwcu","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS+gIKYwgOGAIqQFvCExfqP1ieKQc9kX4KRANKQIO2mTjwc7TVRdRP5uw4d5n9MR+LQYjcO2bPb/d0fQqI2fg30qKUlwqcCqSN5c8yDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMx7iosLoZeDkhYL+mGgyGWeizpdGslccUl28iMMXpKryXqag7TWP2l34XXV3mkOc0NpjHdG2Ij6I3GRceqNEm8HcjLZey8nlmAONIayrEATzT242rDjbQfqQE+o8Bmx06+75Lj+cB2HogKe7PjZzCAyuhkzxp9B3xfkrB+dgQF0XY22PJ9D2Kl4JwgdPvbGWOU2Q/J0LGMQhfcQ93/oT6wTCYnZZQal+SjKnb6WR5ARDBfmRhMBfBHHrhj7LijWqqiDZExQyk8+2YrYhuJ5cL2Pf8MmXa/uvxef4oJzyCrGTsOnOutQx/8l+HplJRYOcVlRqlCAnOh91legh24O2npc+rz7UupocVnYXvb1yOcrQpuSgYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":945,"cache_read_input_tokens":173188,"output_tokens":313,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":945,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":313,"cache_read_input_tokens":173188,"cache_creation_input_tokens":945,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":945},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGJ6FvG1MtvNphaLw6E","type":"assistant","uuid":"c7ef866e-4a0c-4785-8fdd-a7d7e5744b97","timestamp":"2026-06-10T08:29:11.263Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c7ef866e-4a0c-4785-8fdd-a7d7e5744b97","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PHobkepCYedGv9dpjxCwcu","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01HzESyrE7V2eb6pNHCeYyWv","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -5","description":"Run full suite unsandboxed (browser tests bind local sockets)","timeout":600000,"dangerouslyDisableSandbox":true},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":945,"cache_read_input_tokens":173188,"output_tokens":313,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":945,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":313,"cache_read_input_tokens":173188,"cache_creation_input_tokens":945,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":945},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGJ6FvG1MtvNphaLw6E","type":"assistant","uuid":"1669791d-9c3c-4fa4-b997-8bd171901955","timestamp":"2026-06-10T08:29:12.464Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1669791d-9c3c-4fa4-b997-8bd171901955","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01HzESyrE7V2eb6pNHCeYyWv","type":"tool_result","content":"  .............................................................\n\n  Tests:    593 passed (2054 assertions)\n  Duration: 151.75s","is_error":false}]},"uuid":"cf1a238d-905c-42c1-80a5-0d16764cb671","timestamp":"2026-06-10T08:31:44.573Z","toolUseResult":{"stdout":"  .............................................................\n\n  Tests:    593 passed (2054 assertions)\n  Duration: 151.75s","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false,"dangerouslyDisableSandbox":true},"sourceToolAssistantUUID":"1669791d-9c3c-4fa4-b997-8bd171901955","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cf1a238d-905c-42c1-80a5-0d16764cb671","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_019yZh1ZihG2g63H9s9ofrGo","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TZstP26E7pSk7LHUarvquk","name":"Bash","input":{"command":"git add -A && git commit -q -m \"Phase 12b: Browser suites 3-6, 10-18 (83 tests, 143 total); fix discount value input rendering bug, spec 08 label alignments\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline -1","description":"Commit browser tests part 2"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":354,"cache_read_input_tokens":174133,"output_tokens":184,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":354,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":184,"cache_read_input_tokens":174133,"cache_creation_input_tokens":354,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":354},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGW3aGoAbEKrDAL4z6C","type":"assistant","uuid":"92d86ab9-267e-4c66-8547-c485987195f7","timestamp":"2026-06-10T08:31:50.587Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"92d86ab9-267e-4c66-8547-c485987195f7","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TZstP26E7pSk7LHUarvquk","type":"tool_result","content":"f9e5c73e Phase 12b: Browser suites 3-6, 10-18 (83 tests, 143 total); fix discount value input rendering bug, spec 08 label alignments","is_error":false}]},"uuid":"bd22ce19-d966-4769-b053-fd79a6c46527","timestamp":"2026-06-10T08:31:50.752Z","toolUseResult":{"stdout":"f9e5c73e Phase 12b: Browser suites 3-6, 10-18 (83 tests, 143 total); fix discount value input rendering bug, spec 08 label alignments","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"92d86ab9-267e-4c66-8547-c485987195f7","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"bd22ce19-d966-4769-b053-fd79a6c46527","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013LAi11M55VPow4ok3N3Eew","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":250,"cache_read_input_tokens":174487,"output_tokens":1483,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":250,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1483,"cache_read_input_tokens":174487,"cache_creation_input_tokens":250,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":250},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGWVo7738LCWXrAEYr4","type":"assistant","uuid":"4c6c134f-4052-4dbc-8439-e326d8856eed","timestamp":"2026-06-10T08:32:09.934Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4c6c134f-4052-4dbc-8439-e326d8856eed","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013LAi11M55VPow4ok3N3Eew","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISgAQKYwgOGAIqQDEfX07mwgD/orYVPWg/vq6QkU5jmMfTNocoSFgS/3Grb0ktI4GlIUQO5RD2bDwWWOXjBGQfyuoaFvsvWDSeujMyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMNvko9wHY1MGItD0IGgzKLb16BuE5zjCoRdsiMCH9ZK6W5EDvGEbsk9AmQg4SYHMfitQcqmZeNCBdPqzySzeMjRTPrabBargmzOUrkSrKAkgcwQahrCmIU/AV/D81Hu+98qPFQqDKJRXOkfSnoYEp/nXwln49ixkh+AL6Nu0ZEI+slFMaIcKfxn3I2iaxZqdElf4F/CTRs7VQOYB1OeOh0sG8Pb4QrN5W+3PcQTfbRa9Ri+lzllKBnB+oDCFWjvoD2uCL9eH4WSPdw+8i5RV0N1cJazN3RrAyX1o7fcipO+/0NbFLIVEw9Ob2RPcHcznIALOCHxolZrcOFlsjAVi4Bs5AQ1E7AAuXDe2Wd4ss6KK/VVhtrl3OcTCqByGTAAv+MykQQeLXxgv+8G9esyEjMWwSUWHmfSCa0d++U0pu1FEQx8eSBAe6ui9gJNYZH/5uLjwPFppvuIOjeWk5LEEhx9VD+E5z0yJn+U6SP530lmh0ZWX6G+9d6eEVYxgOi4YooFhqNGSVE8C7tDvFMOyz7wrRYy+mb0YcYBgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":250,"cache_read_input_tokens":174487,"output_tokens":1483,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":250,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1483,"cache_read_input_tokens":174487,"cache_creation_input_tokens":250,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":250},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGWVo7738LCWXrAEYr4","type":"assistant","uuid":"60e712eb-354d-4a34-9dd3-d77c8c80c6af","timestamp":"2026-06-10T08:32:09.935Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"60e712eb-354d-4a34-9dd3-d77c8c80c6af","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013LAi11M55VPow4ok3N3Eew","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01AXvW9iCK64m5GtMqo1ZVW5","name":"Bash","input":{"command":"php artisan optimize:clear >/dev/null 2>&1; php artisan migrate:fresh --seed --force 2>&1 | tail -3 && npm run build 2>&1 | tail -2","description":"Fresh seed dev database and rebuild assets"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":250,"cache_read_input_tokens":174487,"output_tokens":1483,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":250,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1483,"cache_read_input_tokens":174487,"cache_creation_input_tokens":250,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":250},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGWVo7738LCWXrAEYr4","type":"assistant","uuid":"7a3ef17e-be27-40e4-bae2-9f884a7d07fe","timestamp":"2026-06-10T08:32:11.278Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7a3ef17e-be27-40e4-bae2-9f884a7d07fe","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013LAi11M55VPow4ok3N3Eew","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01GuiA6T1HA5oZPU5isARVaM","name":"ToolSearch","input":{"query":"select:mcp__playwright__browser_navigate,mcp__playwright__browser_snapshot,mcp__playwright__browser_click,mcp__playwright__browser_type,mcp__playwright__browser_take_screenshot,mcp__playwright__browser_fill_form,mcp__playwright__browser_select_option,mcp__playwright__browser_console_messages,mcp__playwright__browser_press_key,mcp__playwright__browser_wait_for","max_results":12},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":250,"cache_read_input_tokens":174487,"output_tokens":1483,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":250,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1483,"cache_read_input_tokens":174487,"cache_creation_input_tokens":250,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":250},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGWVo7738LCWXrAEYr4","type":"assistant","uuid":"91209be2-8daf-4f46-977c-b63904495951","timestamp":"2026-06-10T08:32:12.901Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7a3ef17e-be27-40e4-bae2-9f884a7d07fe","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01AXvW9iCK64m5GtMqo1ZVW5","type":"tool_result","content":"  Database\\Seeders\\AppSeeder ......................................... RUNNING  \n  Database\\Seeders\\AppSeeder ....................................... 7 ms DONE  \n\npublic/build/assets/app-l0sNRNKZ.js     0.00 kB │ gzip:  0.02 kB\n✓ built in 433ms","is_error":false}]},"uuid":"0d35ed8a-25ae-4a33-af03-e104c2ba8bac","timestamp":"2026-06-10T08:32:17.660Z","toolUseResult":{"stdout":"  Database\\Seeders\\AppSeeder ......................................... RUNNING  \n  Database\\Seeders\\AppSeeder ....................................... 7 ms DONE  \n\npublic/build/assets/app-l0sNRNKZ.js     0.00 kB │ gzip:  0.02 kB\n✓ built in 433ms","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"7a3ef17e-be27-40e4-bae2-9f884a7d07fe","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"91209be2-8daf-4f46-977c-b63904495951","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01GuiA6T1HA5oZPU5isARVaM","content":[{"type":"tool_reference","tool_name":"mcp__playwright__browser_navigate"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_snapshot"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_click"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_type"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_take_screenshot"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_fill_form"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_select_option"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_console_messages"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_press_key"},{"type":"tool_reference","tool_name":"mcp__playwright__browser_wait_for"}]}]},"uuid":"ea2a5e37-3f5e-42bc-9b33-d84098d4252b","timestamp":"2026-06-10T08:32:17.662Z","toolUseResult":{"matches":["mcp__playwright__browser_navigate","mcp__playwright__browser_snapshot","mcp__playwright__browser_click","mcp__playwright__browser_type","mcp__playwright__browser_take_screenshot","mcp__playwright__browser_fill_form","mcp__playwright__browser_select_option","mcp__playwright__browser_console_messages","mcp__playwright__browser_press_key","mcp__playwright__browser_wait_for"],"query":"select:mcp__playwright__browser_navigate,mcp__playwright__browser_snapshot,mcp__playwright__browser_click,mcp__playwright__browser_type,mcp__playwright__browser_take_screenshot,mcp__playwright__browser_fill_form,mcp__playwright__browser_select_option,mcp__playwright__browser_console_messages,mcp__playwright__browser_press_key,mcp__playwright__browser_wait_for","total_deferred_tools":64},"sourceToolAssistantUUID":"91209be2-8daf-4f46-977c-b63904495951","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ea2a5e37-3f5e-42bc-9b33-d84098d4252b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01G2QLnsHMVBzjvAL665Gf2e","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIStQkKYggOGAIqQHG3eS4/7to9ge0pL4Ov0IkMsqHVEoBP63hi8PDQ4ftWVDK/CgvBRZNLU4Hy548eH8qvzLg9dRubyfE+cWVx5osyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwc6ui9jFpMQnPJgAkaDB3+dSCSTUDmfKI5WiIwEBGu1zjnC4zmn0+zntAQtDj0yuoDn8m1GXoTzx692+KT22Nv2a7OZchTamch1v3tKoAI/JKJFTtG6JWqks+000cMJFDX6/56eMx5o1n1ESMzW1VJDpSD61xsuHY2dk/avVLdTEGGEVmrNaPnqB/sXCYxwRFnF/yFgDHesxr3PeKpRyUkNVrqk7LzzfOYDX8a/psT8j3lVuAl+WBHuMtsIfU1lEWhvBuoaS92RGMqSKmz0hTowss3UmOA7UsX80/PaLGO2bMrzi5R191rz3vXacC9iP+AMif/laU1xKshHolmfmNYHxV8rFa+bANrv+rVvGkaQ4ozgvNxjf9LsdaZxiNRYJSPuqJAKv5mhpxrBLLV6WKAHCFYU5pdXLY/Mov/gBwQd0mN0cxxAQTXl/ROBQn+74EUM2R7+mDDmUK1EhPQAboUzqMPTFx+MPRTfkyt9EjUo6M/ZpDPujE5KRhEbSRX0biAcrkSWvtmI60m/XCiN753UWwcccCg3XO6UoTLAggOkqyHMuxfnkeosBLWZZ8WspuCeCT8tT0OPg0LhDKhs9OkOTtjDJsI+izcA9xceZzNnT/tsq4XyP6QNCsxyQybT0BFOfUHmBaKt5T52uYzcwPDUxWJq/t3bQFhV+Hsa50+Rm1QS64UXGUJPjYOfk4yLhdfzf7FEU7g8Kvg6ubeN1X8INyrJ+RNl3I2zuTUAf998Iim885m+lmW+jmJIL3QH62Emz/l17TMaqeiaPgmuwPHXPYtONRj3DX8wmUOcXugBY9vGE0+ZBBNJpRIqak46WU/FYy0ref5NnhP4dVlLf1KoReRT1TcJIxDF4lrytUVU9rsmxcbtT7Sxd2vV1FXQD0ilIH6nBOIr0LBa3UtyNreh2mHuX/mV52FpbgBw2p6hiFXskb6TsPRsQQvDR3Qjh90AmRfqwcDkLJYzFHXIhUJSTN8DbSRhOg1yse0VcVwgse7aI6njEQ+Uaw1/y6UmwqJtRy8wS/eH+ZzsUMEQBDX7r5pNcddmNmTcr3MQLJKiX1Qu//7eB3+K/cJiTW4ZRvMGJJRRM8dZfBocPrCAvUvrgUWAj1+mVK2Fwo2J7OA4Ig82kbUdtDn3wIWrNqbXTtjx7kRyJPulmvAuulI2N1AgIRWMGX5VipQNlfUxpUJlgKS7OzJwqH9hYw+K9AzCYKQZIaVf7sk1UPc0opv7r2Qo3DnrzKCmrzXc6TaE1asbWPl+hAy4fxcQFEF9bu/U0czbtoZeS4CNkRATbHDa8qNzyJIi4VDibzTfrjJMi6pDx9UBdGeu/4C+yGui3A0aChSXsJK/tqK117Y71o7dcKGgfWxZUtQKLDDOsEirzKJuD73yOs1IzMXe+Fyg+QTNWlKEK2Ouqh5I6w0y0NdItYb+5vdsDA1jd6nz/B3zAHORUj/6Q1OdUTAg+VHYQ1RPBgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":179215,"cache_read_input_tokens":0,"output_tokens":448,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":179215,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":448,"cache_read_input_tokens":0,"cache_creation_input_tokens":179215,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":179215},"type":"message"}],"speed":"standard"},"diagnostics":{"cache_miss_reason":{"type":"tools_changed","cache_missed_input_tokens":147484}}},"requestId":"req_011CbuGYV5FkLVQXPMHnbQHg","type":"assistant","uuid":"aa6e9051-ab92-4df6-84b8-5de3c88df218","timestamp":"2026-06-10T08:32:30.655Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"aa6e9051-ab92-4df6-84b8-5de3c88df218","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01G2QLnsHMVBzjvAL665Gf2e","type":"message","role":"assistant","content":[{"type":"text","text":"Build and seed are clean. Starting the live Playwright walkthrough — customer journey first."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":179215,"cache_read_input_tokens":0,"output_tokens":448,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":179215,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":448,"cache_read_input_tokens":0,"cache_creation_input_tokens":179215,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":179215},"type":"message"}],"speed":"standard"},"diagnostics":{"cache_miss_reason":{"type":"tools_changed","cache_missed_input_tokens":147484}}},"requestId":"req_011CbuGYV5FkLVQXPMHnbQHg","type":"assistant","uuid":"8d8309e9-8a75-4eba-9f8e-e4e7cb3c8b46","timestamp":"2026-06-10T08:32:30.655Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8d8309e9-8a75-4eba-9f8e-e4e7cb3c8b46","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01G2QLnsHMVBzjvAL665Gf2e","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01U6MH9VBWjFAEukj8LNn1GW","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":179215,"cache_read_input_tokens":0,"output_tokens":448,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":179215,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":448,"cache_read_input_tokens":0,"cache_creation_input_tokens":179215,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":179215},"type":"message"}],"speed":"standard"},"diagnostics":{"cache_miss_reason":{"type":"tools_changed","cache_missed_input_tokens":147484}}},"requestId":"req_011CbuGYV5FkLVQXPMHnbQHg","type":"assistant","uuid":"190156a7-78a5-4260-a8e5-e39fb64ab91a","timestamp":"2026-06-10T08:32:30.736Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"190156a7-78a5-4260-a8e5-e39fb64ab91a","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01U6MH9VBWjFAEukj8LNn1GW","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/');\n```\n### Page\n- Page URL: http://shop.test/\n- Page Title: Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-32-30-919Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-32-30-740Z.log#L1"}]}]},"uuid":"339301f4-19f3-405c-a6fa-a7fdbeda4fe3","timestamp":"2026-06-10T08:32:30.924Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/');\n```\n### Page\n- Page URL: http://shop.test/\n- Page Title: Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-32-30-919Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-32-30-740Z.log#L1"}],"sourceToolAssistantUUID":"190156a7-78a5-4260-a8e5-e39fb64ab91a","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"339301f4-19f3-405c-a6fa-a7fdbeda4fe3","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"339301f4-19f3-405c-a6fa-a7fdbeda4fe3","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01DHqo4d7nQSsWsqzA2waYDe","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PoEBepErP31gDgonX2okA2","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/01-home.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":604,"cache_read_input_tokens":179215,"output_tokens":145,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":604,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":145,"cache_read_input_tokens":179215,"cache_creation_input_tokens":604,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":604},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGZTZkAph4rPbqfjn9b","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"cb7f033e-0010-4687-85f9-2a94bce1c2c4","timestamp":"2026-06-10T08:32:35.599Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cb7f033e-0010-4687-85f9-2a94bce1c2c4","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01DHqo4d7nQSsWsqzA2waYDe","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MvKFJyWx7n37tEWWo8rQPE","name":"mcp__playwright__browser_console_messages","input":{"level":"error"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":604,"cache_read_input_tokens":179215,"output_tokens":145,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":604,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":145,"cache_read_input_tokens":179215,"cache_creation_input_tokens":604,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":604},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGZTZkAph4rPbqfjn9b","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"5819c62d-b72b-4dbc-96a6-1475bc1e40ea","timestamp":"2026-06-10T08:32:35.725Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cb7f033e-0010-4687-85f9-2a94bce1c2c4","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: ENOENT: no such file or directory, open '/Users/fabianwesner/Herd/shop/review/01-home.png'","is_error":true,"tool_use_id":"toolu_01PoEBepErP31gDgonX2okA2"}]},"uuid":"576fbe6a-50f9-4f86-a3f6-c1b4699fcf6c","timestamp":"2026-06-10T08:32:35.732Z","toolUseResult":"Error: ### Error\nError: ENOENT: no such file or directory, open '/Users/fabianwesner/Herd/shop/review/01-home.png'","sourceToolAssistantUUID":"cb7f033e-0010-4687-85f9-2a94bce1c2c4","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5819c62d-b72b-4dbc-96a6-1475bc1e40ea","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MvKFJyWx7n37tEWWo8rQPE","type":"tool_result","content":[{"type":"text","text":"### Result\nTotal messages: 3 (Errors: 0, Warnings: 0)\nReturning 0 messages for level \"error\"\n"}]}]},"uuid":"d807d190-1703-450b-9b94-21b663b8972d","timestamp":"2026-06-10T08:32:35.738Z","toolUseResult":[{"type":"text","text":"### Result\nTotal messages: 3 (Errors: 0, Warnings: 0)\nReturning 0 messages for level \"error\"\n"}],"sourceToolAssistantUUID":"5819c62d-b72b-4dbc-96a6-1475bc1e40ea","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d807d190-1703-450b-9b94-21b663b8972d","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"194903da-851b-4c97-bc11-e66001ffbe99","timestamp":"2026-06-10T08:32:35.780Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"194903da-851b-4c97-bc11-e66001ffbe99","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_011MapJi1aymLMfU48w8hhQX","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Ay5QDhyrPZqoRNeojccMfY","name":"Bash","input":{"command":"mkdir -p /Users/fabianwesner/Herd/shop/review","description":"Create review screenshots directory"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":318,"cache_read_input_tokens":179819,"output_tokens":100,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":318,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":100,"cache_read_input_tokens":179819,"cache_creation_input_tokens":318,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":318},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGZpJfy2JrGw8sQ4V2d","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"4c9eca69-d622-4b13-8bac-75dde8ff373a","timestamp":"2026-06-10T08:32:40.979Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4c9eca69-d622-4b13-8bac-75dde8ff373a","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Ay5QDhyrPZqoRNeojccMfY","type":"tool_result","content":"(Bash completed with no output)","is_error":false}]},"uuid":"fa1ba2b8-fab9-4414-bf91-e95087448fa4","timestamp":"2026-06-10T08:32:41.050Z","toolUseResult":{"stdout":"","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":true},"sourceToolAssistantUUID":"4c9eca69-d622-4b13-8bac-75dde8ff373a","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"fa1ba2b8-fab9-4414-bf91-e95087448fa4","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PAYFdLftqPXj33CDrMmYnh","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MWGFyVGNhH6iazquU8gZRx","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/01-home.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":244,"cache_read_input_tokens":180137,"output_tokens":89,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":244,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":89,"cache_read_input_tokens":180137,"cache_creation_input_tokens":244,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":244},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGaCrF7L2VJvTgtEHwr","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"d32fc11e-7b87-40d5-aa40-0910ba20846f","timestamp":"2026-06-10T08:32:45.083Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d32fc11e-7b87-40d5-aa40-0910ba20846f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MWGFyVGNhH6iazquU8gZRx","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/01-home.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/01-home.png\nawait page.screenshot({\n  path: 'review/01-home.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"ace6f0cb-017a-461c-93a5-30e8eec4e2e7","timestamp":"2026-06-10T08:32:45.216Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/01-home.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/01-home.png\nawait page.screenshot({\n  path: 'review/01-home.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"d32fc11e-7b87-40d5-aa40-0910ba20846f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ace6f0cb-017a-461c-93a5-30e8eec4e2e7","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_017iLBXmDyu8AVCrBZZx5kcv","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01DY5kmSvKFKhFPF5w9GkT8w","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/review/01-home.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":196,"cache_read_input_tokens":180381,"output_tokens":72,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":196,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":72,"cache_read_input_tokens":180381,"cache_creation_input_tokens":196,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":196},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGaX57E1JHGWpRT1KaU","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"c455efe1-7a36-40ba-a868-119e28893bc9","timestamp":"2026-06-10T08:32:49.648Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c455efe1-7a36-40ba-a868-119e28893bc9","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01DY5kmSvKFKhFPF5w9GkT8w","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"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8cM//MNf/MVf/Fmf9VnAox/96O/+7u9+rdd6rWEYjh07duzYMaDrur7vZ7MZ8C3f8i033njj93//93/nd35nRLz/+7//l3zJlwDv937vB3zBF3zBR33UR21vb3/oh37oF3/xFwMR8fmf//kf93Ef99Vf/dW/8Ru/8f3f//0nTpzY3t4GPuIjPqLruq/92q/9xE/8xIh4uZd7ua/6qq96zGMes7+/f+LEie3tbUASsFgsjh07Vmvlqquu+p8MANnmqquu+h8jMyMCWK/X586dq7WeOXMmIoDMPDo6KqUsFgsuWy6X0zRtbm5KkgTceeed0zTdcMMNXddlZkS88zu/8y/90i/93d/93S233PLUpz71+PHjp06dAmxLAlprh4eHGxsbtdZ77713tVrdfPPNEZGZEdFae93Xfd0777zzz/7sz06cOGFbEgBkZkRk5h133LGxsXH69GkgMyVJaq3deeedkm688caIyMyIODo6ysytra1pmo6Ojubzed/3XHbp0qWzZ8+eOnXqxIkTQGZGBHB0dHTfffedOnVqe3sbsA1IWq1Wd955587OzpkzZ/b392uti8WCy9br9d133933/Q033ABkZkQcHBxI2tzc5LL1ej0Mw2KxqLVy1VVX/c9weHhYSqm12gYASev1Wra56qqr/ifJTCAiuF9rLSIk8YK11kop3K+1FhGS3vmd3/mXf/mX//AP//Cxj30sAGSmJEk8J9uSuCwzbZdSfvmXf/lN3uRNPu3TPu3zP//zW2ulFB4gMyOC+2VmRACttVIK98vMiOAFsG07IgAgMyVJAjIzIgAgMyVJAjIzInh+WmulFO6XmRHBVVdd9b/B4eFhKaXWahsAJK3X638EcQXSjXBLSBcAAAAASUVORK5CYII=","media_type":"image/png"}}]}]},"uuid":"4a683a39-0981-403c-9d95-8fc9fc3a0f3c","timestamp":"2026-06-10T08:32:49.747Z","toolUseResult":{"type":"image","file":{"base64":"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8cM//MNf/MVf/Fmf9VnAox/96O/+7u9+rdd6rWEYjh07duzYMaDrur7vZ7MZ8C3f8i033njj93//93/nd35nRLz/+7//l3zJlwDv937vB3zBF3zBR33UR21vb3/oh37oF3/xFwMR8fmf//kf93Ef99Vf/dW/8Ru/8f3f//0nTpzY3t4GPuIjPqLruq/92q/9xE/8xIh4uZd7ua/6qq96zGMes7+/f+LEie3tbUASsFgsjh07Vmvlqquu+p8MANnmqquu+h8jMyMCWK/X586dq7WeOXMmIoDMPDo6KqUsFgsuWy6X0zRtbm5KkgTceeed0zTdcMMNXddlZkS88zu/8y/90i/93d/93S233PLUpz71+PHjp06dAmxLAlprh4eHGxsbtdZ77713tVrdfPPNEZGZEdFae93Xfd0777zzz/7sz06cOGFbEgBkZkRk5h133LGxsXH69GkgMyVJaq3deeedkm688caIyMyIODo6ysytra1pmo6Ojubzed/3XHbp0qWzZ8+eOnXqxIkTQGZGBHB0dHTfffedOnVqe3sbsA1IWq1Wd955587OzpkzZ/b392uti8WCy9br9d133933/Q033ABkZkQcHBxI2tzc5LL1ej0Mw2KxqLVy1VVX/c9weHhYSqm12gYASev1Wra56qqr/ifJTCAiuF9rLSIk8YK11kop3K+1FhGS3vmd3/mXf/mX//AP//Cxj30sAGSmJEk8J9uSuCwzbZdSfvmXf/lN3uRNPu3TPu3zP//zW2ulFB4gMyOC+2VmRACttVIK98vMiOAFsG07IgAgMyVJAjIzIgAgMyVJAjIzInh+WmulFO6XmRHBVVdd9b/B4eFhKaXWahsAJK3X638EcQXSjXBLSBcAAAAASUVORK5CYII=","type":"image/png","originalSize":309877}},"sourceToolAssistantUUID":"c455efe1-7a36-40ba-a868-119e28893bc9","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"4a683a39-0981-403c-9d95-8fc9fc3a0f3c","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"4a683a39-0981-403c-9d95-8fc9fc3a0f3c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Y8JUJ1QdwvHvGKzbsAnoHM","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISjQMKYggOGAIqQDhIuH9enRYTNAIM6ognf8Tm5VOQ7CHX8AyWG5ENg7ozk8y9V94doCSKUGwgsLdD+TIvRjHQLCGnyGW0pAbnX3MyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxqMNGy8NLej9E2mX8aDAzkIwfOo/FH0CWUgiIwDMX3Yu7gGGhqgkKcL883DLki1G9mhgu/BIKLFr4YqNg1wuK4ns1s0XAQtirwce0PKtgBGyamX1HTHWY8fymR3HSe6+1OI6QS+I0zIeIvJcWRzOkcbBn/Bw0w1Oe033gXGhG3cVfrTeHcZ44M8N80Va9vEB2jpY6FEBhEQpZhBMzicbeP4tjTBw4yh80mTLfA/2t/wJFAaa+EH0ODJOzfHBcZBakMhF1At142CQtX/55m5nqTpY7kSblwKHmAKmiPO7ZGEf9wByN0H71hRU8BoD7S/b1oIfRBMMZcRRjyOl82b5TcQ3tXDCAEXjT7dYHBGAPp7w/Sueww09iZFiP21LAwCRvJAypxHF3vGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":496,"cache_read_input_tokens":180577,"output_tokens":201,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":496,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":201,"cache_read_input_tokens":180577,"cache_creation_input_tokens":496,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":496},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGarB4iPCRybkbw3jfR","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"2779cb4f-bb5f-4ad5-8bb0-9e812aebd553","timestamp":"2026-06-10T08:32:55.990Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2779cb4f-bb5f-4ad5-8bb0-9e812aebd553","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Y8JUJ1QdwvHvGKzbsAnoHM","type":"message","role":"assistant","content":[{"type":"text","text":"Home page renders correctly. Browsing to the T-Shirts collection."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":496,"cache_read_input_tokens":180577,"output_tokens":201,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":496,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":201,"cache_read_input_tokens":180577,"cache_creation_input_tokens":496,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":496},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGarB4iPCRybkbw3jfR","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"4e267d26-c7ab-4831-a9d5-b4cbc35fc28d","timestamp":"2026-06-10T08:32:55.999Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4e267d26-c7ab-4831-a9d5-b4cbc35fc28d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Y8JUJ1QdwvHvGKzbsAnoHM","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011UPWorGhNU5e7SbdE7PViJ","name":"mcp__playwright__browser_click","input":{"element":"T-Shirts nav link","target":"a:has-text(\"T-Shirts\")"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":496,"cache_read_input_tokens":180577,"output_tokens":201,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":496,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":201,"cache_read_input_tokens":180577,"cache_creation_input_tokens":496,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":496},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGarB4iPCRybkbw3jfR","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"71c4eef3-f5fe-4c48-8ea7-417fb6c93e9c","timestamp":"2026-06-10T08:32:56.589Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"71c4eef3-f5fe-4c48-8ea7-417fb6c93e9c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('a:has-text(\"T-Shirts\")') resolved to 4 elements:\n    1) <a href=\"/collections/t-shirts\" class=\"rounded-lg px-3 py-2 text-sm font-medium text-zinc-700 transition hover:bg-zinc-100 hover:text-zinc-900 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 dark:text-zinc-300 dark:hover:bg-zinc-800 dark:hover:text-white\">↵                            T-Shirts↵           …</a> aka getByLabel('Main navigation').getByRole('link', { name: 'T-Shirts' })\n    2) <a href=\"/collections/t-shirts\" class=\"block rounded-lg px-3 py-3 text-base font-medium text-zinc-800 transition hover:bg-zinc-100 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 dark:text-zinc-200 dark:hover:bg-zinc-800\">↵                                T-Shirts↵       …</a> aka getByText('T-Shirts').nth(1)\n    3) <a href=\"http://shop.test/collections/t-shirts\" class=\"group relative block overflow-hidden rounded-xl focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 focus-visible:ring-offset-2 dark:focus-visible:ring-offset-zinc-950\">…</a> aka getByRole('link', { name: 'T-Shirts Shop now →' })\n    4) <a href=\"/collections/t-shirts\" class=\"text-sm text-zinc-600 transition hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white\">↵                                T-Shirts↵       …</a> aka getByRole('contentinfo').getByRole('link', { name: 'T-Shirts' })\n\nCall log:\n\u001b[2m  - waiting for locator('a:has-text(\"T-Shirts\")')\u001b[22m","is_error":true,"tool_use_id":"toolu_011UPWorGhNU5e7SbdE7PViJ"}]},"uuid":"d345ce30-2844-44bd-9745-88b93b779f20","timestamp":"2026-06-10T08:32:56.623Z","toolUseResult":"Error: ### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('a:has-text(\"T-Shirts\")') resolved to 4 elements:\n    1) <a href=\"/collections/t-shirts\" class=\"rounded-lg px-3 py-2 text-sm font-medium text-zinc-700 transition hover:bg-zinc-100 hover:text-zinc-900 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 dark:text-zinc-300 dark:hover:bg-zinc-800 dark:hover:text-white\">↵                            T-Shirts↵           …</a> aka getByLabel('Main navigation').getByRole('link', { name: 'T-Shirts' })\n    2) <a href=\"/collections/t-shirts\" class=\"block rounded-lg px-3 py-3 text-base font-medium text-zinc-800 transition hover:bg-zinc-100 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 dark:text-zinc-200 dark:hover:bg-zinc-800\">↵                                T-Shirts↵       …</a> aka getByText('T-Shirts').nth(1)\n    3) <a href=\"http://shop.test/collections/t-shirts\" class=\"group relative block overflow-hidden rounded-xl focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 focus-visible:ring-offset-2 dark:focus-visible:ring-offset-zinc-950\">…</a> aka getByRole('link', { name: 'T-Shirts Shop now →' })\n    4) <a href=\"/collections/t-shirts\" class=\"text-sm text-zinc-600 transition hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white\">↵                                T-Shirts↵       …</a> aka getByRole('contentinfo').getByRole('link', { name: 'T-Shirts' })\n\nCall log:\n\u001b[2m  - waiting for locator('a:has-text(\"T-Shirts\")')\u001b[22m","sourceToolAssistantUUID":"71c4eef3-f5fe-4c48-8ea7-417fb6c93e9c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d345ce30-2844-44bd-9745-88b93b779f20","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01XgedqRSuMR58jhZVyuvUnK","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Qji8hTw7tm6gBvb9EAkdtH","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/collections/t-shirts"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":909,"cache_read_input_tokens":181073,"output_tokens":72,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":909,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":72,"cache_read_input_tokens":181073,"cache_creation_input_tokens":909,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":909},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGbMZPdFuXrV1dNuGBh","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"83e7dbc2-367d-454a-a1af-2c6af3ed63d3","timestamp":"2026-06-10T08:33:01.843Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"83e7dbc2-367d-454a-a1af-2c6af3ed63d3","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Qji8hTw7tm6gBvb9EAkdtH","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/collections/t-shirts');\n```\n### Page\n- Page URL: http://shop.test/collections/t-shirts\n- Page Title: T-Shirts - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-02-030Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-01-847Z.log#L1"}]}]},"uuid":"cbd7381f-7b5f-48b9-9040-48063be0385f","timestamp":"2026-06-10T08:33:02.036Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/collections/t-shirts');\n```\n### Page\n- Page URL: http://shop.test/collections/t-shirts\n- Page Title: T-Shirts - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-02-030Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-01-847Z.log#L1"}],"sourceToolAssistantUUID":"83e7dbc2-367d-454a-a1af-2c6af3ed63d3","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cbd7381f-7b5f-48b9-9040-48063be0385f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01DeG1fLU9SmWrzRa4nTmGXJ","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MVvv28tRRarEv7Eb9TJHCp","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/02-collection.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":251,"cache_read_input_tokens":181982,"output_tokens":165,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":251,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":165,"cache_read_input_tokens":181982,"cache_creation_input_tokens":251,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":251},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGbkdDqSyhYS8DZvekH","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"4552e10d-d580-48e1-9348-ea1c3c7074d5","timestamp":"2026-06-10T08:33:10.417Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4552e10d-d580-48e1-9348-ea1c3c7074d5","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MVvv28tRRarEv7Eb9TJHCp","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/02-collection.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/02-collection.png\nawait page.screenshot({\n  path: 'review/02-collection.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"a2617f83-f87b-4e29-897f-c60105ea4a0b","timestamp":"2026-06-10T08:33:10.467Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/02-collection.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/02-collection.png\nawait page.screenshot({\n  path: 'review/02-collection.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"4552e10d-d580-48e1-9348-ea1c3c7074d5","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a2617f83-f87b-4e29-897f-c60105ea4a0b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01DeG1fLU9SmWrzRa4nTmGXJ","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_016QvfLSFfutsD4GzinZaouz","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/products/classic-cotton-t-shirt"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":251,"cache_read_input_tokens":181982,"output_tokens":165,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":251,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":165,"cache_read_input_tokens":181982,"cache_creation_input_tokens":251,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":251},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGbkdDqSyhYS8DZvekH","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"73f66635-5479-4cd8-be88-e3ea764ce840","timestamp":"2026-06-10T08:33:10.626Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"73f66635-5479-4cd8-be88-e3ea764ce840","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_016QvfLSFfutsD4GzinZaouz","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/products/classic-cotton-t-shirt');\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-10-751Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-10-628Z.log#L1"}]}]},"uuid":"09b94684-8c43-4786-ab59-7ca2c2af7040","timestamp":"2026-06-10T08:33:10.753Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/products/classic-cotton-t-shirt');\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-10-751Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-10-628Z.log#L1"}],"sourceToolAssistantUUID":"73f66635-5479-4cd8-be88-e3ea764ce840","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"09b94684-8c43-4786-ab59-7ca2c2af7040","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013B4DyWHCyuir4TAhxinfVu","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NyNHrHZEiY7cLMe7wSW39b","name":"mcp__playwright__browser_snapshot","input":{"depth":25},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":544,"cache_read_input_tokens":182233,"output_tokens":60,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":544,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":60,"cache_read_input_tokens":182233,"cache_creation_input_tokens":544,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":544},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGcQ4VE98bcM94RKvv9","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"9edacf57-ff78-4c32-84ed-6e3202dfdf80","timestamp":"2026-06-10T08:33:15.265Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9edacf57-ff78-4c32-84ed-6e3202dfdf80","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NyNHrHZEiY7cLMe7wSW39b","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n```yaml\n- generic [active] [ref=e1]:\n  - link \"Skip to main content\" [ref=e2] [cursor=pointer]:\n    - /url: \"#main-content\"\n  - generic [ref=e4]:\n    - paragraph [ref=e5]: Free shipping on orders over 50 EUR - Use code FREESHIP\n    - button \"Dismiss announcement\" [ref=e6]:\n      - img [ref=e7]\n  - banner [ref=e9]:\n    - generic [ref=e10]:\n      - link \"Acme Fashion\" [ref=e11] [cursor=pointer]:\n        - /url: http://shop.test\n      - navigation \"Main navigation\" [ref=e12]:\n        - list [ref=e13]:\n          - listitem [ref=e14]:\n            - link \"Home\" [ref=e15] [cursor=pointer]:\n              - /url: /\n          - listitem [ref=e16]:\n            - link \"New Arrivals\" [ref=e17] [cursor=pointer]:\n              - /url: /collections/new-arrivals\n          - listitem [ref=e18]:\n            - link \"T-Shirts\" [ref=e19] [cursor=pointer]:\n              - /url: /collections/t-shirts\n          - listitem [ref=e20]:\n            - link \"Pants & Jeans\" [ref=e21] [cursor=pointer]:\n              - /url: /collections/pants-jeans\n          - listitem [ref=e22]:\n            - link \"Sale\" [ref=e23] [cursor=pointer]:\n              - /url: /collections/sale\n      - generic [ref=e24]:\n        - button \"Search\" [ref=e25]:\n          - img [ref=e26]\n        - link \"Log in\" [ref=e28] [cursor=pointer]:\n          - /url: http://shop.test/account/login\n          - img [ref=e29]\n        - button \"Open cart\" [ref=e31]:\n          - img [ref=e32]\n          - generic [ref=e34]: 0 items in cart\n  - main [ref=e35]:\n    - generic [ref=e36]:\n      - navigation \"Breadcrumb\" [ref=e37]:\n        - list [ref=e38]:\n          - listitem [ref=e39]:\n            - link \"Home\" [ref=e40] [cursor=pointer]:\n              - /url: http://shop.test\n            - img [ref=e41]\n          - listitem [ref=e43]:\n            - link \"New Arrivals\" [ref=e44] [cursor=pointer]:\n              - /url: http://shop.test/collections/new-arrivals\n            - img [ref=e45]\n          - listitem [ref=e47]:\n            - generic [ref=e48]: Classic Cotton T-Shirt\n      - generic [ref=e49]:\n        - region \"Product images\" [ref=e50]:\n          - img [ref=e53]\n        - region \"Product information\" [ref=e55]:\n          - heading \"Classic Cotton T-Shirt\" [level=1] [ref=e56]\n          - paragraph [ref=e57]: Acme Basics\n          - generic [ref=e60]: 24.99 EUR\n          - generic [ref=e61]:\n            - group \"Size\" [ref=e62]:\n              - generic [ref=e63]: Size\n              - generic [ref=e64]:\n                - generic [ref=e65] [cursor=pointer]:\n                  - radio \"S\" [checked] [ref=e66]\n                  - generic [ref=e67]: S\n                - generic [ref=e68] [cursor=pointer]:\n                  - radio \"M\" [ref=e69]\n                  - generic [ref=e70]: M\n                - generic [ref=e71] [cursor=pointer]:\n                  - radio \"L\" [ref=e72]\n                  - generic [ref=e73]: L\n                - generic [ref=e74] [cursor=pointer]:\n                  - radio \"XL\" [ref=e75]\n                  - generic [ref=e76]: XL\n            - group \"Color\" [ref=e77]:\n              - generic [ref=e78]: Color\n              - generic [ref=e79]:\n                - generic \"White\" [ref=e80] [cursor=pointer]:\n                  - radio \"White\" [checked] [ref=e81]\n                  - generic [ref=e83]: White\n                - generic \"Black\" [ref=e84] [cursor=pointer]:\n                  - radio \"Black\" [ref=e85]\n                  - generic [ref=e87]: Black\n                - generic \"Navy\" [ref=e88] [cursor=pointer]:\n                  - radio \"Navy\" [ref=e89]\n                  - generic [ref=e91]: Navy\n          - paragraph [ref=e93]:\n            - img [ref=e94]\n            - text: In stock\n          - generic [ref=e96]:\n            - generic [ref=e97]:\n              - generic [ref=e98]: Quantity\n              - generic [ref=e99]:\n                - button \"Decrease quantity\" [disabled] [ref=e100]:\n                  - img [ref=e101]\n                - spinbutton \"Quantity\" [ref=e102]: \"1\"\n                - button \"Increase quantity\" [ref=e103]:\n                  - img [ref=e104]\n            - button \"Add to cart\" [ref=e106]:\n              - generic [ref=e107]: Add to cart\n          - separator [ref=e108]\n          - paragraph [ref=e110]: A timeless classic cotton t-shirt. Comfortable, breathable, and perfect for everyday wear.\n          - generic [ref=e111]:\n            - generic [ref=e112]: new\n            - generic [ref=e113]: popular\n  - contentinfo [ref=e114]:\n    - generic [ref=e115]:\n      - generic [ref=e116]:\n        - generic [ref=e117]:\n          - heading \"Shop\" [level=2] [ref=e118]\n          - list [ref=e119]:\n            - listitem [ref=e120]:\n              - link \"All collections\" [ref=e121] [cursor=pointer]:\n                - /url: http://shop.test/collections\n            - listitem [ref=e122]:\n              - link \"Home\" [ref=e123] [cursor=pointer]:\n                - /url: /\n            - listitem [ref=e124]:\n              - link \"New Arrivals\" [ref=e125] [cursor=pointer]:\n                - /url: /collections/new-arrivals\n            - listitem [ref=e126]:\n              - link \"T-Shirts\" [ref=e127] [cursor=pointer]:\n                - /url: /collections/t-shirts\n            - listitem [ref=e128]:\n              - link \"Pants & Jeans\" [ref=e129] [cursor=pointer]:\n                - /url: /collections/pants-jeans\n            - listitem [ref=e130]:\n              - link \"Sale\" [ref=e131] [cursor=pointer]:\n                - /url: /collections/sale\n        - generic [ref=e132]:\n          - heading \"Information\" [level=2] [ref=e133]\n          - list [ref=e134]:\n            - listitem [ref=e135]:\n              - link \"About Us\" [ref=e136] [cursor=pointer]:\n                - /url: /pages/about\n            - listitem [ref=e137]:\n              - link \"FAQ\" [ref=e138] [cursor=pointer]:\n                - /url: /pages/faq\n            - listitem [ref=e139]:\n              - link \"Shipping & Returns\" [ref=e140] [cursor=pointer]:\n                - /url: /pages/shipping-returns\n            - listitem [ref=e141]:\n              - link \"Privacy Policy\" [ref=e142] [cursor=pointer]:\n                - /url: /pages/privacy-policy\n            - listitem [ref=e143]:\n              - link \"Terms of Service\" [ref=e144] [cursor=pointer]:\n                - /url: /pages/terms\n        - generic [ref=e145]:\n          - heading \"Acme Fashion\" [level=2] [ref=e146]\n          - paragraph [ref=e147]: 2025 Acme Fashion. All rights reserved.\n      - generic [ref=e148]:\n        - paragraph [ref=e149]: © 2026 Acme Fashion. All rights reserved.\n        - list \"Accepted payment methods\" [ref=e150]:\n          - listitem [ref=e151]: Visa\n          - listitem [ref=e152]: Mastercard\n          - listitem [ref=e153]: Amex\n          - listitem [ref=e154]: PayPal\n```"}]}]},"uuid":"5d0c6aa2-5c7d-4290-b65a-060c516fda71","timestamp":"2026-06-10T08:33:15.276Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n```yaml\n- generic [active] [ref=e1]:\n  - link \"Skip to main content\" [ref=e2] [cursor=pointer]:\n    - /url: \"#main-content\"\n  - generic [ref=e4]:\n    - paragraph [ref=e5]: Free shipping on orders over 50 EUR - Use code FREESHIP\n    - button \"Dismiss announcement\" [ref=e6]:\n      - img [ref=e7]\n  - banner [ref=e9]:\n    - generic [ref=e10]:\n      - link \"Acme Fashion\" [ref=e11] [cursor=pointer]:\n        - /url: http://shop.test\n      - navigation \"Main navigation\" [ref=e12]:\n        - list [ref=e13]:\n          - listitem [ref=e14]:\n            - link \"Home\" [ref=e15] [cursor=pointer]:\n              - /url: /\n          - listitem [ref=e16]:\n            - link \"New Arrivals\" [ref=e17] [cursor=pointer]:\n              - /url: /collections/new-arrivals\n          - listitem [ref=e18]:\n            - link \"T-Shirts\" [ref=e19] [cursor=pointer]:\n              - /url: /collections/t-shirts\n          - listitem [ref=e20]:\n            - link \"Pants & Jeans\" [ref=e21] [cursor=pointer]:\n              - /url: /collections/pants-jeans\n          - listitem [ref=e22]:\n            - link \"Sale\" [ref=e23] [cursor=pointer]:\n              - /url: /collections/sale\n      - generic [ref=e24]:\n        - button \"Search\" [ref=e25]:\n          - img [ref=e26]\n        - link \"Log in\" [ref=e28] [cursor=pointer]:\n          - /url: http://shop.test/account/login\n          - img [ref=e29]\n        - button \"Open cart\" [ref=e31]:\n          - img [ref=e32]\n          - generic [ref=e34]: 0 items in cart\n  - main [ref=e35]:\n    - generic [ref=e36]:\n      - navigation \"Breadcrumb\" [ref=e37]:\n        - list [ref=e38]:\n          - listitem [ref=e39]:\n            - link \"Home\" [ref=e40] [cursor=pointer]:\n              - /url: http://shop.test\n            - img [ref=e41]\n          - listitem [ref=e43]:\n            - link \"New Arrivals\" [ref=e44] [cursor=pointer]:\n              - /url: http://shop.test/collections/new-arrivals\n            - img [ref=e45]\n          - listitem [ref=e47]:\n            - generic [ref=e48]: Classic Cotton T-Shirt\n      - generic [ref=e49]:\n        - region \"Product images\" [ref=e50]:\n          - img [ref=e53]\n        - region \"Product information\" [ref=e55]:\n          - heading \"Classic Cotton T-Shirt\" [level=1] [ref=e56]\n          - paragraph [ref=e57]: Acme Basics\n          - generic [ref=e60]: 24.99 EUR\n          - generic [ref=e61]:\n            - group \"Size\" [ref=e62]:\n              - generic [ref=e63]: Size\n              - generic [ref=e64]:\n                - generic [ref=e65] [cursor=pointer]:\n                  - radio \"S\" [checked] [ref=e66]\n                  - generic [ref=e67]: S\n                - generic [ref=e68] [cursor=pointer]:\n                  - radio \"M\" [ref=e69]\n                  - generic [ref=e70]: M\n                - generic [ref=e71] [cursor=pointer]:\n                  - radio \"L\" [ref=e72]\n                  - generic [ref=e73]: L\n                - generic [ref=e74] [cursor=pointer]:\n                  - radio \"XL\" [ref=e75]\n                  - generic [ref=e76]: XL\n            - group \"Color\" [ref=e77]:\n              - generic [ref=e78]: Color\n              - generic [ref=e79]:\n                - generic \"White\" [ref=e80] [cursor=pointer]:\n                  - radio \"White\" [checked] [ref=e81]\n                  - generic [ref=e83]: White\n                - generic \"Black\" [ref=e84] [cursor=pointer]:\n                  - radio \"Black\" [ref=e85]\n                  - generic [ref=e87]: Black\n                - generic \"Navy\" [ref=e88] [cursor=pointer]:\n                  - radio \"Navy\" [ref=e89]\n                  - generic [ref=e91]: Navy\n          - paragraph [ref=e93]:\n            - img [ref=e94]\n            - text: In stock\n          - generic [ref=e96]:\n            - generic [ref=e97]:\n              - generic [ref=e98]: Quantity\n              - generic [ref=e99]:\n                - button \"Decrease quantity\" [disabled] [ref=e100]:\n                  - img [ref=e101]\n                - spinbutton \"Quantity\" [ref=e102]: \"1\"\n                - button \"Increase quantity\" [ref=e103]:\n                  - img [ref=e104]\n            - button \"Add to cart\" [ref=e106]:\n              - generic [ref=e107]: Add to cart\n          - separator [ref=e108]\n          - paragraph [ref=e110]: A timeless classic cotton t-shirt. Comfortable, breathable, and perfect for everyday wear.\n          - generic [ref=e111]:\n            - generic [ref=e112]: new\n            - generic [ref=e113]: popular\n  - contentinfo [ref=e114]:\n    - generic [ref=e115]:\n      - generic [ref=e116]:\n        - generic [ref=e117]:\n          - heading \"Shop\" [level=2] [ref=e118]\n          - list [ref=e119]:\n            - listitem [ref=e120]:\n              - link \"All collections\" [ref=e121] [cursor=pointer]:\n                - /url: http://shop.test/collections\n            - listitem [ref=e122]:\n              - link \"Home\" [ref=e123] [cursor=pointer]:\n                - /url: /\n            - listitem [ref=e124]:\n              - link \"New Arrivals\" [ref=e125] [cursor=pointer]:\n                - /url: /collections/new-arrivals\n            - listitem [ref=e126]:\n              - link \"T-Shirts\" [ref=e127] [cursor=pointer]:\n                - /url: /collections/t-shirts\n            - listitem [ref=e128]:\n              - link \"Pants & Jeans\" [ref=e129] [cursor=pointer]:\n                - /url: /collections/pants-jeans\n            - listitem [ref=e130]:\n              - link \"Sale\" [ref=e131] [cursor=pointer]:\n                - /url: /collections/sale\n        - generic [ref=e132]:\n          - heading \"Information\" [level=2] [ref=e133]\n          - list [ref=e134]:\n            - listitem [ref=e135]:\n              - link \"About Us\" [ref=e136] [cursor=pointer]:\n                - /url: /pages/about\n            - listitem [ref=e137]:\n              - link \"FAQ\" [ref=e138] [cursor=pointer]:\n                - /url: /pages/faq\n            - listitem [ref=e139]:\n              - link \"Shipping & Returns\" [ref=e140] [cursor=pointer]:\n                - /url: /pages/shipping-returns\n            - listitem [ref=e141]:\n              - link \"Privacy Policy\" [ref=e142] [cursor=pointer]:\n                - /url: /pages/privacy-policy\n            - listitem [ref=e143]:\n              - link \"Terms of Service\" [ref=e144] [cursor=pointer]:\n                - /url: /pages/terms\n        - generic [ref=e145]:\n          - heading \"Acme Fashion\" [level=2] [ref=e146]\n          - paragraph [ref=e147]: 2025 Acme Fashion. All rights reserved.\n      - generic [ref=e148]:\n        - paragraph [ref=e149]: © 2026 Acme Fashion. All rights reserved.\n        - list \"Accepted payment methods\" [ref=e150]:\n          - listitem [ref=e151]: Visa\n          - listitem [ref=e152]: Mastercard\n          - listitem [ref=e153]: Amex\n          - listitem [ref=e154]: PayPal\n```"}],"sourceToolAssistantUUID":"9edacf57-ff78-4c32-84ed-6e3202dfdf80","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"5d0c6aa2-5c7d-4290-b65a-060c516fda71","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"5d0c6aa2-5c7d-4290-b65a-060c516fda71","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012syQxNvF62Bi9EdP2fQwEz","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS3gIKYggOGAIqQPvhh8GiywrJ4jtdAeupth2pkFcSzNOAC1HynbyXfvSHSgW4fdr1Zxa4Vn1uJw1sFCDjFvWlWLzBOfi0QshClTAyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgz25m9Anm/ThSR5wKAaDHJyKfnBwf4xCIO7iyIw5dR+IA9MuvBUhddwbamilqt/kkptGnEu5nNgU210grSBzqv89EbuV4O0o6maUgW9KqkBpswSG8ZWyGGN9ITUf/AGaOtnENLnZnvLuWDLiyTI6+lWDdKIm/FcHEamljiTVH9a/JeqmBsntm2/1DAylGkpuWoJ8ADi7v2zMLvwo9YuLYSq9/ss2SZJT8tg/0BF96z4uOuFLyzC0w8p26O9CkhErqb08aeSgTaLa2c5Ijw9JsZHXOL4vye/3vscz0aKndgymruFWTYTFq2UzmXH7HbqdBWw8Vsb5ymlZxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2956,"cache_read_input_tokens":182777,"output_tokens":176,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2956,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":176,"cache_read_input_tokens":182777,"cache_creation_input_tokens":2956,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2956},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGcjwaBZj1y7GtWBrSu","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"e1e5d49d-9edd-4b0b-9c38-6f6c23eda2f0","timestamp":"2026-06-10T08:33:21.254Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e1e5d49d-9edd-4b0b-9c38-6f6c23eda2f0","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012syQxNvF62Bi9EdP2fQwEz","type":"message","role":"assistant","content":[{"type":"text","text":"Product page renders with variant options. Selecting Size M, Color Navy, quantity 2, and adding to cart."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2956,"cache_read_input_tokens":182777,"output_tokens":176,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2956,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":176,"cache_read_input_tokens":182777,"cache_creation_input_tokens":2956,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2956},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGcjwaBZj1y7GtWBrSu","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"ae77d8d5-1d48-4b58-ad22-cc651ad1246f","timestamp":"2026-06-10T08:33:21.266Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ae77d8d5-1d48-4b58-ad22-cc651ad1246f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012syQxNvF62Bi9EdP2fQwEz","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01LSMADZkmoCrrZJSGetrmcb","name":"mcp__playwright__browser_click","input":{"element":"Size M radio","target":"e69"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2956,"cache_read_input_tokens":182777,"output_tokens":176,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2956,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":176,"cache_read_input_tokens":182777,"cache_creation_input_tokens":2956,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2956},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGcjwaBZj1y7GtWBrSu","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"e1644502-e722-4973-807e-8bcf373c53ee","timestamp":"2026-06-10T08:33:21.421Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e1644502-e722-4973-807e-8bcf373c53ee","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nTimeoutError: browserBackend.callTool: Timeout 5000ms exceeded.\nCall log:\n\u001b[2m  - waiting for locator('aria-ref=e69')\u001b[22m\n\u001b[2m    - locator resolved to <input value=\"M\" type=\"radio\" name=\"option-1\" class=\"peer sr-only\" wire:model.live=\"selectedOptions.Size\"/>\u001b[22m\n\u001b[2m  - attempting click action\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m    - waiting 20ms\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 100ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  2 × retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <div class=\"mx-auto flex h-16 max-w-7xl items-center justify-between gap-4 px-4 sm:px-6 lg:px-8\">…</div> from <header x-data=\"{ mobileNavOpen: false }\" x-on:keydown.escape.window=\"mobileNavOpen = false\" x-init=\"$watch('mobileNavOpen', (value) => { if (value) $nextTick(() => $refs.mobileNavClose?.focus()) })\" class=\"sticky top-0 z-40 border-b border-zinc-200/80 bg-white/90 backdrop-blur dark:border-zinc-800/80 dark:bg-zinc-950/90\">…</header> subtree intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <div class=\"mx-auto flex h-16 max-w-7xl items-center justify-between gap-4 px-4 sm:px-6 lg:px-8\">…</div> from <header x-data=\"{ mobileNavOpen: false }\" x-on:keydown.escape.window=\"mobileNavOpen = false\" x-init=\"$watch('mobileNavOpen', (value) => { if (value) $nextTick(() => $refs.mobileNavClose?.focus()) })\" class=\"sticky top-0 z-40 border-b border-zinc-200/80 bg-white/90 backdrop-blur dark:border-zinc-800/80 dark:bg-zinc-950/90\">…</header> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is visible, enabled and stable\u001b[22m\n\u001b[2m    - scrolling into view if needed\u001b[22m\n\u001b[2m    - done scrolling\u001b[22m\n\u001b[2m    - <div class=\"mx-auto flex h-16 max-w-7xl items-center justify-between gap-4 px-4 sm:px-6 lg:px-8\">…</div> from <header x-data=\"{ mobileNavOpen: false }\" x-on:keydown.escape.window=\"mobileNavOpen = false\" x-init=\"$watch('mobileNavOpen', (value) => { if (value) $nextTick(() => $refs.mobileNavClose?.focus()) })\" class=\"sticky top-0 z-40 border-b border-zinc-200/80 bg-white/90 backdrop-blur dark:border-zinc-800/80 dark:bg-zinc-950/90\">…</header> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m","is_error":true,"tool_use_id":"toolu_01LSMADZkmoCrrZJSGetrmcb"}]},"uuid":"114da408-3dad-4cbb-bb73-d5d906b97c8a","timestamp":"2026-06-10T08:33:26.439Z","toolUseResult":"Error: ### Error\nTimeoutError: browserBackend.callTool: Timeout 5000ms exceeded.\nCall log:\n\u001b[2m  - waiting for locator('aria-ref=e69')\u001b[22m\n\u001b[2m    - locator resolved to <input value=\"M\" type=\"radio\" name=\"option-1\" class=\"peer sr-only\" wire:model.live=\"selectedOptions.Size\"/>\u001b[22m\n\u001b[2m  - attempting click action\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m    - waiting 20ms\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 100ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  2 × retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <div class=\"mx-auto flex h-16 max-w-7xl items-center justify-between gap-4 px-4 sm:px-6 lg:px-8\">…</div> from <header x-data=\"{ mobileNavOpen: false }\" x-on:keydown.escape.window=\"mobileNavOpen = false\" x-init=\"$watch('mobileNavOpen', (value) => { if (value) $nextTick(() => $refs.mobileNavClose?.focus()) })\" class=\"sticky top-0 z-40 border-b border-zinc-200/80 bg-white/90 backdrop-blur dark:border-zinc-800/80 dark:bg-zinc-950/90\">…</header> subtree intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <fieldset>…</fieldset> intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <div class=\"mx-auto flex h-16 max-w-7xl items-center justify-between gap-4 px-4 sm:px-6 lg:px-8\">…</div> from <header x-data=\"{ mobileNavOpen: false }\" x-on:keydown.escape.window=\"mobileNavOpen = false\" x-init=\"$watch('mobileNavOpen', (value) => { if (value) $nextTick(() => $refs.mobileNavClose?.focus()) })\" class=\"sticky top-0 z-40 border-b border-zinc-200/80 bg-white/90 backdrop-blur dark:border-zinc-800/80 dark:bg-zinc-950/90\">…</header> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is visible, enabled and stable\u001b[22m\n\u001b[2m    - scrolling into view if needed\u001b[22m\n\u001b[2m    - done scrolling\u001b[22m\n\u001b[2m    - <div class=\"mx-auto flex h-16 max-w-7xl items-center justify-between gap-4 px-4 sm:px-6 lg:px-8\">…</div> from <header x-data=\"{ mobileNavOpen: false }\" x-on:keydown.escape.window=\"mobileNavOpen = false\" x-init=\"$watch('mobileNavOpen', (value) => { if (value) $nextTick(() => $refs.mobileNavClose?.focus()) })\" class=\"sticky top-0 z-40 border-b border-zinc-200/80 bg-white/90 backdrop-blur dark:border-zinc-800/80 dark:bg-zinc-950/90\">…</header> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m","sourceToolAssistantUUID":"e1644502-e722-4973-807e-8bcf373c53ee","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"114da408-3dad-4cbb-bb73-d5d906b97c8a","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"f2520086-69b9-45c4-914f-904efaa46de8","timestamp":"2026-06-10T08:33:26.440Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f2520086-69b9-45c4-914f-904efaa46de8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016fSME4VdLJvGqep4Zk9N31","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISjAQKYggOGAIqQDhkqfBXUi/rqol5qTylWFbtl78Bgl7sLJx8mZNVjhofXJf4zxviZAzBrEJevvriDc63GlNJPdFacX24zfdmwS4yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxILSf2mNaHPpwqDusaDNcWains0IkvkiCNOSIwCDoOYhr6YdY92nRvLSFu+weI3gaoKAxcrtdODelKLMPsgav4U6x8Fmfe1TiGJgZPKtcCjfeuryoYnCjZwjm91BKywaJUiOBklGXmMc/4onUvwB1QEjR3Znqmc4vMqYkj9QjQpzqYcKezE7c5i6KgB7ABVixPnZEyb6/FP6N92IwZt2PIIA6Np7uyoHpXsONCoaDP8BA+jPv4uL6BKaDObgU+aZ9WyjasGXiMdY1SebQZ8PivaL8SZVceUAcDJMqv8iqelDwnoLGfWAhm+VqwNKrwvVXWt3QQdd28yqHr/vEVv9ijdI3hljF8XFvskun1SKmVtXUEx54VRey4Y87uPpxsn8FWOAmtRnjf0clnS18+6i6V0tYj7nwsjoIqXlhyuT+d4XojzUQsnHQsTyHgyak63e+7G0tkTOpK/zsZdwmD9JEnCXxhyWWoheRRcJYXVXQlqNoYJccTTrxpd2tfkFV/HgDuFhlQsnaR+TRgOBdH81Hjh4j96eWeonlWX5czYOjHAj6lX5oUdxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":2005,"cache_read_input_tokens":185733,"output_tokens":230,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2005,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":230,"cache_read_input_tokens":185733,"cache_creation_input_tokens":2005,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2005},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGdZ8TzSH5nwcgB4VYL","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"60650a40-fb02-49a8-8d94-4c0a5ff46c8b","timestamp":"2026-06-10T08:33:33.764Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"60650a40-fb02-49a8-8d94-4c0a5ff46c8b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016fSME4VdLJvGqep4Zk9N31","type":"message","role":"assistant","content":[{"type":"text","text":"The radio is visually hidden (sr-only peer pattern) — clicking the visible label instead."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":2005,"cache_read_input_tokens":185733,"output_tokens":230,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2005,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":230,"cache_read_input_tokens":185733,"cache_creation_input_tokens":2005,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2005},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGdZ8TzSH5nwcgB4VYL","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"a36c85be-38d4-491d-97a6-85df578b99b2","timestamp":"2026-06-10T08:33:33.764Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a36c85be-38d4-491d-97a6-85df578b99b2","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016fSME4VdLJvGqep4Zk9N31","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NbPwStZLSqVTU1StbRVEm7","name":"mcp__playwright__browser_click","input":{"element":"Size M label","target":"e68"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":2005,"cache_read_input_tokens":185733,"output_tokens":230,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2005,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":230,"cache_read_input_tokens":185733,"cache_creation_input_tokens":2005,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2005},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGdZ8TzSH5nwcgB4VYL","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"9cc21c08-ba02-4a07-b6fd-4ff8bf57f39c","timestamp":"2026-06-10T08:33:34.014Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9cc21c08-ba02-4a07-b6fd-4ff8bf57f39c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NbPwStZLSqVTU1StbRVEm7","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('label').filter({ hasText: 'M' }).click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-36-050Z.yml)"}]}]},"uuid":"2ae1dd2f-597f-4d4f-8be3-92eeddc7bda8","timestamp":"2026-06-10T08:33:36.052Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('label').filter({ hasText: 'M' }).click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-36-050Z.yml)"}],"sourceToolAssistantUUID":"9cc21c08-ba02-4a07-b6fd-4ff8bf57f39c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2ae1dd2f-597f-4d4f-8be3-92eeddc7bda8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01GnMMfoW4uiXPv2ZMnJkZoG","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01BgdpBmPLmvQby5YZwkb5Nj","name":"mcp__playwright__browser_click","input":{"element":"Color Navy label","target":"e88"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":510,"cache_read_input_tokens":187738,"output_tokens":83,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":510,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":83,"cache_read_input_tokens":187738,"cache_creation_input_tokens":510,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":510},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGeGAY2FUb8JEEmzHv9","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"14336c22-ee20-4689-91bd-65d893415d9b","timestamp":"2026-06-10T08:33:42.189Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"14336c22-ee20-4689-91bd-65d893415d9b","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01BgdpBmPLmvQby5YZwkb5Nj","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByTitle('Navy').click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-44-220Z.yml)"}]}]},"uuid":"4184ed16-daae-4bb1-bf05-600bb505156b","timestamp":"2026-06-10T08:33:44.222Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByTitle('Navy').click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-44-220Z.yml)"}],"sourceToolAssistantUUID":"14336c22-ee20-4689-91bd-65d893415d9b","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4184ed16-daae-4bb1-bf05-600bb505156b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01XffmFsoj9M1R6YUL41tAb8","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_0162nX2ix65gYrWQobS7bEhb","name":"mcp__playwright__browser_click","input":{"element":"Increase quantity button","target":"e103"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":225,"cache_read_input_tokens":188248,"output_tokens":84,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":225,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":84,"cache_read_input_tokens":188248,"cache_creation_input_tokens":225,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":225},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGes1n941uoF1A8pA4B","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"e890b725-5291-4730-81a4-45c3b29a16d2","timestamp":"2026-06-10T08:33:48.351Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e890b725-5291-4730-81a4-45c3b29a16d2","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_0162nX2ix65gYrWQobS7bEhb","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Increase quantity' }).click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-49-387Z.yml)"}]}]},"uuid":"e226b758-f4ca-4d02-8b2b-dbe7b08c88fa","timestamp":"2026-06-10T08:33:49.391Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Increase quantity' }).click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-49-387Z.yml)"}],"sourceToolAssistantUUID":"e890b725-5291-4730-81a4-45c3b29a16d2","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e226b758-f4ca-4d02-8b2b-dbe7b08c88fa","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016J2X79Ad4RkM3WW2BkEt9T","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01WQaGEDL1Vuuu5ZbLqzAR1R","name":"mcp__playwright__browser_click","input":{"element":"Add to cart button","target":"e106"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":237,"cache_read_input_tokens":188473,"output_tokens":83,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":237,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":83,"cache_read_input_tokens":188473,"cache_creation_input_tokens":237,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":237},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGfF7ZQQmWD12L4k7MT","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"cc5a5852-aa14-42f3-847d-4d21b4aad44a","timestamp":"2026-06-10T08:33:53.894Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cc5a5852-aa14-42f3-847d-4d21b4aad44a","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01WQaGEDL1Vuuu5ZbLqzAR1R","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Add to cart' }).click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-55-934Z.yml)"}]}]},"uuid":"0db64791-0553-43ad-b21f-b7e546255429","timestamp":"2026-06-10T08:33:55.937Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Add to cart' }).click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-33-55-934Z.yml)"}],"sourceToolAssistantUUID":"cc5a5852-aa14-42f3-847d-4d21b4aad44a","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0db64791-0553-43ad-b21f-b7e546255429","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01LGjtzGAPEE4HPdbrA9pk1W","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NSucMbYFFPnghWUX6TCC2y","name":"mcp__playwright__browser_wait_for","input":{"text":"Subtotal"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":235,"cache_read_input_tokens":188710,"output_tokens":63,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":235,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":63,"cache_read_input_tokens":188710,"cache_creation_input_tokens":235,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":235},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGfj3q1Z8qdhkaSxYKZ","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"fc197fb3-8e4e-43dd-a58b-d8dedad035fd","timestamp":"2026-06-10T08:34:00.392Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"fc197fb3-8e4e-43dd-a58b-d8dedad035fd","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NSucMbYFFPnghWUX6TCC2y","type":"tool_result","content":[{"type":"text","text":"### Result\nWaited for Subtotal\n### Ran Playwright code\n```js\nawait page.getByText(\"Subtotal\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-00-404Z.yml)"}]}]},"uuid":"b2334dd0-44e7-419f-b2e2-c1e3f20f4bcb","timestamp":"2026-06-10T08:34:00.411Z","toolUseResult":[{"type":"text","text":"### Result\nWaited for Subtotal\n### Ran Playwright code\n```js\nawait page.getByText(\"Subtotal\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-00-404Z.yml)"}],"sourceToolAssistantUUID":"fc197fb3-8e4e-43dd-a58b-d8dedad035fd","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b2334dd0-44e7-419f-b2e2-c1e3f20f4bcb","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01GmSDLZTE3iYDvwHcrQLyQL","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TbcBrnLzLjNi2BpdwXxunD","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/03-cart-drawer.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":233,"cache_read_input_tokens":188945,"output_tokens":94,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":233,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":94,"cache_read_input_tokens":188945,"cache_creation_input_tokens":233,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":233},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGg4coyUaDi4FrPJqmT","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"0a04b7d9-f275-4474-b563-620d03a4d757","timestamp":"2026-06-10T08:34:05.081Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0a04b7d9-f275-4474-b563-620d03a4d757","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TbcBrnLzLjNi2BpdwXxunD","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/03-cart-drawer.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/03-cart-drawer.png\nawait page.screenshot({\n  path: 'review/03-cart-drawer.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"e410deba-9ccc-4ad7-91ed-04b790702c0c","timestamp":"2026-06-10T08:34:05.133Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/03-cart-drawer.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/03-cart-drawer.png\nawait page.screenshot({\n  path: 'review/03-cart-drawer.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"0a04b7d9-f275-4474-b563-620d03a4d757","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"e410deba-9ccc-4ad7-91ed-04b790702c0c","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"e410deba-9ccc-4ad7-91ed-04b790702c0c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01MGtgxtvmNz5x9v3tnBjVcw","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01P4NcpsEgS6Vfmr6DgBtiAc","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/review/03-cart-drawer.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":216,"cache_read_input_tokens":189178,"output_tokens":77,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":216,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":77,"cache_read_input_tokens":189178,"cache_creation_input_tokens":216,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":216},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGgQj2wic3GDhc7N4fF","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"d8dfbfff-e81c-4f36-a3d5-cd2d345183ad","timestamp":"2026-06-10T08:34:10.139Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d8dfbfff-e81c-4f36-a3d5-cd2d345183ad","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01P4NcpsEgS6Vfmr6DgBtiAc","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"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Hxvj1wIA6oOX8/3MAADUt4CAgCpvVahufk3erSw2Nvbhhx9+77331HRXC9b5vg81/BQZ/PKXv7Qcdx65GfSkMmVAkZGRajabvCMsLOzLX/6yWr/OY/d6XGabco0yB+tWhVGTuMrFtF8qYeWhW2tVQr2ryqnh0KE13KItKChIK6+u8LX6UpwpXNCalcvU04inqhPtY5XdpqqszFtWiwIUc1dUTdamvdOXXmXleDvUqj9XPVHJtcs1TKyAuqXQ0wKAu4EeKwCAO6q6lrz7DMKzhMJw00qvbQNeV+wnTJign0pSFH8kJSVpDc53GDnzuMw1bB5X2ZnFqOF+1WGd17Ym3XQR8jhVsRydL2oyqrHH3NRJlW/dcl+qTFWqW5ubwY9rksTdGbfzqwoAQCNFsAIAaIKUfWRnZ1d5T4QafvYDoWuroqJi2bJlgwcPHjt2rK7MZ2RkfPjhh/XakgcAAEADx61AAAAAABq9RncrUElJiaL5sLAwq56dOnVq/fr1Xbt2HTNmjJlTVFSk6oqKijLjUqekpKxatapbt27Tpk2zANQeTwUCAAAA0Oy8+uqr0dHRCQkJZixq2/PPP6/5zz33nFVv/va3v40fP75Lly49evQYNGjQs88+e/nyZes2uBkr+vz583Pnzn3ttde6d+9uOYZ1v/feezt16tSvXz/9/N73vqdwR5Wg5OXpp5/+8MMPLaAx279//5tvvunmXbHqAcEKAAAAgMbNgyGrv/KVryQlJSlWWLBggT1z165dCxcuDAsL+/GPf2zVg5KSkscee+w73/nOuXPnRo4c+eCDD2rOokWLpk6deujQIav2MjIy7nOo8t2ysrIvfelLil0U5bRt21ZNyvnz5x84cGDs2LFPPvlk69at33jjDRXG19dXyYvipG9961v2c9+ARkpHdZXZimb+f//f/6fj36oHBCsAAAAAmh1vb+//9//+n34qSVGeYjmGiP7+97+viR/96EcRERFWPdAW16xZk5CQsHPnzvfff/9//ud/FHa89NJL6enp3/72t63au3LlyrZt26p7+phakocPH/7GN77RtWtXvfztb39bVFT01FNPadM/+9nPfve732nmJ598oplt2rT54x//qJTnBz/4gQU0Wv369dMRXjlb0UvN1FuKFK16QLACAAAAoDnq06fPM888U1FRoTxF2cS777576NChUaNGPfjg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3Lx581atWrVz585hw4a5+ezZs2eDg4Ptl3l5eVevXrVuW1cHy1GxClYUpnzta1+rcsl9+/ZlZ2c///zzqknLkYkMHjxYKZXiFTfr//DDD92867JTaIy4FQgAAABAs9Mwn6xcQzUs/PHjx7dt2zZy5EiTqhhPP/20Qo1PP/3UZeELFy68/PLLI0aMGDdunMIXxQdm/quvvjpr1qw+ffq88MIL9k1DlWd+8cUXo0aNev/9980C69ate/TRR7t16zZjxgwlJs4bWrJkiVb+7LPPmlTFULain5988ol5+eabb9533336+MMPP2xmbt++XevPzMw8c+aMJr785S+/8sorY8aM0Vvvvvuu5vzud7/T9Llz5775zW8OGDBAO/K9733v+vXrlmP8Fy3w7//+7ytXrpw9e/agQYN+8YtfmPt3ast0ydHOXrp0SRP+/v6a3rJli3NvlN/+9rejR4+ePHnyRx99ZOZ86Utf0ku7lhYuXPid73ynd+/elXfKQuNEjxUAAAAAaIIUrOhn3759nWeGhoZWHjdEFEMoIFAEo8jg5z//uSIDhR179uxRHjFv3ryJEye+/fbbBw4cWL9+/b59+yrPzMvLS01NNUHGjh07nnrqqZYtWypf2Llzp2IFLTZhwgSzoWPHjulnv379nLc+fvz49PR0M63E5Mc//rHSn+HDh2/atGnjxo2a2bFjx7i4ODMWiSYUcISFhcXGxl68eNHM0X5duXJl/vz5Cim0ywpT3njjDYU+SjHKy8v1QaVRixYt0nZVLQpWunfvrtDHqiUVQ7nM7t27VbZ7771X1aWSOy/w1ltvKbJRJKQM5cUXX1RK1aZNm/Pnz58+fdpydLFRSf7whz8kJydHREQEBga67JSFxolgBQAAAACaIDt0cJlfebAPNfiVODz++ONTp05VANG/f/8lS5YoWFFionf/z//5P0lJSffcc49ylpycnCpnOq/tJz/5ibIMpRg9evRQXKL85Z133rGDlbS0NDelUirx05/+NCQkZNu2beHh4cqARo0a9aMf/Wjv3r3vvvtur169goODNWE+MnDgwDFjxjzyyCNmjBXlQUpVXnrppe985zsqwAsvvKBUZenSpeYeJa1KGY0iD2U9s2bNWr58uQfBinzwwQfKZf785z8vdFCwogJ36tTJvHvhwoWUlBSFSr/+9a//67/+a9WqVY899pjL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GhGsAAAAAHA5agEq0VA7StNhYWE//OEPlWgsXbq0erBiBl4x1PAzlwsZaoMVFRVVKW/mOI8BERERUb2Yqfn//u//CgsLlcKMGTNm3bp1FtCSvfjii7kOt912m56uWLHCcvTG+vDDD/VhUepx2WWXmZI68y3HOEf2ssoWayywb98+pSoKNG+44QbLcVnQW2+9tWbNGq2lSgjSqVOnzp07O89p166dHjds2GDPUciybdu2kJAQe9k///nPp06d0urefPPNKVOmWI3CGCsAAAAAXE55efnf/vY359vB6rfxQ4cOWY6uKAUFBfZ8584mWmrHjh32U7XQ1Jazn1ZWVlqOGEXNNrUS7fmq1rkBaYrJypUr/f399Tu8WozDhw/38vKygJZM53OcwxEHMzMrK0vp4cMPPzxq1CilJGamudFPz5498/Ly0tLS6ihgPhfp6enmg6OMUpGKIk539zOnGco3Y2NjVeeJEyfMnPXr1+vT7dyxxXJchXT55ZcrBlJqY388G4RgBQAAAIDLUYzSp08f/UZ94MABNaUyMzO//fbb+Ph4y3E7kl27dmmO5qutlZycbC+l5tyCBQsSExOLi4tnz56tNqG5LauPj09MTIwdpkyaNOn11183ty/Zu3fvwoULTdcY6dixo4lvLEePFTUOtRblNXPmzKlywQLQ4jz66KMbnFx88cWauWjRIuWGSi40/cADD7z77rt6VED585//vF27dn/4wx/69u37zjvv1FZAoaQ+mElJSXfdddd//vOf2267TdnK6NGjAwICqqz9n//85ytOlixZopn33XefHidMmPDEE0889NBDM2fOtBw38Kqy7PPPP6+0ZdasWSpmNRyXAgEAANeVmZm9f/+hY8eOp6dn5ucXWABahv//k7L963L1MR3q5ubm9rOf/eztt99+5JFHFJcEBQUNGjTommuu0Uv9+vUbMWLEPffcExoaqvDl+uuvt397V1tOEcnTTz+dk5MTFRX1y1/+MjIy0rx0xRVX/P3vf9ev67/4xS+0SElJyYMPPqi1+Pn53XvvvfawuJMnT3755ZeXLl06Y8aM8ePHr1279o477lC8Mm7cuM6dO5ssBmh9rrvuuvT0dGUfiksUayolqZJu1FHg888/10wFlEozQ0JC9NnRZ7D6Kj52cK5QH7Fbb73VdE976aWXLEey+bvf/U7zqyyrz6m5FEif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c/Hpp582c3x9T98Xyc3NzWo6r7322vPPP//UU09Nnz7daiIKjO655x4FK8uWLatP+ep7ClTxwAMPnDhxwnnO448//vLLL3t7e0+dOjUqKurLL7+8/fbbn3vuuRtuuMEuoxRy2rRpiuG6dOly3XXX7dmz5/PPP9+2bdvixYv1tVNSUnLRRRepWgUuY8aMWbt2rU7FKVOmaCIkJKT6Nih2cX46aNAgq95Gjx4dHR1tnU6Zj61YsWLJkiVPPPGENthqIIIVAAAAoLXp0SPeclzps2jRCnvmoEF9x427ICGhm4KVtLQMBSvdunVWfmE5wpewsP+2WE6dylPDRu2i+PjOO3eeHhilW7cuta2otLTMOp2e/DclSU4+2atXj549u2/ZsrO8vNzd3a137x6O+f+/D0hOTm5BQaECl44d4xITT/dnGTVq6NChA9es2XjymciE+AAAEABJREFUZJrmq5JVq9Zbpy9cirfOpLS01MvL08/P32os/boeGhpa//I7duw4cOCA4gbz1MvLq8n7qsjy5csb2rXkjNLS0lavXh0ff+ajalTZU6CK119/fd68ec5zFMW++eabmnj22WevvfZaTSikUDjyzDPPKP5QaGKKzZo1S6lKhw4dlJiYRPKuu+764osv3nnnnTvuuEMnv1KV4ODgr776KjAwUJ9xfUEoFpw/f/5VV11VZRtU/5NPPmk11k9+8pPx48ebaQU3yjH//ve/NyJY4VIgAAAAoLVJSDjdeN6790ClEzPeSteunZREKHPRHIUgN998zdSpk2688ar8/P8/GsLmzTv0+IMfjL/iiouvumra6NHD1bapcUXmXkLDhg0cO3akat6z50BKSlpUVJvrr79izJjh1157ebt2senpmc4j11qnU4PTNyeaNm3yxImjL7nkQqUqFRUVO3fuNcOsREe3GTFi8PjxF4wceXo8XXPtUm1UuXW6V/9Yq6npt2v9Gt+vXz/98P6Xv/zl5MmT2rYJEyb8/ve/16v//ve/Na1GoKbVGNN0dvbpvj96VdNqob311lta8IILLlA7raioaPv27Wo66hd4vbpq1Sp7LYsWLfrZz37W30FtvNTU1M2bN6vMt99+azlam5pWDZpWUPXSSy9deeWVqkQ/8n/wwQd2JXorVUY/8g8cOPDXv/61ApTqu3P//fdPnjxZE8pKJjjk5eXp6c6dO3/xi1+M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cePGb7/9VvUoGTFtdTVlhw8fvnXr1t27d6shrW0w15g4r1fLOu+gGu1V9re2bdPadayqDIKrtezZs8eqH9VcfXEdJVVrtsG5c4pVj1vJ6C1YsWKF85xRo0YpX6jx4FiO41PlNKhtPNpG3GFKaZSyFe1j9QhDcU9qaqoSE72qaMn5RtrKknSGmPnVt9D630SjNiaXcV6vKlG055zXnLEehSk603SS66wz22AfHG2V8/lp3iaVN9vsvA1ff/11lWr12THdwQDgfCFYAQAArkKta6UqgwYNMoO/GgoI1NJrRLBSpXVqrrOoznRXsa9tqbGwWstqCStAqXKdjumhoGCiT58+yk1OnDixd+/e+fPnX3LJJZqvHGTkyJF66fjx49oL/XRvX4hh1pucnGydiTILc62KogE1v53vj6s27eTJkzMyMhQ8rVy5cvDgwaZfRseOHRUKqBl/8OBBJQsXXXSRc0qi9aq1rHa+c7eR6sekxm3T/mobTF8Ym546v191U83VF9fxtzemoTfljYiImDFjhvMc897VdnDqX3/1kYbruT068tXvbL1r1y4z+I6OgM4H55eUYpSWltqDtlTfwvpss1m8ynuhRMN56F9zutZGHz2dujp5Jk6cqBglLy9v7ty59qv6bGo77c+FiRSrvO9mGy699FJ7jslllMic8W5KAHBOcSkQAABwFUoQ1A6Mj49v62TIkCFqHle//MG08c6+waYWeE5OjnIT3++oDVml8W85GsyZme5110YAAAUySURBVJm+TvRUbVEz+KjamWo9durUSY15LZuWlqYN3rRpk9qiCjUSEhJGjRqVlJSk8s7rVZmCggJ7zpYtW/bv319lvYcOHTLjvJpeMOY6IMtxWx/TT0QbNnDgQCUviYmJluNWPmq3KxRQEKO0yAwB41xhcHCwXlUj356jBdeuXVvlmNS2bXopJSXFufDJkyftbguKALTLzq9WeZtUUgfHuYxqUzO+QSlGlTo9/pe2obaDczaq9OCoTd++fc0dl5xnlpSUHD582FzgoyOgE8z5fDa3wao+3m2DmLfVeRyf4uJiuxdMjaq8WTpPdA4rgQoNDdVL9plmlJWVOV9VpHdNhav0QzEXnWnXzAdEBXTC130lFwB8PwhWAACAq1CwUn2QEbW6zRCzVea3adNGzb+jR49aZxevdO7c2c/PT+GIWr/msqMVK1ZU/21f6UZWVpYazCqjkuZaG4Ud5loSLW5iCAUWakyq5R8YGKgEYceOHaWlpVrEhBHOHWHU4lVstHr1arU8tYj2XclFlQthLEeDWQ1aNWuV1ygsUKvV7KyOiSpXWGP6O2hdpuXv7++/ceNGc1GGGvDmwh/nCvVUQYM2WIuoKj1u27atSvO7jm3Tslrp3r17tVJtktlx+3430dHRapA7t6WrvE2m28i6deu0lGrW26qaq4wTfEZnfOtrOzhnQ7GFggOlDyZNkzVr1ij2qlJMh65Hjx46LNu3b9cbp1NFp8Ty5ct1Gpv7OquSuLg4cyNqc/zXr1+v6M0EZ42mHezXr5/Wq1hHe62kb9WqVdqYGm+kbVR5s3SmFRYWmq1SlKnT23I6vOaGRKrWnMx646r3ytFhb9eunU4nExvp87JkyRIzDotOXb0jFgCcJ1wKBAAAXIJaoWqo28N2OlPaoua3GcPVpuxDjXy14tQuHThwYCOuFTL0u/q4ceM2bNjw5ZdfWo6G8YgRI6pf26LG/MiRI3fu3Km2q/KRmJgYFTPN9Z49e2oz5s+fr/hDC2o7zU/3+vFfrVNVa+4UY5c3NK0Ktd4FCxaYUW9Hjx5d/YYy2sctW7Z89tlnatirQa4WuGkJq7zqV3t17dq1qkqphxmAVmXUKlajWo1kLy8vtaur3K5YVImax1pQZXQY9dS0+euzbdq1UaNGqZGs4MAclrFjx9qXsURFRSmR0aFQ/VOmTFFbvfrbpKOt6Gfu3Lk6LCowbNiwhg4Te8a3vraDc5b0RmuvP/30U52l2mwlO3pTzG2bnZkbGOtU0QZoH3VK6GzRdtq9cnQm6AgsXbpUsYs21YzLY501vYk67DpblGvorVduMmTIkNqugLOqvVk683UkzVYpRhk0aJCmi4uLzVVaeou1nTqvlK1oTnx8fPVgRYdau7Zp06ZFixYpTwkKClIZk+ycPHnSeRxcAPieuT3xxBMWAAAAalFQUKCW3tl3SVDzsry83HlU0RqpxagWco3tVTUdqw9Aazo41DG8hV7VgnWP7qm2rjasxn2s7aUaN6YKJVl1r7eObdNx0EGo8RIeHUm7QW6r8japjCKbs+ymcca3vo7j1mg6aKqzPtcumc5NdRzhMx7/xqnPW2+r8mbpHdc217G4OaQ1vuTce8jcOcueqUfldHPmzLEA4HygxwoAAEBd6j9yat3cHc5YrI7kpcbm6Blb4Gr2n7F1XUcAUdtL9Wlan3G9dWxbHcdBh7H6yLhV3iaVOctUxarHW3/2q6iu/lGI9rHuwufoXjn1T1Wsam+W3vG6Fz9j8mhvg3POsm/fvupX+QHA9+b/AQAA///2vuLtAAAABklEQVQDAKBNJ7cMi/iyAAAAAElFTkSuQmCC","media_type":"image/png"}}]}]},"uuid":"21ffd119-ca5a-45a9-92d2-1f7b001a58ff","timestamp":"2026-06-10T08:34:10.151Z","toolUseResult":{"type":"image","file":{"base64":"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Hxvj1wIA6oOX8/3MAADUt4CAgCpvVahufk3erSw2Nvbhhx9+77331HRXC9b5vg81/BQZ/PKXv7Qcdx65GfSkMmVAkZGRajabvCMsLOzLX/6yWr/OY/d6XGabco0yB+tWhVGTuMrFtF8qYeWhW2tVQr2ryqnh0KE13KItKChIK6+u8LX6UpwpXNCalcvU04inqhPtY5XdpqqszFtWiwIUc1dUTdamvdOXXmXleDvUqj9XPVHJtcs1TKyAuqXQ0wKAu4EeKwCAO6q6lrz7DMKzhMJw00qvbQNeV+wnTJign0pSFH8kJSVpDc53GDnzuMw1bB5X2ZnFqOF+1WGd17Ym3XQR8jhVsRydL2oyqrHH3NRJlW/dcl+qTFWqW5ubwY9rksTdGbfzqwoAQCNFsAIAaIKUfWRnZ1d5T4QafvYDoWuroqJi2bJlgwcPHjt2rK7MZ2RkfPjhh/XakgcAAEADx61AAAAAABq9RncrUElJiaL5sLAwq56dOnVq/fr1Xbt2HTNmjJlTVFSk6oqKijLjUqekpKxatapbt27Tpk2zANQeTwUCAAAA0Oy8+uqr0dHRCQkJZixq2/PPP6/5zz33nFVv/va3v40fP75Lly49evQYNGjQs88+e/nyZes2uBkr+vz583Pnzn3ttde6d+9uOYZ1v/feezt16tSvXz/9/N73vqdwR5Wg5OXpp5/+8MMPLaAx279//5tvvunmXbHqAcEKAAAAgMbNgyGrv/KVryQlJSlWWLBggT1z165dCxcuDAsL+/GPf2zVg5KSkscee+w73/nOuXPnRo4c+eCDD2rOokWLpk6deujQIav2MjIy7nOo8t2ysrIvfelLil0U5bRt21ZNyvnz5x84cGDs2LFPPvlk69at33jjDRXG19dXyYvipG9961v2c9+ARkpHdZXZimb+f//f/6fj36oHBCsAAAAAmh1vb+//9//+n34qSVGeYjmGiP7+97+viR/96EcRERFWPdAW16xZk5CQsHPnzvfff/9//ud/FHa89NJL6enp3/72t63au3LlyrZt26p7+phakocPH/7GN77RtWtXvfztb39bVFT01FNPadM/+9nPfve732nmJ598oplt2rT54x//qJTnBz/4gQU0Wv369dMRXjlb0UvN1FuKFK16QLACAAAAoDnq06fPM888U1FRoTxF2cS777576NChUaNGPfjg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3Lx581atWrVz585hw4a5+ezZs2eDg4Ptl3l5eVevXrVuW1cHy1GxClYUpnzta1+rcsl9+/ZlZ2c///zzqknLkYkMHjxYKZXiFTfr//DDD92867JTaIy4FQgAAABAs9Mwn6xcQzUs/PHjx7dt2zZy5EiTqhhPP/20Qo1PP/3UZeELFy68/PLLI0aMGDdunMIXxQdm/quvvjpr1qw+ffq88MIL9k1DlWd+8cUXo0aNev/9980C69ate/TRR7t16zZjxgwlJs4bWrJkiVb+7LPPmlTFULain5988ol5+eabb9533336+MMPP2xmbt++XevPzMw8c+aMJr785S+/8sorY8aM0Vvvvvuu5vzud7/T9Llz5775zW8OGDBAO/K9733v+vXrlmP8Fy3w7//+7ytXrpw9e/agQYN+8YtfmPt3ast0ydHOXrp0SRP+/v6a3rJli3NvlN/+9rejR4+ePHnyRx99ZOZ86Utf0ku7lhYuXPid73ynd+/elXfKQuNEjxUAAAAAaIIUrOhn3759nWeGhoZWHjdEFEMoIFAEo8jg5z//uSIDhR179uxRHjFv3ryJEye+/fbbBw4cWL9+/b59+yrPzMvLS01NNUHGjh07nnrqqZYtWypf2Llzp2IFLTZhwgSzoWPHjulnv379nLc+fvz49PR0M63E5Mc//rHSn+HDh2/atGnjxo2a2bFjx7i4ODMWiSYUcISFhcXGxl68eNHM0X5duXJl/vz5Cim0ywpT3njjDYU+SjHKy8v1QaVRixYt0nZVLQpWunfvrtDHqiUVQ7nM7t27VbZ7771X1aWSOy/w1ltvKbJRJKQM5cUXX1RK1aZNm/Pnz58+fdpydLFRSf7whz8kJydHREQEBga67JSFxolgBQAAAACaIDt0cJlfebAPNfiVODz++ONTp05VANG/f/8lS5YoWFFionf/z//5P0lJSffcc49ylpycnCpnOq/tJz/5ibIMpRg9evRQXKL85Z133rGDlbS0NDelUirx05/+NCQkZNu2beHh4cqARo0a9aMf/Wjv3r3vvvtur169goODNWE+MnDgwDFjxjzyyCNmjBXlQUpVXnrppe985zsqwAsvvKBUZenSpeYeJa1KGY0iD2U9s2bNWr58uQfBinzwwQfKZf785z8vdFCwogJ36tTJvHvhwoWUlBSFSr/+9a//67/+a9WqVY899pjL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GhGsAAAAAHA5agEq0VA7StNhYWE//OEPlWgsXbq0erBiBl4x1PAzlwsZaoMVFRVVKW/mOI8BERERUb2Yqfn//u//CgsLlcKMGTNm3bp1FtCSvfjii7kOt912m56uWLHCcvTG+vDDD/VhUepx2WWXmZI68y3HOEf2ssoWayywb98+pSoKNG+44QbLcVnQW2+9tWbNGq2lSgjSqVOnzp07O89p166dHjds2GDPUciybdu2kJAQe9k///nPp06d0urefPPNKVOmWI3CGCsAAAAAXE55efnf/vY359vB6rfxQ4cOWY6uKAUFBfZ8584mWmrHjh32U7XQ1Jazn1ZWVlqOGEXNNrUS7fmq1rkBaYrJypUr/f399Tu8WozDhw/38vKygJZM53OcwxEHMzMrK0vp4cMPPzxq1CilJGamudFPz5498/Ly0tLS6ihgPhfp6enmg6OMUpGKIk539zOnGco3Y2NjVeeJEyfMnPXr1+vT7dyxxXJchXT55ZcrBlJqY388G4RgBQAAAIDLUYzSp08f/UZ94MABNaUyMzO//fbb+Ph4y3E7kl27dmmO5qutlZycbC+l5tyCBQsSExOLi4tnz56tNqG5LauPj09MTIwdpkyaNOn11183ty/Zu3fvwoULTdcY6dixo4lvLEePFTUOtRblNXPmzKlywQLQ4jz66KMbnFx88cWauWjRIuWGSi40/cADD7z77rt6VED585//vF27dn/4wx/69u37zjvv1FZAoaQ+mElJSXfdddd//vOf2267TdnK6NGjAwICqqz9n//85ytOlixZopn33XefHidMmPDEE0889NBDM2fOtBw38Kqy7PPPP6+0ZdasWSpmNRyXAgEAANeVmZm9f/+hY8eOp6dn5ucXWABahv//k7L963L1MR3q5ubm9rOf/eztt99+5JFHFJcEBQUNGjTommuu0Uv9+vUbMWLEPffcExoaqvDl+uuvt397V1tOEcnTTz+dk5MTFRX1y1/+MjIy0rx0xRVX/P3vf9ev67/4xS+0SElJyYMPPqi1+Pn53XvvvfawuJMnT3755ZeXLl06Y8aM8ePHr1279o477lC8Mm7cuM6dO5ssBmh9rrvuuvT0dGUfiksUayolqZJu1FHg888/10wFlEozQ0JC9NnRZ7D6Kj52cK5QH7Fbb73VdE976aWXLEey+bvf/U7zqyyrz6m5FEif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c/Hpp582c3x9T98Xyc3NzWo6r7322vPPP//UU09Nnz7daiIKjO655x4FK8uWLatP+ep7ClTxwAMPnDhxwnnO448//vLLL3t7e0+dOjUqKurLL7+8/fbbn3vuuRtuuMEuoxRy2rRpiuG6dOly3XXX7dmz5/PPP9+2bdvixYv1tVNSUnLRRRepWgUuY8aMWbt2rU7FKVOmaCIkJKT6Nih2cX46aNAgq95Gjx4dHR1tnU6Zj61YsWLJkiVPPPGENthqIIIVAAAAoLXp0SPeclzps2jRCnvmoEF9x427ICGhm4KVtLQMBSvdunVWfmE5wpewsP+2WE6dylPDRu2i+PjOO3eeHhilW7cuta2otLTMOp2e/DclSU4+2atXj549u2/ZsrO8vNzd3a137x6O+f+/D0hOTm5BQaECl44d4xITT/dnGTVq6NChA9es2XjymciE+AAAEABJREFUZJrmq5JVq9Zbpy9cirfOpLS01MvL08/P32os/boeGhpa//I7duw4cOCA4gbz1MvLq8n7qsjy5csb2rXkjNLS0lavXh0ff+ajalTZU6CK119/fd68ec5zFMW++eabmnj22WevvfZaTSikUDjyzDPPKP5QaGKKzZo1S6lKhw4dlJiYRPKuu+764osv3nnnnTvuuEMnv1KV4ODgr776KjAwUJ9xfUEoFpw/f/5VV11VZRtU/5NPPmk11k9+8pPx48ebaQU3yjH//ve/NyJY4VIgAAAAoLVJSDjdeN6790ClEzPeSteunZREKHPRHIUgN998zdSpk2688ar8/P8/GsLmzTv0+IMfjL/iiouvumra6NHD1bapcUXmXkLDhg0cO3akat6z50BKSlpUVJvrr79izJjh1157ebt2senpmc4j11qnU4PTNyeaNm3yxImjL7nkQqUqFRUVO3fuNcOsREe3GTFi8PjxF4wceXo8XXPtUm1UuXW6V/9Yq6npt2v9Gt+vXz/98P6Xv/zl5MmT2rYJEyb8/ve/16v//ve/Na1GoKbVGNN0dvbpvj96VdNqob311lta8IILLlA7raioaPv27Wo66hd4vbpq1Sp7LYsWLfrZz37W30FtvNTU1M2bN6vMt99+azlam5pWDZpWUPXSSy9deeWVqkQ/8n/wwQd2JXorVUY/8g8cOPDXv/61ApTqu3P//fdPnjxZE8pKJjjk5eXp6c6dO3/xi1+M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cePGb7/9VvUoGTFtdTVlhw8fvnXr1t27d6shrW0w15g4r1fLOu+gGu1V9re2bdPadayqDIKrtezZs8eqH9VcfXEdJVVrtsG5c4pVj1vJ6C1YsWKF85xRo0YpX6jx4FiO41PlNKhtPNpG3GFKaZSyFe1j9QhDcU9qaqoSE72qaMn5RtrKknSGmPnVt9D630SjNiaXcV6vKlG055zXnLEehSk603SS66wz22AfHG2V8/lp3iaVN9vsvA1ff/11lWr12THdwQDgfCFYAQAArkKta6UqgwYNMoO/GgoI1NJrRLBSpXVqrrOoznRXsa9tqbGwWstqCStAqXKdjumhoGCiT58+yk1OnDixd+/e+fPnX3LJJZqvHGTkyJF66fjx49oL/XRvX4hh1pucnGydiTILc62KogE1v53vj6s27eTJkzMyMhQ8rVy5cvDgwaZfRseOHRUKqBl/8OBBJQsXXXSRc0qi9aq1rHa+c7eR6sekxm3T/mobTF8Ym546v191U83VF9fxtzemoTfljYiImDFjhvMc897VdnDqX3/1kYbruT068tXvbL1r1y4z+I6OgM4H55eUYpSWltqDtlTfwvpss1m8ynuhRMN56F9zutZGHz2dujp5Jk6cqBglLy9v7ty59qv6bGo77c+FiRSrvO9mGy699FJ7jslllMic8W5KAHBOcSkQAABwFUoQ1A6Mj49v62TIkCFqHle//MG08c6+waYWeE5OjnIT3++oDVml8W85GsyZme5110YAAAUySURBVJm+TvRUbVEz+KjamWo9durUSY15LZuWlqYN3rRpk9qiCjUSEhJGjRqVlJSk8s7rVZmCggJ7zpYtW/bv319lvYcOHTLjvJpeMOY6IMtxWx/TT0QbNnDgQCUviYmJluNWPmq3KxRQEKO0yAwB41xhcHCwXlUj356jBdeuXVvlmNS2bXopJSXFufDJkyftbguKALTLzq9WeZtUUgfHuYxqUzO+QSlGlTo9/pe2obaDczaq9OCoTd++fc0dl5xnlpSUHD582FzgoyOgE8z5fDa3wao+3m2DmLfVeRyf4uJiuxdMjaq8WTpPdA4rgQoNDdVL9plmlJWVOV9VpHdNhav0QzEXnWnXzAdEBXTC130lFwB8PwhWAACAq1CwUn2QEbW6zRCzVea3adNGzb+jR49aZxevdO7c2c/PT+GIWr/msqMVK1ZU/21f6UZWVpYazCqjkuZaG4Ud5loSLW5iCAUWakyq5R8YGKgEYceOHaWlpVrEhBHOHWHU4lVstHr1arU8tYj2XclFlQthLEeDWQ1aNWuV1ygsUKvV7KyOiSpXWGP6O2hdpuXv7++/ceNGc1GGGvDmwh/nCvVUQYM2WIuoKj1u27atSvO7jm3Tslrp3r17tVJtktlx+3430dHRapA7t6WrvE2m28i6deu0lGrW26qaq4wTfEZnfOtrOzhnQ7GFggOlDyZNkzVr1ij2qlJMh65Hjx46LNu3b9cbp1NFp8Ty5ct1Gpv7OquSuLg4cyNqc/zXr1+v6M0EZ42mHezXr5/Wq1hHe62kb9WqVdqYGm+kbVR5s3SmFRYWmq1SlKnT23I6vOaGRKrWnMx646r3ytFhb9eunU4nExvp87JkyRIzDotOXb0jFgCcJ1wKBAAAXIJaoWqo28N2OlPaoua3GcPVpuxDjXy14tQuHThwYCOuFTL0u/q4ceM2bNjw5ZdfWo6G8YgRI6pf26LG/MiRI3fu3Km2q/KRmJgYFTPN9Z49e2oz5s+fr/hDC2o7zU/3+vFfrVNVa+4UY5c3NK0Ktd4FCxaYUW9Hjx5d/YYy2sctW7Z89tlnatirQa4WuGkJq7zqV3t17dq1qkqphxmAVmXUKlajWo1kLy8vtaur3K5YVImax1pQZXQY9dS0+euzbdq1UaNGqZGs4MAclrFjx9qXsURFRSmR0aFQ/VOmTFFbvfrbpKOt6Gfu3Lk6LCowbNiwhg4Te8a3vraDc5b0RmuvP/30U52l2mwlO3pTzG2bnZkbGOtU0QZoH3VK6GzRdtq9cnQm6AgsXbpUsYs21YzLY501vYk67DpblGvorVduMmTIkNqugLOqvVk683UkzVYpRhk0aJCmi4uLzVVaeou1nTqvlK1oTnx8fPVgRYdau7Zp06ZFixYpTwkKClIZk+ycPHnSeRxcAPieuT3xxBMWAAAAalFQUKCW3tl3SVDzsry83HlU0RqpxagWco3tVTUdqw9Aazo41DG8hV7VgnWP7qm2rjasxn2s7aUaN6YKJVl1r7eObdNx0EGo8RIeHUm7QW6r8japjCKbs+ymcca3vo7j1mg6aKqzPtcumc5NdRzhMx7/xqnPW2+r8mbpHdc217G4OaQ1vuTce8jcOcueqUfldHPmzLEA4HygxwoAAEBd6j9yat3cHc5YrI7kpcbm6Blb4Gr2n7F1XUcAUdtL9Wlan3G9dWxbHcdBh7H6yLhV3iaVOctUxarHW3/2q6iu/lGI9rHuwufoXjn1T1Wsam+W3vG6Fz9j8mhvg3POsm/fvupX+QHA9+b/AQAA///2vuLtAAAABklEQVQDAKBNJ7cMi/iyAAAAAElFTkSuQmCC","type":"image/png","originalSize":71241,"dimensions":{"originalWidth":1480,"originalHeight":800,"displayWidth":1480,"displayHeight":800}}},"sourceToolAssistantUUID":"d8dfbfff-e81c-4f36-a3d5-cd2d345183ad","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"21ffd119-ca5a-45a9-92d2-1f7b001a58ff","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"21ffd119-ca5a-45a9-92d2-1f7b001a58ff","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012x1Grio1HP4MnuJZhV5Eo6","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISxgIKYggOGAIqQPtnd3gY8Oj0byW3ycG9cBENLG83pReXZwEiMWl6gd7j6wv0d+v1ggqcpUCBpxsXWcwb9EVnS4WxDTMtZWmBoiwyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwP9EZicXWUxUBlnlkaDGiXNU5u2ZGrGncs0CIwNUdyqsYk5zK7Tw7TK209oE2Awi4we2HQknrSc78KKaZFJi8w2QWjps6Q1RPTMS5TKpEBKxzYX03Y1Noer87cOKtaIKzLV8IbjZY2RziGZloFpV/g7dlHlwD2Fp40/9qEOwj+0BsaKej+a5B9SRrs4bHivqtBDM2vLuY0yBt2gaZAoundlDZEUDcKxLEb06+F3dLFCakQqow3m3oIfB8FrAH/DwZhWmS6JTmu7ey5NwU3Ze42WaJfrLavh4PyHQV0bMrMIxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1633,"cache_read_input_tokens":189394,"output_tokens":230,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1633,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":230,"cache_read_input_tokens":189394,"cache_creation_input_tokens":1633,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1633},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGgoy2XAAE4mWpmZWSf","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"1966885b-edcc-423b-9416-a80a8982d5e8","timestamp":"2026-06-10T08:34:16.378Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1966885b-edcc-423b-9416-a80a8982d5e8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012x1Grio1HP4MnuJZhV5Eo6","type":"message","role":"assistant","content":[{"type":"text","text":"Cart drawer works (M/Navy ×2 = 49.98 EUR). Applying discount WELCOME10 and proceeding to checkout."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1633,"cache_read_input_tokens":189394,"output_tokens":230,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1633,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":230,"cache_read_input_tokens":189394,"cache_creation_input_tokens":1633,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1633},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGgoy2XAAE4mWpmZWSf","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"65e87ec8-2d41-4f75-b2b9-80b4d427bf39","timestamp":"2026-06-10T08:34:16.386Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"65e87ec8-2d41-4f75-b2b9-80b4d427bf39","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012x1Grio1HP4MnuJZhV5Eo6","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01W6gGWPs2UsX13CSzuFATHY","name":"mcp__playwright__browser_type","input":{"element":"Discount code input","target":"input[placeholder=\"Discount code\"]","text":"WELCOME10"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1633,"cache_read_input_tokens":189394,"output_tokens":230,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1633,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":230,"cache_read_input_tokens":189394,"cache_creation_input_tokens":1633,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1633},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGgoy2XAAE4mWpmZWSf","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"f00b3172-5689-4b77-8f02-f15f65640f2e","timestamp":"2026-06-10T08:34:16.766Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f00b3172-5689-4b77-8f02-f15f65640f2e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01W6gGWPs2UsX13CSzuFATHY","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('input[placeholder=\"Discount code\"]').fill('WELCOME10');\n```"}]}]},"uuid":"5a827e01-e7e3-4b14-b758-6f4e9c159a34","timestamp":"2026-06-10T08:34:16.791Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('input[placeholder=\"Discount code\"]').fill('WELCOME10');\n```"}],"sourceToolAssistantUUID":"f00b3172-5689-4b77-8f02-f15f65640f2e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5a827e01-e7e3-4b14-b758-6f4e9c159a34","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"db7b00c5-f120-4c85-bc55-5b9ee0705f8f","timestamp":"2026-06-10T08:34:16.837Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"db7b00c5-f120-4c85-bc55-5b9ee0705f8f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PJa1xZ2qZTPHVy7F5Z8jf4","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011Fd51aJrrff9httr7QkY1B","name":"mcp__playwright__browser_click","input":{"element":"Apply discount button","target":"button:has-text(\"Apply\")"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":280,"cache_read_input_tokens":191027,"output_tokens":91,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":280,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":91,"cache_read_input_tokens":191027,"cache_creation_input_tokens":280,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":280},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGhGQFttQQbkiYQxbXF","attributionMcpServer":"playwright","attributionMcpTool":"browser_type","type":"assistant","uuid":"7955c0a9-4985-4d64-aa40-c2a4a6938ce1","timestamp":"2026-06-10T08:34:21.066Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7955c0a9-4985-4d64-aa40-c2a4a6938ce1","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_011Fd51aJrrff9httr7QkY1B","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('button:has-text(\"Apply\")').click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-23-098Z.yml)"}]}]},"uuid":"9d50a568-cf0c-47b9-a85e-88b8baeb5d2c","timestamp":"2026-06-10T08:34:23.101Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('button:has-text(\"Apply\")').click();\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-23-098Z.yml)"}],"sourceToolAssistantUUID":"7955c0a9-4985-4d64-aa40-c2a4a6938ce1","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9d50a568-cf0c-47b9-a85e-88b8baeb5d2c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_017c2bmChN4C82G8pgUnjuZW","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01EsQj5UK8ugbZ5ih2S3wLNm","name":"mcp__playwright__browser_wait_for","input":{"text":"WELCOME10"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":366,"cache_read_input_tokens":191307,"output_tokens":64,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":366,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":64,"cache_read_input_tokens":191307,"cache_creation_input_tokens":366,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":366},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGhjDoNBuh2SaJDNG5g","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"30942784-f518-42a9-9e64-b9afc5161a56","timestamp":"2026-06-10T08:34:27.664Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"30942784-f518-42a9-9e64-b9afc5161a56","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01EsQj5UK8ugbZ5ih2S3wLNm","type":"tool_result","content":[{"type":"text","text":"### Result\nWaited for WELCOME10\n### Ran Playwright code\n```js\nawait page.getByText(\"WELCOME10\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-27-680Z.yml)"}]}]},"uuid":"acf84f0a-6a99-49fb-9ca6-1c9b0c3516e4","timestamp":"2026-06-10T08:34:27.687Z","toolUseResult":[{"type":"text","text":"### Result\nWaited for WELCOME10\n### Ran Playwright code\n```js\nawait page.getByText(\"WELCOME10\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-27-680Z.yml)"}],"sourceToolAssistantUUID":"30942784-f518-42a9-9e64-b9afc5161a56","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"acf84f0a-6a99-49fb-9ca6-1c9b0c3516e4","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01MRfzgvqc3cNN94LEuWLej9","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_018pUtSaWE6hEekEfRk6UaXH","name":"mcp__playwright__browser_click","input":{"element":"Checkout button in drawer","target":"button:has-text(\"Checkout\")"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":236,"cache_read_input_tokens":191673,"output_tokens":95,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":236,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":95,"cache_read_input_tokens":191673,"cache_creation_input_tokens":236,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":236},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGi5KXvJvpTUMm2E89j","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"a6bae9ae-4537-482e-971c-f4084610aa30","timestamp":"2026-06-10T08:34:32.829Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a6bae9ae-4537-482e-971c-f4084610aa30","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: \"button:has-text(\"Checkout\")\" does not match any elements.","is_error":true,"tool_use_id":"toolu_018pUtSaWE6hEekEfRk6UaXH"}]},"uuid":"67d6b462-a0a8-4148-abd5-d7ef5d2a1d22","timestamp":"2026-06-10T08:34:32.837Z","toolUseResult":"Error: ### Error\nError: \"button:has-text(\"Checkout\")\" does not match any elements.","sourceToolAssistantUUID":"a6bae9ae-4537-482e-971c-f4084610aa30","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"67d6b462-a0a8-4148-abd5-d7ef5d2a1d22","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01EXVGw6VvnQUyuPHnxLEmcx","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_013rZiwLNAWhzD1ChtG3boRK","name":"mcp__playwright__browser_snapshot","input":{"depth":12,"target":"aside, [role=dialog]"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":133,"cache_read_input_tokens":191909,"output_tokens":90,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":133,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":90,"cache_read_input_tokens":191909,"cache_creation_input_tokens":133,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":133},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGiWiFpFhaZPnXmdPVN","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"a4f82bd6-4b78-4f74-a2a4-03bf9adb2e19","timestamp":"2026-06-10T08:34:39.053Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a4f82bd6-4b78-4f74-a2a4-03bf9adb2e19","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('aside, [role=dialog]') resolved to 3 elements:\n    1) <div role=\"dialog\" aria-modal=\"true\" x-show=\"mobileNavOpen\" aria-label=\"Mobile navigation\" class=\"relative z-50 lg:hidden\">…</div> aka getByLabel('Mobile navigation').first()\n    2) <div x-show=\"open\" role=\"dialog\" aria-modal=\"true\" class=\"relative z-50\" aria-label=\"Shopping cart\">…</div> aka getByRole('dialog', { name: 'Shopping cart' })\n    3) <div x-show=\"open\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Search\" class=\"relative z-50\">…</div> aka getByLabel('Search').nth(1)","is_error":true,"tool_use_id":"toolu_013rZiwLNAWhzD1ChtG3boRK"}]},"uuid":"cfd0b1a2-6082-4bab-a216-4df505953243","timestamp":"2026-06-10T08:34:39.067Z","toolUseResult":"Error: ### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('aside, [role=dialog]') resolved to 3 elements:\n    1) <div role=\"dialog\" aria-modal=\"true\" x-show=\"mobileNavOpen\" aria-label=\"Mobile navigation\" class=\"relative z-50 lg:hidden\">…</div> aka getByLabel('Mobile navigation').first()\n    2) <div x-show=\"open\" role=\"dialog\" aria-modal=\"true\" class=\"relative z-50\" aria-label=\"Shopping cart\">…</div> aka getByRole('dialog', { name: 'Shopping cart' })\n    3) <div x-show=\"open\" role=\"dialog\" aria-modal=\"true\" aria-label=\"Search\" class=\"relative z-50\">…</div> aka getByLabel('Search').nth(1)","sourceToolAssistantUUID":"a4f82bd6-4b78-4f74-a2a4-03bf9adb2e19","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cfd0b1a2-6082-4bab-a216-4df505953243","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_019C7tAWnZCLHv1kbwcwsSEp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017oTtX2iZXk41FafGXggdSY","name":"mcp__playwright__browser_snapshot","input":{"depth":15,"target":"getByRole('dialog', { name: 'Shopping cart' })"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":371,"cache_read_input_tokens":192042,"output_tokens":102,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":371,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":102,"cache_read_input_tokens":192042,"cache_creation_input_tokens":371,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":371},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGiwHcYpfBfDwC3g1a9","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"dad11abc-90b7-4993-b6b6-ee35c9af1f2b","timestamp":"2026-06-10T08:34:45.996Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"dad11abc-90b7-4993-b6b6-ee35c9af1f2b","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017oTtX2iZXk41FafGXggdSY","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n```yaml\n- dialog \"Shopping cart\":\n  - generic [ref=e161]:\n    - generic [ref=e162]:\n      - heading \"Your Cart (2)\" [level=2] [ref=e163]\n      - button \"Close cart\" [ref=e164]:\n        - img [ref=e165]\n    - list [ref=e167]:\n      - listitem [ref=e168]:\n        - generic [ref=e170]:\n          - paragraph [ref=e171]: Classic Cotton T-Shirt\n          - paragraph [ref=e172]: M / Navy\n          - generic [ref=e173]:\n            - generic [ref=e174]:\n              - button \"Decrease quantity\" [ref=e175]:\n                - img [ref=e176]\n              - generic [ref=e177]: \"2\"\n              - button \"Increase quantity\" [ref=e178]:\n                - img [ref=e179]\n            - generic [ref=e182]: 49.98 EUR\n          - button \"Remove Classic Cotton T-Shirt from cart\" [ref=e184]:\n            - img [ref=e185]\n    - generic [ref=e207]:\n      - generic [ref=e208]: WELCOME10 (-4.99 EUR)\n      - button \"Remove\" [ref=e209]\n    - generic [ref=e192]:\n      - generic [ref=e193]:\n        - generic [ref=e194]:\n          - term [ref=e195]: Subtotal\n          - definition [ref=e196]:\n            - generic [ref=e198]: 49.98 EUR\n        - generic [ref=e210]:\n          - term [ref=e211]: Discount (WELCOME10)\n          - definition [ref=e212]: \"-4.99 EUR\"\n        - generic [ref=e199]:\n          - term [ref=e200]: Estimated total\n          - definition [ref=e201]:\n            - generic [ref=e203]: 44.99 EUR\n      - paragraph [ref=e204]: Shipping and taxes calculated at checkout\n      - link \"Checkout\" [ref=e205] [cursor=pointer]:\n        - /url: http://shop.test/checkout\n      - button \"Continue shopping\" [ref=e206]\n```"}]}]},"uuid":"59221562-156e-4ee0-a5dd-c92fd255af2f","timestamp":"2026-06-10T08:34:46.006Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/products/classic-cotton-t-shirt\n- Page Title: Classic Cotton T-Shirt - Acme Fashion\n### Snapshot\n```yaml\n- dialog \"Shopping cart\":\n  - generic [ref=e161]:\n    - generic [ref=e162]:\n      - heading \"Your Cart (2)\" [level=2] [ref=e163]\n      - button \"Close cart\" [ref=e164]:\n        - img [ref=e165]\n    - list [ref=e167]:\n      - listitem [ref=e168]:\n        - generic [ref=e170]:\n          - paragraph [ref=e171]: Classic Cotton T-Shirt\n          - paragraph [ref=e172]: M / Navy\n          - generic [ref=e173]:\n            - generic [ref=e174]:\n              - button \"Decrease quantity\" [ref=e175]:\n                - img [ref=e176]\n              - generic [ref=e177]: \"2\"\n              - button \"Increase quantity\" [ref=e178]:\n                - img [ref=e179]\n            - generic [ref=e182]: 49.98 EUR\n          - button \"Remove Classic Cotton T-Shirt from cart\" [ref=e184]:\n            - img [ref=e185]\n    - generic [ref=e207]:\n      - generic [ref=e208]: WELCOME10 (-4.99 EUR)\n      - button \"Remove\" [ref=e209]\n    - generic [ref=e192]:\n      - generic [ref=e193]:\n        - generic [ref=e194]:\n          - term [ref=e195]: Subtotal\n          - definition [ref=e196]:\n            - generic [ref=e198]: 49.98 EUR\n        - generic [ref=e210]:\n          - term [ref=e211]: Discount (WELCOME10)\n          - definition [ref=e212]: \"-4.99 EUR\"\n        - generic [ref=e199]:\n          - term [ref=e200]: Estimated total\n          - definition [ref=e201]:\n            - generic [ref=e203]: 44.99 EUR\n      - paragraph [ref=e204]: Shipping and taxes calculated at checkout\n      - link \"Checkout\" [ref=e205] [cursor=pointer]:\n        - /url: http://shop.test/checkout\n      - button \"Continue shopping\" [ref=e206]\n```"}],"sourceToolAssistantUUID":"dad11abc-90b7-4993-b6b6-ee35c9af1f2b","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"59221562-156e-4ee0-a5dd-c92fd255af2f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01QoxedXqGKXtVabpCiXp8R3","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISlQIKYggOGAIqQHY5p3jqzDQElGN2opYBQ18tAJuzkhhKyZb3ek5jsKt3voHGFg7bTOZvpV7Xuy8BXh6v/Fs4dDrft145PZXI4ycyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxnkQWAHyZssp2PpxkaDNvS81hmYuRfwkVLEyIw8MTg9hmpzB6dcGKeQN7oqu4EYfNF0lqcHQc7bgaTvpG3txKCu64ftS733suMFSwwKmHh0bIUmsIEAUyTj7KY88Y4xNo0KKNp3MJxW13p3ebX3Xt3knTN7Gr0mPeQTY/q7rTCdvhdjst1a5Z97uPlTmti7P9i2sCdNrESBaIlWIWznnMgesVFPO3HSq5CFIlFLb8fGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":896,"cache_read_input_tokens":192413,"output_tokens":148,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":896,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":148,"cache_read_input_tokens":192413,"cache_creation_input_tokens":896,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":896},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGjTP79Ej8PN3AETW3K","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"22975cdf-859e-4339-9e46-d953f5dcbac9","timestamp":"2026-06-10T08:34:51.982Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"22975cdf-859e-4339-9e46-d953f5dcbac9","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01QoxedXqGKXtVabpCiXp8R3","type":"message","role":"assistant","content":[{"type":"text","text":"Discount applied (-4.99 EUR). Heading to checkout."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":896,"cache_read_input_tokens":192413,"output_tokens":148,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":896,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":148,"cache_read_input_tokens":192413,"cache_creation_input_tokens":896,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":896},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGjTP79Ej8PN3AETW3K","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"0b384c01-51df-4bb1-9e64-d6a2c27ffef0","timestamp":"2026-06-10T08:34:51.982Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0b384c01-51df-4bb1-9e64-d6a2c27ffef0","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01QoxedXqGKXtVabpCiXp8R3","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01VGqEbb88DQXFEE9DnmoHFq","name":"mcp__playwright__browser_click","input":{"element":"Checkout link","target":"e205"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":896,"cache_read_input_tokens":192413,"output_tokens":148,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":896,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":148,"cache_read_input_tokens":192413,"cache_creation_input_tokens":896,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":896},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGjTP79Ej8PN3AETW3K","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"96bfb64c-3121-4ca8-962b-baf34052a3e6","timestamp":"2026-06-10T08:34:51.983Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"96bfb64c-3121-4ca8-962b-baf34052a3e6","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01VGqEbb88DQXFEE9DnmoHFq","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('link', { name: 'Checkout' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-53-095Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-10-628Z.log#L2"}]}]},"uuid":"11016c5d-6977-4c98-abcb-38de58344abb","timestamp":"2026-06-10T08:34:53.098Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('link', { name: 'Checkout' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-34-53-095Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-10-628Z.log#L2"}],"sourceToolAssistantUUID":"96bfb64c-3121-4ca8-962b-baf34052a3e6","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"11016c5d-6977-4c98-abcb-38de58344abb","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_011QodLtQ38ARK2FAhYuSYMq","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01C65hT92xUTj367rfwRtFP3","name":"mcp__playwright__browser_snapshot","input":{"depth":22,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":322,"cache_read_input_tokens":193309,"output_tokens":81,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":322,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":81,"cache_read_input_tokens":193309,"cache_creation_input_tokens":322,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":322},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGjwTZKqSK7fNQhJVks","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"fe510322-eb22-487b-89c1-b88812d85af8","timestamp":"2026-06-10T08:34:57.040Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"fe510322-eb22-487b-89c1-b88812d85af8","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01C65hT92xUTj367rfwRtFP3","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - heading \"1. Contact information\" [level=2] [ref=e43]\n          - generic [ref=e44]:\n            - generic [ref=e45]:\n              - generic [ref=e46]: Email *\n              - textbox \"Email\" [ref=e47]\n              - paragraph [ref=e48]:\n                - text: Already have an account?\n                - link \"Log in\" [ref=e49] [cursor=pointer]:\n                  - /url: http://shop.test/account/login\n            - button \"Continue\" [ref=e50]\n        - region \"2. Shipping address\" [ref=e51]:\n          - heading \"2. Shipping address\" [level=2] [ref=e53]\n        - region \"3. Shipping method\" [ref=e54]:\n          - heading \"3. Shipping method\" [level=2] [ref=e56]\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]: Calculated at next step\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 44.99 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}]}]},"uuid":"9319632b-8283-4a44-8717-64d6951ba8b1","timestamp":"2026-06-10T08:34:57.054Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - heading \"1. Contact information\" [level=2] [ref=e43]\n          - generic [ref=e44]:\n            - generic [ref=e45]:\n              - generic [ref=e46]: Email *\n              - textbox \"Email\" [ref=e47]\n              - paragraph [ref=e48]:\n                - text: Already have an account?\n                - link \"Log in\" [ref=e49] [cursor=pointer]:\n                  - /url: http://shop.test/account/login\n            - button \"Continue\" [ref=e50]\n        - region \"2. Shipping address\" [ref=e51]:\n          - heading \"2. Shipping address\" [level=2] [ref=e53]\n        - region \"3. Shipping method\" [ref=e54]:\n          - heading \"3. Shipping method\" [level=2] [ref=e56]\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]: Calculated at next step\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 44.99 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}],"sourceToolAssistantUUID":"fe510322-eb22-487b-89c1-b88812d85af8","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"9319632b-8283-4a44-8717-64d6951ba8b1","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"9319632b-8283-4a44-8717-64d6951ba8b1","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01SgYyYDmPf3suTmMVMF9hTe","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011wvAVdFmjLU8G9JLHW29cr","name":"mcp__playwright__browser_type","input":{"element":"Email field","target":"e47","text":"erika.musterfrau@example.com"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1013,"cache_read_input_tokens":193631,"output_tokens":112,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1013,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":112,"cache_read_input_tokens":193631,"cache_creation_input_tokens":1013,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1013},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGkEiPQz7N7ma5Lad6N","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"07ce9a08-bb19-4d34-a188-1df3c37807b1","timestamp":"2026-06-10T08:35:01.574Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"07ce9a08-bb19-4d34-a188-1df3c37807b1","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_011wvAVdFmjLU8G9JLHW29cr","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Email' }).fill('erika.musterfrau@example.com');\n```"}]}]},"uuid":"7fdb418a-623a-41b1-a4c9-d4cec79713a9","timestamp":"2026-06-10T08:35:01.596Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Email' }).fill('erika.musterfrau@example.com');\n```"}],"sourceToolAssistantUUID":"07ce9a08-bb19-4d34-a188-1df3c37807b1","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7fdb418a-623a-41b1-a4c9-d4cec79713a9","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UbJxBPEsTFt4zXv73eonSN","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_012MUooFLmjm1G86uZmGeRrc","name":"mcp__playwright__browser_click","input":{"element":"Continue button (contact)","target":"e50"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":170,"cache_read_input_tokens":194644,"output_tokens":85,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":170,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":85,"cache_read_input_tokens":194644,"cache_creation_input_tokens":170,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":170},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGka1FaxCDdcMWT1zrd","attributionMcpServer":"playwright","attributionMcpTool":"browser_type","type":"assistant","uuid":"303832ba-4579-4c1b-861f-9a03016608ac","timestamp":"2026-06-10T08:35:06.222Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d3ac3b6c-37ee-4ebe-b8eb-79f0c3578b59","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"904950e0-dce7-426c-abfd-7768bb8e120f","timestamp":"2026-06-10T08:35:08.264Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"303832ba-4579-4c1b-861f-9a03016608ac","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_012MUooFLmjm1G86uZmGeRrc","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Continue' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-08-257Z.yml)"}]}]},"uuid":"d3ac3b6c-37ee-4ebe-b8eb-79f0c3578b59","timestamp":"2026-06-10T08:35:08.259Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Continue' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-08-257Z.yml)"}],"sourceToolAssistantUUID":"303832ba-4579-4c1b-861f-9a03016608ac","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"904950e0-dce7-426c-abfd-7768bb8e120f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RceXByaiD6EUix9R9meh3G","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Af2FRmYH2dc1c4yPpA63di","name":"mcp__playwright__browser_snapshot","input":{"depth":20,"target":"region[name*=\"Shipping address\"], section:has(h2:has-text(\"Shipping address\"))"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":215,"cache_read_input_tokens":194814,"output_tokens":110,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":215,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":110,"cache_read_input_tokens":194814,"cache_creation_input_tokens":215,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":215},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGm4UmPEfEzrtvcHpAK","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"4b1c81e7-e1df-465d-931b-4789e8da8e92","timestamp":"2026-06-10T08:35:12.756Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4b1c81e7-e1df-465d-931b-4789e8da8e92","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Af2FRmYH2dc1c4yPpA63di","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- region \"2. Shipping address\" [ref=e51]:\n  - heading \"2. Shipping address\" [level=2] [ref=e53]\n  - generic [ref=e136]:\n    - generic [ref=e137]:\n      - generic [ref=e138]:\n        - generic [ref=e139]: First name *\n        - textbox \"First name\" [ref=e140]\n      - generic [ref=e141]:\n        - generic [ref=e142]: Last name *\n        - textbox \"Last name\" [ref=e143]\n      - generic [ref=e144]:\n        - generic [ref=e145]: Address line 1 *\n        - textbox \"Address line 1\" [ref=e146]\n      - generic [ref=e147]:\n        - generic [ref=e148]: Address line 2\n        - textbox \"Address line 2\" [ref=e149]\n      - generic [ref=e150]:\n        - generic [ref=e151]: City *\n        - textbox \"City\" [ref=e152]\n      - generic [ref=e153]:\n        - generic [ref=e154]: State / Province\n        - textbox \"State / Province\" [ref=e155]\n      - generic [ref=e156]:\n        - generic [ref=e157]: Postal code *\n        - textbox \"Postal code\" [ref=e158]\n      - generic [ref=e159]:\n        - generic [ref=e160]: Country *\n        - combobox \"Country\" [ref=e161]:\n          - option \"Select a country\" [selected]\n          - option \"Germany\"\n          - option \"Austria\"\n          - option \"Belgium\"\n          - option \"France\"\n          - option \"Italy\"\n          - option \"Netherlands\"\n          - option \"Spain\"\n          - option \"United Kingdom\"\n          - option \"United States\"\n      - generic [ref=e162]:\n        - generic [ref=e163]: Phone\n        - textbox \"Phone\" [ref=e164]\n    - button \"Continue\" [ref=e165]\n```"}]}]},"uuid":"da191d83-1be5-46f1-ab15-ae06bf23cf6b","timestamp":"2026-06-10T08:35:12.765Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- region \"2. Shipping address\" [ref=e51]:\n  - heading \"2. Shipping address\" [level=2] [ref=e53]\n  - generic [ref=e136]:\n    - generic [ref=e137]:\n      - generic [ref=e138]:\n        - generic [ref=e139]: First name *\n        - textbox \"First name\" [ref=e140]\n      - generic [ref=e141]:\n        - generic [ref=e142]: Last name *\n        - textbox \"Last name\" [ref=e143]\n      - generic [ref=e144]:\n        - generic [ref=e145]: Address line 1 *\n        - textbox \"Address line 1\" [ref=e146]\n      - generic [ref=e147]:\n        - generic [ref=e148]: Address line 2\n        - textbox \"Address line 2\" [ref=e149]\n      - generic [ref=e150]:\n        - generic [ref=e151]: City *\n        - textbox \"City\" [ref=e152]\n      - generic [ref=e153]:\n        - generic [ref=e154]: State / Province\n        - textbox \"State / Province\" [ref=e155]\n      - generic [ref=e156]:\n        - generic [ref=e157]: Postal code *\n        - textbox \"Postal code\" [ref=e158]\n      - generic [ref=e159]:\n        - generic [ref=e160]: Country *\n        - combobox \"Country\" [ref=e161]:\n          - option \"Select a country\" [selected]\n          - option \"Germany\"\n          - option \"Austria\"\n          - option \"Belgium\"\n          - option \"France\"\n          - option \"Italy\"\n          - option \"Netherlands\"\n          - option \"Spain\"\n          - option \"United Kingdom\"\n          - option \"United States\"\n      - generic [ref=e162]:\n        - generic [ref=e163]: Phone\n        - textbox \"Phone\" [ref=e164]\n    - button \"Continue\" [ref=e165]\n```"}],"sourceToolAssistantUUID":"4b1c81e7-e1df-465d-931b-4789e8da8e92","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"da191d83-1be5-46f1-ab15-ae06bf23cf6b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VHZPca7czW7dzkyhjSgVKk","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01AnaFoDoyRZcMikP5zZqozZ","name":"mcp__playwright__browser_fill_form","input":{"fields":[{"target":"e140","name":"First name","type":"textbox","value":"Erika"},{"target":"e143","name":"Last name","type":"textbox","value":"Musterfrau"},{"target":"e146","name":"Address line 1","type":"textbox","value":"Musterstrasse 12"},{"target":"e152","name":"City","type":"textbox","value":"Berlin"},{"target":"e158","name":"Postal code","type":"textbox","value":"10115"},{"target":"e161","name":"Country","type":"combobox","value":"Germany"}]},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":918,"cache_read_input_tokens":195029,"output_tokens":249,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":918,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":249,"cache_read_input_tokens":195029,"cache_creation_input_tokens":918,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":918},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGmPzmNYNhHobP5NpwT","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"98b85803-3046-4b98-af89-d98dd014448b","timestamp":"2026-06-10T08:35:19.022Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"98b85803-3046-4b98-af89-d98dd014448b","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01AnaFoDoyRZcMikP5zZqozZ","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'First name' }).fill('Erika');\nawait page.getByRole('textbox', { name: 'Last name' }).fill('Musterfrau');\nawait page.getByRole('textbox', { name: 'Address line 1' }).fill('Musterstrasse 12');\nawait page.getByRole('textbox', { name: 'City' }).fill('Berlin');\nawait page.getByRole('textbox', { name: 'Postal code' }).fill('10115');\nawait page.getByLabel('Country *').selectOption('Germany');\n```"}]}]},"uuid":"00379328-006d-43c6-b275-aecbfb7cc7e8","timestamp":"2026-06-10T08:35:19.084Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'First name' }).fill('Erika');\nawait page.getByRole('textbox', { name: 'Last name' }).fill('Musterfrau');\nawait page.getByRole('textbox', { name: 'Address line 1' }).fill('Musterstrasse 12');\nawait page.getByRole('textbox', { name: 'City' }).fill('Berlin');\nawait page.getByRole('textbox', { name: 'Postal code' }).fill('10115');\nawait page.getByLabel('Country *').selectOption('Germany');\n```"}],"sourceToolAssistantUUID":"98b85803-3046-4b98-af89-d98dd014448b","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"00379328-006d-43c6-b275-aecbfb7cc7e8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UTEYfvRbN8EnGawXvShLig","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01EW7qYYb2LDMxZh6JZBctf6","name":"mcp__playwright__browser_click","input":{"element":"Continue button (address)","target":"e165"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":478,"cache_read_input_tokens":195947,"output_tokens":84,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":478,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":84,"cache_read_input_tokens":195947,"cache_creation_input_tokens":478,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":478},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGmrcALoipy9uFrxZS5","attributionMcpServer":"playwright","attributionMcpTool":"browser_fill_form","type":"assistant","uuid":"f084848b-2a3c-4ca4-a41b-f0a2422687a2","timestamp":"2026-06-10T08:35:23.379Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f084848b-2a3c-4ca4-a41b-f0a2422687a2","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01EW7qYYb2LDMxZh6JZBctf6","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Continue' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-25-425Z.yml)"}]}]},"uuid":"08c2046c-4de1-48d4-a520-1e8bf6a1343e","timestamp":"2026-06-10T08:35:25.427Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Continue' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-25-425Z.yml)"}],"sourceToolAssistantUUID":"f084848b-2a3c-4ca4-a41b-f0a2422687a2","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"08c2046c-4de1-48d4-a520-1e8bf6a1343e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01KcmjRNNTZYiu8UA4SF7jWM","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017rLmer7RzyULK8qYhZqnCB","name":"mcp__playwright__browser_snapshot","input":{"depth":18,"target":"region[name*=\"Shipping method\"]"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":214,"cache_read_input_tokens":196425,"output_tokens":92,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":214,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":92,"cache_read_input_tokens":196425,"cache_creation_input_tokens":214,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":214},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGnLyUTu9bZwuuUQeCC","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"cc5d1a4a-b01f-458c-b2a7-6a2986a747b9","timestamp":"2026-06-10T08:35:30.256Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cc5d1a4a-b01f-458c-b2a7-6a2986a747b9","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: \"region[name*=\"Shipping method\"]\" does not match any elements.","is_error":true,"tool_use_id":"toolu_017rLmer7RzyULK8qYhZqnCB"}]},"uuid":"ba83238e-1591-4bab-a343-d02453ded0a1","timestamp":"2026-06-10T08:35:30.263Z","toolUseResult":"Error: ### Error\nError: \"region[name*=\"Shipping method\"]\" does not match any elements.","sourceToolAssistantUUID":"cc5d1a4a-b01f-458c-b2a7-6a2986a747b9","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ba83238e-1591-4bab-a343-d02453ded0a1","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_015QzvFzgiiqNUFn44HzkjEy","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_012YgqoS4J3ZRYH1kFj7969y","name":"mcp__playwright__browser_snapshot","input":{"depth":20,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":131,"cache_read_input_tokens":196639,"output_tokens":81,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":131,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":81,"cache_read_input_tokens":196639,"cache_creation_input_tokens":131,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":131},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGngaCTtpWw5rsqPr3z","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"dffd3bd0-413c-46e3-9b25-eb19b83f2798","timestamp":"2026-06-10T08:35:34.394Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"dffd3bd0-413c-46e3-9b25-eb19b83f2798","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_012YgqoS4J3ZRYH1kFj7969y","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - generic [ref=e42]:\n            - heading \"1. Contact information\" [level=2] [ref=e43]\n            - button \"Edit\" [ref=e134]\n          - paragraph [ref=e135]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e51]:\n          - generic [ref=e52]:\n            - heading \"2. Shipping address\" [level=2] [ref=e53]\n            - button \"Edit\" [ref=e166]\n          - paragraph [ref=e167]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e54]:\n          - heading \"3. Shipping method\" [level=2] [ref=e56]\n          - generic [ref=e168]:\n            - group \"Shipping method\" [ref=e169]:\n              - generic [ref=e170]: Shipping method\n              - generic [ref=e171]:\n                - generic [ref=e172] [cursor=pointer]:\n                  - generic [ref=e173]:\n                    - radio \"Standard Shipping 4.99 EUR\" [ref=e174]\n                    - generic [ref=e175]: Standard Shipping\n                  - generic [ref=e177]: 4.99 EUR\n                - generic [ref=e178] [cursor=pointer]:\n                  - generic [ref=e179]:\n                    - radio \"Express Shipping 9.99 EUR\" [ref=e180]\n                    - generic [ref=e181]: Express Shipping\n                  - generic [ref=e183]: 9.99 EUR\n            - button \"Continue\" [disabled] [ref=e184]\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]: Calculated at next step\n            - generic [ref=e185]:\n              - term [ref=e186]: Tax\n              - definition [ref=e187]:\n                - generic [ref=e189]: 7.19 EUR\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 44.99 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}]}]},"uuid":"0aa958fe-8e58-4dba-9098-5dc189685c78","timestamp":"2026-06-10T08:35:34.410Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - generic [ref=e42]:\n            - heading \"1. Contact information\" [level=2] [ref=e43]\n            - button \"Edit\" [ref=e134]\n          - paragraph [ref=e135]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e51]:\n          - generic [ref=e52]:\n            - heading \"2. Shipping address\" [level=2] [ref=e53]\n            - button \"Edit\" [ref=e166]\n          - paragraph [ref=e167]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e54]:\n          - heading \"3. Shipping method\" [level=2] [ref=e56]\n          - generic [ref=e168]:\n            - group \"Shipping method\" [ref=e169]:\n              - generic [ref=e170]: Shipping method\n              - generic [ref=e171]:\n                - generic [ref=e172] [cursor=pointer]:\n                  - generic [ref=e173]:\n                    - radio \"Standard Shipping 4.99 EUR\" [ref=e174]\n                    - generic [ref=e175]: Standard Shipping\n                  - generic [ref=e177]: 4.99 EUR\n                - generic [ref=e178] [cursor=pointer]:\n                  - generic [ref=e179]:\n                    - radio \"Express Shipping 9.99 EUR\" [ref=e180]\n                    - generic [ref=e181]: Express Shipping\n                  - generic [ref=e183]: 9.99 EUR\n            - button \"Continue\" [disabled] [ref=e184]\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]: Calculated at next step\n            - generic [ref=e185]:\n              - term [ref=e186]: Tax\n              - definition [ref=e187]:\n                - generic [ref=e189]: 7.19 EUR\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 44.99 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}],"sourceToolAssistantUUID":"dffd3bd0-413c-46e3-9b25-eb19b83f2798","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0aa958fe-8e58-4dba-9098-5dc189685c78","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01E3w2H9k5WWd2NgEprBfep3","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIStwQKYggOGAIqQMcp5Jf1vJ7vEU4NqlULR0HNk9ga3IT8OddS+9tA06SQ0YLzSawqyiujCkgdjdLzlLbII8D2w1wSgWBuxxw/b4MyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgyLgzxPCPvv4CWzVdAaDIFZw0pWZCbKCNIU7CIwejJYrjj3Ctx3Npaxx6MtHeQrUP6NHIS7s9RuAeomsBes0yLe80A1nrRvU1/V9S+1KoIDDAn4WmsbUq8LJE0h2IjeRCm0fHdc2yWKeIWNeBavb9qkvKXTcuYa8WlB9V8NXqq1gAgVRSWRnPhajD9+JVLMiFP7hBp8t5lwlBhzfRojRGUueT1egoS3tdiGPtHJ7CCEjdh4FK00m9/xmjr7yydoub/+TR5M6R1aXKnlvcXa2CiBOOSZZkxhiz47p2febHZX0cZZ9vM+aSl8aawwjeOBQiK8APK1K3FeHeO/7CPtT1Cg4iS3UuzbCCNosF7US3ZtWpDUNFcG/0hHrareR/ng9ozgfQloiAKaUrGzo60XqSfkZLFk+U0aiBx63wYyutmJI6xJhRsTmGkbAa01Jf969JAdR6MdrWW5H4Bok8fuDn/sVtSCZ2w0IUC0yYzoRqXWIYAca7e/uRmKXSteitNMe0gNi7JqDuJAkdBQz8kw/9+Z5bSx/IJBLh/wBFoH7VDmyKt2BQH+oQeE+hHL14fb0HyV3N7UPNda2IRcQZOl5OFVtP8DoKrYD7Ar4v00RTFCRxkYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1362,"cache_read_input_tokens":196770,"output_tokens":280,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1362,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":280,"cache_read_input_tokens":196770,"cache_creation_input_tokens":1362,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1362},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGnzB76yYGLGTaUWCrd","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"2ef70129-5018-4a73-8088-eb84e55403ae","timestamp":"2026-06-10T08:35:43.466Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2ef70129-5018-4a73-8088-eb84e55403ae","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01E3w2H9k5WWd2NgEprBfep3","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017xFK5PHtAMRp5ybEJv9ffm","name":"mcp__playwright__browser_click","input":{"element":"Standard Shipping option","target":"e172"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1362,"cache_read_input_tokens":196770,"output_tokens":280,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1362,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":280,"cache_read_input_tokens":196770,"cache_creation_input_tokens":1362,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1362},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGnzB76yYGLGTaUWCrd","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"f9e59c58-d9de-4be5-a409-861046de685f","timestamp":"2026-06-10T08:35:43.574Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f9e59c58-d9de-4be5-a409-861046de685f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017xFK5PHtAMRp5ybEJv9ffm","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByText('Standard Shipping 4.99 EUR').click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-46-396Z.yml)"}]}]},"uuid":"34e414ed-3798-4944-8973-85de38dfd0ff","timestamp":"2026-06-10T08:35:46.401Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByText('Standard Shipping 4.99 EUR').click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-46-396Z.yml)"}],"sourceToolAssistantUUID":"f9e59c58-d9de-4be5-a409-861046de685f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"34e414ed-3798-4944-8973-85de38dfd0ff","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01BvtfUyeHFt5ekk4Aswn9sA","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01YBCrXtCpaLQshmm3iBzkRi","name":"mcp__playwright__browser_wait_for","input":{"text":"49.98 EUR"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":412,"cache_read_input_tokens":198132,"output_tokens":148,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":412,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":148,"cache_read_input_tokens":198132,"cache_creation_input_tokens":412,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":412},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGosnR4tnoypCzJr2f8","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"31cf4ec5-238e-4c6b-a801-ba2daf6a4e27","timestamp":"2026-06-10T08:35:51.667Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"31cf4ec5-238e-4c6b-a801-ba2daf6a4e27","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01YBCrXtCpaLQshmm3iBzkRi","type":"tool_result","content":[{"type":"text","text":"### Result\nWaited for 49.98 EUR\n### Ran Playwright code\n```js\nawait page.getByText(\"49.98 EUR\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-51-681Z.yml)"}]}]},"uuid":"334cb057-561c-4a9c-8f51-997c3cf6a2b2","timestamp":"2026-06-10T08:35:51.684Z","toolUseResult":[{"type":"text","text":"### Result\nWaited for 49.98 EUR\n### Ran Playwright code\n```js\nawait page.getByText(\"49.98 EUR\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-51-681Z.yml)"}],"sourceToolAssistantUUID":"31cf4ec5-238e-4c6b-a801-ba2daf6a4e27","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"334cb057-561c-4a9c-8f51-997c3cf6a2b2","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01BvtfUyeHFt5ekk4Aswn9sA","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_012eNvp1rcdpMPq52HAjw6Jx","name":"mcp__playwright__browser_click","input":{"element":"Continue button (shipping)","target":"e184"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":412,"cache_read_input_tokens":198132,"output_tokens":148,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":412,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":148,"cache_read_input_tokens":198132,"cache_creation_input_tokens":412,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":412},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGosnR4tnoypCzJr2f8","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"28bf94af-7cac-4908-b05f-eec01acb65f3","timestamp":"2026-06-10T08:35:51.943Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"28bf94af-7cac-4908-b05f-eec01acb65f3","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_012eNvp1rcdpMPq52HAjw6Jx","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Continue' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-53-988Z.yml)"}]}]},"uuid":"b6373cfa-c0bf-4400-b94e-f66ad0f71ecb","timestamp":"2026-06-10T08:35:53.990Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Continue' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-35-53-988Z.yml)"}],"sourceToolAssistantUUID":"28bf94af-7cac-4908-b05f-eec01acb65f3","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"b6373cfa-c0bf-4400-b94e-f66ad0f71ecb","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"b6373cfa-c0bf-4400-b94e-f66ad0f71ecb","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016sRB7fFLzsFQGBHSRnNKqU","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01WHiEdbkNshLhj8geMKY9hL","name":"mcp__playwright__browser_snapshot","input":{"depth":20,"target":"region[name*=\"Payment\"]"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":500,"cache_read_input_tokens":198544,"output_tokens":90,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":500,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":90,"cache_read_input_tokens":198544,"cache_creation_input_tokens":500,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":500},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGpRtxPQMzc4d2HGNPH","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"c3063bb5-1f56-4733-b664-41df88b40b3a","timestamp":"2026-06-10T08:35:58.771Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c3063bb5-1f56-4733-b664-41df88b40b3a","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: \"region[name*=\"Payment\"]\" does not match any elements.","is_error":true,"tool_use_id":"toolu_01WHiEdbkNshLhj8geMKY9hL"}]},"uuid":"25933cd8-3df7-438c-b6c3-dfe40dedaa2d","timestamp":"2026-06-10T08:35:58.777Z","toolUseResult":"Error: ### Error\nError: \"region[name*=\"Payment\"]\" does not match any elements.","sourceToolAssistantUUID":"c3063bb5-1f56-4733-b664-41df88b40b3a","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"25933cd8-3df7-438c-b6c3-dfe40dedaa2d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UJpZDc9zYyFgkC3SLnnmi4","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017QboGcm7dykaVrtxSxo6PM","name":"mcp__playwright__browser_snapshot","input":{"depth":22,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":127,"cache_read_input_tokens":199044,"output_tokens":81,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":127,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":81,"cache_read_input_tokens":199044,"cache_creation_input_tokens":127,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":127},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGpqpNfBiq5o8BgdYFE","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"0978324a-8c5a-4eac-9930-7d6c75ca6427","timestamp":"2026-06-10T08:36:03.787Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0978324a-8c5a-4eac-9930-7d6c75ca6427","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017QboGcm7dykaVrtxSxo6PM","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - generic [ref=e42]:\n            - heading \"1. Contact information\" [level=2] [ref=e43]\n            - button \"Edit\" [ref=e134]\n          - paragraph [ref=e135]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e51]:\n          - generic [ref=e52]:\n            - heading \"2. Shipping address\" [level=2] [ref=e53]\n            - button \"Edit\" [ref=e166]\n          - paragraph [ref=e167]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e54]:\n          - generic [ref=e55]:\n            - heading \"3. Shipping method\" [level=2] [ref=e56]\n            - button \"Edit\" [ref=e190]\n          - paragraph [ref=e191]: Standard Shipping\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n          - generic [ref=e192]:\n            - group \"Select a payment method\" [ref=e193]:\n              - generic [ref=e194]: Select a payment method\n              - generic [ref=e195]:\n                - generic [ref=e196] [cursor=pointer]:\n                  - radio \"Credit Card\" [checked] [ref=e197]\n                  - generic [ref=e198]: Credit Card\n                - generic [ref=e199] [cursor=pointer]:\n                  - radio \"PayPal\" [ref=e200]\n                  - generic [ref=e201]: PayPal\n                - generic [ref=e202] [cursor=pointer]:\n                  - radio \"Bank Transfer\" [ref=e203]\n                  - generic [ref=e204]: Bank Transfer\n            - generic [ref=e205]:\n              - generic [ref=e206]:\n                - generic [ref=e207]: Card number *\n                - textbox \"Card number\" [ref=e208]:\n                  - /placeholder: 4242 4242 4242 4242\n              - generic [ref=e209]:\n                - generic [ref=e210]: Cardholder name *\n                - textbox \"Cardholder name\" [ref=e211]\n              - generic [ref=e212]:\n                - generic [ref=e213]:\n                  - generic [ref=e214]: Expiry *\n                  - textbox \"Expiry\" [ref=e215]:\n                    - /placeholder: MM/YY\n                - generic [ref=e216]:\n                  - generic [ref=e217]: CVC *\n                  - textbox \"CVC\" [ref=e218]:\n                    - /placeholder: \"123\"\n            - button \"Pay now - 49.98 EUR\" [ref=e219]:\n              - generic [ref=e220]: Pay now - 49.98 EUR\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]:\n                - generic [ref=e222]: 4.99 EUR\n            - generic [ref=e185]:\n              - term [ref=e186]: Tax\n              - definition [ref=e187]:\n                - generic [ref=e189]: 7.98 EUR\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 49.98 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}]}]},"uuid":"55f6e196-b78a-497b-b71e-008e9fd7103c","timestamp":"2026-06-10T08:36:03.797Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - generic [ref=e42]:\n            - heading \"1. Contact information\" [level=2] [ref=e43]\n            - button \"Edit\" [ref=e134]\n          - paragraph [ref=e135]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e51]:\n          - generic [ref=e52]:\n            - heading \"2. Shipping address\" [level=2] [ref=e53]\n            - button \"Edit\" [ref=e166]\n          - paragraph [ref=e167]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e54]:\n          - generic [ref=e55]:\n            - heading \"3. Shipping method\" [level=2] [ref=e56]\n            - button \"Edit\" [ref=e190]\n          - paragraph [ref=e191]: Standard Shipping\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n          - generic [ref=e192]:\n            - group \"Select a payment method\" [ref=e193]:\n              - generic [ref=e194]: Select a payment method\n              - generic [ref=e195]:\n                - generic [ref=e196] [cursor=pointer]:\n                  - radio \"Credit Card\" [checked] [ref=e197]\n                  - generic [ref=e198]: Credit Card\n                - generic [ref=e199] [cursor=pointer]:\n                  - radio \"PayPal\" [ref=e200]\n                  - generic [ref=e201]: PayPal\n                - generic [ref=e202] [cursor=pointer]:\n                  - radio \"Bank Transfer\" [ref=e203]\n                  - generic [ref=e204]: Bank Transfer\n            - generic [ref=e205]:\n              - generic [ref=e206]:\n                - generic [ref=e207]: Card number *\n                - textbox \"Card number\" [ref=e208]:\n                  - /placeholder: 4242 4242 4242 4242\n              - generic [ref=e209]:\n                - generic [ref=e210]: Cardholder name *\n                - textbox \"Cardholder name\" [ref=e211]\n              - generic [ref=e212]:\n                - generic [ref=e213]:\n                  - generic [ref=e214]: Expiry *\n                  - textbox \"Expiry\" [ref=e215]:\n                    - /placeholder: MM/YY\n                - generic [ref=e216]:\n                  - generic [ref=e217]: CVC *\n                  - textbox \"CVC\" [ref=e218]:\n                    - /placeholder: \"123\"\n            - button \"Pay now - 49.98 EUR\" [ref=e219]:\n              - generic [ref=e220]: Pay now - 49.98 EUR\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]:\n                - generic [ref=e222]: 4.99 EUR\n            - generic [ref=e185]:\n              - term [ref=e186]: Tax\n              - definition [ref=e187]:\n                - generic [ref=e189]: 7.98 EUR\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 49.98 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}],"sourceToolAssistantUUID":"0978324a-8c5a-4eac-9930-7d6c75ca6427","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"55f6e196-b78a-497b-b71e-008e9fd7103c","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"fb7afeec-6f29-4bac-aef2-c2b25bc9b3b7","timestamp":"2026-06-10T08:36:03.840Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"fb7afeec-6f29-4bac-aef2-c2b25bc9b3b7","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Dny3g1FbM2471nNyT8Ag7j","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISrwIKYggOGAIqQG6U0CnPrjej4OT2T+CounLmIddayx8Nx7G9/D8d1VnVhaQ7Ix/mcCJP/WhW1AHhHwVh45T1J85olagkOLgdgdIyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwZgsceB126Tz0BM24aDN5PWiGQ0hqe3YPTeiIwz/sHaiLmtWFpbiHc06xouX9TzbAvWAime47cILhT+eEf0CxJqAFfKhYWZG6fX7OaKnvzEihwlzel2IX3IFUDbwDpuLHbY0QIZyILQhANnLvpB//+rwrjXcojM50Udq7TAh4XunA+bR82Ls/pWcmNj//iqlphdhQ0ATxXgN938Rh/9HFCEzAVpphh4KdMSe/R+GxoLPlAc/vPToKwhfV5nGUejWUZfvM9HT5WAtsYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":1717,"cache_read_input_tokens":199171,"output_tokens":298,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1717,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":298,"cache_read_input_tokens":199171,"cache_creation_input_tokens":1717,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1717},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGq9tZcAcVbeqR6xJMJ","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"1d48e923-500e-4f5f-b723-72465032c097","timestamp":"2026-06-10T08:36:10.794Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1d48e923-500e-4f5f-b723-72465032c097","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Dny3g1FbM2471nNyT8Ag7j","type":"message","role":"assistant","content":[{"type":"text","text":"Totals are correct (49.98 total, 7.98 tax included). Paying with the magic success card."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":1717,"cache_read_input_tokens":199171,"output_tokens":298,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1717,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":298,"cache_read_input_tokens":199171,"cache_creation_input_tokens":1717,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1717},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGq9tZcAcVbeqR6xJMJ","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"72703ced-e974-49f3-bc5e-f32716d95695","timestamp":"2026-06-10T08:36:10.826Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"72703ced-e974-49f3-bc5e-f32716d95695","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Dny3g1FbM2471nNyT8Ag7j","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01WSFZMmjXksS7wKfVsDd5gR","name":"mcp__playwright__browser_fill_form","input":{"fields":[{"target":"e208","name":"Card number","type":"textbox","value":"4242424242424242"},{"target":"e211","name":"Cardholder name","type":"textbox","value":"Erika Musterfrau"},{"target":"e215","name":"Expiry","type":"textbox","value":"12/28"},{"target":"e218","name":"CVC","type":"textbox","value":"123"}]},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":1717,"cache_read_input_tokens":199171,"output_tokens":298,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1717,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":298,"cache_read_input_tokens":199171,"cache_creation_input_tokens":1717,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1717},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGq9tZcAcVbeqR6xJMJ","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"eaf5d955-5eb4-4180-b0cb-b169ae3ba48e","timestamp":"2026-06-10T08:36:12.337Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"eaf5d955-5eb4-4180-b0cb-b169ae3ba48e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01WSFZMmjXksS7wKfVsDd5gR","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Card number' }).fill('4242424242424242');\nawait page.getByRole('textbox', { name: 'Cardholder name' }).fill('Erika Musterfrau');\nawait page.getByRole('textbox', { name: 'Expiry' }).fill('12/28');\nawait page.getByRole('textbox', { name: 'CVC' }).fill('123');\n```"}]}]},"uuid":"6af21f7f-20af-495c-906f-1b47b9a7e49a","timestamp":"2026-06-10T08:36:12.372Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Card number' }).fill('4242424242424242');\nawait page.getByRole('textbox', { name: 'Cardholder name' }).fill('Erika Musterfrau');\nawait page.getByRole('textbox', { name: 'Expiry' }).fill('12/28');\nawait page.getByRole('textbox', { name: 'CVC' }).fill('123');\n```"}],"sourceToolAssistantUUID":"eaf5d955-5eb4-4180-b0cb-b169ae3ba48e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6af21f7f-20af-495c-906f-1b47b9a7e49a","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0121hnfLkNkHjSQJevgcyBjr","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01KPnYfrfRMk7WPxeYEkiKzP","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/04-checkout-payment.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":581,"cache_read_input_tokens":200888,"output_tokens":173,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":581,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":173,"cache_read_input_tokens":200888,"cache_creation_input_tokens":581,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":581},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGqoFcozE7xEycsxUx6","attributionMcpServer":"playwright","attributionMcpTool":"browser_fill_form","type":"assistant","uuid":"c85fd1cb-a14a-4c3a-bb04-b55712708549","timestamp":"2026-06-10T08:36:17.476Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c85fd1cb-a14a-4c3a-bb04-b55712708549","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01KPnYfrfRMk7WPxeYEkiKzP","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/04-checkout-payment.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/04-checkout-payment.png\nawait page.screenshot({\n  path: 'review/04-checkout-payment.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"7e1512ad-196d-4c03-afe9-fd56a58bb21d","timestamp":"2026-06-10T08:36:17.525Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/04-checkout-payment.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/04-checkout-payment.png\nawait page.screenshot({\n  path: 'review/04-checkout-payment.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"c85fd1cb-a14a-4c3a-bb04-b55712708549","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7e1512ad-196d-4c03-afe9-fd56a58bb21d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0121hnfLkNkHjSQJevgcyBjr","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PQms1pu4XkaMrVe2NpnXv9","name":"mcp__playwright__browser_click","input":{"element":"Pay now button","target":"e219"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":581,"cache_read_input_tokens":200888,"output_tokens":173,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":581,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":173,"cache_read_input_tokens":200888,"cache_creation_input_tokens":581,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":581},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGqoFcozE7xEycsxUx6","attributionMcpServer":"playwright","attributionMcpTool":"browser_fill_form","type":"assistant","uuid":"6b17c3c1-2fcd-4bcc-9078-60a1308643cf","timestamp":"2026-06-10T08:36:17.719Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6b17c3c1-2fcd-4bcc-9078-60a1308643cf","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01PQms1pu4XkaMrVe2NpnXv9","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Pay now - 49.98 EUR' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n- Console: 1 errors, 0 warnings\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-36-19-922Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-10-628Z.log#L3-L4"}]}]},"uuid":"9ddd7288-9940-4c40-8dbb-04de56087540","timestamp":"2026-06-10T08:36:19.925Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Pay now - 49.98 EUR' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n- Console: 1 errors, 0 warnings\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-36-19-922Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-33-10-628Z.log#L3-L4"}],"sourceToolAssistantUUID":"6b17c3c1-2fcd-4bcc-9078-60a1308643cf","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9ddd7288-9940-4c40-8dbb-04de56087540","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018ygbEqDgnSH9PhXEBGz6X3","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISpgIKYggOGAIqQECBqvM4B0ZShTus2hNZGn0102opmQYepmwk56V05XwSJf51XPYtHsWmphmWUUKwB8Q/gx+LTA/PttjUIHpPhosyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzcfZuVlzyRbjSIqnsaDG9LR2eGtGRdw/RjRiIwhxsN1ev7IO+ELJQoClyJBvW1d0WMGOCYsy3v2vFMLyvCQqsArvJd0t/UCm1wOh8IKnJgagn7BcFuBaku8J1l/d/02luuuNbgFO0P65C5rSDutPjJaL79xgWwV5cAtZQPUebt/eGkzbYHfhLq1wumvLSO+8akbMO5rDi3otEwf/1e3yHXAVpl/+GJf0efFoulSKRCS4LxoWJz3sCVd/SGRBXaKEEYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":567,"cache_read_input_tokens":201469,"output_tokens":94,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":567,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":94,"cache_read_input_tokens":201469,"cache_creation_input_tokens":567,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":567},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGrLy6HfvrF621528MS","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"9a06d06c-a05f-425b-a44a-678a02d7ab28","timestamp":"2026-06-10T08:36:25.984Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9a06d06c-a05f-425b-a44a-678a02d7ab28","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018ygbEqDgnSH9PhXEBGz6X3","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01C1ouzgikKXfYGvh87hup9e","name":"mcp__playwright__browser_wait_for","input":{"text":"Thank you"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":567,"cache_read_input_tokens":201469,"output_tokens":94,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":567,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":94,"cache_read_input_tokens":201469,"cache_creation_input_tokens":567,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":567},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGrLy6HfvrF621528MS","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"f2b66709-7820-4289-86a9-d88bb4c2a77f","timestamp":"2026-06-10T08:36:26.113Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f2b66709-7820-4289-86a9-d88bb4c2a77f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nTimeoutError: Timeout 30000ms exceeded.\nCall log:\n\u001b[2m  - waiting for getByText('Thank you').first() to be visible\u001b[22m","is_error":true,"tool_use_id":"toolu_01C1ouzgikKXfYGvh87hup9e"}]},"uuid":"2eea0834-4c3c-4bb6-9ad0-4857ca6dc954","timestamp":"2026-06-10T08:36:56.120Z","toolUseResult":"Error: ### Error\nTimeoutError: Timeout 30000ms exceeded.\nCall log:\n\u001b[2m  - waiting for getByText('Thank you').first() to be visible\u001b[22m","sourceToolAssistantUUID":"f2b66709-7820-4289-86a9-d88bb4c2a77f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2eea0834-4c3c-4bb6-9ad0-4857ca6dc954","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016PE1LMiiyqDHLttuY4kgJi","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01HjZM777VU6SXZtAkNxbh1s","name":"mcp__playwright__browser_console_messages","input":{"level":"error"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":163,"cache_read_input_tokens":202036,"output_tokens":137,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":163,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":137,"cache_read_input_tokens":202036,"cache_creation_input_tokens":163,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":163},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGu1eL89JzbZvq5f8fq","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"a4c453f6-c268-47a1-8cb3-d567b6a0e768","timestamp":"2026-06-10T08:37:02.011Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a4c453f6-c268-47a1-8cb3-d567b6a0e768","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016PE1LMiiyqDHLttuY4kgJi","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01YH9tKUaKtL6rsn9inSk352","name":"mcp__playwright__browser_snapshot","input":{"depth":12,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":163,"cache_read_input_tokens":202036,"output_tokens":137,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":163,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":137,"cache_read_input_tokens":202036,"cache_creation_input_tokens":163,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":163},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGu1eL89JzbZvq5f8fq","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"fca295a0-603a-4e01-a69e-8e58460493e0","timestamp":"2026-06-10T08:37:02.029Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a4c453f6-c268-47a1-8cb3-d567b6a0e768","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01HjZM777VU6SXZtAkNxbh1s","type":"tool_result","content":[{"type":"text","text":"### Result\nTotal messages: 7 (Errors: 1, Warnings: 0)\nReturning 1 messages for level \"error\"\n\n[ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error) @ http://shop.test/livewire-6701cc17/update:0"}]}]},"uuid":"c450cefd-7e0d-4d29-ad8d-4df2bbdb6343","timestamp":"2026-06-10T08:37:02.157Z","toolUseResult":[{"type":"text","text":"### Result\nTotal messages: 7 (Errors: 1, Warnings: 0)\nReturning 1 messages for level \"error\"\n\n[ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error) @ http://shop.test/livewire-6701cc17/update:0"}],"sourceToolAssistantUUID":"a4c453f6-c268-47a1-8cb3-d567b6a0e768","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"fca295a0-603a-4e01-a69e-8e58460493e0","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01YH9tKUaKtL6rsn9inSk352","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n- Console: 1 errors, 0 warnings\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - generic [ref=e42]:\n            - heading \"1. Contact information\" [level=2] [ref=e43]\n            - button \"Edit\" [ref=e134]\n          - paragraph [ref=e135]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e51]:\n          - generic [ref=e52]:\n            - heading \"2. Shipping address\" [level=2] [ref=e53]\n            - button \"Edit\" [ref=e166]\n          - paragraph [ref=e167]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e54]:\n          - generic [ref=e55]:\n            - heading \"3. Shipping method\" [level=2] [ref=e56]\n            - button \"Edit\" [ref=e190]\n          - paragraph [ref=e191]: Standard Shipping\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n          - generic [ref=e192]:\n            - group \"Select a payment method\" [ref=e193]:\n              - generic [ref=e194]: Select a payment method\n              - generic [ref=e195]:\n                - generic [ref=e196] [cursor=pointer]:\n                  - radio \"Credit Card\" [checked] [ref=e197]\n                  - generic [ref=e198]: Credit Card\n                - generic [ref=e199] [cursor=pointer]:\n                  - radio \"PayPal\" [ref=e200]\n                  - generic [ref=e201]: PayPal\n                - generic [ref=e202] [cursor=pointer]:\n                  - radio \"Bank Transfer\" [ref=e203]\n                  - generic [ref=e204]: Bank Transfer\n            - generic [ref=e205]:\n              - generic [ref=e206]:\n                - generic [ref=e207]: Card number *\n                - textbox \"Card number\" [ref=e208]:\n                  - /placeholder: 4242 4242 4242 4242\n                  - text: \"4242424242424242\"\n              - generic [ref=e209]:\n                - generic [ref=e210]: Cardholder name *\n                - textbox \"Cardholder name\" [ref=e211]: Erika Musterfrau\n              - generic [ref=e212]:\n                - generic [ref=e213]:\n                  - generic [ref=e214]: Expiry *\n                  - textbox \"Expiry\" [ref=e215]:\n                    - /placeholder: MM/YY\n                    - text: 12/28\n                - generic [ref=e216]:\n                  - generic [ref=e217]: CVC *\n                  - textbox \"CVC\" [ref=e218]:\n                    - /placeholder: \"123\"\n                    - text: \"123\"\n            - button \"Pay now - 49.98 EUR\" [ref=e219]:\n              - generic [ref=e220]: Pay now - 49.98 EUR\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]:\n                - generic [ref=e222]: 4.99 EUR\n            - generic [ref=e185]:\n              - term [ref=e186]: Tax\n              - definition [ref=e187]:\n                - generic [ref=e189]: 7.98 EUR\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 49.98 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}]}]},"uuid":"69bd314b-35f1-41c9-b42c-5464875c4004","timestamp":"2026-06-10T08:37:02.164Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n- Console: 1 errors, 0 warnings\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - generic [ref=e42]:\n            - heading \"1. Contact information\" [level=2] [ref=e43]\n            - button \"Edit\" [ref=e134]\n          - paragraph [ref=e135]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e51]:\n          - generic [ref=e52]:\n            - heading \"2. Shipping address\" [level=2] [ref=e53]\n            - button \"Edit\" [ref=e166]\n          - paragraph [ref=e167]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e54]:\n          - generic [ref=e55]:\n            - heading \"3. Shipping method\" [level=2] [ref=e56]\n            - button \"Edit\" [ref=e190]\n          - paragraph [ref=e191]: Standard Shipping\n        - region \"4. Payment\" [ref=e57]:\n          - heading \"4. Payment\" [level=2] [ref=e59]\n          - generic [ref=e192]:\n            - group \"Select a payment method\" [ref=e193]:\n              - generic [ref=e194]: Select a payment method\n              - generic [ref=e195]:\n                - generic [ref=e196] [cursor=pointer]:\n                  - radio \"Credit Card\" [checked] [ref=e197]\n                  - generic [ref=e198]: Credit Card\n                - generic [ref=e199] [cursor=pointer]:\n                  - radio \"PayPal\" [ref=e200]\n                  - generic [ref=e201]: PayPal\n                - generic [ref=e202] [cursor=pointer]:\n                  - radio \"Bank Transfer\" [ref=e203]\n                  - generic [ref=e204]: Bank Transfer\n            - generic [ref=e205]:\n              - generic [ref=e206]:\n                - generic [ref=e207]: Card number *\n                - textbox \"Card number\" [ref=e208]:\n                  - /placeholder: 4242 4242 4242 4242\n                  - text: \"4242424242424242\"\n              - generic [ref=e209]:\n                - generic [ref=e210]: Cardholder name *\n                - textbox \"Cardholder name\" [ref=e211]: Erika Musterfrau\n              - generic [ref=e212]:\n                - generic [ref=e213]:\n                  - generic [ref=e214]: Expiry *\n                  - textbox \"Expiry\" [ref=e215]:\n                    - /placeholder: MM/YY\n                    - text: 12/28\n                - generic [ref=e216]:\n                  - generic [ref=e217]: CVC *\n                  - textbox \"CVC\" [ref=e218]:\n                    - /placeholder: \"123\"\n                    - text: \"123\"\n            - button \"Pay now - 49.98 EUR\" [ref=e219]:\n              - generic [ref=e220]: Pay now - 49.98 EUR\n      - generic [ref=e60]:\n        - complementary \"Order summary\" [ref=e61]:\n          - heading \"Order Summary\" [level=2] [ref=e62]\n          - list [ref=e63]:\n            - listitem [ref=e64]:\n              - generic [ref=e66]: \"2\"\n              - generic [ref=e67]:\n                - paragraph [ref=e68]: Classic Cotton T-Shirt\n                - paragraph [ref=e69]: M / Navy\n              - generic [ref=e71]: 49.98 EUR\n          - generic [ref=e72]:\n            - generic [ref=e73]:\n              - term [ref=e74]: Subtotal\n              - definition [ref=e75]:\n                - generic [ref=e77]: 49.98 EUR\n            - generic [ref=e78]:\n              - term [ref=e79]: Discount (WELCOME10)\n              - definition [ref=e80]: \"-4.99 EUR\"\n            - generic [ref=e81]:\n              - term [ref=e82]: Shipping\n              - definition [ref=e83]:\n                - generic [ref=e222]: 4.99 EUR\n            - generic [ref=e185]:\n              - term [ref=e186]: Tax\n              - definition [ref=e187]:\n                - generic [ref=e189]: 7.98 EUR\n            - generic [ref=e84]:\n              - term [ref=e85]: Total\n              - definition [ref=e86]:\n                - generic [ref=e88]: 49.98 EUR\n        - generic [ref=e90]:\n          - generic [ref=e91]: WELCOME10\n          - button \"Remove\" [ref=e92]\n```"}],"sourceToolAssistantUUID":"fca295a0-603a-4e01-a69e-8e58460493e0","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"69bd314b-35f1-41c9-b42c-5464875c4004","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"69bd314b-35f1-41c9-b42c-5464875c4004","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01KsCrwU71Hpy1ST4AYtCjzr","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISrAgKYggOGAIqQDBHCCgGBXKxPsYgpCccwMEEJrhzNFYSsnvsiVJvzwf1zX8o0qjKjGui6NkgO4UftZ0d+PQdgYRxmpBkcuvucF0yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzLoyjyACaDEcHHHSMaDH73ohq+HMgluJ2bmCIwsTHzfdl7zYJpmu/Xd5YlCo8YrA06NdU4h692N7wRnZ4DPdFBLbnUM6mwuuMpxAowKvcGyngQF+0RqenOHoYjXHdJzT1cQ/oRrxSylzBdiL126NEDakNkrT0xG1Vkx5gEKHPa2Up/gGIrU3K2GisK/6FpwGcQs9t0t9O5hnChjE7YkpraLTbERBG5dK6Dbv3n6WpAdTr2Z8o6ptSee2ZTMbszVT1eXCZtCfR1VMgewosFIZYy8Jgu3WAUG2hR8igNYn4yDdXzzPncTYRu4HOVt1Kv0grvXveiqkuLeQJvjUlRVCg/A/GgmqwfNNEUNP1B7lRsQglUxzdNgfZ4TD4ClxdGgorFE7ZWMR3ZLdcMz1Jjyy5pRqY3lBHmCBzNVxY+lYFpr2Nfc6uGrurUus4yIioK/o5wkacww5zjp2y3cEWTK8CsXJX9C3CH5qYIc0Hf/M5DtlxUYCUq5ZcvF8WmXGNVlhOF656TB34h4vvQOHnVLfZpPTPnRbs1TC7bze3W++jXwdm57371/YEX5RgbSKTWeandXYzFP2qI30DivU4hot19UOk5mp0UUp61VXIn2V0N/x12Ni25aovQZNfiHzAVXURDSfzRakd+G5NU1oQeb7/uL9lctKhamEyYZgwpTZYYZK2xQy7LQgWDXUrX1dt8S4cuu85Te1IxYnDpgP3STb5NikrWJrH9enXaD3xsy82KUzvQGfBFN0R/ya7W/sJt53RxDeqLghLW/pBPa9kGLKKT9rYsKBRdsvAQKqML9wmj1rDaGZpfkQB8R9An1EkfR+JjP1CXaPMXL1y5i17xpflIlu8x5Rhw6QoEDO/O+nab9MSDh8OuZzBELgnl+QsJVMlcPQvwBT9neiQdrnQ7Gz/xKpfjYlMKtbYPdhBI1vYSOfFMKH/5QJi4ogsSHINMSmQzkQKOFMzpgXjUmifcP3bDx67vAv0XU3Mi9hJfxZPZuj5sSNUQuzSDx9GCfeui/ijdyz4QNE8mSQu7y+MZTKH7LzwsKXmhOpMkwUGJq+yM7qiHdsNNf0l6EQ61LrtFpc2it+Z7e2vT6DUzBWcBKtUVtwTl1BxLr9TQ/DlkYp40wivbSAka8rNHp3VaRA1t/wE9Fwdy7YXUayFMf2KzgfrMyuDn5ggqr4EqCegjY0D0FAywFvu59ChoS3kKmIE1UdnVt0JwYE+BnpYgFfyPMbsBCBCLk/fr27nhLoVZEOTmrFQ4JqY/P2hOkHuqXutKKlmxfqw8uYkYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2007,"cache_read_input_tokens":202199,"output_tokens":526,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2007,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":526,"cache_read_input_tokens":202199,"cache_creation_input_tokens":2007,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2007},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGuTGh38qgsoKRXARUt","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"44b4b872-cb87-4258-b8fc-bc66a5f0dbf5","timestamp":"2026-06-10T08:37:12.465Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"44b4b872-cb87-4258-b8fc-bc66a5f0dbf5","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01KsCrwU71Hpy1ST4AYtCjzr","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISyAMKYwgOGAIqQJkxp4niiMUNMojULbybS3AO6Tr1cag2GOUzNfqYcr3i8lCPx/ggxRH0ddmKtwS46Ghj4aHejhKXYvDdmbp67cAyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMfYHzecvAkbNU9e0JGgx8RQEianR7BOx1ieUiMFQ9aWBTJfYgNwz0yVxZ2QBuvSvL2ow3WBDc10FeNOg8cwyiQomxLNhGel5dC6TEeiqSAt04zFlncvYmEKc3RhTwKyML+Ncaob5+GwO6EQs7mzQ8VcD7GpWDxFI2pBlj5jGGLlpfrX2Oln+hVNqbXJ8pk+UERSbvADlnwlj9p5Xw+gOwZ81sGFfqqqQxT8KWEwbV5JEV934f4PI30hVMUyR4pxnuU/D5nxzA88vkwTAPTaDHT2Ch9ynAYPx1t9yXKKgNHdhIVVff/TsRBd+aIVabxBYGkXhC0Vd2op75JuhidwJuQr3jgRTR5xTpYgu9W0iSN7lDBFs8JhqEUe0rSdzvYBqQYEjMHAiXuDp/3+Q+VXQVx2awzE7W/RtNkYBGS1UT0KupZ1fIznI/+zQkhctcpvOJwiWi3TLX8EzeBn0Df1g+0NQYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2007,"cache_read_input_tokens":202199,"output_tokens":526,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2007,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":526,"cache_read_input_tokens":202199,"cache_creation_input_tokens":2007,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2007},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGuTGh38qgsoKRXARUt","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"dd332d37-48da-4e20-99bb-0d228818069d","timestamp":"2026-06-10T08:37:12.465Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"dd332d37-48da-4e20-99bb-0d228818069d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01KsCrwU71Hpy1ST4AYtCjzr","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01JX7o9qNpnkBCTvA6VsWRcY","name":"Bash","input":{"command":"tail -60 storage/logs/laravel.log | grep -m2 -B2 -A12 \"ERROR\\|Exception\" | head -40","description":"Inspect Laravel log for the checkout 500"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2007,"cache_read_input_tokens":202199,"output_tokens":526,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2007,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":526,"cache_read_input_tokens":202199,"cache_creation_input_tokens":2007,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2007},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGuTGh38qgsoKRXARUt","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"75953cd3-e4a9-4138-a584-c5637f49032c","timestamp":"2026-06-10T08:37:13.275Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"75953cd3-e4a9-4138-a584-c5637f49032c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01JX7o9qNpnkBCTvA6VsWRcY","type":"tool_result","content":"(Bash completed with no output)","is_error":false}]},"uuid":"6507eb36-8c24-45d8-b5d0-f087f65baa72","timestamp":"2026-06-10T08:37:13.340Z","toolUseResult":{"stdout":"","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"75953cd3-e4a9-4138-a584-c5637f49032c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6507eb36-8c24-45d8-b5d0-f087f65baa72","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01EvXYpVzXUS2Xt1X2wxXZAM","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01PfAvZ9c97B8vVDRpd8xPrB","name":"Bash","input":{"command":"ls -t storage/logs/ | head -3; tail -c 4000 storage/logs/$(ls -t storage/logs/ | head -1)","description":"Find latest log file and tail it"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":541,"cache_read_input_tokens":204206,"output_tokens":124,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":541,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":124,"cache_read_input_tokens":204206,"cache_creation_input_tokens":541,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":541},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGvHPPxTd2xVYHVM8i4","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"8e2fcc79-0cb7-4128-910d-6ab95970672b","timestamp":"2026-06-10T08:37:17.999Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8e2fcc79-0cb7-4128-910d-6ab95970672b","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01PfAvZ9c97B8vVDRpd8xPrB","type":"tool_result","content":"laravel.log\nstructured-2026-06-10.log\nbrowser.log\numinate\\\\Foundation\\\\Http\\\\Middleware\\\\TrimStrings->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#82 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#83 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\ValidatePostSize->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#84 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#85 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Foundation\\\\Http\\\\Middleware\\\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#86 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#87 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\HandleCors->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#88 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#89 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\TrustProxies->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#90 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#91 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Foundation\\\\Http\\\\Middleware\\\\InvokeDeferredCallbacks->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#92 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#93 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\ValidatePathEncoding->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#94 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#95 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\\\Pipeline\\\\Pipeline->then(Object(Closure))\n#96 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\\\Foundation\\\\Http\\\\Kernel->sendRequestThroughRouter(Object(Illuminate\\\\Http\\\\Request))\n#97 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\\\Foundation\\\\Http\\\\Kernel->handle(Object(Illuminate\\\\Http\\\\Request))\n#98 /Users/fabianwesner/Herd/shop/public/index.php(20): Illuminate\\\\Foundation\\\\Application->handleRequest(Object(Illuminate\\\\Http\\\\Request))\n#99 /Applications/Herd.app/Contents/Resources/valet/server.php(167): require('/Users/fabianwe...')\n#100 {main}\n\"}","is_error":false}]},"uuid":"c8c5428b-9679-4f13-b658-0671cc0c8b0e","timestamp":"2026-06-10T08:37:18.069Z","toolUseResult":{"stdout":"laravel.log\nstructured-2026-06-10.log\nbrowser.log\numinate\\\\Foundation\\\\Http\\\\Middleware\\\\TrimStrings->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#82 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#83 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\ValidatePostSize->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#84 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#85 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Foundation\\\\Http\\\\Middleware\\\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#86 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#87 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\HandleCors->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#88 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#89 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\TrustProxies->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#90 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#91 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Foundation\\\\Http\\\\Middleware\\\\InvokeDeferredCallbacks->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#92 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#93 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\\\Http\\\\Middleware\\\\ValidatePathEncoding->handle(Object(Illuminate\\\\Http\\\\Request), Object(Closure))\n#94 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\\\Pipeline\\\\Pipeline->{closure:{closure:Illuminate\\\\Pipeline\\\\Pipeline::carry():194}:195}(Object(Illuminate\\\\Http\\\\Request))\n#95 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\\\Pipeline\\\\Pipeline->then(Object(Closure))\n#96 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\\\Foundation\\\\Http\\\\Kernel->sendRequestThroughRouter(Object(Illuminate\\\\Http\\\\Request))\n#97 /Users/fabianwesner/Herd/shop/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\\\Foundation\\\\Http\\\\Kernel->handle(Object(Illuminate\\\\Http\\\\Request))\n#98 /Users/fabianwesner/Herd/shop/public/index.php(20): Illuminate\\\\Foundation\\\\Application->handleRequest(Object(Illuminate\\\\Http\\\\Request))\n#99 /Applications/Herd.app/Contents/Resources/valet/server.php(167): require('/Users/fabianwe...')\n#100 {main}\n\"}","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"8e2fcc79-0cb7-4128-910d-6ab95970672b","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c8c5428b-9679-4f13-b658-0671cc0c8b0e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01PcGW8dacZH27oEvLPFpQjj","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01LnhqYo6JbTFmk8XPXqbPFm","name":"Bash","input":{"command":"grep -o 'production.ERROR: [^\"{]*' storage/logs/laravel.log | tail -3; grep -c \"ConnectionException\\|Connection refused\\|cURL error\" storage/logs/laravel.log","description":"Extract error message lines from log"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":2270,"cache_read_input_tokens":204747,"output_tokens":148,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2270,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":148,"cache_read_input_tokens":204747,"cache_creation_input_tokens":2270,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2270},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGvfPyULUhMvH1aNYaK","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"de7ec82c-73d7-4b83-859d-2863696288c2","timestamp":"2026-06-10T08:37:25.101Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"de7ec82c-73d7-4b83-859d-2863696288c2","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01LnhqYo6JbTFmk8XPXqbPFm","type":"tool_result","content":"0","is_error":false}]},"uuid":"b1955b3c-ffab-49b2-80a7-66ad20985579","timestamp":"2026-06-10T08:37:25.166Z","toolUseResult":{"stdout":"0","stderr":"","interrupted":false,"isImage":false,"returnCodeInterpretation":"No matches found","noOutputExpected":false},"sourceToolAssistantUUID":"de7ec82c-73d7-4b83-859d-2863696288c2","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b1955b3c-ffab-49b2-80a7-66ad20985579","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"aafaa52e-c05f-4c20-b7c5-407ea321007a","timestamp":"2026-06-10T08:37:25.167Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"aafaa52e-c05f-4c20-b7c5-407ea321007a","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01TDhQfeBYibAZWDYJHJ1fGL","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TgtXjRTadWLXWGvdpiHPDX","name":"Bash","input":{"command":"grep -o '\\.ERROR: [^\"]\\{0,160\\}' storage/logs/laravel.log | tail -5","description":"Show recent error messages from log"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":154,"cache_read_input_tokens":207017,"output_tokens":115,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":154,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":115,"cache_read_input_tokens":207017,"cache_creation_input_tokens":154,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":154},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGw9adQP7x5hA9vWTrU","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"a8d9179d-ea36-4a55-9302-29dd662896b1","timestamp":"2026-06-10T08:37:30.755Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a8d9179d-ea36-4a55-9302-29dd662896b1","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TgtXjRTadWLXWGvdpiHPDX","type":"tool_result","content":".ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {\n.ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {\n.ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {\n.ERROR: SQLSTATE[23000]: Integrity constraint violation: 19 UNIQUE constraint failed: pages.store_id, pages.handle (Connection: sqlite, Database: :memory:, SQL: insert \n.ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {","is_error":false}]},"uuid":"02cc7ae0-d5ef-4cd8-9c4e-d9fb13315f48","timestamp":"2026-06-10T08:37:30.825Z","toolUseResult":{"stdout":".ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {\n.ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {\n.ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {\n.ERROR: SQLSTATE[23000]: Integrity constraint violation: 19 UNIQUE constraint failed: pages.store_id, pages.handle (Connection: sqlite, Database: :memory:, SQL: insert \n.ERROR: Webhook delivery 5 to https://loyalty-rewards.example.test/webhooks/orders failed with status connection error. {","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"a8d9179d-ea36-4a55-9302-29dd662896b1","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"02cc7ae0-d5ef-4cd8-9c4e-d9fb13315f48","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01YCicpNBS3wu1TWQnRxPBba","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISgAsKYggOGAIqQOkwIdu252Ss4qeYld5m6aKYNlfLUw/WDdPCXhDIBMd7vGyKoF1J6LTMw808eBjlCzqIA+DBp80LVI/Vn7MT92IyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxg7LEq281/KayD7noaDK5oS8inXSS5Dz6sZiIwSgXJNuGXOOplWDweuKgrflqq/LXAxNYu6sa/SglJYOkvz5HIaStM4xbqCA2mzBrMKssJ8N5j486A23Y8BpnK/4c/1w1BNBpgqCD1H8djas75pcmiiMTmu6dP+a9nrXZlDLB6iJRPFHTMmBRuwFdkh7iLWqP9+dhe+UQNRVoMP5r9+ojUyi+JJeBa+QpAzSisROr2Gtjq/Z6rcIEspuqxAJR258h0dQzQBlj9t6Hy7DjGUZQJ6sjfmG1gHUF2roPYn8m6Q6v2ssNiEGoGGXbnlEiHSsU0fYt9NKFgdVdVS+YGEYpEHaUf1b1H9XRtS0cS8YfGuxPKSRvng6kPMD3vmnB3mG0k2QFLtw/SM06vVq6igAJ+CeeX3yakoREl/JBthtNteyeZSmH/Q9atAV1T6Cow1xKJsjTePF/lsXNEi2oYEX9VFfhpq2huFp0MrfconqHQws025DmY32HAUfZMD3ICIUsJntSObfflDm4/u04VNZHkixgYEV1ACGqFqAUwPNTypQpZNfOj3djOfgglvud+GCr3A5u7qpKMxcbyfHGsv/bB18pKhDBsTgNDJLWECjavZKooyOFHvWKtFB4MJMfMtNdddWyntEV8tAo/psZRxyrMUjRO5w3kiq4ubV0AkixN5+KowJoHVmKNBUmYDoVEEPAJJ6L25OkKat3oa12RC3TFAmNizj76JU5QSft+SIpXjBnCv/RwbnfcRWqdEG6TAmJHKaFJATz3OyV7pFG1V2nF+vN3KU6JxTQmYuiQbA2aFM/nDEzVyq8OP3seufjHIrY1z4Fi9v7ft85bl9yXkJUg1k0vMtn5+zu7D/6M/yRVTbLtpnOmSaClEOwJbgVralXA0TmpUXMWdSRQB1It/xTwLwkEJfAG45IKgWmflKRSHbsBZZNIuEL3enGhLuUVJBkR2ZO5HgwJPkTEMyryYATbwYmzk3ghaIDii0X29MfsFZZQCZXr3b1myT8QsIfJhxrJoyAZlMs0BV/WRaiueiOnpTlsskY9M5s9Rzy6Mw1jZ0ZXU0p19q3G3mLJzO5KXGpUtvwScZ2VLYYrYGr5b5uiwPliyO6pBKbocdOWUh3cjENbTBR7iUS1eAaVMCAakT7JeHfLdn7YhXAThEUl8qK08HBK7wJVwwGSzmL6vgYHTi72I3YEejDi9bfDr/Hau4dekdlGxMGpIVPXlQNKLYpCmX/1CD0yZeYrNbEaeDapE6S1Aqfje44huPbzY6VMpVHGT0Sn1nqR/sg0j9ccPLblSQi/cnkZBSAG4drnRUkY9BVYwRIbRy+aTrAlTROvm7ZwsSK32oXsZj5b+/YLhZvCPdgysyVV+yrmP6HaTkMLkKdfNeDMKPRmPVmmDhRB79VgyID/ISaLkJF0t2iwyJeN5v2gvtVkWOG/djqyEpU6F9Od4pg0qsiet0AXVAYrh62vHwR/ln4+eg3cZhrRCWIbP1LtMdFyDlWMf6T1HyAQgTIQtKfF+skHX35Un6vNZYnYWB/seOWEzN/HkmxhRTt08GLxc5NltQTi+12myirrsz7GTRCHfas6vjS/iWJd8+UomVdHe7GKJ8VRF9T/CW6Rtf1avFSyO4Sy0mKeT5jL7rw1pm0XO+MhSq2r7QyJJt8ugAVCswmk8XJ1DYa84AsGGLAL7Qaddab3q/3EqcxpPdt8qAHkvTbqYrmxW0fOFgHY7rETHxnq3JIeGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":525,"cache_read_input_tokens":207171,"output_tokens":602,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":525,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":602,"cache_read_input_tokens":207171,"cache_creation_input_tokens":525,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":525},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGwa2nokFTHsaEoFbtc","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"d3f27a9c-243a-4379-9bb1-51cabdd21664","timestamp":"2026-06-10T08:37:43.184Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d3f27a9c-243a-4379-9bb1-51cabdd21664","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01YCicpNBS3wu1TWQnRxPBba","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISjgMKYwgOGAIqQG2RmQZ5oTAMEHOtnmXMEKUAUpQqZg8irMB5RHb3ykcnYeEidAZo4G11u33/OW8DCGhBYFOKrNoyULr2VXZnol4yDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMx/qRbk34CfycdiFuGgx09AhsWbOVKnadtQgiMAnsqdS4OKxcBlDYclhT0kVmr9F4aXuF3gffQ264IXm9H1ghVYpO7esUqWp7S9TttyrYAXCeBI7aJX6wJq2CNRTKzEpOWD8q7dki+czamCjfiPMzaqt/OYpNigO9uQuB0F7LmJsvXfjEBIcZ4Jh/0KuC3m3LjrU+92fWZIYskFO7cI9Sw0ZH57UEtOVkAU8ujH54PcMxZhHMMqLOM8cuDwqeJ9uE6rKh8XqRicqT/N7pBuIK+DRC6BQqiZq/PgOwxn+3KFluNu1aaPwHIZDE22jQ5g91/AbHf7XODIdII9ZInSenKX5SSC6BG0esi69Kne5ji4E8v2Y2wSnF7RZhn4tD5bp9DX4WW4SiXhgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":525,"cache_read_input_tokens":207171,"output_tokens":602,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":525,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":602,"cache_read_input_tokens":207171,"cache_creation_input_tokens":525,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":525},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGwa2nokFTHsaEoFbtc","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"4b6e06f3-acc2-49c9-a76f-648d75d1061a","timestamp":"2026-06-10T08:37:43.197Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4b6e06f3-acc2-49c9-a76f-648d75d1061a","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01YCicpNBS3wu1TWQnRxPBba","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TEBijXaaVVwbp6UbM3hkqU","name":"Bash","input":{"command":"cat app/Jobs/DeliverWebhook.php","description":"Read DeliverWebhook job"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":525,"cache_read_input_tokens":207171,"output_tokens":602,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":525,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":602,"cache_read_input_tokens":207171,"cache_creation_input_tokens":525,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":525},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGwa2nokFTHsaEoFbtc","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"e168d588-ec4d-4340-ae65-5b784945fdb0","timestamp":"2026-06-10T08:37:43.489Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e168d588-ec4d-4340-ae65-5b784945fdb0","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TEBijXaaVVwbp6UbM3hkqU","type":"tool_result","content":"<?php\n\nnamespace App\\Jobs;\n\nuse App\\Enums\\WebhookDeliveryStatus;\nuse App\\Enums\\WebhookSubscriptionStatus;\nuse App\\Models\\Scopes\\StoreScope;\nuse App\\Models\\WebhookDelivery;\nuse App\\Models\\WebhookSubscription;\nuse App\\Services\\WebhookService;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Foundation\\Queue\\Queueable;\nuse Illuminate\\Http\\Client\\ConnectionException;\nuse Illuminate\\Queue\\SerializesModels;\nuse Illuminate\\Support\\Facades\\Http;\nuse Illuminate\\Support\\Facades\\Log;\nuse Illuminate\\Support\\Str;\nuse RuntimeException;\n\n/**\n * POSTs a signed webhook payload to a subscriber endpoint (spec 05 sections\n * 13.2-13.4). Retries with exponential backoff via Laravel's job retry\n * mechanism; the delivery record tracks attempt accounting and the\n * subscription tracks consecutive failures for the circuit breaker.\n */\nclass DeliverWebhook implements ShouldQueue\n{\n    use Queueable, SerializesModels;\n\n    /**\n     * 1 initial attempt + 5 retries (spec 05 section 13.3).\n     */\n    public int $tries = self::MAX_ATTEMPTS;\n\n    /**\n     * Backoff delays in seconds: 1 min, 5 min, 30 min, 2 h, 12 h.\n     *\n     * @var list<int>\n     */\n    public array $backoff = [60, 300, 1800, 7200, 43200];\n\n    public const int MAX_ATTEMPTS = 6;\n\n    /**\n     * Consecutive failed attempts before the subscription is paused\n     * (spec 05 section 13.4).\n     */\n    public const int CIRCUIT_BREAKER_THRESHOLD = 5;\n\n    public const int RESPONSE_SNIPPET_LENGTH = 500;\n\n    /**\n     * @param  array<string, mixed>  $payload\n     */\n    public function __construct(\n        public WebhookDelivery $delivery,\n        public array $payload,\n        public int $eventTimestamp,\n    ) {}\n\n    public function handle(WebhookService $webhooks): void\n    {\n        $delivery = $this->delivery->fresh();\n\n        if ($delivery === null || $delivery->status !== WebhookDeliveryStatus::Pending) {\n            return;\n        }\n\n        $subscription = WebhookSubscription::query()\n            ->withoutGlobalScope(StoreScope::class)\n            ->find($delivery->subscription_id);\n\n        if ($subscription === null || $subscription->status !== WebhookSubscriptionStatus::Active) {\n            $delivery->update(['status' => WebhookDeliveryStatus::Failed]);\n\n            return;\n        }\n\n        $body = json_encode($this->payload, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);\n\n        [$responseCode, $responseSnippet] = $this->attemptDelivery($subscription, $webhooks, $body);\n\n        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS;\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },\n            'last_attempt_at' => now(),\n            'response_code' => $responseCode,\n            'response_body_snippet' => $responseSnippet,\n        ]);\n\n        if ($succeeded) {\n            $this->recordSuccess($subscription);\n\n            return;\n        }\n\n        $this->recordFailure($subscription);\n\n        if ($exhausted) {\n            Log::channel('structured')->warning('webhook.delivery_failed', [\n                'event' => 'business',\n                'delivery_id' => $delivery->getKey(),\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'event_type' => $subscription->event_type,\n                'target_url' => $subscription->target_url,\n                'attempt_count' => $attempt,\n                'response_code' => $responseCode,\n            ]);\n        }\n\n        if (! $exhausted) {\n            throw new RuntimeException(sprintf(\n                'Webhook delivery %d to %s failed with status %s.',\n                $delivery->getKey(),\n                $subscription->target_url,\n                $responseCode ?? 'connection error',\n            ));\n        }\n    }\n\n    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.\n     *\n     * @return array{0: int|null, 1: string|null}\n     */\n    protected function attemptDelivery(WebhookSubscription $subscription, WebhookService $webhooks, string $body): array\n    {\n        try {\n            $response = Http::timeout(10)\n                ->withHeaders([\n                    'X-Platform-Signature' => $webhooks->sign($body, $subscription->signing_secret_encrypted),\n                    'X-Platform-Event' => $subscription->event_type,\n                    'X-Platform-Delivery-Id' => (string) Str::uuid(),\n                    'X-Platform-Timestamp' => (string) $this->eventTimestamp,\n                ])\n                ->withBody($body, 'application/json')\n                ->post($subscription->target_url);\n\n            return [\n                $response->status(),\n                Str::limit($response->body(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        } catch (ConnectionException $exception) {\n            return [\n                null,\n                Str::limit($exception->getMessage(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        }\n    }\n\n    /**\n     * A successful delivery resets the circuit breaker counter\n     * (spec 05 section 13.4).\n     */\n    protected function recordSuccess(WebhookSubscription $subscription): void\n    {\n        if ($subscription->consecutive_failures > 0) {\n            $subscription->update(['consecutive_failures' => 0]);\n        }\n    }\n\n    /**\n     * Each failed attempt increments the circuit breaker counter; at the\n     * threshold the subscription is paused until a merchant resumes it\n     * manually through the admin UI (spec 05 section 13.4).\n     */\n    protected function recordFailure(WebhookSubscription $subscription): void\n    {\n        $failures = $subscription->consecutive_failures + 1;\n\n        $attributes = ['consecutive_failures' => $failures];\n\n        if ($failures >= self::CIRCUIT_BREAKER_THRESHOLD) {\n            $attributes['status'] = WebhookSubscriptionStatus::Paused;\n\n            Log::warning('Webhook subscription paused by circuit breaker after consecutive failures.', [\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'target_url' => $subscription->target_url,\n                'consecutive_failures' => $failures,\n            ]);\n        }\n\n        $subscription->update($attributes);\n    }\n}","is_error":false}]},"uuid":"ae5f1a3c-76b1-4a3f-a279-80a634f0d4d4","timestamp":"2026-06-10T08:37:43.551Z","toolUseResult":{"stdout":"<?php\n\nnamespace App\\Jobs;\n\nuse App\\Enums\\WebhookDeliveryStatus;\nuse App\\Enums\\WebhookSubscriptionStatus;\nuse App\\Models\\Scopes\\StoreScope;\nuse App\\Models\\WebhookDelivery;\nuse App\\Models\\WebhookSubscription;\nuse App\\Services\\WebhookService;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Foundation\\Queue\\Queueable;\nuse Illuminate\\Http\\Client\\ConnectionException;\nuse Illuminate\\Queue\\SerializesModels;\nuse Illuminate\\Support\\Facades\\Http;\nuse Illuminate\\Support\\Facades\\Log;\nuse Illuminate\\Support\\Str;\nuse RuntimeException;\n\n/**\n * POSTs a signed webhook payload to a subscriber endpoint (spec 05 sections\n * 13.2-13.4). Retries with exponential backoff via Laravel's job retry\n * mechanism; the delivery record tracks attempt accounting and the\n * subscription tracks consecutive failures for the circuit breaker.\n */\nclass DeliverWebhook implements ShouldQueue\n{\n    use Queueable, SerializesModels;\n\n    /**\n     * 1 initial attempt + 5 retries (spec 05 section 13.3).\n     */\n    public int $tries = self::MAX_ATTEMPTS;\n\n    /**\n     * Backoff delays in seconds: 1 min, 5 min, 30 min, 2 h, 12 h.\n     *\n     * @var list<int>\n     */\n    public array $backoff = [60, 300, 1800, 7200, 43200];\n\n    public const int MAX_ATTEMPTS = 6;\n\n    /**\n     * Consecutive failed attempts before the subscription is paused\n     * (spec 05 section 13.4).\n     */\n    public const int CIRCUIT_BREAKER_THRESHOLD = 5;\n\n    public const int RESPONSE_SNIPPET_LENGTH = 500;\n\n    /**\n     * @param  array<string, mixed>  $payload\n     */\n    public function __construct(\n        public WebhookDelivery $delivery,\n        public array $payload,\n        public int $eventTimestamp,\n    ) {}\n\n    public function handle(WebhookService $webhooks): void\n    {\n        $delivery = $this->delivery->fresh();\n\n        if ($delivery === null || $delivery->status !== WebhookDeliveryStatus::Pending) {\n            return;\n        }\n\n        $subscription = WebhookSubscription::query()\n            ->withoutGlobalScope(StoreScope::class)\n            ->find($delivery->subscription_id);\n\n        if ($subscription === null || $subscription->status !== WebhookSubscriptionStatus::Active) {\n            $delivery->update(['status' => WebhookDeliveryStatus::Failed]);\n\n            return;\n        }\n\n        $body = json_encode($this->payload, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);\n\n        [$responseCode, $responseSnippet] = $this->attemptDelivery($subscription, $webhooks, $body);\n\n        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS;\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },\n            'last_attempt_at' => now(),\n            'response_code' => $responseCode,\n            'response_body_snippet' => $responseSnippet,\n        ]);\n\n        if ($succeeded) {\n            $this->recordSuccess($subscription);\n\n            return;\n        }\n\n        $this->recordFailure($subscription);\n\n        if ($exhausted) {\n            Log::channel('structured')->warning('webhook.delivery_failed', [\n                'event' => 'business',\n                'delivery_id' => $delivery->getKey(),\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'event_type' => $subscription->event_type,\n                'target_url' => $subscription->target_url,\n                'attempt_count' => $attempt,\n                'response_code' => $responseCode,\n            ]);\n        }\n\n        if (! $exhausted) {\n            throw new RuntimeException(sprintf(\n                'Webhook delivery %d to %s failed with status %s.',\n                $delivery->getKey(),\n                $subscription->target_url,\n                $responseCode ?? 'connection error',\n            ));\n        }\n    }\n\n    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.\n     *\n     * @return array{0: int|null, 1: string|null}\n     */\n    protected function attemptDelivery(WebhookSubscription $subscription, WebhookService $webhooks, string $body): array\n    {\n        try {\n            $response = Http::timeout(10)\n                ->withHeaders([\n                    'X-Platform-Signature' => $webhooks->sign($body, $subscription->signing_secret_encrypted),\n                    'X-Platform-Event' => $subscription->event_type,\n                    'X-Platform-Delivery-Id' => (string) Str::uuid(),\n                    'X-Platform-Timestamp' => (string) $this->eventTimestamp,\n                ])\n                ->withBody($body, 'application/json')\n                ->post($subscription->target_url);\n\n            return [\n                $response->status(),\n                Str::limit($response->body(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        } catch (ConnectionException $exception) {\n            return [\n                null,\n                Str::limit($exception->getMessage(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        }\n    }\n\n    /**\n     * A successful delivery resets the circuit breaker counter\n     * (spec 05 section 13.4).\n     */\n    protected function recordSuccess(WebhookSubscription $subscription): void\n    {\n        if ($subscription->consecutive_failures > 0) {\n            $subscription->update(['consecutive_failures' => 0]);\n        }\n    }\n\n    /**\n     * Each failed attempt increments the circuit breaker counter; at the\n     * threshold the subscription is paused until a merchant resumes it\n     * manually through the admin UI (spec 05 section 13.4).\n     */\n    protected function recordFailure(WebhookSubscription $subscription): void\n    {\n        $failures = $subscription->consecutive_failures + 1;\n\n        $attributes = ['consecutive_failures' => $failures];\n\n        if ($failures >= self::CIRCUIT_BREAKER_THRESHOLD) {\n            $attributes['status'] = WebhookSubscriptionStatus::Paused;\n\n            Log::warning('Webhook subscription paused by circuit breaker after consecutive failures.', [\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'target_url' => $subscription->target_url,\n                'consecutive_failures' => $failures,\n            ]);\n        }\n\n        $subscription->update($attributes);\n    }\n}","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"e168d588-ec4d-4340-ae65-5b784945fdb0","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"ae5f1a3c-76b1-4a3f-a279-80a634f0d4d4","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"ae5f1a3c-76b1-4a3f-a279-80a634f0d4d4","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01P9Kgdx7v6oTCTRR8mbzxgr","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISgRAKYggOGAIqQG1g6oOUaLVM3qYIEuXXQNN/WPj3SjjWNrTzzwXfwCT/1RJSyR0HHdIPSTgLXf4f1KBE8ormQgA9VS9ytUIrFl8yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwJXVy/UiuTUDTa9lQaDLwPtqbJ7Fo/PVR7vSIwU1AsEAxdh4ZUxu6IGACQxFrj/BjUKgVrcL7jk+1ZeBd/UbxvUuV/sxtAgTV9YFJ/KswOrLe0O9vQlgA27cd/wGVAffMOrWxIH265z6NJf88kpvm+hIu0TZwzGvk1PV2yrqMTIKU9dd/sz7ZzKpqqKZss7kqsuAkXpHaIkRjiaX/kF1DJq+/RaK716Shjf+2iJdcHFh0HLe8pLp8WuACQr7Ufe4I0Yx282OSailw6MZQo/BR8FzONDZWSy1fyaICWU6Tog7a1ZwLSuDzIbidl4ZgjLCnqAlnKAe+oo6niROz3EthMlmZo+Tksfbw6A6QE428HxZnLEHDedVTlNpqfZQnEY6cmlJJjeo2778uWJaeEmjC22C31DqcKno4zDQNRQCuVI0nqEtUbTxvAK60WFiLdQ7FWqvsstC5m35Bw/ZmHx2GgpSWKeZPAeEfeX50RNzhdNrTEavTOU8PGQM/WoAoe2UNZPEmTnLB+HfFHWR5zr//nLwk4zUJMG435Uss3ubNB8xrkxJLpuUGxYcZLsPEgjSCN7sEsWpahy4o60AhA91r+4XQfC2GK0b6yZQhD6e142xINcT+vaV7dyo/PuzO446EzenYCX/JiILKvq8BYX1S1uZb/NDLeVNVWaQ0/rpt3O55LATsRFON2nbwJrO/Bb1X1U7C00xZDnOHqPBhBuB9k5XSFk7aKF0etVfq+jBfmRqDb7w0H3aNQZEJ49597ScE3ZWOjWreuLpoDNkfpu4+PixcIgqitorKPqRzYc+LiTjPyf+CIJr0F6gil12odKepELWs99b3QhawIGphslKv/ffktOCdMlcoiW+IQHA5QO89bO74SI+hy338q2umddCInv0WNE+xGqAKl2/Hu1GW8pGXJseRXg6nWrl8JKdnmBYgi7LVmJvfXSnjGMcaHE7bsrcccfJHpz/Z2nC7zJlGHIpYKgWrjk/xcqR85xzurP7JwvphpLebSqyp18Z0XshzVZ02A83NYqvL9EHyZ/9h48f6qmW/fch+aN4aWCc/hEb4EGux/nFqlZA6AkZhc9ZFr7mqmYkFPdX0HPOLM+2S3v1y+b4yFEewpu56DvmemIPpbVHYD22XCVy6aXgpcuB8kKk+DKd6TebJn6bXTOXxzrBAHrv5tiiBEnfT/8j6EyxOnI2RwL5gz/+UquMLIJ3UG/wppvfM7vVMytW6+3Pgrhm5DFKuvkz5j7uUJ4LEe9z2dAw1NGauSzpD092JbReh3qJ/se4jz20Tx7/9K14xZg+7Du3KWfTdaLxCsxFQSCm8dr3gnvKjwapi+c9jLakZ5Bjst+HTtU6jRl4E98Q63FCZZ61yQSXBF97lJKEXfmKmHHK+CYDXQ1DlPXabGzXtPxw/ihau8pDbcBOSr7xYQIglQAjRBx8kMyCflc85uOTZAf/mLGVe0Tf8YFMgzcLou9GLPv7PmuweVO3HFtcOg8F94vu51ELQb523mP9zHB/MI81XPN/NrAmh1BIUMrqqvVCsOOVJHzQMYTmliBhcVnONZeXmLFctJmfSIo8kpN3PGHCJy+NqPRo1kjL6MR7d1Nx67nSGHb1B2uU/SZX4fA/p9Hyyasf6IJGjYA1/vD/7oavqyPRfKNmuN5ZhjQ2X1c76xekLnbhFGNO5MYFWANc6Bge7mIZ5pcclQh5iHsb4zwFww/YlCZxWQOgIwifrOd6Mg9ydDZ453vMb/B5lcrccUf8NdFIsz9PZboBZSosRK28mRHwiM6TKuMd5LSGa1uMxXwC+4ZSa50/VsFUURiI3z+27l+qZCXcaSXDUFpBbTq5t76cFST+IHWW3mG4gqeyVOqcTQgS4WHqf+Z3XxHqyOwUnmEfqODmjKDjb8mQa2MOFFYnpbYRANyZtktHLPSOKETcc4WbeJmG8HcHHF/e9fpQnOibDb1Q4ZM3QgD96uFbS3GoGJPO9VVGSCwXwbtSJoyZGZGmC6wRa6F6yJhZfSlZUZ5LJGHcj6DMKagTAC2jtiqa+ThgbrJUdR6xBm06dK1z7Dv7EFuewJrlhy9cR3q6zb4WEGyJzHfddPnlK5P/2Ex/jErjVdaL7OsewtVoSDFSLWH0tlMQ/QvN+3c7zoyGgLjXezB1rmogC+c9h4wGyhViZIn/tVi0+4corOvDv228TL6JwqopAh2Sw24mtNfdZCNnlePoMXKJcWjxdCvNWSHNP1qSBNeiqTiQGuO9pOgyzVF5L2ljPu0aLYw6KxWfta1+bIe+jhh9r9dDUKCkUoXCBmaEySsKAFNxqsoUd/IbQKLydao3E4K6QX524f/epcyTGC2XUz7JiG1D4xydyU4CUCxVRsa9RIv+H+kckwJJptbSX6S99plYMktK3jvuIKvkrZ56jQHSgbdF8mUh8uGC7dJFC2CiTtwFFdhw5xq6wYHvlQ9Ja1Bjo2l3D8SHkylSDZJZqjkOyXn0GG/esUyNfVoKG02i//COxD8XEduj3/V176B8/sj9Ny5Ji3IeRkzBsa1L4GxfdvjHwfqUaKZ3DWlyyQh34y8S5+7e+77Q6RY3F+xbs83NSXq926dKKofeV9To4YAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3151,"cache_read_input_tokens":207696,"output_tokens":881,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3151,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":881,"cache_read_input_tokens":207696,"cache_creation_input_tokens":3151,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3151},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGxWGbodyRBpLDVn3MB","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"742e4be5-b50e-4556-9be3-b722dfa7c597","timestamp":"2026-06-10T08:37:59.926Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"742e4be5-b50e-4556-9be3-b722dfa7c597","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01P9Kgdx7v6oTCTRR8mbzxgr","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISxgMKYwgOGAIqQPy+zjTgYnhtYUKOIBB+lU9Ge7NJcW0bD9SOL6H87rLfP5TD+dWNUe8v4kDgc6mogsx3Ud1n6egdQtoMWf2VKgYyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMV3Y+uW1pXM+ZIxAeGgxMMUcgJV9hqEChpaMiMJBnPEVnUxsGlwQ6GCkIiUr6eZcSf/Lz7Wz+FcPznjMAF55xV1fxP3vGRwfyICk9DCqQArTpCfQCJXPaQ+jBhyp1JuL7STW61gmNGgkIFZcnc79LMP7s70ILI7KBuO5lDIbjpRTjOWA+b9MzX7PAlMDGXbkSI4lCOs6lHXCrNLizCmZnP9s0WxkMbtYxSXmYRBXSylZmt59EhnDTK7r7f0GbovRodp+iGq0x7gxOT8I4VGzSLZDK/ZlNMpqYQXG9uG9FUBE5Ze3BUa7uipCzj0vbRPQPH9fMJ2y9ZURebYUERLLEIB4XCA8RiHY6fWMaYRi6EPSramwuKnsGiNm/MvAAp/kDZXiZ4VLKUJwlJZbMvAuAo+esI7vq2fx95xnwSsT2fvBP/Dcn1wB/OfQghO8Gbpwb93ibhRrSKq2vRlOdXwvaGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3151,"cache_read_input_tokens":207696,"output_tokens":881,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3151,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":881,"cache_read_input_tokens":207696,"cache_creation_input_tokens":3151,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3151},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGxWGbodyRBpLDVn3MB","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"ba4f5f82-fd27-4c3f-a268-344e4a9a6cea","timestamp":"2026-06-10T08:37:59.999Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ba4f5f82-fd27-4c3f-a268-344e4a9a6cea","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01P9Kgdx7v6oTCTRR8mbzxgr","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01FKixY2qirJnzT1yKvHvSpZ","name":"Bash","input":{"command":"grep -n \"DeliverWebhook\\|withFakeQueueInteractions\\|dispatch\\|handle(\" tests/Feature/Webhooks/WebhookDeliveryTest.php | head -30","description":"See how delivery tests invoke the job"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3151,"cache_read_input_tokens":207696,"output_tokens":881,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3151,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":881,"cache_read_input_tokens":207696,"cache_creation_input_tokens":3151,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3151},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGxWGbodyRBpLDVn3MB","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"3006c924-dc08-4540-8f9c-b7430e2f361b","timestamp":"2026-06-10T08:38:00.981Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3006c924-dc08-4540-8f9c-b7430e2f361b","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01FKixY2qirJnzT1yKvHvSpZ","type":"tool_result","content":"6:use App\\Jobs\\DeliverWebhook;\n20: * Run a DeliverWebhook job by hand, swallowing the RuntimeException the job\n23:function runWebhookDeliveryJob(WebhookDelivery $delivery): DeliverWebhook\n25:    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n28:        $job->handle(app(WebhookService::class));\n75:    app(WebhookService::class)->dispatch($this->store, 'order.created', ['id' => 42]);\n120:    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n123:    $job->handle(app(WebhookService::class));\n155:    app(WebhookService::class)->dispatch($this->store, 'order.created', ['id' => 1]);","is_error":false}]},"uuid":"09a4b839-c44a-492f-b97f-c8df2470d26d","timestamp":"2026-06-10T08:38:01.068Z","toolUseResult":{"stdout":"6:use App\\Jobs\\DeliverWebhook;\n20: * Run a DeliverWebhook job by hand, swallowing the RuntimeException the job\n23:function runWebhookDeliveryJob(WebhookDelivery $delivery): DeliverWebhook\n25:    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n28:        $job->handle(app(WebhookService::class));\n75:    app(WebhookService::class)->dispatch($this->store, 'order.created', ['id' => 42]);\n120:    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n123:    $job->handle(app(WebhookService::class));\n155:    app(WebhookService::class)->dispatch($this->store, 'order.created', ['id' => 1]);","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"3006c924-dc08-4540-8f9c-b7430e2f361b","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"09a4b839-c44a-492f-b97f-c8df2470d26d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01ADw5vPiAKSgt2NxSG3b7rq","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_015CRs3tQPx5rVFp5iWo41MK","name":"Bash","input":{"command":"sed -n 14,60p tests/Feature/Webhooks/WebhookDeliveryTest.php; sed -n 95,160p tests/Feature/Webhooks/WebhookDeliveryTest.php","description":"Read delivery test details"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1192,"cache_read_input_tokens":210847,"output_tokens":144,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1192,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":144,"cache_read_input_tokens":210847,"cache_creation_input_tokens":1192,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1192},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGyoGajzpDXq2DouH9N","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"a6a83390-9ebb-4dfe-aea2-b0f4f7f3950c","timestamp":"2026-06-10T08:38:07.057Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a6a83390-9ebb-4dfe-aea2-b0f4f7f3950c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_015CRs3tQPx5rVFp5iWo41MK","type":"tool_result","content":"beforeEach(function () {\n    $this->context = createStoreContext();\n    $this->store = $this->context['store'];\n});\n\n/**\n * Run a DeliverWebhook job by hand, swallowing the RuntimeException the job\n * throws to trigger a queue retry on non-final failed attempts.\n */\nfunction runWebhookDeliveryJob(WebhookDelivery $delivery): DeliverWebhook\n{\n    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n\n    try {\n        $job->handle(app(WebhookService::class));\n    } catch (RuntimeException) {\n        // In production the queue retries the job per its backoff schedule.\n    }\n\n    return $job;\n}\n\nit('delivers a webhook to a subscribed URL', function () {\n    Http::fake();\n\n    $subscription = WebhookSubscription::factory()->for($this->store)->create([\n        'event_type' => 'order.created',\n        'target_url' => 'https://example.test/hooks/orders',\n    ]);\n\n    $order = Order::factory()->for($this->store)->create();\n\n    event(new OrderCreated($order));\n\n    Http::assertSent(function (Request $request) use ($order): bool {\n        $payload = $request->data();\n\n        return $request->url() === 'https://example.test/hooks/orders'\n            && $request->header('X-Platform-Event') === ['order.created']\n            && $request->header('X-Platform-Delivery-Id') !== []\n            && $request->header('X-Platform-Timestamp') !== []\n            && $payload['event'] === 'order.created'\n            && $payload['data']['id'] === $order->getKey();\n    });\n\n    $this->assertDatabaseHas('webhook_deliveries', [\n        'subscription_id' => $subscription->getKey(),\n    expect($job->tries)->toBe(6)\n        ->and($job->backoff)->toBe([60, 300, 1800, 7200, 43200]);\n\n    $delivery->refresh();\n\n    expect($delivery->attempt_count)->toBe(1)\n        ->and($delivery->status)->toBe(WebhookDeliveryStatus::Pending)\n        ->and($delivery->response_code)->toBe(500);\n\n    runWebhookDeliveryJob($delivery);\n\n    expect($delivery->refresh()->attempt_count)->toBe(2)\n        ->and($delivery->status)->toBe(WebhookDeliveryStatus::Pending);\n});\n\nit('marks delivery as failed after max retries', function () {\n    Http::fake(['*' => Http::response('Internal Server Error', 500)]);\n\n    $subscription = WebhookSubscription::factory()->for($this->store)->create();\n\n    $delivery = WebhookDelivery::factory()->create([\n        'subscription_id' => $subscription->getKey(),\n        'attempt_count' => 5,\n    ]);\n\n    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n\n    // The sixth and final attempt records the dead letter without throwing.\n    $job->handle(app(WebhookService::class));\n\n    $delivery->refresh();\n\n    expect($delivery->attempt_count)->toBe(6)\n        ->and($delivery->status)->toBe(WebhookDeliveryStatus::Failed)\n        ->and($delivery->response_code)->toBe(500);\n});\n\nit('pauses subscription after circuit breaker threshold', function () {\n    Http::fake(['*' => Http::response('Internal Server Error', 500)]);\n\n    $subscription = WebhookSubscription::factory()->for($this->store)->create([\n        'event_type' => 'order.created',\n    ]);\n\n    foreach (range(1, 5) as $attempt) {\n        $delivery = WebhookDelivery::factory()->create([\n            'subscription_id' => $subscription->getKey(),\n        ]);\n\n        runWebhookDeliveryJob($delivery);\n    }\n\n    $subscription->refresh();\n\n    expect($subscription->status)->toBe(WebhookSubscriptionStatus::Paused)\n        ->and($subscription->consecutive_failures)->toBe(5);\n\n    // A paused subscription no longer receives new deliveries.\n    $deliveriesBefore = WebhookDelivery::query()->count();\n\n    app(WebhookService::class)->dispatch($this->store, 'order.created', ['id' => 1]);\n\n    expect(WebhookDelivery::query()->count())->toBe($deliveriesBefore);\n});","is_error":false}]},"uuid":"39d4bcfb-2a7a-40ec-892b-40f467a296a0","timestamp":"2026-06-10T08:38:07.122Z","toolUseResult":{"stdout":"beforeEach(function () {\n    $this->context = createStoreContext();\n    $this->store = $this->context['store'];\n});\n\n/**\n * Run a DeliverWebhook job by hand, swallowing the RuntimeException the job\n * throws to trigger a queue retry on non-final failed attempts.\n */\nfunction runWebhookDeliveryJob(WebhookDelivery $delivery): DeliverWebhook\n{\n    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n\n    try {\n        $job->handle(app(WebhookService::class));\n    } catch (RuntimeException) {\n        // In production the queue retries the job per its backoff schedule.\n    }\n\n    return $job;\n}\n\nit('delivers a webhook to a subscribed URL', function () {\n    Http::fake();\n\n    $subscription = WebhookSubscription::factory()->for($this->store)->create([\n        'event_type' => 'order.created',\n        'target_url' => 'https://example.test/hooks/orders',\n    ]);\n\n    $order = Order::factory()->for($this->store)->create();\n\n    event(new OrderCreated($order));\n\n    Http::assertSent(function (Request $request) use ($order): bool {\n        $payload = $request->data();\n\n        return $request->url() === 'https://example.test/hooks/orders'\n            && $request->header('X-Platform-Event') === ['order.created']\n            && $request->header('X-Platform-Delivery-Id') !== []\n            && $request->header('X-Platform-Timestamp') !== []\n            && $payload['event'] === 'order.created'\n            && $payload['data']['id'] === $order->getKey();\n    });\n\n    $this->assertDatabaseHas('webhook_deliveries', [\n        'subscription_id' => $subscription->getKey(),\n    expect($job->tries)->toBe(6)\n        ->and($job->backoff)->toBe([60, 300, 1800, 7200, 43200]);\n\n    $delivery->refresh();\n\n    expect($delivery->attempt_count)->toBe(1)\n        ->and($delivery->status)->toBe(WebhookDeliveryStatus::Pending)\n        ->and($delivery->response_code)->toBe(500);\n\n    runWebhookDeliveryJob($delivery);\n\n    expect($delivery->refresh()->attempt_count)->toBe(2)\n        ->and($delivery->status)->toBe(WebhookDeliveryStatus::Pending);\n});\n\nit('marks delivery as failed after max retries', function () {\n    Http::fake(['*' => Http::response('Internal Server Error', 500)]);\n\n    $subscription = WebhookSubscription::factory()->for($this->store)->create();\n\n    $delivery = WebhookDelivery::factory()->create([\n        'subscription_id' => $subscription->getKey(),\n        'attempt_count' => 5,\n    ]);\n\n    $job = new DeliverWebhook($delivery, ['event' => 'order.created', 'data' => []], now()->getTimestamp());\n\n    // The sixth and final attempt records the dead letter without throwing.\n    $job->handle(app(WebhookService::class));\n\n    $delivery->refresh();\n\n    expect($delivery->attempt_count)->toBe(6)\n        ->and($delivery->status)->toBe(WebhookDeliveryStatus::Failed)\n        ->and($delivery->response_code)->toBe(500);\n});\n\nit('pauses subscription after circuit breaker threshold', function () {\n    Http::fake(['*' => Http::response('Internal Server Error', 500)]);\n\n    $subscription = WebhookSubscription::factory()->for($this->store)->create([\n        'event_type' => 'order.created',\n    ]);\n\n    foreach (range(1, 5) as $attempt) {\n        $delivery = WebhookDelivery::factory()->create([\n            'subscription_id' => $subscription->getKey(),\n        ]);\n\n        runWebhookDeliveryJob($delivery);\n    }\n\n    $subscription->refresh();\n\n    expect($subscription->status)->toBe(WebhookSubscriptionStatus::Paused)\n        ->and($subscription->consecutive_failures)->toBe(5);\n\n    // A paused subscription no longer receives new deliveries.\n    $deliveriesBefore = WebhookDelivery::query()->count();\n\n    app(WebhookService::class)->dispatch($this->store, 'order.created', ['id' => 1]);\n\n    expect(WebhookDelivery::query()->count())->toBe($deliveriesBefore);\n});","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"a6a83390-9ebb-4dfe-aea2-b0f4f7f3950c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"file-history-snapshot","messageId":"9e412568-ede1-460d-95fd-8284d7d137ec","snapshot":{"messageId":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","trackedFileBackups":{"specs/progress.md":{"backupFileName":null,"version":1,"backupTime":"2026-06-09T18:16:23.629Z"},"app/Jobs/DeliverWebhook.php":{"backupFileName":"22fa2902cdfbce50@v1","version":1,"backupTime":"2026-06-10T08:38:25.146Z"}},"timestamp":"2026-06-09T18:14:31.432Z"},"isSnapshotUpdate":true}
{"parentUuid":"39d4bcfb-2a7a-40ec-892b-40f467a296a0","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Q5mmP3GZdnWsJ4VLWBzmkt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1674,"cache_read_input_tokens":212039,"output_tokens":1147,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1674,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1147,"cache_read_input_tokens":212039,"cache_creation_input_tokens":1674,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1674},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGzFBZ5LfK8igoHQ93j","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"6b6e9ff7-79a9-47a4-9291-38e1285c8c75","timestamp":"2026-06-10T08:38:21.006Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6b6e9ff7-79a9-47a4-9291-38e1285c8c75","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Q5mmP3GZdnWsJ4VLWBzmkt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS2AMKYwgOGAIqQBFU7z3pylBZaL0JlRCApXNZs65C/coDKnNh0+qr+ar0rTWvwkwNBmReeGs2jIKOwFJ72Tm8q2xqBT6IKIRJCXkyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMittSckUz3EJNKlWyGgw8WkZ/O0qvvjGGrr0iMNuIQ6g/xLvC+wOfzFqCNASPCM+emEyfmR9zrk9sM/xZsm0dJ6iAJg3FqPFPKhsF9iqiAk2sZy4FPTccQqheWv+Q1sr5/hVTyXpfIbCaqb5uzjKg2rk3tYdxMDPNvwCx24bovTRp9081z0Fpkabr/+fKE/NWYR5mgOe9+BiwrcJ3VcDYa5W8oBlBpzLV/Y+0OU6fKpL2mDc085sA+EclAJiHp704cUbTgNsKPzhqz+gLj0c06bGsRPV2K51IJvknFP9d0ZgrUQfJ4vVkVETtAkYzdeSNcIhhpyq4t0oimt8f3/Zm9FTExP6iRwfo5F9ItytpHOoKD+y8r+cy+KtG/in969slceZDQNO0e64X0BRsHh4dvWiybNkITximeq1M0vXQf+y1uwDY3OfZf4RWODgU2ZAwSC89UnCjz1c0nPHOHxbAI3yVKSrZPxVm4A+sYBPkvly7GAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1674,"cache_read_input_tokens":212039,"output_tokens":1147,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1674,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1147,"cache_read_input_tokens":212039,"cache_creation_input_tokens":1674,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1674},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGzFBZ5LfK8igoHQ93j","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"6d567c8f-38f3-4aa8-a222-09b0206747ea","timestamp":"2026-06-10T08:38:21.013Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6d567c8f-38f3-4aa8-a222-09b0206747ea","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Q5mmP3GZdnWsJ4VLWBzmkt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01KA4jYFH9uZLtbhcekN5vnN","name":"Edit","input":{"replace_all":false,"file_path":"/Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php","old_string":"        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS;\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },","new_string":"        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS || ! $this->supportsBackgroundRetries();\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1674,"cache_read_input_tokens":212039,"output_tokens":1147,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1674,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1147,"cache_read_input_tokens":212039,"cache_creation_input_tokens":1674,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1674},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuGzFBZ5LfK8igoHQ93j","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"9e412568-ede1-460d-95fd-8284d7d137ec","timestamp":"2026-06-10T08:38:25.136Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9e412568-ede1-460d-95fd-8284d7d137ec","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01KA4jYFH9uZLtbhcekN5vnN","type":"tool_result","content":"The file /Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php has been updated successfully. (file state is current in your context — no need to Read it back)"}]},"uuid":"fd162e7c-5410-4620-bf1c-12cc13c67fc9","timestamp":"2026-06-10T08:38:25.151Z","toolUseResult":{"filePath":"/Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php","oldString":"        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS;\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },","newString":"        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS || ! $this->supportsBackgroundRetries();\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },","originalFile":"<?php\n\nnamespace App\\Jobs;\n\nuse App\\Enums\\WebhookDeliveryStatus;\nuse App\\Enums\\WebhookSubscriptionStatus;\nuse App\\Models\\Scopes\\StoreScope;\nuse App\\Models\\WebhookDelivery;\nuse App\\Models\\WebhookSubscription;\nuse App\\Services\\WebhookService;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Foundation\\Queue\\Queueable;\nuse Illuminate\\Http\\Client\\ConnectionException;\nuse Illuminate\\Queue\\SerializesModels;\nuse Illuminate\\Support\\Facades\\Http;\nuse Illuminate\\Support\\Facades\\Log;\nuse Illuminate\\Support\\Str;\nuse RuntimeException;\n\n/**\n * POSTs a signed webhook payload to a subscriber endpoint (spec 05 sections\n * 13.2-13.4). Retries with exponential backoff via Laravel's job retry\n * mechanism; the delivery record tracks attempt accounting and the\n * subscription tracks consecutive failures for the circuit breaker.\n */\nclass DeliverWebhook implements ShouldQueue\n{\n    use Queueable, SerializesModels;\n\n    /**\n     * 1 initial attempt + 5 retries (spec 05 section 13.3).\n     */\n    public int $tries = self::MAX_ATTEMPTS;\n\n    /**\n     * Backoff delays in seconds: 1 min, 5 min, 30 min, 2 h, 12 h.\n     *\n     * @var list<int>\n     */\n    public array $backoff = [60, 300, 1800, 7200, 43200];\n\n    public const int MAX_ATTEMPTS = 6;\n\n    /**\n     * Consecutive failed attempts before the subscription is paused\n     * (spec 05 section 13.4).\n     */\n    public const int CIRCUIT_BREAKER_THRESHOLD = 5;\n\n    public const int RESPONSE_SNIPPET_LENGTH = 500;\n\n    /**\n     * @param  array<string, mixed>  $payload\n     */\n    public function __construct(\n        public WebhookDelivery $delivery,\n        public array $payload,\n        public int $eventTimestamp,\n    ) {}\n\n    public function handle(WebhookService $webhooks): void\n    {\n        $delivery = $this->delivery->fresh();\n\n        if ($delivery === null || $delivery->status !== WebhookDeliveryStatus::Pending) {\n            return;\n        }\n\n        $subscription = WebhookSubscription::query()\n            ->withoutGlobalScope(StoreScope::class)\n            ->find($delivery->subscription_id);\n\n        if ($subscription === null || $subscription->status !== WebhookSubscriptionStatus::Active) {\n            $delivery->update(['status' => WebhookDeliveryStatus::Failed]);\n\n            return;\n        }\n\n        $body = json_encode($this->payload, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);\n\n        [$responseCode, $responseSnippet] = $this->attemptDelivery($subscription, $webhooks, $body);\n\n        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS;\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },\n            'last_attempt_at' => now(),\n            'response_code' => $responseCode,\n            'response_body_snippet' => $responseSnippet,\n        ]);\n\n        if ($succeeded) {\n            $this->recordSuccess($subscription);\n\n            return;\n        }\n\n        $this->recordFailure($subscription);\n\n        if ($exhausted) {\n            Log::channel('structured')->warning('webhook.delivery_failed', [\n                'event' => 'business',\n                'delivery_id' => $delivery->getKey(),\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'event_type' => $subscription->event_type,\n                'target_url' => $subscription->target_url,\n                'attempt_count' => $attempt,\n                'response_code' => $responseCode,\n            ]);\n        }\n\n        if (! $exhausted) {\n            throw new RuntimeException(sprintf(\n                'Webhook delivery %d to %s failed with status %s.',\n                $delivery->getKey(),\n                $subscription->target_url,\n                $responseCode ?? 'connection error',\n            ));\n        }\n    }\n\n    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.\n     *\n     * @return array{0: int|null, 1: string|null}\n     */\n    protected function attemptDelivery(WebhookSubscription $subscription, WebhookService $webhooks, string $body): array\n    {\n        try {\n            $response = Http::timeout(10)\n                ->withHeaders([\n                    'X-Platform-Signature' => $webhooks->sign($body, $subscription->signing_secret_encrypted),\n                    'X-Platform-Event' => $subscription->event_type,\n                    'X-Platform-Delivery-Id' => (string) Str::uuid(),\n                    'X-Platform-Timestamp' => (string) $this->eventTimestamp,\n                ])\n                ->withBody($body, 'application/json')\n                ->post($subscription->target_url);\n\n            return [\n                $response->status(),\n                Str::limit($response->body(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        } catch (ConnectionException $exception) {\n            return [\n                null,\n                Str::limit($exception->getMessage(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        }\n    }\n\n    /**\n     * A successful delivery resets the circuit breaker counter\n     * (spec 05 section 13.4).\n     */\n    protected function recordSuccess(WebhookSubscription $subscription): void\n    {\n        if ($subscription->consecutive_failures > 0) {\n            $subscription->update(['consecutive_failures' => 0]);\n        }\n    }\n\n    /**\n     * Each failed attempt increments the circuit breaker counter; at the\n     * threshold the subscription is paused until a merchant resumes it\n     * manually through the admin UI (spec 05 section 13.4).\n     */\n    protected function recordFailure(WebhookSubscription $subscription): void\n    {\n        $failures = $subscription->consecutive_failures + 1;\n\n        $attributes = ['consecutive_failures' => $failures];\n\n        if ($failures >= self::CIRCUIT_BREAKER_THRESHOLD) {\n            $attributes['status'] = WebhookSubscriptionStatus::Paused;\n\n            Log::warning('Webhook subscription paused by circuit breaker after consecutive failures.', [\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'target_url' => $subscription->target_url,\n                'consecutive_failures' => $failures,\n            ]);\n        }\n\n        $subscription->update($attributes);\n    }\n}\n","structuredPatch":[{"oldStart":82,"oldLines":7,"newStart":82,"newLines":7,"lines":[" ","         $attempt = $delivery->attempt_count + 1;","         $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;","-        $exhausted = $attempt >= self::MAX_ATTEMPTS;","+        $exhausted = $attempt >= self::MAX_ATTEMPTS || ! $this->supportsBackgroundRetries();"," ","         $delivery->update([","             'attempt_count' => $attempt,"]}],"userModified":false,"replaceAll":false},"sourceToolAssistantUUID":"9e412568-ede1-460d-95fd-8284d7d137ec","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"fd162e7c-5410-4620-bf1c-12cc13c67fc9","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"fd162e7c-5410-4620-bf1c-12cc13c67fc9","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01HK3H2znnuwrTyEkyTtscqL","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01U51fhKF7P1qRN1o3m69MZx","name":"Edit","input":{"replace_all":false,"file_path":"/Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php","old_string":"    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.","new_string":"    /**\n     * Retry-by-throwing only works on a real background queue. On the sync\n     * queue the exception would propagate into the request that triggered\n     * the webhook (e.g. a customer checkout), so inline execution\n     * dead-letters after the first failed attempt instead.\n     */\n    protected function supportsBackgroundRetries(): bool\n    {\n        return ! ($this->job instanceof SyncJob);\n    }\n\n    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1238,"cache_read_input_tokens":213713,"output_tokens":383,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1238,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":383,"cache_read_input_tokens":213713,"cache_creation_input_tokens":1238,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1238},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH1bYw2WpQCxEj8ZGsD","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"33c6b9e5-f736-44b2-87f1-d9da04a38048","timestamp":"2026-06-10T08:38:38.383Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"33c6b9e5-f736-44b2-87f1-d9da04a38048","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01U51fhKF7P1qRN1o3m69MZx","type":"tool_result","content":"The file /Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php has been updated successfully. (file state is current in your context — no need to Read it back)"}]},"uuid":"081cdb2b-0128-4391-adbf-b05d848a456d","timestamp":"2026-06-10T08:38:38.405Z","toolUseResult":{"filePath":"/Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php","oldString":"    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.","newString":"    /**\n     * Retry-by-throwing only works on a real background queue. On the sync\n     * queue the exception would propagate into the request that triggered\n     * the webhook (e.g. a customer checkout), so inline execution\n     * dead-letters after the first failed attempt instead.\n     */\n    protected function supportsBackgroundRetries(): bool\n    {\n        return ! ($this->job instanceof SyncJob);\n    }\n\n    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.","originalFile":"<?php\n\nnamespace App\\Jobs;\n\nuse App\\Enums\\WebhookDeliveryStatus;\nuse App\\Enums\\WebhookSubscriptionStatus;\nuse App\\Models\\Scopes\\StoreScope;\nuse App\\Models\\WebhookDelivery;\nuse App\\Models\\WebhookSubscription;\nuse App\\Services\\WebhookService;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Foundation\\Queue\\Queueable;\nuse Illuminate\\Http\\Client\\ConnectionException;\nuse Illuminate\\Queue\\SerializesModels;\nuse Illuminate\\Support\\Facades\\Http;\nuse Illuminate\\Support\\Facades\\Log;\nuse Illuminate\\Support\\Str;\nuse RuntimeException;\n\n/**\n * POSTs a signed webhook payload to a subscriber endpoint (spec 05 sections\n * 13.2-13.4). Retries with exponential backoff via Laravel's job retry\n * mechanism; the delivery record tracks attempt accounting and the\n * subscription tracks consecutive failures for the circuit breaker.\n */\nclass DeliverWebhook implements ShouldQueue\n{\n    use Queueable, SerializesModels;\n\n    /**\n     * 1 initial attempt + 5 retries (spec 05 section 13.3).\n     */\n    public int $tries = self::MAX_ATTEMPTS;\n\n    /**\n     * Backoff delays in seconds: 1 min, 5 min, 30 min, 2 h, 12 h.\n     *\n     * @var list<int>\n     */\n    public array $backoff = [60, 300, 1800, 7200, 43200];\n\n    public const int MAX_ATTEMPTS = 6;\n\n    /**\n     * Consecutive failed attempts before the subscription is paused\n     * (spec 05 section 13.4).\n     */\n    public const int CIRCUIT_BREAKER_THRESHOLD = 5;\n\n    public const int RESPONSE_SNIPPET_LENGTH = 500;\n\n    /**\n     * @param  array<string, mixed>  $payload\n     */\n    public function __construct(\n        public WebhookDelivery $delivery,\n        public array $payload,\n        public int $eventTimestamp,\n    ) {}\n\n    public function handle(WebhookService $webhooks): void\n    {\n        $delivery = $this->delivery->fresh();\n\n        if ($delivery === null || $delivery->status !== WebhookDeliveryStatus::Pending) {\n            return;\n        }\n\n        $subscription = WebhookSubscription::query()\n            ->withoutGlobalScope(StoreScope::class)\n            ->find($delivery->subscription_id);\n\n        if ($subscription === null || $subscription->status !== WebhookSubscriptionStatus::Active) {\n            $delivery->update(['status' => WebhookDeliveryStatus::Failed]);\n\n            return;\n        }\n\n        $body = json_encode($this->payload, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);\n\n        [$responseCode, $responseSnippet] = $this->attemptDelivery($subscription, $webhooks, $body);\n\n        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS || ! $this->supportsBackgroundRetries();\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },\n            'last_attempt_at' => now(),\n            'response_code' => $responseCode,\n            'response_body_snippet' => $responseSnippet,\n        ]);\n\n        if ($succeeded) {\n            $this->recordSuccess($subscription);\n\n            return;\n        }\n\n        $this->recordFailure($subscription);\n\n        if ($exhausted) {\n            Log::channel('structured')->warning('webhook.delivery_failed', [\n                'event' => 'business',\n                'delivery_id' => $delivery->getKey(),\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'event_type' => $subscription->event_type,\n                'target_url' => $subscription->target_url,\n                'attempt_count' => $attempt,\n                'response_code' => $responseCode,\n            ]);\n        }\n\n        if (! $exhausted) {\n            throw new RuntimeException(sprintf(\n                'Webhook delivery %d to %s failed with status %s.',\n                $delivery->getKey(),\n                $subscription->target_url,\n                $responseCode ?? 'connection error',\n            ));\n        }\n    }\n\n    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.\n     *\n     * @return array{0: int|null, 1: string|null}\n     */\n    protected function attemptDelivery(WebhookSubscription $subscription, WebhookService $webhooks, string $body): array\n    {\n        try {\n            $response = Http::timeout(10)\n                ->withHeaders([\n                    'X-Platform-Signature' => $webhooks->sign($body, $subscription->signing_secret_encrypted),\n                    'X-Platform-Event' => $subscription->event_type,\n                    'X-Platform-Delivery-Id' => (string) Str::uuid(),\n                    'X-Platform-Timestamp' => (string) $this->eventTimestamp,\n                ])\n                ->withBody($body, 'application/json')\n                ->post($subscription->target_url);\n\n            return [\n                $response->status(),\n                Str::limit($response->body(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        } catch (ConnectionException $exception) {\n            return [\n                null,\n                Str::limit($exception->getMessage(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        }\n    }\n\n    /**\n     * A successful delivery resets the circuit breaker counter\n     * (spec 05 section 13.4).\n     */\n    protected function recordSuccess(WebhookSubscription $subscription): void\n    {\n        if ($subscription->consecutive_failures > 0) {\n            $subscription->update(['consecutive_failures' => 0]);\n        }\n    }\n\n    /**\n     * Each failed attempt increments the circuit breaker counter; at the\n     * threshold the subscription is paused until a merchant resumes it\n     * manually through the admin UI (spec 05 section 13.4).\n     */\n    protected function recordFailure(WebhookSubscription $subscription): void\n    {\n        $failures = $subscription->consecutive_failures + 1;\n\n        $attributes = ['consecutive_failures' => $failures];\n\n        if ($failures >= self::CIRCUIT_BREAKER_THRESHOLD) {\n            $attributes['status'] = WebhookSubscriptionStatus::Paused;\n\n            Log::warning('Webhook subscription paused by circuit breaker after consecutive failures.', [\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'target_url' => $subscription->target_url,\n                'consecutive_failures' => $failures,\n            ]);\n        }\n\n        $subscription->update($attributes);\n    }\n}\n","structuredPatch":[{"oldStart":128,"oldLines":6,"newStart":128,"newLines":17,"lines":["     }"," ","     /**","+     * Retry-by-throwing only works on a real background queue. On the sync","+     * queue the exception would propagate into the request that triggered","+     * the webhook (e.g. a customer checkout), so inline execution","+     * dead-letters after the first failed attempt instead.","+     */","+    protected function supportsBackgroundRetries(): bool","+    {","+        return ! ($this->job instanceof SyncJob);","+    }","+","+    /**","      * POST the signed payload and normalize the outcome to a response code","      * (null on connection failure) and a truncated body snippet.","      *"]}],"userModified":false,"replaceAll":false},"sourceToolAssistantUUID":"33c6b9e5-f736-44b2-87f1-d9da04a38048","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"081cdb2b-0128-4391-adbf-b05d848a456d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_015U6C1nevpKXXufVz5AU7Ar","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01R8p4Nax14jbURBCbTzfsjX","name":"Edit","input":{"replace_all":false,"file_path":"/Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php","old_string":"use Illuminate\\Queue\\SerializesModels;","new_string":"use Illuminate\\Queue\\Jobs\\SyncJob;\nuse Illuminate\\Queue\\SerializesModels;"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":450,"cache_read_input_tokens":214951,"output_tokens":210,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":450,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":210,"cache_read_input_tokens":214951,"cache_creation_input_tokens":450,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":450},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH2dyKZi1zGyg2otk6c","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"9e2741c5-3a45-4a96-bb68-ba3c9beb4aa6","timestamp":"2026-06-10T08:38:45.285Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9e2741c5-3a45-4a96-bb68-ba3c9beb4aa6","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01R8p4Nax14jbURBCbTzfsjX","type":"tool_result","content":"The file /Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php has been updated successfully. (file state is current in your context — no need to Read it back)"}]},"uuid":"c5f2b787-50e6-4ba5-82a9-2141fd650ebe","timestamp":"2026-06-10T08:38:45.295Z","toolUseResult":{"filePath":"/Users/fabianwesner/Herd/shop/app/Jobs/DeliverWebhook.php","oldString":"use Illuminate\\Queue\\SerializesModels;","newString":"use Illuminate\\Queue\\Jobs\\SyncJob;\nuse Illuminate\\Queue\\SerializesModels;","originalFile":"<?php\n\nnamespace App\\Jobs;\n\nuse App\\Enums\\WebhookDeliveryStatus;\nuse App\\Enums\\WebhookSubscriptionStatus;\nuse App\\Models\\Scopes\\StoreScope;\nuse App\\Models\\WebhookDelivery;\nuse App\\Models\\WebhookSubscription;\nuse App\\Services\\WebhookService;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Foundation\\Queue\\Queueable;\nuse Illuminate\\Http\\Client\\ConnectionException;\nuse Illuminate\\Queue\\SerializesModels;\nuse Illuminate\\Support\\Facades\\Http;\nuse Illuminate\\Support\\Facades\\Log;\nuse Illuminate\\Support\\Str;\nuse RuntimeException;\n\n/**\n * POSTs a signed webhook payload to a subscriber endpoint (spec 05 sections\n * 13.2-13.4). Retries with exponential backoff via Laravel's job retry\n * mechanism; the delivery record tracks attempt accounting and the\n * subscription tracks consecutive failures for the circuit breaker.\n */\nclass DeliverWebhook implements ShouldQueue\n{\n    use Queueable, SerializesModels;\n\n    /**\n     * 1 initial attempt + 5 retries (spec 05 section 13.3).\n     */\n    public int $tries = self::MAX_ATTEMPTS;\n\n    /**\n     * Backoff delays in seconds: 1 min, 5 min, 30 min, 2 h, 12 h.\n     *\n     * @var list<int>\n     */\n    public array $backoff = [60, 300, 1800, 7200, 43200];\n\n    public const int MAX_ATTEMPTS = 6;\n\n    /**\n     * Consecutive failed attempts before the subscription is paused\n     * (spec 05 section 13.4).\n     */\n    public const int CIRCUIT_BREAKER_THRESHOLD = 5;\n\n    public const int RESPONSE_SNIPPET_LENGTH = 500;\n\n    /**\n     * @param  array<string, mixed>  $payload\n     */\n    public function __construct(\n        public WebhookDelivery $delivery,\n        public array $payload,\n        public int $eventTimestamp,\n    ) {}\n\n    public function handle(WebhookService $webhooks): void\n    {\n        $delivery = $this->delivery->fresh();\n\n        if ($delivery === null || $delivery->status !== WebhookDeliveryStatus::Pending) {\n            return;\n        }\n\n        $subscription = WebhookSubscription::query()\n            ->withoutGlobalScope(StoreScope::class)\n            ->find($delivery->subscription_id);\n\n        if ($subscription === null || $subscription->status !== WebhookSubscriptionStatus::Active) {\n            $delivery->update(['status' => WebhookDeliveryStatus::Failed]);\n\n            return;\n        }\n\n        $body = json_encode($this->payload, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);\n\n        [$responseCode, $responseSnippet] = $this->attemptDelivery($subscription, $webhooks, $body);\n\n        $attempt = $delivery->attempt_count + 1;\n        $succeeded = $responseCode !== null && $responseCode >= 200 && $responseCode < 300;\n        $exhausted = $attempt >= self::MAX_ATTEMPTS || ! $this->supportsBackgroundRetries();\n\n        $delivery->update([\n            'attempt_count' => $attempt,\n            'status' => match (true) {\n                $succeeded => WebhookDeliveryStatus::Success,\n                $exhausted => WebhookDeliveryStatus::Failed,\n                default => WebhookDeliveryStatus::Pending,\n            },\n            'last_attempt_at' => now(),\n            'response_code' => $responseCode,\n            'response_body_snippet' => $responseSnippet,\n        ]);\n\n        if ($succeeded) {\n            $this->recordSuccess($subscription);\n\n            return;\n        }\n\n        $this->recordFailure($subscription);\n\n        if ($exhausted) {\n            Log::channel('structured')->warning('webhook.delivery_failed', [\n                'event' => 'business',\n                'delivery_id' => $delivery->getKey(),\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'event_type' => $subscription->event_type,\n                'target_url' => $subscription->target_url,\n                'attempt_count' => $attempt,\n                'response_code' => $responseCode,\n            ]);\n        }\n\n        if (! $exhausted) {\n            throw new RuntimeException(sprintf(\n                'Webhook delivery %d to %s failed with status %s.',\n                $delivery->getKey(),\n                $subscription->target_url,\n                $responseCode ?? 'connection error',\n            ));\n        }\n    }\n\n    /**\n     * Retry-by-throwing only works on a real background queue. On the sync\n     * queue the exception would propagate into the request that triggered\n     * the webhook (e.g. a customer checkout), so inline execution\n     * dead-letters after the first failed attempt instead.\n     */\n    protected function supportsBackgroundRetries(): bool\n    {\n        return ! ($this->job instanceof SyncJob);\n    }\n\n    /**\n     * POST the signed payload and normalize the outcome to a response code\n     * (null on connection failure) and a truncated body snippet.\n     *\n     * @return array{0: int|null, 1: string|null}\n     */\n    protected function attemptDelivery(WebhookSubscription $subscription, WebhookService $webhooks, string $body): array\n    {\n        try {\n            $response = Http::timeout(10)\n                ->withHeaders([\n                    'X-Platform-Signature' => $webhooks->sign($body, $subscription->signing_secret_encrypted),\n                    'X-Platform-Event' => $subscription->event_type,\n                    'X-Platform-Delivery-Id' => (string) Str::uuid(),\n                    'X-Platform-Timestamp' => (string) $this->eventTimestamp,\n                ])\n                ->withBody($body, 'application/json')\n                ->post($subscription->target_url);\n\n            return [\n                $response->status(),\n                Str::limit($response->body(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        } catch (ConnectionException $exception) {\n            return [\n                null,\n                Str::limit($exception->getMessage(), self::RESPONSE_SNIPPET_LENGTH, ''),\n            ];\n        }\n    }\n\n    /**\n     * A successful delivery resets the circuit breaker counter\n     * (spec 05 section 13.4).\n     */\n    protected function recordSuccess(WebhookSubscription $subscription): void\n    {\n        if ($subscription->consecutive_failures > 0) {\n            $subscription->update(['consecutive_failures' => 0]);\n        }\n    }\n\n    /**\n     * Each failed attempt increments the circuit breaker counter; at the\n     * threshold the subscription is paused until a merchant resumes it\n     * manually through the admin UI (spec 05 section 13.4).\n     */\n    protected function recordFailure(WebhookSubscription $subscription): void\n    {\n        $failures = $subscription->consecutive_failures + 1;\n\n        $attributes = ['consecutive_failures' => $failures];\n\n        if ($failures >= self::CIRCUIT_BREAKER_THRESHOLD) {\n            $attributes['status'] = WebhookSubscriptionStatus::Paused;\n\n            Log::warning('Webhook subscription paused by circuit breaker after consecutive failures.', [\n                'subscription_id' => $subscription->getKey(),\n                'store_id' => $subscription->store_id,\n                'target_url' => $subscription->target_url,\n                'consecutive_failures' => $failures,\n            ]);\n        }\n\n        $subscription->update($attributes);\n    }\n}\n","structuredPatch":[{"oldStart":11,"oldLines":6,"newStart":11,"newLines":7,"lines":[" use Illuminate\\Contracts\\Queue\\ShouldQueue;"," use Illuminate\\Foundation\\Queue\\Queueable;"," use Illuminate\\Http\\Client\\ConnectionException;","+use Illuminate\\Queue\\Jobs\\SyncJob;"," use Illuminate\\Queue\\SerializesModels;"," use Illuminate\\Support\\Facades\\Http;"," use Illuminate\\Support\\Facades\\Log;"]}],"userModified":false,"replaceAll":false},"sourceToolAssistantUUID":"9e2741c5-3a45-4a96-bb68-ba3c9beb4aa6","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c5f2b787-50e6-4ba5-82a9-2141fd650ebe","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013Z7KhjhbPejAskxZ5zJSNX","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"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"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":277,"cache_read_input_tokens":215401,"output_tokens":705,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":277,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":705,"cache_read_input_tokens":215401,"cache_creation_input_tokens":277,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":277},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH34L2rA8aXeVhj8WCM","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"4489d7cc-21d3-4ee7-9d12-c067d104b568","timestamp":"2026-06-10T08:38:57.641Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4489d7cc-21d3-4ee7-9d12-c067d104b568","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013Z7KhjhbPejAskxZ5zJSNX","type":"message","role":"assistant","content":[{"type":"text","text":"Adding a regression test for the sync-queue path, then running the webhook tests."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":277,"cache_read_input_tokens":215401,"output_tokens":705,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":277,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":705,"cache_read_input_tokens":215401,"cache_creation_input_tokens":277,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":277},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH34L2rA8aXeVhj8WCM","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"4cc0a82e-2dae-499c-a657-38d5bab9af69","timestamp":"2026-06-10T08:38:57.794Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4cc0a82e-2dae-499c-a657-38d5bab9af69","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013Z7KhjhbPejAskxZ5zJSNX","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Nn8TZNnraqXk3c1gyTzbrp","name":"Bash","input":{"command":"grep -n \"it(\" tests/Feature/Webhooks/WebhookDeliveryTest.php","description":"List existing delivery test cases"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":277,"cache_read_input_tokens":215401,"output_tokens":705,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":277,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":705,"cache_read_input_tokens":215401,"cache_creation_input_tokens":277,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":277},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH34L2rA8aXeVhj8WCM","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"e171bafb-79c1-4115-b306-f0bb6c7a0c80","timestamp":"2026-06-10T08:38:58.494Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e171bafb-79c1-4115-b306-f0bb6c7a0c80","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Nn8TZNnraqXk3c1gyTzbrp","type":"tool_result","content":"36:it('delivers a webhook to a subscribed URL', function () {\n67:it('signs the payload with HMAC', function () {\n84:it('retries failed deliveries with exponential backoff', function () {\n110:it('marks delivery as failed after max retries', function () {\n132:it('pauses subscription after circuit breaker threshold', function () {","is_error":false}]},"uuid":"7fb2fb14-a844-42b1-9de1-e5f200bb7946","timestamp":"2026-06-10T08:38:58.556Z","toolUseResult":{"stdout":"36:it('delivers a webhook to a subscribed URL', function () {\n67:it('signs the payload with HMAC', function () {\n84:it('retries failed deliveries with exponential backoff', function () {\n110:it('marks delivery as failed after max retries', function () {\n132:it('pauses subscription after circuit breaker threshold', function () {","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"e171bafb-79c1-4115-b306-f0bb6c7a0c80","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7fb2fb14-a844-42b1-9de1-e5f200bb7946","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_017QKSnZFkTKiSaokFeSmGLQ","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01S1VxvTU9TqgWpVTk4NPaVx","name":"Bash","input":{"command":"cat >> tests/Feature/Webhooks/WebhookDeliveryTest.php <<'EOF'\n\nit('does not break the triggering request when sync-queue delivery fails', function () {\n    Http::fake(['*' => Http::response('Internal Server Error', 500)]);\n\n    $subscription = WebhookSubscription::factory()->for($this->store)->create([\n        'event_type' => 'order.created',\n    ]);\n\n    // On the sync queue the job runs inline inside the dispatching request;\n    // a delivery failure must dead-letter instead of throwing into it.\n    app(WebhookService::class)->dispatch($this->store, 'order.created', ['id' => 7]);\n\n    $delivery = WebhookDelivery::query()\n        ->where('subscription_id', $subscription->getKey())\n        ->latest('id')\n        ->first();\n\n    expect($delivery->status)->toBe(WebhookDeliveryStatus::Failed)\n        ->and($delivery->attempt_count)->toBe(1)\n        ->and($subscription->refresh()->consecutive_failures)->toBe(1);\n});\nEOF\nphp artisan test --compact tests/Feature/Webhooks/ tests/Feature/Orders/ tests/Feature/Checkout/ 2>&1 | tail -4","description":"Add sync-queue regression test and run affected suites"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":822,"cache_read_input_tokens":215678,"output_tokens":513,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":822,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":513,"cache_read_input_tokens":215678,"cache_creation_input_tokens":822,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":822},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH43s2meHdUbKZmP4aY","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"10459574-2d39-4a19-90b9-89c0d2f4457e","timestamp":"2026-06-10T08:39:06.840Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"10459574-2d39-4a19-90b9-89c0d2f4457e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01S1VxvTU9TqgWpVTk4NPaVx","type":"tool_result","content":"  \u001b[44;1m INFO \u001b[49;22m Warning: socket_create_listen(): unable to bind to given address [1]: Operation not permitted in /Users/fabianwesner/Herd/shop/vendor/pestphp/pest-plugin-browser/src/Support/Port.php on line 21.","is_error":false}]},"uuid":"c5b82314-5e15-4f70-816f-6032ff17f508","timestamp":"2026-06-10T08:39:09.087Z","toolUseResult":{"stdout":"  \u001b[44;1m INFO \u001b[49;22m Warning: socket_create_listen(): unable to bind to given address [1]: Operation not permitted in /Users/fabianwesner/Herd/shop/vendor/pestphp/pest-plugin-browser/src/Support/Port.php on line 21.","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"10459574-2d39-4a19-90b9-89c0d2f4457e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c5b82314-5e15-4f70-816f-6032ff17f508","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"3f25e108-5045-4f40-b878-daba57004685","timestamp":"2026-06-10T08:39:09.088Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"3f25e108-5045-4f40-b878-daba57004685","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"3f25e108-5045-4f40-b878-daba57004685","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01ChZUfSkaifNhqjqWHjmKcA","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIStgIKYggOGAIqQA4lONeZQDgaXhjLLf82UVEez5MCT5R++efaD4NI7TN+uzWec14IrEHuqBu1m0Am+QR+4NVA5a7+wHqVujT8y5oyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzrFMD2tX/qgtAcOQwaDHLTPjlBLLmXV7pkNSIwx8jKzcU4Yyos4EAIGFVKhgjG2k0sA7BYf6+XcAetwk7UaTKepThYPatRjMEASF1XKoEBvTrJbm+Iz5i1s/dkYE0V0VZWUqjexb5Qeg6eDJuOiB6hSJMZIl197MXAtyMd18II/rO4oGGZGxZbyozHIUWhUS0TGbBcjcNYMD81kG9DE7Bq+ScwJ/TE3zYnscTR7qv8zdKuyBXysZHc1j91hWqEdGLfTIH3o+gci6Z7zgK86YdoGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":616,"cache_read_input_tokens":216500,"output_tokens":255,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":616,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":255,"cache_read_input_tokens":216500,"cache_creation_input_tokens":616,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":616},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH4p7pGwUNJ5E69Riju","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"4110f486-4069-4e7c-805b-957e71f0eaae","timestamp":"2026-06-10T08:39:14.196Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4110f486-4069-4e7c-805b-957e71f0eaae","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01ChZUfSkaifNhqjqWHjmKcA","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01VyCLKnAoB14fsXdCkzyFWi","name":"Bash","input":{"command":"php artisan test --compact tests/Feature/Webhooks/ tests/Feature/Orders/ tests/Feature/Checkout/ 2>&1 | tail -4","description":"Run webhook/order/checkout tests unsandboxed (Pest boots a socket)","timeout":300000,"dangerouslyDisableSandbox":true},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":616,"cache_read_input_tokens":216500,"output_tokens":255,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":616,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":255,"cache_read_input_tokens":216500,"cache_creation_input_tokens":616,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":616},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH4p7pGwUNJ5E69Riju","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"0fa5387f-a940-48e9-ae12-335e1b01256d","timestamp":"2026-06-10T08:39:15.928Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0fa5387f-a940-48e9-ae12-335e1b01256d","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01VyCLKnAoB14fsXdCkzyFWi","type":"tool_result","content":"  Tests:    75 passed (164 assertions)\n  Duration: 1.59s","is_error":false}]},"uuid":"68abfd71-a039-4992-a866-d3a6da0c283d","timestamp":"2026-06-10T08:39:17.743Z","toolUseResult":{"stdout":"  Tests:    75 passed (164 assertions)\n  Duration: 1.59s","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false,"dangerouslyDisableSandbox":true},"sourceToolAssistantUUID":"0fa5387f-a940-48e9-ae12-335e1b01256d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"68abfd71-a039-4992-a866-d3a6da0c283d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012PYhtzW2MC4quV5p1ZEpLc","type":"message","role":"assistant","content":[{"type":"text","text":"Fix verified in tests. Now retrying the live checkout that previously 500'd."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":417,"cache_read_input_tokens":217116,"output_tokens":110,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":417,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":110,"cache_read_input_tokens":217116,"cache_creation_input_tokens":417,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":417},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH5T2LasmQ1bSvEqbtF","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"f0f719f4-dd67-4e92-9b7c-e88e19abc469","timestamp":"2026-06-10T08:39:22.441Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f0f719f4-dd67-4e92-9b7c-e88e19abc469","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012PYhtzW2MC4quV5p1ZEpLc","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01SJ8tVF81ER4eNEJYRttdWQ","name":"mcp__playwright__browser_click","input":{"element":"Pay now button","target":"e219"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":417,"cache_read_input_tokens":217116,"output_tokens":110,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":417,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":110,"cache_read_input_tokens":217116,"cache_creation_input_tokens":417,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":417},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH5T2LasmQ1bSvEqbtF","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"7b0289f8-9b16-4cf8-bdb9-38cabd4eb0bc","timestamp":"2026-06-10T08:39:22.442Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7b0289f8-9b16-4cf8-bdb9-38cabd4eb0bc","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nTimeoutError: browserBackend.callTool: Timeout 5000ms exceeded.\nCall log:\n\u001b[2m  - waiting for locator('aria-ref=e219')\u001b[22m\n\u001b[2m    - locator resolved to <button type=\"submit\" class=\"rounded-lg px-5 py-2.5 text-sm font-semibold text-white transition hover:opacity-90 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 w-full text-base\">…</button>\u001b[22m\n\u001b[2m  - attempting click action\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <iframe></iframe> from <dialog open=\"\" id=\"livewire-error\">…</dialog> subtree intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m    - waiting 20ms\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is not stable\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 100ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  2 × retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <dialog open=\"\" id=\"livewire-error\">…</dialog> intercepts pointer events\u001b[22m\n\u001b[2m  3 × retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <iframe></iframe> from <dialog open=\"\" id=\"livewire-error\">…</dialog> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is visible, enabled and stable\u001b[22m\n\u001b[2m    - scrolling into view if needed\u001b[22m\n\u001b[2m    - done scrolling\u001b[22m\n\u001b[2m    - <dialog open=\"\" id=\"livewire-error\">…</dialog> intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is visible, enabled and stable\u001b[22m\n\u001b[2m    - scrolling into view if needed\u001b[22m\n\u001b[2m    - done scrolling\u001b[22m\n\u001b[2m    - <iframe></iframe> from <dialog open=\"\" id=\"livewire-error\">…</dialog> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m","is_error":true,"tool_use_id":"toolu_01SJ8tVF81ER4eNEJYRttdWQ"}]},"uuid":"44c8db0c-1600-454d-acd4-750af0e7b77e","timestamp":"2026-06-10T08:39:27.453Z","toolUseResult":"Error: ### Error\nTimeoutError: browserBackend.callTool: Timeout 5000ms exceeded.\nCall log:\n\u001b[2m  - waiting for locator('aria-ref=e219')\u001b[22m\n\u001b[2m    - locator resolved to <button type=\"submit\" class=\"rounded-lg px-5 py-2.5 text-sm font-semibold text-white transition hover:opacity-90 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 w-full text-base\">…</button>\u001b[22m\n\u001b[2m  - attempting click action\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <iframe></iframe> from <dialog open=\"\" id=\"livewire-error\">…</dialog> subtree intercepts pointer events\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m    - waiting 20ms\u001b[22m\n\u001b[2m    2 × waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is not stable\u001b[22m\n\u001b[2m    - retrying click action\u001b[22m\n\u001b[2m      - waiting 100ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  2 × retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <dialog open=\"\" id=\"livewire-error\">…</dialog> intercepts pointer events\u001b[22m\n\u001b[2m  3 × retrying click action\u001b[22m\n\u001b[2m      - waiting 500ms\u001b[22m\n\u001b[2m      - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m      - element is visible, enabled and stable\u001b[22m\n\u001b[2m      - scrolling into view if needed\u001b[22m\n\u001b[2m      - done scrolling\u001b[22m\n\u001b[2m      - <iframe></iframe> from <dialog open=\"\" id=\"livewire-error\">…</dialog> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is visible, enabled and stable\u001b[22m\n\u001b[2m    - scrolling into view if needed\u001b[22m\n\u001b[2m    - done scrolling\u001b[22m\n\u001b[2m    - <dialog open=\"\" id=\"livewire-error\">…</dialog> intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is not stable\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m\n\u001b[2m    - waiting for element to be visible, enabled and stable\u001b[22m\n\u001b[2m    - element is visible, enabled and stable\u001b[22m\n\u001b[2m    - scrolling into view if needed\u001b[22m\n\u001b[2m    - done scrolling\u001b[22m\n\u001b[2m    - <iframe></iframe> from <dialog open=\"\" id=\"livewire-error\">…</dialog> subtree intercepts pointer events\u001b[22m\n\u001b[2m  - retrying click action\u001b[22m\n\u001b[2m    - waiting 500ms\u001b[22m","sourceToolAssistantUUID":"7b0289f8-9b16-4cf8-bdb9-38cabd4eb0bc","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"44c8db0c-1600-454d-acd4-750af0e7b77e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RTy6XyYoU8N7uiPJBefz18","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISwggKYggOGAIqQA6qcJVihtJJZfvYGDxNGiTAowDf5hNBKnI2fWxI1MksnNYSUdVRAXFziv3mCK1+dEcEWeogTDF4hOpkS7QUmfQyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwMDX6T6fEtKReZakcaDCM7onvvNh/dPtLGuiIw/fwpd1xcCPARWKXEBOL/sqnobLCJ02qfRVzxCGCAzDkGHHNTtpsgofj7emkbQ6bOKo0HBOXCa7e3AAE7hLiHYw36Run0Cz+4EIt9MbyUWkJxCuQ6L5ixN5Ehox/rzC+/FRnw1JsBa4WWItmio7plAx/2z9ZgciOfHS6fdb1ygHWdxJXHpQfz4sXY1JM3qb5EtSVuvCPcUBGlMg37lU/QccudW4/bxgGKa34QYCQTgqDDMUEXcWeroL5BLmxYvBEO+AK6n0MjjCvD0s7IrvTxezQ758vC8oc09Rqa7rxYSHxpCH1CwMYI9hdHnSIW0ETvAiEJssxfom0hdtC7STzgApNC/Bv0/49cFT75PSnRk3GdyeMgeyxQIgMmNuR9XZHyxFutBfEPZpWg1skFvljOsYlRSKD8ozkr1Ny7BU4tew3nqDNycRcL6KX7IpNK3PI0Pbw4GWNhxoYqHfCzERVKYKPWZnk+sVrX3m+SP3FQUfo6vfGw5rUDK8s+hBBGc48JnJl+SyKnFhYHa0j0+/HtaEpsfQHN+okRrwS4Br8hrkJmoZZyoxUJUb6mLUJEZGaE3XESj+ns918mtI8QVTx6L7leuAGM16w2MSJ8jKSSispKV+L+/vRpTlWj/sYX8YwcB21/o0qYR54ZtoSB/niyP8az8xGj29PQztH2Vn6IVxPfaNTt7Z3csi6HJtH8drwcBP1pdyAqFQeRFAYVfP3p/y9GNMO/bYQJ4dKI7Jfyw88ske3POobHi78uyw/UbbwESBrhev7nLbzL7mMBgQosKe56SICENMJEBTK3N+1N8ECpaxjGu7pMS7vo8ZbFg5VRHi+rK8CkAb8paMlqK8/EG9x5fkwgiQ7S+6rcyXbCqXysTDPv8I7t0m7A/LMBKDAXUwzA+kBXst0EqbmuSYwSVpknhvYRKv0jTx/XwTi52sDOHf8nlITAvdnSXxKq6RK6BDO0oXJJATKqJ9/KySIL2QPT5nOrDRkuX06Cat2LIaQydH7BrRL/bbPVmPvkl8/oE6weUBI5nq3mANL5HBCBWKZ1ZCLzJ43hxJ4if4jR4y3mHR/iVOYx3AFkotJbpBCFzNSPvC/ejONeVoDc2EECnpkYxdie4XvhDVUaZjUYdCGJZOzH9kiC1swNVpRikCX4L0Lg2wsVPuJMBTjI7wsUXWUtLK1zpRSuY6NIMU5bYIk6W4x/U8ynz+To/ob0k+Xp04xK07m+cRdg+0zlGeHz1USKA7O4SU+D25wbkSpRInYK7Dbtii+Fb9XD9u8Sbti+GAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1354,"cache_read_input_tokens":217533,"output_tokens":407,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1354,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":407,"cache_read_input_tokens":217533,"cache_creation_input_tokens":1354,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1354},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH6ATDEbe4ZZS3UhNxU","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"cda9ca5e-77c6-4279-80b9-763f2a632e20","timestamp":"2026-06-10T08:39:38.450Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cda9ca5e-77c6-4279-80b9-763f2a632e20","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RTy6XyYoU8N7uiPJBefz18","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS8AIKYwgOGAIqQACzYHe9P81GgJsAkOCb2QHSLVqkPJkPqNFHSCsg2jETJy2PSkePihCxRFkrbEcCgJff8sydnAkucH8SIeYc2pIyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIM0HmOUjgaHpWIq/UVGgxYsJoF8JG8CKI+wKUiMLfCv5u7PrHLowN6Hgv0nlli2ap1gnoKl0McKjNAry2UAT/znA5zDT6KL7YBq7qOryq6AZOUuitXim4UtB7XhHyBde60VFOodD4G/0+Yh9267PMjItSRvjYlNfboO6v+5O2mr1llhA1be6Vz+gXk7sKKhG/5/DY3QK7omHAdNbwMxQMjoA88keFxqxV7VyQSiKvquTxnUgE1F7b2k3qSBRQwJS7wKmaQAugyL3eUnvUffaRQa9tyeOzDhhpRTpuQySVGyH2dthYNxjVajsFZKSJO8hAIz0GVGG1GkUJ0NM480VN2+lYXkq4Esb/DDhgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1354,"cache_read_input_tokens":217533,"output_tokens":407,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1354,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":407,"cache_read_input_tokens":217533,"cache_creation_input_tokens":1354,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1354},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH6ATDEbe4ZZS3UhNxU","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"e0f1cd17-9688-462c-bb6b-8b720ae60c0f","timestamp":"2026-06-10T08:39:38.451Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e0f1cd17-9688-462c-bb6b-8b720ae60c0f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RTy6XyYoU8N7uiPJBefz18","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01SMMmGRxKJeeNbaVat3vpSN","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/checkout"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1354,"cache_read_input_tokens":217533,"output_tokens":407,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1354,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":407,"cache_read_input_tokens":217533,"cache_creation_input_tokens":1354,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1354},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH6ATDEbe4ZZS3UhNxU","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"e04d6d15-c2dc-4181-9ce9-de80a1776d50","timestamp":"2026-06-10T08:39:38.789Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e04d6d15-c2dc-4181-9ce9-de80a1776d50","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01SMMmGRxKJeeNbaVat3vpSN","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/checkout');\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-39-38-980Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-39-38-791Z.log#L1"}]}]},"uuid":"0ff18291-4b52-4eff-82a7-7c7de0d6a6b1","timestamp":"2026-06-10T08:39:38.983Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/checkout');\n```\n### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-39-38-980Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-39-38-791Z.log#L1"}],"sourceToolAssistantUUID":"e04d6d15-c2dc-4181-9ce9-de80a1776d50","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0ff18291-4b52-4eff-82a7-7c7de0d6a6b1","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_015hMz1mEhPjWZEm3JQ9EFnJ","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017hWQJxvoyGUkFDxjBE3A3A","name":"mcp__playwright__browser_snapshot","input":{"depth":14,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":574,"cache_read_input_tokens":218887,"output_tokens":81,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":574,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":81,"cache_read_input_tokens":218887,"cache_creation_input_tokens":574,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":574},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH71r4f1mMi4rYYVK3Z","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"17feb75a-870c-4767-ab0a-e39b11e3b460","timestamp":"2026-06-10T08:39:45.302Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"17feb75a-870c-4767-ab0a-e39b11e3b460","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017hWQJxvoyGUkFDxjBE3A3A","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - heading \"1. Contact information\" [level=2] [ref=e43]\n          - paragraph [ref=e44]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e45]:\n          - heading \"2. Shipping address\" [level=2] [ref=e47]\n          - paragraph [ref=e48]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e49]:\n          - heading \"3. Shipping method\" [level=2] [ref=e51]\n          - paragraph [ref=e52]: Standard Shipping\n        - region \"4. Payment\" [ref=e53]:\n          - heading \"4. Payment\" [level=2] [ref=e55]\n          - generic [ref=e56]:\n            - group \"Select a payment method\" [ref=e57]:\n              - generic [ref=e58]: Select a payment method\n              - generic [ref=e59]:\n                - generic [ref=e60] [cursor=pointer]:\n                  - radio \"Credit Card\" [checked] [ref=e61]\n                  - generic [ref=e62]: Credit Card\n                - generic [ref=e63] [cursor=pointer]:\n                  - radio \"PayPal\" [ref=e64]\n                  - generic [ref=e65]: PayPal\n                - generic [ref=e66] [cursor=pointer]:\n                  - radio \"Bank Transfer\" [ref=e67]\n                  - generic [ref=e68]: Bank Transfer\n            - generic [ref=e69]:\n              - generic [ref=e70]:\n                - generic [ref=e71]: Card number *\n                - textbox \"Card number\" [ref=e72]:\n                  - /placeholder: 4242 4242 4242 4242\n              - generic [ref=e73]:\n                - generic [ref=e74]: Cardholder name *\n                - textbox \"Cardholder name\" [ref=e75]\n              - generic [ref=e76]:\n                - generic [ref=e77]:\n                  - generic [ref=e78]: Expiry *\n                  - textbox \"Expiry\" [ref=e79]:\n                    - /placeholder: MM/YY\n                - generic [ref=e80]:\n                  - generic [ref=e81]: CVC *\n                  - textbox \"CVC\" [ref=e82]:\n                    - /placeholder: \"123\"\n            - button \"Pay now - 49.98 EUR\" [ref=e83]:\n              - generic [ref=e84]: Pay now - 49.98 EUR\n      - generic [ref=e85]:\n        - complementary \"Order summary\" [ref=e86]:\n          - heading \"Order Summary\" [level=2] [ref=e87]\n          - list [ref=e88]:\n            - listitem [ref=e89]:\n              - generic [ref=e91]: \"2\"\n              - generic [ref=e92]:\n                - paragraph [ref=e93]: Classic Cotton T-Shirt\n                - paragraph [ref=e94]: M / Navy\n              - generic [ref=e96]: 49.98 EUR\n          - generic [ref=e97]:\n            - generic [ref=e98]:\n              - term [ref=e99]: Subtotal\n              - definition [ref=e100]:\n                - generic [ref=e102]: 49.98 EUR\n            - generic [ref=e103]:\n              - term [ref=e104]: Discount (WELCOME10)\n              - definition [ref=e105]: \"-4.99 EUR\"\n            - generic [ref=e106]:\n              - term [ref=e107]: Shipping\n              - definition [ref=e108]:\n                - generic [ref=e110]: 4.99 EUR\n            - generic [ref=e111]:\n              - term [ref=e112]: Tax\n              - definition [ref=e113]:\n                - generic [ref=e115]: 7.98 EUR\n            - generic [ref=e116]:\n              - term [ref=e117]: Total\n              - definition [ref=e118]:\n                - generic [ref=e120]: 49.98 EUR\n        - generic [ref=e122]:\n          - generic [ref=e123]: WELCOME10\n          - button \"Remove\" [ref=e124]\n```"}]}]},"uuid":"91ee5d25-e0ba-4c27-ad8d-3ef332be2ce6","timestamp":"2026-06-10T08:39:45.320Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/checkout\n- Page Title: Checkout - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e36]:\n  - generic [ref=e37]:\n    - heading \"Checkout\" [level=1] [ref=e38]\n    - generic [ref=e39]:\n      - generic [ref=e40]:\n        - region \"1. Contact information\" [ref=e41]:\n          - heading \"1. Contact information\" [level=2] [ref=e43]\n          - paragraph [ref=e44]: erika.musterfrau@example.com\n        - region \"2. Shipping address\" [ref=e45]:\n          - heading \"2. Shipping address\" [level=2] [ref=e47]\n          - paragraph [ref=e48]: Erika Musterfrau, Musterstrasse 12, 10115 Berlin, DE\n        - region \"3. Shipping method\" [ref=e49]:\n          - heading \"3. Shipping method\" [level=2] [ref=e51]\n          - paragraph [ref=e52]: Standard Shipping\n        - region \"4. Payment\" [ref=e53]:\n          - heading \"4. Payment\" [level=2] [ref=e55]\n          - generic [ref=e56]:\n            - group \"Select a payment method\" [ref=e57]:\n              - generic [ref=e58]: Select a payment method\n              - generic [ref=e59]:\n                - generic [ref=e60] [cursor=pointer]:\n                  - radio \"Credit Card\" [checked] [ref=e61]\n                  - generic [ref=e62]: Credit Card\n                - generic [ref=e63] [cursor=pointer]:\n                  - radio \"PayPal\" [ref=e64]\n                  - generic [ref=e65]: PayPal\n                - generic [ref=e66] [cursor=pointer]:\n                  - radio \"Bank Transfer\" [ref=e67]\n                  - generic [ref=e68]: Bank Transfer\n            - generic [ref=e69]:\n              - generic [ref=e70]:\n                - generic [ref=e71]: Card number *\n                - textbox \"Card number\" [ref=e72]:\n                  - /placeholder: 4242 4242 4242 4242\n              - generic [ref=e73]:\n                - generic [ref=e74]: Cardholder name *\n                - textbox \"Cardholder name\" [ref=e75]\n              - generic [ref=e76]:\n                - generic [ref=e77]:\n                  - generic [ref=e78]: Expiry *\n                  - textbox \"Expiry\" [ref=e79]:\n                    - /placeholder: MM/YY\n                - generic [ref=e80]:\n                  - generic [ref=e81]: CVC *\n                  - textbox \"CVC\" [ref=e82]:\n                    - /placeholder: \"123\"\n            - button \"Pay now - 49.98 EUR\" [ref=e83]:\n              - generic [ref=e84]: Pay now - 49.98 EUR\n      - generic [ref=e85]:\n        - complementary \"Order summary\" [ref=e86]:\n          - heading \"Order Summary\" [level=2] [ref=e87]\n          - list [ref=e88]:\n            - listitem [ref=e89]:\n              - generic [ref=e91]: \"2\"\n              - generic [ref=e92]:\n                - paragraph [ref=e93]: Classic Cotton T-Shirt\n                - paragraph [ref=e94]: M / Navy\n              - generic [ref=e96]: 49.98 EUR\n          - generic [ref=e97]:\n            - generic [ref=e98]:\n              - term [ref=e99]: Subtotal\n              - definition [ref=e100]:\n                - generic [ref=e102]: 49.98 EUR\n            - generic [ref=e103]:\n              - term [ref=e104]: Discount (WELCOME10)\n              - definition [ref=e105]: \"-4.99 EUR\"\n            - generic [ref=e106]:\n              - term [ref=e107]: Shipping\n              - definition [ref=e108]:\n                - generic [ref=e110]: 4.99 EUR\n            - generic [ref=e111]:\n              - term [ref=e112]: Tax\n              - definition [ref=e113]:\n                - generic [ref=e115]: 7.98 EUR\n            - generic [ref=e116]:\n              - term [ref=e117]: Total\n              - definition [ref=e118]:\n                - generic [ref=e120]: 49.98 EUR\n        - generic [ref=e122]:\n          - generic [ref=e123]: WELCOME10\n          - button \"Remove\" [ref=e124]\n```"}],"sourceToolAssistantUUID":"17feb75a-870c-4767-ab0a-e39b11e3b460","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"91ee5d25-e0ba-4c27-ad8d-3ef332be2ce6","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01WSZLKPCYRXUts5LuqaUEkS","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_014G7XHZPRV8UZQM9GXB4tmo","name":"mcp__playwright__browser_fill_form","input":{"fields":[{"target":"e72","name":"Card number","type":"textbox","value":"4242424242424242"},{"target":"e75","name":"Cardholder name","type":"textbox","value":"Erika Musterfrau"},{"target":"e79","name":"Expiry","type":"textbox","value":"12/28"},{"target":"e82","name":"CVC","type":"textbox","value":"123"}]},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1630,"cache_read_input_tokens":219461,"output_tokens":207,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1630,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":207,"cache_read_input_tokens":219461,"cache_creation_input_tokens":1630,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1630},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH7VGphi8NenhqumxgQ","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"9f7ee72e-5919-4ac9-b857-20013832efb9","timestamp":"2026-06-10T08:39:50.528Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9f7ee72e-5919-4ac9-b857-20013832efb9","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_014G7XHZPRV8UZQM9GXB4tmo","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Card number' }).fill('4242424242424242');\nawait page.getByRole('textbox', { name: 'Cardholder name' }).fill('Erika Musterfrau');\nawait page.getByRole('textbox', { name: 'Expiry' }).fill('12/28');\nawait page.getByRole('textbox', { name: 'CVC' }).fill('123');\n```"}]}]},"uuid":"4462de30-7874-4ba8-83fb-5d0f8c1e13c0","timestamp":"2026-06-10T08:39:50.561Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Card number' }).fill('4242424242424242');\nawait page.getByRole('textbox', { name: 'Cardholder name' }).fill('Erika Musterfrau');\nawait page.getByRole('textbox', { name: 'Expiry' }).fill('12/28');\nawait page.getByRole('textbox', { name: 'CVC' }).fill('123');\n```"}],"sourceToolAssistantUUID":"9f7ee72e-5919-4ac9-b857-20013832efb9","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"4462de30-7874-4ba8-83fb-5d0f8c1e13c0","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"4462de30-7874-4ba8-83fb-5d0f8c1e13c0","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01K2N565zed6BkyBg38YWqfB","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01XjMYGZKterFR3JJYPCojcR","name":"mcp__playwright__browser_click","input":{"element":"Pay now button","target":"e83"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":361,"cache_read_input_tokens":221091,"output_tokens":82,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":361,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":82,"cache_read_input_tokens":221091,"cache_creation_input_tokens":361,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":361},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH7sGuNPQkbtC8nAm4w","attributionMcpServer":"playwright","attributionMcpTool":"browser_fill_form","type":"assistant","uuid":"0e40e109-5010-4e3e-874a-9cdc45fdcdef","timestamp":"2026-06-10T08:39:55.624Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0e40e109-5010-4e3e-874a-9cdc45fdcdef","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01XjMYGZKterFR3JJYPCojcR","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Pay now - 49.98 EUR' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout/1/confirmation\n- Page Title: Order confirmation - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-39-55-872Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-39-38-791Z.log#L2"}]}]},"uuid":"39bf8b8c-24e0-499a-929a-c7890c95b00e","timestamp":"2026-06-10T08:39:55.878Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('button', { name: 'Pay now - 49.98 EUR' }).click();\n```\n### Page\n- Page URL: http://shop.test/checkout/1/confirmation\n- Page Title: Order confirmation - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-39-55-872Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-39-38-791Z.log#L2"}],"sourceToolAssistantUUID":"0e40e109-5010-4e3e-874a-9cdc45fdcdef","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"39bf8b8c-24e0-499a-929a-c7890c95b00e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01K8rgee9AFwa8AyYwXQ61YR","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS0QMKYggOGAIqQIeZm98fUS60Z28a9V1JIWDgztCzu2i7OOAT0Tyd0prUG/ehWCyMI8ZvHCwpM9wK3UOBtZoZ4bc0HeNoinuIHz4yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzCfaSJHIpqKrwqDzYaDEa3tiCHjS1xaZ2ANiIw3hVLJvWu/decjA0FL2+5dc+Sb1Tb9VME5YTWNl7wXQVYB0FtQclBmE2eL0e8Mw02KpwCwzt3eYM7ycjDNlv9/dq026o24pZQPYU3rOYny11BxyW0cRNialKgeteQKqZwgaPPAEMSWlShouMOOkpU/xieDDDy1+Q4tQVL9H2KjS/fPKW6fSiyCEEQXzkAIa1xMW6ahr3hfbDt7FiqcYMerR+U9fsq/v9J8ObhhB2QSAhNh0dlbuHTevkdg5LtBb0TVtFXCgP2c9KmtumPb/Ikg/jo+7uY/ZTIaJoYT2hNNZAu0vEgRvHW05TWKYowH+//Z4x/8W5XKISR9Tdi153pNXjI1XyMElAF23sZLt4sTIYISLCQ02jJOizB++lwBeq54MDgaxN1p7/bNBVEwlLLEj3nUunjo4FTXWXGgUPp0NRFIlcyJXZ+5TAYWFMwUPAYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":274,"cache_read_input_tokens":221452,"output_tokens":456,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":274,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":456,"cache_read_input_tokens":221452,"cache_creation_input_tokens":274,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":274},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH8GMUZu3MFi4c4eRSb","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"ec07c7aa-e0be-41a1-bc6f-d37d248b2d8c","timestamp":"2026-06-10T08:40:02.945Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ec07c7aa-e0be-41a1-bc6f-d37d248b2d8c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01K8rgee9AFwa8AyYwXQ61YR","type":"message","role":"assistant","content":[{"type":"text","text":"Payment succeeded and redirected to the confirmation page. Capturing it and verifying no duplicate order was created by the failed first attempt."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":274,"cache_read_input_tokens":221452,"output_tokens":456,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":274,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":456,"cache_read_input_tokens":221452,"cache_creation_input_tokens":274,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":274},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH8GMUZu3MFi4c4eRSb","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"58d7ac23-83bd-4d59-888e-166d4a123b17","timestamp":"2026-06-10T08:40:02.958Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"58d7ac23-83bd-4d59-888e-166d4a123b17","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01K8rgee9AFwa8AyYwXQ61YR","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NV5XQUC3PYYaNrPzKaFvgq","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/05-confirmation.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":274,"cache_read_input_tokens":221452,"output_tokens":456,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":274,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":456,"cache_read_input_tokens":221452,"cache_creation_input_tokens":274,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":274},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH8GMUZu3MFi4c4eRSb","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"f7d49976-eb3a-40e4-ac98-a469a824a08c","timestamp":"2026-06-10T08:40:03.408Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f7d49976-eb3a-40e4-ac98-a469a824a08c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NV5XQUC3PYYaNrPzKaFvgq","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/05-confirmation.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/05-confirmation.png\nawait page.screenshot({\n  path: 'review/05-confirmation.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"f6986c5a-9cce-414e-bc26-a12f7b0170de","timestamp":"2026-06-10T08:40:03.456Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/05-confirmation.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/05-confirmation.png\nawait page.screenshot({\n  path: 'review/05-confirmation.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"f7d49976-eb3a-40e4-ac98-a469a824a08c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f6986c5a-9cce-414e-bc26-a12f7b0170de","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01K8rgee9AFwa8AyYwXQ61YR","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_012cYja33zqG4k5pSYSqZ4pu","name":"Bash","input":{"command":"php artisan tinker --execute 'echo App\\Models\\Order::withoutGlobalScopes()->where(\"email\",\"erika.musterfrau@example.com\")->count() . \" orders, \";  $o = App\\Models\\Order::withoutGlobalScopes()->where(\"email\",\"erika.musterfrau@example.com\")->first(); echo $o->order_number . \" status=\" . $o->status->value . \" financial=\" . $o->financial_status->value . \" total=\" . $o->total_amount;'","description":"Check order count and status for the test purchase"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":274,"cache_read_input_tokens":221452,"output_tokens":456,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":274,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":456,"cache_read_input_tokens":221452,"cache_creation_input_tokens":274,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":274},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH8GMUZu3MFi4c4eRSb","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"78d942a0-f24e-4791-8a04-444a318ed8e2","timestamp":"2026-06-10T08:40:05.481Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"78d942a0-f24e-4791-8a04-444a318ed8e2","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"Exit code 1\n\n   ErrorException \n\n  Writing to /Users/fabianwesner/.config/psysh/psysh_history is not allowed.\n\n  at vendor/psy/psysh/src/ConfigPaths.php:482\n    478▕             if (\\is_writable($file)) {\n    479▕                 return $file;\n    480▕             }\n    481▕ \n  ➜ 482▕             \\trigger_error(\\sprintf('Writing to %s is not allowed.', $file), \\E_USER_NOTICE);\n    483▕ \n    484▕             return false;\n    485▕         }\n    486▕\n\n      \u001b[2m+20 vendor frames \u001b[22m\n\n  21  artisan:16\n      Illuminate\\Foundation\\Application::handleCommand(Object(Symfony\\Component\\Console\\Input\\ArgvInput))","is_error":true,"tool_use_id":"toolu_012cYja33zqG4k5pSYSqZ4pu"}]},"uuid":"7b733844-2b38-4837-ac45-288e40d85019","timestamp":"2026-06-10T08:40:05.874Z","toolUseResult":"Error: Exit code 1\n\n   ErrorException \n\n  Writing to /Users/fabianwesner/.config/psysh/psysh_history is not allowed.\n\n  at vendor/psy/psysh/src/ConfigPaths.php:482\n    478▕             if (\\is_writable($file)) {\n    479▕                 return $file;\n    480▕             }\n    481▕ \n  ➜ 482▕             \\trigger_error(\\sprintf('Writing to %s is not allowed.', $file), \\E_USER_NOTICE);\n    483▕ \n    484▕             return false;\n    485▕         }\n    486▕\n\n      \u001b[2m+20 vendor frames \u001b[22m\n\n  21  artisan:16\n      Illuminate\\Foundation\\Application::handleCommand(Object(Symfony\\Component\\Console\\Input\\ArgvInput))","sourceToolAssistantUUID":"78d942a0-f24e-4791-8a04-444a318ed8e2","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7b733844-2b38-4837-ac45-288e40d85019","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"75f88c83-df3c-4852-8aba-7dfc3c3be468","timestamp":"2026-06-10T08:40:05.876Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"75f88c83-df3c-4852-8aba-7dfc3c3be468","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01618TcHMfErn1Vc1KRWBy9a","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MNVw5bzR42ygPF7rEge27W","name":"Bash","input":{"command":"sqlite3 database/database.sqlite \"select count(*), group_concat(order_number), status, financial_status, total_amount from orders where email='erika.musterfrau@example.com';\"","description":"Check orders for test purchase via sqlite"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":907,"cache_read_input_tokens":221726,"output_tokens":140,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":907,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":140,"cache_read_input_tokens":221726,"cache_creation_input_tokens":907,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":907},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH94EVP2psm9KvNq75S","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"59b4c10f-35d9-4935-ac79-9efd22c5e4dd","timestamp":"2026-06-10T08:40:11.932Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"59b4c10f-35d9-4935-ac79-9efd22c5e4dd","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MNVw5bzR42ygPF7rEge27W","type":"tool_result","content":"1|#1016|paid|paid|4998","is_error":false}]},"uuid":"8c6023ca-34a5-4fd6-858e-519acabf912b","timestamp":"2026-06-10T08:40:12.006Z","toolUseResult":{"stdout":"1|#1016|paid|paid|4998","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"59b4c10f-35d9-4935-ac79-9efd22c5e4dd","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8c6023ca-34a5-4fd6-858e-519acabf912b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012ZZGFFfbJN4S6xX6ffc2cF","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01ETQMVKoNdLNLpsvMRpXpeL","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/review/05-confirmation.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":288,"cache_read_input_tokens":222633,"output_tokens":75,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":288,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":75,"cache_read_input_tokens":222633,"cache_creation_input_tokens":288,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":288},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH9Sxj1pZkZoiUVxpnP","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"0646a08f-5302-405e-8d30-778c2be4b46d","timestamp":"2026-06-10T08:40:17.206Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0646a08f-5302-405e-8d30-778c2be4b46d","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01ETQMVKoNdLNLpsvMRpXpeL","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"iVBORw0KGgoAAAANSUhEUgAABcgAAAMgCAIAAACYkhb5AAAQAElEQVR4nOzdBbwU1eP38bl0d3d3ioCUdEtJSIpIidKIggWiKKikikoIIi0ISEt3d3d3971w4/my5/+bZ90b7F1uAZ+3vu5rdnbiTOyy5ztnzsRInTq1BQAAAAAAAIfdu3cnS5bMnSnv3r0bzQIAAAAAAIBHCFYAAAAAAAA8FMMCAAAAAABAMLy9vU+fPn337l0NJ0yYMHPmzHHixLHfJVgBAAAAAAAI2oMHD/bu3evv729e3rhx4/bt2wUKFIgXL54Zw61AAAAAAAAAQTtz5oydqhh+fn5nz561X9JiBQAAAAAAIGjmDqAQRhKsAAAAAAAABM3X1zfwyMePH9vD3AoEAAAAAADgIYIVAAAAAAAADxGsAAAAAAAAeIhgBQAAAAAAwEMEKwCA50/MmDGTJEmiv5ZH4saNq9m9vLwsRKrYsWNbeD7p06fPkQUAAAhWAABu+uCDDy4Fkj9/fis8devW7ezZs4HHV6hQ4dChQ5UrV7Y88tFHH2n2hAkTWs+VTJkyaZ/XqFHDeh5UrFjR5WwpWbKkeStRokRDhw7dvXv3sWPHZsyYUb58eZd5gzzZWrdurRk18O677zpPrKNpTpLixYvbE1+8eHHjxo3Dhg3TLJbbBgwYcPDgQecx0aJF09K6du1qRZLt27erVO5MOWXKFJc9dvjwYY2fPn26PUY7fO7cubVq1TKzBLefQ34rT548S5YsOXHihJavlTZt2tR5aS5x56JFiyZOnKiBokWL6l1zrJ2LqmO3fPny3r17a1dbAAA8n3jcMgAgFOrVq+f8bDlVrqzIcPr06dGjR586dcryyKZNm6JHj+7j42Mh3CRPnlx/mzdvfuvWLTPmyJEjZkCpyquvvvrdd9/pCHbo0GHMmDFVqlQ5c+aMyxJcTrbAEwSpb9++imxixIihVWjhuXLlql27tvVy8PPzq1OnjvNLM7Bv3z7FTxpInTp1gwYNxo0b16JFixUrVph3Q9jPgd9S/DFr1qw9e/a88cYbDx8+1PEdPnz4vXv35s+fb4XGgQMHPvzwQw3EixdPR18Rqga+/PJLCwCA5xDBCgAgFHbs2OFc0YosqqJ/8cUXlqeWOFgITwpWVLFfuXJlQECA8/g3HDp16jR79my93LVr18aNGxWy2A0fbIFPNnean+jc0Iwa2LJli1bdr18/leT69evWS2CHQ+DxCj7s8cuWLXv99derVq1qByshfKgDv5UvXz7tz1GjRim90suvvvpKuVXDhg1DG6zcv3/fLtK6dety585drVo1j4MVZTSlS5d+8803nUf+/fffP/zww4YNGywAAMIZrS4BAM+kYMGCqheVLFlSl8EXL16sMbFixVJtdu3atao4DRkyxK4MBzfeiBs3rrIS1bFXr17dp08f5xsKsmfPPnbsWF11HzlyZLZs2eyV6q+Ghw0b1r9//yZNmigr2blz57fffqsVmRlXrVql6/Off/656tiq4bdr186Mf/vtt/WWPU39+vVVz1/lYG52MOrWrTt37lyVVsusXr261hg/fnznMqdLl06X67VSlVmFd15vcMu06VL/nDlzDh069Mcff5QtW9YumNaonfnPP/+oyqox+fPn//333/fs2TN69GjtB+claLHz5s07ePCgJlB114w0e6Nly5bak7Vq1Qphr1qObjI+/fRTlVCboH2bKVMmjdTGTpkyxZ5G1WYdMtP8xJ012jNqljt37kSPHj1v3rzOfamUKFHi7t272nbzUhVsVYCLFy8eHl3eKFCwHCeeFRZ07o0YMWLv3r2KhJxjoCB3i01r1/7Rztm2bZuCgxgx/u+aVnAnT+LEiRUHaPysWbMqVarkvCidJ3/++afOGe0xhVOWR5R2PXz40OPebc6dO6eopUaNGubOHS2tcuXKPXv2tJ7N6dOnU6ZMaXlKe8xyJCn2GDNMqgIAiBi0WAEAPJM4ceLkyJFDiUmKFCmmTZum6vFPP/2k6+ETJ068du1ahw4dMmTIoBDB398/yPH23Qq66K0Q5LPPPlN4oUzh7NmzkydPthyV/59//lkVpKNHj7777ruqqH/wwQdmpfprOSqoSiIaN248adKkQoUKtWnTRlW+jz/+2HIkMqry6aUKpqTj66+/vnr1qpKLpEmT2iGFBtq3b+/r66tpVEUcPHjwmjVrTp48WapUKV2WV31PmY7ygiJFimiNWru94aoAT506NW3atBMmTEiTJo3Zoo4dOwYEBAS3THtexRCqCm7evPnHH39s0aKFasu62K66tAqmS/eKKm7evKl39VK7SytS+JIrVy5FHvYS3nnnHb1cuHDhX3/9pWHtK9V1L1++rL1RoEABVfVVXT9z5kxwe1V0pLQivauYQLVl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6okTJ1buH3iZLrvLWbr06RRt9P7oST9ilStVrlmrphWedKSSJk1qOdqbFCxY8MlNNF6Wgjk/Xz8da/1eN40pFB2aYKV69advnRby408/NmverFy5cm/UfkM7xPldJW7K1/S507+/vT7sNXTY0F69eikfCdxIykVwnynlLDqjFJforePHn/R0c+HiBXsufXLNgCI55Sy+vr4hFy9s6Si3b99ekZN+WkyaPKlrt67KSrSra9Wude/uPYWzhw4f0kcpXrx4LjMqTNTH1v7Mnr9wXsGQBSAKMDnCH3/8EUKKocgjXLtZsXuTNWsxtx2F32OetXx3NsedyAlRH8FKpLFv+flywJeub82Zq2BFgYvluDgTwkKSJUvmMkbxile0IK4fmaVZjh8ZzhPrr+9jX5eJ9UtFl7YCL+SvGX/1699Pl+bSpk1buHBhXePSdTDzVo2aNZYuXTp06NDFixfrqto3336ja026OmeXMHWqp3fmr6uLluOirvNIrcty9KVij3FnUQAiy5Omdv9rg2A5vqYUy6piZl6mSP6fmxdSp04deHb99fPzsz/1lStXTpokqRXOkiZL2qxZs/ETxvft8399adv1MeeSZM2WVQPFixfXpfJt27cphclfIL+u3isK37d/nyqcLos1vdW63DSxefPmsuXKmuGcOf7zUOccOXIEWTxl4vMXzD9/7vyaNWvKlS0XN15cjRw8ePCqVatee+21fHnz7d69O/BcHTp0UAak/GL0mNG6bj90yFDTuUnEyJ07t46jGY4RM4ayp3+X/quIR4l5mrRp2rzbRjGEKswq+SvFXtE0qVI+vcMOl93lYviw4bPnzF68aLH+YdWAXgb5D2KY+OzTz4q9Wsxl5MEDB7/o94XijxLFS9SqWWvhooX2W+5sXeIkiadMnvLnpD/Xrlmr4EmXKNq1b2feUhqyecvmfl/0054sULDAJ5988uWXXyrsUHCTN2/ekBcb3Gfq4YOH3bp3u3r1atkyZUuXKm0u5xgxYsQw55ibxQtb+hWkT1bBQgUTJExQp24dpbENGzVcu3atgpV//vnn119/zZMnj8Ks/Pnznzx58j9zBlj37z/52Npbqo/kkya2AKIGfS2H8EBlpR56I/waj5h+VZyfv2MPKNfQW+H3NCK8DAhWIo39PJ369er//5H/zNUVUf301M8d/WLTbzJdk7HfDfAPWLxk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2olnzpypMCVOnDiKTrRGvbxw4cLff/9tL8feimzZsl2/fl1jtLvMztTEelm/fn0LAAAAQIhosQLgObZjxw79zZMnT+C38ubNa09gKERQ6LB8+fLChQtrQLlGgwYNtm3btmXLlty5cytGsaf84IMP9PKLL75Q/qIJFLIcPXr0p59+CnJR9kiFL8pZunTpoin/+eefjh07KpdxzlNCMHv27PXr1yua+fDDD/Vy4MCBWqnynT179iRKlOjYsWMaDu3EmzZtUro0ZcoUTb9582ZFSNqcGzduBN4KJS+NGjXSGHPnlLZCKVLMmDGbNWtmAQAAAAgRwQqA55jpm9Y5LLBdv37dcjRdsceUKVOmZ8+e+fPnf/z48fHjxzWmV69eKVOmTJs2bdeuXe3JFKkcPHhQAwpNFFXs27cva9aseul814+9KKUV9sjSpUvr74gRI7799luFGv369Rs3blyKFCksN7Rt2zZbtmwaqFKlihmjyCNatGiJEycuVqyY5XjyUWgn/uGHH5YuXfraa68dPnx4xYoVPj4+Gmnf0+SyFSZDUZ6iVGXdunXae9WrV0+VKpUFAAAAIEQEKwCeY7ly5dJfZR+B3zIjzQSGaZRhOe7ECQgIUGqQI0cOM6ZgwYIJEyZ0nlEaNmxY02Hw4MF6eejQocCLclaoUKH333//4cOHylbq169fo0aNLVu2WO4pXry4GYgR48kdmspNYsaM6TzGg4nv3r07atSoUqVKlS9fvkOHDmak3YuKy1bkzJnzlVdeuXr16vr16027FTpYAQAAANxBHysAnmOKGGbMmLFw4cIePXrEixfPHr9jx45jx44pZShatKg90n70smmIcf369du3bydOnFjDly9fVgxh3s2YMaMZ+PXXX6NF+//ps3PjlOCe4vzFF1+89957KtLSpUs3b97cunXrPXv2mLfsROPevXt37txxmdF5RYFfejaxwpSVK1fWq1dv6NCh+fLlU4yyf/9+5wlctqJp06bab6bwWbNmLVeunAUAAADgaWixAuA51qxZsxw5chw/frxnz56PHz82I5WStGvXzs/Pr02bNnZK4ixDhgyJEiXSBIsWLTJjFM3Y72bKlCllypSWoyVIXYcCBQrcuHEjSZIkIRdm2LBh3bp100Dnzp3nzp2rst28eXPTpk2mLYzdEMZ0HxveHjx4sGrVqpgxY44cObJMmTLa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1apVGzVq5PLWN998c+zYMQUf2bNnv3LlSuB5c+bMqXnHjh27f//+ggUL1qlTp2XLlhkzZrT+9+ywv/766/Llyx07dowbN66WZt5yljt37gkTJtgvTVdZsWPHthy9g9vjTf/xZrxQDSVbAAAQAElEQVSzsmXLDh48OFu2bF5eXhYAvBwIVgC8vEyScvDgQe79AQBEHV9//bX+njhxwgQrx48f118N//jjj+b+nX///Xf58uXmSfALFy789NNPBw4caOa9dOlS/Pjxf/jhBxN5LFu2TH9NLy0nT57Mnz9/3bp1zZQDBgyw33KW1cFlZPr06fV327ZtSmrMmO3bt1uOR92bl2nSpFmxYkW1atU2bdp0+vRpHusO4KVCHysAAABAFJI8eXIFFj4+PqcczEgN+Pr6ZnA4e/asXh49etS8pTDl3r17V69effjw4YwZM8qWLTt16lTz1po1a/S3YMGC+tu3b98yZcocOXLEfst0vOJOkZTI6O+qVavsMabvlQIFCthjkiVLNn78eC2zffv2e/futQDgpUGLFQAvkWvXrrk5mX6eRvCdQX5+fvobto/CDQgIePToUeB22gCAqGzu3LnOL80DyLZt22b/NQ4cOFCpUqVatWqNGzfu448//uOPPwYMGKCX33///YgRI7wdfv/99/Lly9evX1/T66+SkW7durVs2XLLli379u3TXKYpirPFixf/+uuvzmM0fZMmTYYMGTJ58uQTJ05UrVp11qxZ+/fvL168eKlSpZynVIKjyT744IMWLVrMnz/fPHgIAF54BCsAXha6KGeetWw6rw1uMtOpbUoHK0Jsd9DlR+Ug+g1azMF5Al2i1AVAKzS0qHnz5m3atClatGipU6fWAnk6AwC8DHLkyDFp0qS+ffv2798/ceLEtWvXVtpiujtp2rSprhz89ttvvXr1ypgxY8eOHbt27RrkQjSv88s6deoof5k9e/ZHH3200SFu3LgNGjQwtyy5aNiw4Z49e7SWZs2aKVtJmjSpBQAvOi/9+LYAIKKYpw+YnvCe0WMHK5TshwGZeEU/MdesWWMeBqRh+y0PmqvEdLBCadeuXboy2ahRI/0U1sujR4/OnDlTFxWLFCliJhg/frxikUKFCoVmqZYuJCpYad26dZo0aQ4dOqSLmR06dMiVK5cFAHg53L59O0GCBEE2hLxx40ayZMksjyjrv379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fDJw4MBq1aoZD0wJi7V5+eijjxo3bly7du146+zbt+/jjz9WmvPGG294eXnt2rVr6dKlwcHBXbp0MQAAQEZDsAIgA9uzZ8+HH34Yr3Do0KH16tWLV/jDDz9s2rRp0qRJWh43btyQIUPKlStn3OeBGjZsOHjwYNtyjUV3795dC999951x/5Iayk6eBrpnzpwZGxs7aNCgIkWKGADux/Xr11euXDlixIjHHntMLz08PNq0aRMUFLRixYpUCVbKlCljXb5582bCFeLi4r766qu2bds+/fTTZkmDBrJ4d14AABAASURBVA2UxaiBat++vZubmwEAADIUghUAGVvevHmnTZtmW5LoTRy1atUqUaKE8QBy5sy5e/fueFGIApc8efIEBgYa9+/EiRNz587VqLVxnzTSXr16dUa2Afv8/vvvpUqVMlMVq1atWr377ruhoaHh4eETJ07s3bv3119/nSNHDmWpN27cWLhw4YEDB/z8/Jo0aWJNQwICAhYtWnT48OHSpUt37tzZuqtvvvkmV65cxYoVU9N06dKlCRMmFChQ4JlnnnniiSfMFY4fP37lypVnn33W9gRq1KihTfSWTuzIkSO//PKL9lyxYkWFPtq/udvChQufO3fujz/++OCDD/Lnz//TTz/ps0RERCjzNQAAQPph8loAGZtDAomuli9fvkqVKhkPQAFKwYIFlaTYFm7durVu3bqGXdSFi4yMNO7f+fPnuVEFsJvCjqJFi8YrzJ079/Tp0728vGJiYi5evPjVV1+VLVu2Y8eOii3GjRvn7u7+/vvvt2jR4scff9ywYYPWV/lHH33k6ek5evToJ598UqmHdVc3b94MDg5Wc2HOeKJkRAtVqlSxrqD9611n5/8Z3FLb9eGHHypVUXo7efLkypUrjx07Vg3X/PnzrbtV2nLmzJm+ffsq8dm4ceOKFSuee+65N99889atW2qLDAAAkE64YwVA5rRz506N+hYvXnz58uXq2GTLlm337t2vvfaa7TqxsbGff/55XFycuj3qTWnNXbt2RUdHN2rUSMPLTk5O8fZZv3599V6s0yWoZ3Xo0KF27dqpe2OWzJw5U/GN9UGkqVOn1qxZs1atWtq5Rrx37Nihblvjxo014j1lypRNmzZpnUGDBrm6un7yySdaVodt/fr1ly9frlChQo8ePfLmzatCjaJ37dp19erVp0+fHjJk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3MoLAAAAIDPhjhUAAAAAAAA7EawAAAAAAADYiWAFAAAAAADATgQrAAAAAAAAdiJYAQAAAAAAsBPBCgAAAAAAgJ0IVgAAAAAAAOxEsAIAAAAAAGAnghUAAAAAAAA7EawAAAAAAADYiWAFQIZ39+7duLg4AwCArCQ6OlrfgPatEB4eHhUVZQAAUgPBCoAMbPv27QMGDHjNYs6cOYGBgcmvP3369OXLlyf1bgovMe+52tWrV7t27WoAAJBK9P1VqFChvn37mi+PHDnStm3bMmXKlC1btkmTJhs3boy3fjIr/Pbbbw0aNNBbpUuXbtas2Z49e2w3vHDhQqEESpYsqbe6deum5evXr1tX3r17t0pGjRql5cqVK1vX187bt2//3XffGQCQNTgbAJAxXb58eerUqaNHj9YFXEhIyLfffjtp0qSPP/7YsMtPP/107dq1CTeargAAEABJREFUXr16Jb/ayZMnv/rqq7FjxxoAAKSJEydOjBs3zvryypUrnTp1Cg8P79y5c9WqVWfPnv3888//8MMP1apVu+cKp06devHFF318fIYNGxYaGjpz5sxnn312//79Kol3UH29WpednJyMFPD29h46dKgWFL7oW/WNN96IjY3t0qWLAQCZHcEKgIxKF5rmWJyWdUWoy8eBAwcGBATkzZvXuH+3bt1KyfNEugyNjIw0AABIE9HR0YMHD7Yt2bp1q4YTmjZtOn78eMNyq0jLli2//PLL6dOn33OFLVu26MtOYcqAAQMMyzfpr7/+umvXrieffNL2EM2bN7feHZNyXl5e1q26du3aoEGDX375hWAFQFZAsAIgoypevPiCBQsUiPj5+emlv7+/Rt48PDy0PHz4cA2U5c6d21xTy6NGjdIK5kuN2m3atEkLjRo1ateunS4xtcLly5dVcujQofLly7/00ku3b99evHjxgQMHsmXLVrt2ba3m4OAwbdo0XZJqNY3Iubq6fvTRRwpZVq5cuXv3bl346gqybdu2KRzWAwAgJT799NMjR468+uqr1tzk77//1l8NLZgvCxcubFiejbVukswK5jemvuPMt5S/6G/27NmN1KZ9Ojs7BwcHGwCQBRCsAMioihQpohBEGUfr1q2bNGmiazjrncxXrlxR0mFdU6FJTEyMubxt2zaN3Wmra9euzZ4929vbW8N0/fr1W7hwoVKS3r17q0QLEyZMKFq0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","media_type":"image/png"}}]}]},"uuid":"e378fb8c-61fa-405b-a7e8-9b2293e92964","timestamp":"2026-06-10T08:40:17.218Z","toolUseResult":{"type":"image","file":{"base64":"iVBORw0KGgoAAAANSUhEUgAABcgAAAMgCAIAAACYkhb5AAAQAElEQVR4nOzdBbwU1eP38bl0d3d3ioCUdEtJSIpIidKIggWiKKikikoIIi0ISEt3d3d3971w4/my5/+bZ90b7F1uAZ+3vu5rdnbiTOyy5ztnzsRInTq1BQAAAAAAAIfdu3cnS5bMnSnv3r0bzQIAAAAAAIBHCFYAAAAAAAA8FMMCAAAAAABAMLy9vU+fPn337l0NJ0yYMHPmzHHixLHfJVgBAAAAAAAI2oMHD/bu3evv729e3rhx4/bt2wUKFIgXL54Zw61AAAAAAAAAQTtz5oydqhh+fn5nz561X9JiBQAAAAAAIGjmDqAQRhKsAAAAAAAABM3X1zfwyMePH9vD3AoEAAAAAADgIYIVAAAAAAAADxGsAAAAAAAAeIhgBQAAAAAAwEMEKwCA50/MmDGTJEmiv5ZH4saNq9m9vLwsRKrYsWNbeD7p06fPkQUAAAhWAABu+uCDDy4Fkj9/fis8devW7ezZs4HHV6hQ4dChQ5UrV7Y88tFHH2n2hAkTWs+VTJkyaZ/XqFHDeh5UrFjR5WwpWbKkeStRokRDhw7dvXv3sWPHZsyYUb58eZd5gzzZWrdurRk18O677zpPrKNpTpLixYvbE1+8eHHjxo3Dhg3TLJbbBgwYcPDgQecx0aJF09K6du1qRZLt27erVO5MOWXKFJc9dvjwYY2fPn26PUY7fO7cubVq1TKzBLefQ34rT548S5YsOXHihJavlTZt2tR5aS5x56JFiyZOnKiBokWL6l1zrJ2LqmO3fPny3r17a1dbAAA8n3jcMgAgFOrVq+f8bDlVrqzIcPr06dGjR586dcryyKZNm6JHj+7j42Mh3CRPnlx/mzdvfuvWLTPmyJEjZkCpyquvvvrdd9/pCHbo0GHMmDFVqlQ5c+aMyxJcTrbAEwSpb9++imxixIihVWjhuXLlql27tvVy8PPzq1OnjvNLM7Bv3z7FTxpInTp1gwYNxo0b16JFixUrVph3Q9jPgd9S/DFr1qw9e/a88cYbDx8+1PEdPnz4vXv35s+fb4XGgQMHPvzwQw3EixdPR18Rqga+/PJLCwCA5xDBCgAgFHbs2OFc0YosqqJ/8cUXlqeWOFgITwpWVLFfuXJlQECA8/g3HDp16jR79my93LVr18aNGxWy2A0fbIFPNnean+jc0Iwa2LJli1bdr18/leT69evWS2CHQ+DxCj7s8cuWLXv99derVq1qByshfKgDv5UvXz7tz1GjRim90suvvvpKuVXDhg1DG6zcv3/fLtK6dety585drVo1j4MVZTSlS5d+8803nUf+/fffP/zww4YNGywAAMIZrS4BAM+kYMGCqheVLFlSl8EXL16sMbFixVJtdu3atao4DRkyxK4MBzfeiBs3rrIS1bFXr17dp08f5xsKsmfPPnbsWF11HzlyZLZs2eyV6q+Ghw0b1r9//yZNmigr2blz57fffqsVmRlXrVql6/Off/656tiq4bdr186Mf/vtt/WWPU39+vVVz1/lYG52MOrWrTt37lyVVsusXr261hg/fnznMqdLl06X67VSlVmFd15vcMu06VL/nDlzDh069Mcff5QtW9YumNaonfnPP/+oyqox+fPn//333/fs2TN69GjtB+claLHz5s07ePCgJlB114w0e6Nly5bak7Vq1Qphr1qObjI+/fRTlVCboH2bKVMmjdTGTpkyxZ5G1WYdMtP8xJ012jNqljt37kSPHj1v3rzOfamUKFHi7t272nbzUhVsVYCLFy8eHl3eKFCwHCeeFRZ07o0YMWLv3r2KhJxjoCB3i01r1/7Rztm2bZuCgxgx/u+aVnAnT+LEiRUHaPysWbMqVarkvCidJ3/++afOGe0xhVOWR5R2PXz40OPebc6dO6eopUaNGubOHS2tcuXKPXv2tJ7N6dOnU6ZMaXlKe8xyJCn2GDNMqgIAiBi0WAEAPJM4ceLkyJFDiUmKFCmmTZum6vFPP/2k6+ETJ068du1ahw4dMmTIoBDB398/yPH23Qq66K0Q5LPPPlN4oUzh7NmzkydPthyV/59//lkVpKNHj7777ruqqH/wwQdmpfprOSqoSiIaN248adKkQoUKtWnTRlW+jz/+2HIkMqry6aUKpqTj66+/vnr1qpKLpEmT2iGFBtq3b+/r66tpVEUcPHjwmjVrTp48WapUKV2WV31PmY7ygiJFimiNWru94aoAT506NW3atBMmTEiTJo3Zoo4dOwYEBAS3THtexRCqCm7evPnHH39s0aKFasu62K66tAqmS/eKKm7evKl39VK7SytS+JIrVy5FHvYS3nnnHb1cuHDhX3/9pWHtK9V1L1++rL1RoEABVfVVXT9z5kxwe1V0pLQivauYQLVl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6okTJ1buH3iZLrvLWbr06RRt9P7oST9ilStVrlmrphWedKSSJk1qOdqbFCxY8MlNNF6Wgjk/Xz8da/1eN40pFB2aYKV69advnRby408/NmverFy5cm/UfkM7xPldJW7K1/S507+/vT7sNXTY0F69eikfCdxIykVwnynlLDqjFJforePHn/R0c+HiBXsufXLNgCI55Sy+vr4hFy9s6Si3b99ekZN+WkyaPKlrt67KSrSra9Wude/uPYWzhw4f0kcpXrx4LjMqTNTH1v7Mnr9wXsGQBSAKMDnCH3/8EUKKocgjXLtZsXuTNWsxtx2F32OetXx3NsedyAlRH8FKpLFv+flywJeub82Zq2BFgYvluDgTwkKSJUvmMkbxile0IK4fmaVZjh8ZzhPrr+9jX5eJ9UtFl7YCL+SvGX/1699Pl+bSpk1buHBhXePSdTDzVo2aNZYuXTp06NDFixfrqto3336ja026OmeXMHWqp3fmr6uLluOirvNIrcty9KVij3FnUQAiy5Omdv9rg2A5vqYUy6piZl6mSP6fmxdSp04deHb99fPzsz/1lStXTpokqRXOkiZL2qxZs/ETxvft8399adv1MeeSZM2WVQPFixfXpfJt27cphclfIL+u3isK37d/nyqcLos1vdW63DSxefPmsuXKmuGcOf7zUOccOXIEWTxl4vMXzD9/7vyaNWvKlS0XN15cjRw8ePCqVatee+21fHnz7d69O/BcHTp0UAak/GL0mNG6bj90yFDTuUnEyJ07t46jGY4RM4ayp3+X/quIR4l5mrRp2rzbRjGEKswq+SvFXtE0qVI+vcMOl93lYviw4bPnzF68aLH+YdWAXgb5D2KY+OzTz4q9Wsxl5MEDB7/o94XijxLFS9SqWWvhooX2W+5sXeIkiadMnvLnpD/Xrlmr4EmXKNq1b2feUhqyecvmfl/0054sULDAJ5988uWXXyrsUHCTN2/ekBcb3Gfq4YOH3bp3u3r1atkyZUuXKm0u5xgxYsQw55ibxQtb+hWkT1bBQgUTJExQp24dpbENGzVcu3atgpV//vnn119/zZMnj8Ks/Pnznzx58j9zBlj37z/52Npbqo/kkya2AKIGfS2H8EBlpR56I/waj5h+VZyfv2MPKNfQW+H3NCK8DAhWIo39PJ369er//5H/zNUVUf301M8d/WLTbzJdk7HfDfAPWLxk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2olnzpypMCVOnDiKTrRGvbxw4cLff/9tL8feimzZsl2/fl1jtLvMztTEelm/fn0LAAAAQIhosQLgObZjxw79zZMnT+C38ubNa09gKERQ6LB8+fLChQtrQLlGgwYNtm3btmXLlty5cytGsaf84IMP9PKLL75Q/qIJFLIcPXr0p59+CnJR9kiFL8pZunTpoin/+eefjh07KpdxzlNCMHv27PXr1yua+fDDD/Vy4MCBWqnynT179iRKlOjYsWMaDu3EmzZtUro0ZcoUTb9582ZFSNqcGzduBN4KJS+NGjXSGHPnlLZCKVLMmDGbNWtmAQAAAAgRwQqA55jpm9Y5LLBdv37dcjRdsceUKVOmZ8+e+fPnf/z48fHjxzWmV69eKVOmTJs2bdeuXe3JFKkcPHhQAwpNFFXs27cva9aseul814+9KKUV9sjSpUvr74gRI7799luFGv369Rs3blyKFCksN7Rt2zZbtmwaqFKlihmjyCNatGiJEycuVqyY5XjyUWgn/uGHH5YuXfraa68dPnx4xYoVPj4+Gmnf0+SyFSZDUZ6iVGXdunXae9WrV0+VKpUFAAAAIEQEKwCeY7ly5dJfZR+B3zIjzQSGaZRhOe7ECQgIUGqQI0cOM6ZgwYIJEyZ0nlEaNmxY02Hw4MF6eejQocCLclaoUKH333//4cOHylbq169fo0aNLVu2WO4pXry4GYgR48kdmspNYsaM6TzGg4nv3r07atSoUqVKlS9fvkOHDmak3YuKy1bkzJnzlVdeuXr16vr16027FTpYAQAAANxBHysAnmOKGGbMmLFw4cIePXrEixfPHr9jx45jx44pZShatKg90n70smmIcf369du3bydOnFjDly9fVgxh3s2YMaMZ+PXXX6NF+//ps3PjlOCe4vzFF1+89957KtLSpUs3b97cunXrPXv2mLfsROPevXt37txxmdF5RYFfejaxwpSVK1fWq1dv6NCh+fLlU4yyf/9+5wlctqJp06bab6bwWbNmLVeunAUAAADgaWixAuA51qxZsxw5chw/frxnz56PHz82I5WStGvXzs/Pr02bNnZK4ixDhgyJEiXSBIsWLTJjFM3Y72bKlCllypSWoyVIXYcCBQrcuHEjSZIkIRdm2LBh3bp100Dnzp3nzp2rst28eXPTpk2mLYzdEMZ0HxveHjx4sGrVqpgxY44cObJMmTLa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1apVGzVq5PLWN998c+zYMQUf2bNnv3LlSuB5c+bMqXnHjh27f//+ggUL1qlTp2XLlhkzZrT+9+ywv/766/Llyx07dowbN66WZt5yljt37gkTJtgvTVdZsWPHthy9g9vjTf/xZrxQDSVbAAAQAElEQVSzsmXLDh48OFu2bF5eXhYAvBwIVgC8vEyScvDgQe79AQBEHV9//bX+njhxwgQrx48f118N//jjj+b+nX///Xf58uXmSfALFy789NNPBw4caOa9dOlS/Pjxf/jhBxN5LFu2TH9NLy0nT57Mnz9/3bp1zZQDBgyw33KW1cFlZPr06fV327ZtSmrMmO3bt1uOR92bl2nSpFmxYkW1atU2bdp0+vRpHusO4KVCHysAAABAFJI8eXIFFj4+PqcczEgN+Pr6ZnA4e/asXh49etS8pTDl3r17V69effjw4YwZM8qWLTt16lTz1po1a/S3YMGC+tu3b98yZcocOXLEfst0vOJOkZTI6O+qVavsMabvlQIFCthjkiVLNn78eC2zffv2e/futQDgpUGLFQAvkWvXrrk5mX6eRvCdQX5+fvobto/CDQgIePToUeB22gCAqGzu3LnOL80DyLZt22b/NQ4cOFCpUqVatWqNGzfu448//uOPPwYMGKCX33///YgRI7wdfv/99/Lly9evX1/T66+SkW7durVs2XLLli379u3TXKYpirPFixf/+uuvzmM0fZMmTYYMGTJ58uQTJ05UrVp11qxZ+/fvL168eKlSpZynVIKjyT744IMWLVrMnz/fPHgIAF54BCsAXha6KGeetWw6rw1uMtOpbUoHK0Jsd9DlR+Ug+g1azMF5Al2i1AVAKzS0qHnz5m3atClatGipU6fWAnk6AwC8DHLkyDFp0qS+ffv2798/ceLEtWvXVtpiujtp2rSprhz89ttvvXr1ypgxY8eOHbt27RrkQjSv88s6deoof5k9e/ZHH3200SFu3LgNGjQwtyy5aNiw4Z49e7SWZs2aKVtJmjSpBQAvOi/9+LYAIKKYpw+YnvCe0WMHK5TshwGZeEU/MdesWWMeBqRh+y0PmqvEdLBCadeuXboy2ahRI/0U1sujR4/OnDlTFxWLFCliJhg/frxikUKFCoVmqZYuJCpYad26dZo0aQ4dOqSLmR06dMiVK5cFAHg53L59O0GCBEE2hLxx40ayZMksjyjrv379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fDJw4MBq1aoZD0wJi7V5+eijjxo3bly7du146+zbt+/jjz9WmvPGG294eXnt2rVr6dKlwcHBXbp0MQAAQEZDsAIgA9uzZ8+HH34Yr3Do0KH16tWLV/jDDz9s2rRp0qRJWh43btyQIUPKlStn3OeBGjZsOHjwYNtyjUV3795dC999951x/5Iayk6eBrpnzpwZGxs7aNCgIkWKGADux/Xr11euXDlixIjHHntMLz08PNq0aRMUFLRixYpUCVbKlCljXb5582bCFeLi4r766qu2bds+/fTTZkmDBrJ4d14AABAASURBVA2UxaiBat++vZubmwEAADIUghUAGVvevHmnTZtmW5LoTRy1atUqUaKE8QBy5sy5e/fueFGIApc8efIEBgYa9+/EiRNz587VqLVxnzTSXr16dUa2Afv8/vvvpUqVMlMVq1atWr377ruhoaHh4eETJ07s3bv3119/nSNHDmWpN27cWLhw4YEDB/z8/Jo0aWJNQwICAhYtWnT48OHSpUt37tzZuqtvvvkmV65cxYoVU9N06dKlCRMmFChQ4JlnnnniiSfMFY4fP37lypVnn33W9gRq1KihTfSWTuzIkSO//PKL9lyxYkWFPtq/udvChQufO3fujz/++OCDD/Lnz//TTz/ps0RERCjzNQAAQPph8loAGZtDAomuli9fvkqVKhkPQAFKwYIFlaTYFm7durVu3bqGXdSFi4yMNO7f+fPnuVEFsJvCjqJFi8YrzJ079/Tp0728vGJiYi5evPjVV1+VLVu2Y8eOii3GjRvn7u7+/vvvt2jR4scff9ywYYPWV/lHH33k6ek5evToJ598UqmHdVc3b94MDg5Wc2HOeKJkRAtVqlSxrqD9611n5/8Z3FLb9eGHHypVUXo7efLkypUrjx07Vg3X/PnzrbtV2nLmzJm+ffsq8dm4ceOKFSuee+65N99889atW2qLDAAAkE64YwVA5rRz506N+hYvXnz58uXq2GTLlm337t2vvfaa7TqxsbGff/55XFycuj3qTWnNXbt2RUdHN2rUSMPLTk5O8fZZv3599V6s0yWoZ3Xo0KF27dqpe2OWzJw5U/GN9UGkqVOn1qxZs1atWtq5Rrx37Nihblvjxo014j1lypRNmzZpnUGDBrm6un7yySdaVodt/fr1ly9frlChQo8ePfLmzatCjaJ37dp19erVp0+fHjJk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3MoLAAAAIDPhjhUAAAAAAAA7EawAAAAAAADYiWAFAAAAAADATgQrAAAAAAAAdiJYAQAAAAAAsBPBCgAAAAAAgJ0IVgAAAAAAAOxEsAIAAAAAAGAnghUAAAAAAAA7EawAAAAAAADYiWAFQIZ39+7duLg4AwCArCQ6OlrfgPatEB4eHhUVZQAAUgPBCoAMbPv27QMGDHjNYs6cOYGBgcmvP3369OXLlyf1bgovMe+52tWrV7t27WoAAJBK9P1VqFChvn37mi+PHDnStm3bMmXKlC1btkmTJhs3boy3fjIr/Pbbbw0aNNBbpUuXbtas2Z49e2w3vHDhQqEESpYsqbe6deum5evXr1tX3r17t0pGjRql5cqVK1vX187bt2//3XffGQCQNTgbAJAxXb58eerUqaNHj9YFXEhIyLfffjtp0qSPP/7YsMtPP/107dq1CTeargAAEABJREFUXr16Jb/ayZMnv/rqq7FjxxoAAKSJEydOjBs3zvryypUrnTp1Cg8P79y5c9WqVWfPnv3888//8MMP1apVu+cKp06devHFF318fIYNGxYaGjpz5sxnn312//79Kol3UH29WpednJyMFPD29h46dKgWFL7oW/WNN96IjY3t0qWLAQCZHcEKgIxKF5rmWJyWdUWoy8eBAwcGBATkzZvXuH+3bt1KyfNEugyNjIw0AABIE9HR0YMHD7Yt2bp1q4YTmjZtOn78eMNyq0jLli2//PLL6dOn33OFLVu26MtOYcqAAQMMyzfpr7/+umvXrieffNL2EM2bN7feHZNyXl5e1q26du3aoEGDX375hWAFQFZAsAIgoypevPiCBQsUiPj5+emlv7+/Rt48PDy0PHz4cA2U5c6d21xTy6NGjdIK5kuN2m3atEkLjRo1ateunS4xtcLly5dVcujQofLly7/00ku3b99evHjxgQMHsmXLVrt2ba3m4OAwbdo0XZJqNY3Iubq6fvTRRwpZVq5cuXv3bl346gqybdu2KRzWAwAgJT799NMjR468+uqr1tzk77//1l8NLZgvCxcubFiejbVukswK5jemvuPMt5S/6G/27NmN1KZ9Ojs7BwcHGwCQBRCsAMioihQpohBEGUfr1q2bNGmiazjrncxXrlxR0mFdU6FJTEyMubxt2zaN3Wmra9euzZ4929vbW8N0/fr1W7hwoVKS3r17q0QLEyZMKFq0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","type":"image/png","originalSize":58398,"dimensions":{"originalWidth":1480,"originalHeight":800,"displayWidth":1480,"displayHeight":800}}},"sourceToolAssistantUUID":"0646a08f-5302-405e-8d30-778c2be4b46d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"e378fb8c-61fa-405b-a7e8-9b2293e92964","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"e378fb8c-61fa-405b-a7e8-9b2293e92964","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01HNyhe59hKAHGzsrbVLxA5m","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISkgcKYggOGAIqQJQWcG5LeJy6dUBpLFoxuSt/uggqyc79FGlBLDkuhJwqVaeuf+zqwVaiFdYrAy+q/u/hwfkC11lNeYLb+PcYzz8yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgxxj9lguTROsV2U0QYaDIovrfKAUENFZCEBUCIwS7nmE4MYWgFPH7rqpqgQWp3WmxfLHuFhi+pD3BduRgaNWzix+5Tp4NZy71bYzORNKt0FLHjGkuMgtwCbSF4F0R9CqZlpwVpvuEHwU0giNM/vlCODsd6gar7J9paeaJbE5fQtJ25G+BJ6YkrHofczWudqylANlm9wXyUs99d3LGafm659DfN2MxF58dvgjuOEuPSEm4jL/V/3AGgyOfvntZfdLCCfTBTvmlvPY7Y8kjaxFU0qyYx1OnaofUdyMpnmLdyNQYFmOfvXX+wPoEROQ91slkvfHP0aIEPRTnTt2/dyK0gpTVljrKKTw0j0IeBd/U9rM/yawkucrtYhgB+b5h0QfjM2q5I9OvKGcZgcn4XYy55cu8aUGGFUfHMpSWS6Ub3I21JJKZ264bS154ECbUQFWOSk5a7d2QrCLa4jfew67I18ApmDo3fJS5EAae2QHG3rHHqrJeTHmAInVZZNNgvMIbT6vmt6NkEmQC+g/R3YgzXkaAzedlBdMMO3HQfYmpVMceJpks+/KtRv8oJ6ne45ntrY62tcUWkwh7yPRUAw0WxLPIcFiu/WFAz4rQLWJlDsFVQOcIUQJ73Huz6zayCkNSd+VnptFbXlQ2RGcqg3alaUlW/U3dEDLfYIrt1tFn2k5tkjhRJIszFno3Pj8AW3Txc6mDXoEyJqz6lPq+pF9PsCffyCSClCQ/GOlxcM7tTApCkb2AB+Kw2cfy+20XOGf/v0GSaxLF/97u0GEDv6avO4dP4W/qRMkkhgboKFi+bvMjt0tOuVE2VOGbONjCL6lRvGkBjzHWZUaPUN7VmcNubfqQQTuHKy/W35J+K3celPQjshdMVZcqYmjXWyYcbtnHoquykNKBWzBWX0BligjEHko1D60nzztWqE+dGGdDIUHkswR27mRLFhzNRj2pP7hwUyQcr+qltcg0di2MkgtUrpVFtnRoDeL26Iam8YBsyfgI0BN0t8XV4Yw1fa1sWeXqf0GOuZ7sjIoAD9ipX22eEmEn8ZQSpPKm+W+0Ecgpp0V82wyJVYQ7IXF4hTOxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1631,"cache_read_input_tokens":222921,"output_tokens":382,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1631,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":382,"cache_read_input_tokens":222921,"cache_creation_input_tokens":1631,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1631},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH9qkSEtkzTtp1bkayy","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"2e600ba1-6a82-47e8-b604-762c5d49bad5","timestamp":"2026-06-10T08:40:26.491Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2e600ba1-6a82-47e8-b604-762c5d49bad5","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01HNyhe59hKAHGzsrbVLxA5m","type":"message","role":"assistant","content":[{"type":"text","text":"Order #1016 confirmed — exactly one order (idempotency held), paid/paid, totals correct. Continuing the customer journey: search, then account registration."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1631,"cache_read_input_tokens":222921,"output_tokens":382,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1631,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":382,"cache_read_input_tokens":222921,"cache_creation_input_tokens":1631,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1631},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH9qkSEtkzTtp1bkayy","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"52f0e763-5e67-4e4e-8ed1-4cf747a25f62","timestamp":"2026-06-10T08:40:26.491Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"52f0e763-5e67-4e4e-8ed1-4cf747a25f62","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01HNyhe59hKAHGzsrbVLxA5m","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01AwVCTgYLbffhUpiDGMqXh2","name":"mcp__playwright__browser_click","input":{"element":"Search button in header","target":"button[aria-label=\"Search\"]"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1631,"cache_read_input_tokens":222921,"output_tokens":382,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1631,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":382,"cache_read_input_tokens":222921,"cache_creation_input_tokens":1631,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1631},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuH9qkSEtkzTtp1bkayy","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"b3d99fb2-5a7b-412b-af3d-508512dcc692","timestamp":"2026-06-10T08:40:26.923Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b3d99fb2-5a7b-412b-af3d-508512dcc692","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01AwVCTgYLbffhUpiDGMqXh2","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('button[aria-label=\"Search\"]').click();\n```\n### Page\n- Page URL: http://shop.test/checkout/1/confirmation\n- Page Title: Order confirmation - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-40-27-955Z.yml)"}]}]},"uuid":"5a92bd25-f5d2-486f-b024-502707d67d24","timestamp":"2026-06-10T08:40:27.958Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('button[aria-label=\"Search\"]').click();\n```\n### Page\n- Page URL: http://shop.test/checkout/1/confirmation\n- Page Title: Order confirmation - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-40-27-955Z.yml)"}],"sourceToolAssistantUUID":"b3d99fb2-5a7b-412b-af3d-508512dcc692","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5a92bd25-f5d2-486f-b024-502707d67d24","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01R7wq5gcAFXzKUtndSL1u5G","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NhwN1e9qJcvRwaTWGvgUY5","name":"mcp__playwright__browser_type","input":{"element":"Search modal input","target":"getByRole('dialog', { name: 'Search' }).getByRole('searchbox')","text":"hoodie"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":518,"cache_read_input_tokens":224552,"output_tokens":133,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":518,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":133,"cache_read_input_tokens":224552,"cache_creation_input_tokens":518,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":518},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHAdAvT264DAMk9BvXU","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"89cfd5df-6ed4-41ce-afca-cee025b61c2d","timestamp":"2026-06-10T08:40:34.118Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"89cfd5df-6ed4-41ce-afca-cee025b61c2d","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NhwN1e9qJcvRwaTWGvgUY5","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('dialog', { name: 'Search' }).getByRole('searchbox').fill('hoodie');\n```"}]}]},"uuid":"7e04414a-3ae9-4bcd-926f-568a5bd52617","timestamp":"2026-06-10T08:40:34.132Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('dialog', { name: 'Search' }).getByRole('searchbox').fill('hoodie');\n```"}],"sourceToolAssistantUUID":"89cfd5df-6ed4-41ce-afca-cee025b61c2d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7e04414a-3ae9-4bcd-926f-568a5bd52617","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01CcKVrq69AZT4wA9kVK7KLn","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01SGhesp46HdjtUxNt9o2Agw","name":"mcp__playwright__browser_wait_for","input":{"text":"Hoodie"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":193,"cache_read_input_tokens":225070,"output_tokens":63,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":193,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":63,"cache_read_input_tokens":225070,"cache_creation_input_tokens":193,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":193},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHB5m5LL4buJC6TXwhj","attributionMcpServer":"playwright","attributionMcpTool":"browser_type","type":"assistant","uuid":"6ea45dc4-c5f5-4009-88d8-4cff3e274e8d","timestamp":"2026-06-10T08:40:38.785Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6ea45dc4-c5f5-4009-88d8-4cff3e274e8d","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01SGhesp46HdjtUxNt9o2Agw","type":"tool_result","content":[{"type":"text","text":"### Result\nWaited for Hoodie\n### Ran Playwright code\n```js\nawait page.getByText(\"Hoodie\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/checkout/1/confirmation\n- Page Title: Order confirmation - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-40-38-797Z.yml)"}]}]},"uuid":"bb73018e-522c-4fe1-9391-a7ed44c53258","timestamp":"2026-06-10T08:40:38.798Z","toolUseResult":[{"type":"text","text":"### Result\nWaited for Hoodie\n### Ran Playwright code\n```js\nawait page.getByText(\"Hoodie\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/checkout/1/confirmation\n- Page Title: Order confirmation - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-40-38-797Z.yml)"}],"sourceToolAssistantUUID":"6ea45dc4-c5f5-4009-88d8-4cff3e274e8d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"bb73018e-522c-4fe1-9391-a7ed44c53258","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01LNX1bz33XsbfV5pMvKFPNM","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_013p3y2RN1G4oYDwrgPm4w3p","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/06-search-modal.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":222,"cache_read_input_tokens":225263,"output_tokens":156,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":222,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":156,"cache_read_input_tokens":225263,"cache_creation_input_tokens":222,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":222},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHBRTk9msSzpmZKZiHr","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"27fa479c-13ed-4d82-8eb7-6a432b65c38e","timestamp":"2026-06-10T08:40:44.177Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"27fa479c-13ed-4d82-8eb7-6a432b65c38e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_013p3y2RN1G4oYDwrgPm4w3p","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/06-search-modal.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/06-search-modal.png\nawait page.screenshot({\n  path: 'review/06-search-modal.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"95644815-f8f6-4492-8b8b-3621cc4e175c","timestamp":"2026-06-10T08:40:44.228Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/06-search-modal.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/06-search-modal.png\nawait page.screenshot({\n  path: 'review/06-search-modal.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"27fa479c-13ed-4d82-8eb7-6a432b65c38e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"95644815-f8f6-4492-8b8b-3621cc4e175c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01LNX1bz33XsbfV5pMvKFPNM","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01R9ddhnXS2phCFBNN7XYTjt","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/account/register"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":222,"cache_read_input_tokens":225263,"output_tokens":156,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":222,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":156,"cache_read_input_tokens":225263,"cache_creation_input_tokens":222,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":222},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHBRTk9msSzpmZKZiHr","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"587e67f6-dea3-47b6-bb1e-6d934919b201","timestamp":"2026-06-10T08:40:44.553Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"587e67f6-dea3-47b6-bb1e-6d934919b201","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01R9ddhnXS2phCFBNN7XYTjt","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/account/register');\n```\n### Page\n- Page URL: http://shop.test/account/register\n- Page Title: Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-40-44-689Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-40-44-556Z.log#L1"}]}]},"uuid":"8581bc6c-9693-49de-84c6-c61e01591a25","timestamp":"2026-06-10T08:40:44.692Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/account/register');\n```\n### Page\n- Page URL: http://shop.test/account/register\n- Page Title: Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-40-44-689Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-40-44-556Z.log#L1"}],"sourceToolAssistantUUID":"587e67f6-dea3-47b6-bb1e-6d934919b201","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8581bc6c-9693-49de-84c6-c61e01591a25","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_014CAF1woU83bxQpXRVZ1BDp","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Fh5gfjCpSXm8tv6oSrg7pa","name":"mcp__playwright__browser_snapshot","input":{"depth":16,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":505,"cache_read_input_tokens":225485,"output_tokens":81,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":505,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":81,"cache_read_input_tokens":225485,"cache_creation_input_tokens":505,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":505},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHBrjmfefYMtCZxEsve","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"d82fef0f-7aff-4b4f-9042-eaf84ce44cd2","timestamp":"2026-06-10T08:40:49.151Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d82fef0f-7aff-4b4f-9042-eaf84ce44cd2","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Fh5gfjCpSXm8tv6oSrg7pa","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/account/register\n- Page Title: Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e35]:\n  - generic [ref=e36]:\n    - heading \"Create an account\" [level=1] [ref=e37]\n    - generic [ref=e38]:\n      - generic [ref=e39]:\n        - generic [ref=e40]: Name\n        - textbox \"Name\" [active] [ref=e42]\n      - generic [ref=e43]:\n        - generic [ref=e44]: Email address\n        - textbox \"Email address\" [ref=e46]\n      - generic [ref=e47]:\n        - generic [ref=e48]: Password\n        - textbox \"Password\" [ref=e50]\n      - generic [ref=e51]:\n        - generic [ref=e52]: Confirm password\n        - textbox \"Confirm password\" [ref=e54]\n      - generic [ref=e55]:\n        - checkbox \"Send me product news and offers\" [ref=e56]\n        - generic [ref=e58]: Send me product news and offers\n      - button \"Create account\" [ref=e59]:\n        - img [ref=e61]\n        - generic [ref=e64]: Create account\n```"}]}]},"uuid":"97733cd4-b7c0-48ec-9015-ca598d1d19ca","timestamp":"2026-06-10T08:40:49.167Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/account/register\n- Page Title: Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e35]:\n  - generic [ref=e36]:\n    - heading \"Create an account\" [level=1] [ref=e37]\n    - generic [ref=e38]:\n      - generic [ref=e39]:\n        - generic [ref=e40]: Name\n        - textbox \"Name\" [active] [ref=e42]\n      - generic [ref=e43]:\n        - generic [ref=e44]: Email address\n        - textbox \"Email address\" [ref=e46]\n      - generic [ref=e47]:\n        - generic [ref=e48]: Password\n        - textbox \"Password\" [ref=e50]\n      - generic [ref=e51]:\n        - generic [ref=e52]: Confirm password\n        - textbox \"Confirm password\" [ref=e54]\n      - generic [ref=e55]:\n        - checkbox \"Send me product news and offers\" [ref=e56]\n        - generic [ref=e58]: Send me product news and offers\n      - button \"Create account\" [ref=e59]:\n        - img [ref=e61]\n        - generic [ref=e64]: Create account\n```"}],"sourceToolAssistantUUID":"d82fef0f-7aff-4b4f-9042-eaf84ce44cd2","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"97733cd4-b7c0-48ec-9015-ca598d1d19ca","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01X4oxoYj9KGW3e5d7yNFywH","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01BCdYktMSoGTopLD6Se3X1Q","name":"mcp__playwright__browser_fill_form","input":{"fields":[{"target":"e42","name":"Name","type":"textbox","value":"Erika Musterfrau"},{"target":"e46","name":"Email address","type":"textbox","value":"erika.musterfrau@example.com"},{"target":"e50","name":"Password","type":"textbox","value":"SuperSecret123!"},{"target":"e54","name":"Confirm password","type":"textbox","value":"SuperSecret123!"}]},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":487,"cache_read_input_tokens":225990,"output_tokens":221,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":487,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":221,"cache_read_input_tokens":225990,"cache_creation_input_tokens":487,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":487},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHCCXPt8dx7jbAp29fT","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"b6999190-1cb9-4ca0-8f2b-a236952d55ca","timestamp":"2026-06-10T08:40:55.039Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b6999190-1cb9-4ca0-8f2b-a236952d55ca","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01BCdYktMSoGTopLD6Se3X1Q","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Name' }).fill('Erika Musterfrau');\nawait page.getByRole('textbox', { name: 'Email address' }).fill('erika.musterfrau@example.com');\nawait page.getByRole('textbox', { name: 'Password', exact: true }).fill('SuperSecret123!');\nawait page.getByRole('textbox', { name: 'Confirm password' }).fill('SuperSecret123!');\n```"}]}]},"uuid":"63c16c4f-9294-4a2f-8190-ba3e1474904c","timestamp":"2026-06-10T08:40:55.083Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Name' }).fill('Erika Musterfrau');\nawait page.getByRole('textbox', { name: 'Email address' }).fill('erika.musterfrau@example.com');\nawait page.getByRole('textbox', { name: 'Password', exact: true }).fill('SuperSecret123!');\nawait page.getByRole('textbox', { name: 'Confirm password' }).fill('SuperSecret123!');\n```"}],"sourceToolAssistantUUID":"b6999190-1cb9-4ca0-8f2b-a236952d55ca","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"63c16c4f-9294-4a2f-8190-ba3e1474904c","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"cede65ba-89c1-49eb-9b64-393a0074c35a","timestamp":"2026-06-10T08:40:55.084Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"cede65ba-89c1-49eb-9b64-393a0074c35a","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_019sxyKtBbYi9N8EBPx9RGMq","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01NRcwgfr1FmTsGHmNMTqnsj","name":"mcp__playwright__browser_click","input":{"element":"Create account button","target":"e59"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":393,"cache_read_input_tokens":226477,"output_tokens":81,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":393,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":81,"cache_read_input_tokens":226477,"cache_creation_input_tokens":393,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":393},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHCdAEHwuzoaw5eopkx","attributionMcpServer":"playwright","attributionMcpTool":"browser_fill_form","type":"assistant","uuid":"5b1d6d54-93fd-4aff-800f-d398e7c2e61f","timestamp":"2026-06-10T08:40:59.290Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5b1d6d54-93fd-4aff-800f-d398e7c2e61f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01NRcwgfr1FmTsGHmNMTqnsj","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"customer-register-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/account\n- Page Title: My account - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-00-694Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-40-44-556Z.log#L2"}]}]},"uuid":"648e3987-67ea-4767-aa11-ee79bb449a84","timestamp":"2026-06-10T08:41:00.697Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"customer-register-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/account\n- Page Title: My account - Acme Fashion\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-00-694Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-40-44-556Z.log#L2"}],"sourceToolAssistantUUID":"5b1d6d54-93fd-4aff-800f-d398e7c2e61f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"648e3987-67ea-4767-aa11-ee79bb449a84","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01ATNLw8XqmiC55JNhuCCuTJ","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01XPySoQgcS8RjuDzUNGPPy4","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/07-account-dashboard.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":378,"cache_read_input_tokens":226870,"output_tokens":172,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":378,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":172,"cache_read_input_tokens":226870,"cache_creation_input_tokens":378,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":378},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHD388S7Uh3LGpLpkUN","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"89d10eeb-1198-4e08-8b2a-63fc4cd79e26","timestamp":"2026-06-10T08:41:05.621Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"89d10eeb-1198-4e08-8b2a-63fc4cd79e26","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01XPySoQgcS8RjuDzUNGPPy4","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/07-account-dashboard.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/07-account-dashboard.png\nawait page.screenshot({\n  path: 'review/07-account-dashboard.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"208c7faa-cecb-459a-b40d-0a460ac0ec60","timestamp":"2026-06-10T08:41:05.671Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/07-account-dashboard.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/07-account-dashboard.png\nawait page.screenshot({\n  path: 'review/07-account-dashboard.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"89d10eeb-1198-4e08-8b2a-63fc4cd79e26","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"208c7faa-cecb-459a-b40d-0a460ac0ec60","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01ATNLw8XqmiC55JNhuCCuTJ","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01EUdKvxoabXV9xFpwZ45MrX","name":"mcp__playwright__browser_snapshot","input":{"depth":12,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":378,"cache_read_input_tokens":226870,"output_tokens":172,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":378,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":172,"cache_read_input_tokens":226870,"cache_creation_input_tokens":378,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":378},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHD388S7Uh3LGpLpkUN","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"719cd4a2-e608-48eb-b68f-2613fbf0ec01","timestamp":"2026-06-10T08:41:06.047Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"719cd4a2-e608-48eb-b68f-2613fbf0ec01","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01EUdKvxoabXV9xFpwZ45MrX","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/account\n- Page Title: My account - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e35]:\n  - generic [ref=e36]:\n    - heading \"Welcome back, Erika Musterfrau!\" [level=1] [ref=e37]\n    - navigation \"Account navigation\" [ref=e38]:\n      - generic [ref=e39]:\n        - list [ref=e40]:\n          - listitem [ref=e41]:\n            - link \"My Account\" [ref=e42] [cursor=pointer]:\n              - /url: http://shop.test/account\n          - listitem [ref=e43]:\n            - link \"Orders\" [ref=e44] [cursor=pointer]:\n              - /url: http://shop.test/account/orders\n          - listitem [ref=e45]:\n            - link \"Addresses\" [ref=e46] [cursor=pointer]:\n              - /url: http://shop.test/account/addresses\n        - button \"Log out\" [ref=e48]:\n          - img [ref=e49]\n          - text: Log out\n    - generic [ref=e51]:\n      - link \"Order history View all your orders\" [ref=e52] [cursor=pointer]:\n        - /url: http://shop.test/account/orders\n        - img [ref=e53]\n        - generic [ref=e55]: Order history\n        - generic [ref=e56]: View all your orders\n      - link \"Addresses Manage your addresses\" [ref=e57] [cursor=pointer]:\n        - /url: http://shop.test/account/addresses\n        - img [ref=e58]\n        - generic [ref=e61]: Addresses\n        - generic [ref=e62]: Manage your addresses\n      - button \"Log out End your session securely\" [ref=e64] [cursor=pointer]:\n        - img [ref=e65]\n        - generic [ref=e67]: Log out\n        - generic [ref=e68]: End your session securely\n    - region \"Recent Orders\" [ref=e69]:\n      - heading \"Recent Orders\" [level=2] [ref=e71]\n      - paragraph [ref=e72]: You haven't placed any orders yet.\n    - region \"Profile\" [ref=e73]:\n      - heading \"Profile\" [level=2] [ref=e74]\n      - generic [ref=e75]:\n        - generic [ref=e76]:\n          - generic [ref=e77]: Name *\n          - textbox \"Name\" [ref=e78]: Erika Musterfrau\n        - generic [ref=e79]:\n          - paragraph [ref=e80]: Email\n          - paragraph [ref=e81]: erika.musterfrau@example.com\n        - generic [ref=e82]:\n          - checkbox \"Subscribe to marketing emails\" [ref=e83]\n          - text: Subscribe to marketing emails\n        - button \"Save changes\" [ref=e84]\n```"}]}]},"uuid":"94457925-3b1c-4441-b40e-16c57949e25d","timestamp":"2026-06-10T08:41:06.060Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/account\n- Page Title: My account - Acme Fashion\n### Snapshot\n```yaml\n- main [ref=e35]:\n  - generic [ref=e36]:\n    - heading \"Welcome back, Erika Musterfrau!\" [level=1] [ref=e37]\n    - navigation \"Account navigation\" [ref=e38]:\n      - generic [ref=e39]:\n        - list [ref=e40]:\n          - listitem [ref=e41]:\n            - link \"My Account\" [ref=e42] [cursor=pointer]:\n              - /url: http://shop.test/account\n          - listitem [ref=e43]:\n            - link \"Orders\" [ref=e44] [cursor=pointer]:\n              - /url: http://shop.test/account/orders\n          - listitem [ref=e45]:\n            - link \"Addresses\" [ref=e46] [cursor=pointer]:\n              - /url: http://shop.test/account/addresses\n        - button \"Log out\" [ref=e48]:\n          - img [ref=e49]\n          - text: Log out\n    - generic [ref=e51]:\n      - link \"Order history View all your orders\" [ref=e52] [cursor=pointer]:\n        - /url: http://shop.test/account/orders\n        - img [ref=e53]\n        - generic [ref=e55]: Order history\n        - generic [ref=e56]: View all your orders\n      - link \"Addresses Manage your addresses\" [ref=e57] [cursor=pointer]:\n        - /url: http://shop.test/account/addresses\n        - img [ref=e58]\n        - generic [ref=e61]: Addresses\n        - generic [ref=e62]: Manage your addresses\n      - button \"Log out End your session securely\" [ref=e64] [cursor=pointer]:\n        - img [ref=e65]\n        - generic [ref=e67]: Log out\n        - generic [ref=e68]: End your session securely\n    - region \"Recent Orders\" [ref=e69]:\n      - heading \"Recent Orders\" [level=2] [ref=e71]\n      - paragraph [ref=e72]: You haven't placed any orders yet.\n    - region \"Profile\" [ref=e73]:\n      - heading \"Profile\" [level=2] [ref=e74]\n      - generic [ref=e75]:\n        - generic [ref=e76]:\n          - generic [ref=e77]: Name *\n          - textbox \"Name\" [ref=e78]: Erika Musterfrau\n        - generic [ref=e79]:\n          - paragraph [ref=e80]: Email\n          - paragraph [ref=e81]: erika.musterfrau@example.com\n        - generic [ref=e82]:\n          - checkbox \"Subscribe to marketing emails\" [ref=e83]\n          - text: Subscribe to marketing emails\n        - button \"Save changes\" [ref=e84]\n```"}],"sourceToolAssistantUUID":"719cd4a2-e608-48eb-b68f-2613fbf0ec01","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"94457925-3b1c-4441-b40e-16c57949e25d","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"94457925-3b1c-4441-b40e-16c57949e25d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RDbY9C6NxTMXjNNHXsa4Zt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISnwUKYggOGAIqQJd3InITUhkrK8MjYw+AzAI5sIZfaVgCA+gG48U7zVMZOnyQA0x1ZR7ZCBmwkG0hK0Q1YWt4Os4BHIZ93rkvwJAyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgy7Bk0TFlTnNAEAosIaDJShJYcIyZpom3bFTiIwRsh0WL9Dhg+Wevp8YXFShQryV7BK9p5wcg7FRHAj6gOxre3gitP9G+fyWjVToXF4KuoDhsCDWDAN53heu5J6lbQpnIPeRki0R+56JqghLHBUDH1xVM9p62bhvLHs2F7b+7UxtPWfv0/B2+ZftDvH6mJL6OQ8RSoPP2lrXawyBQV9brWDZsWLGveMbSql4djcDQ4Y+N2pqVHzhM1B+8w0Z3JMoiDhPtUDyUhIYbZw9TqLsft2dHrqUpyt5goqfrLX+SSonOMmmGoi/dXicMmB0xB9pWzkE+pGSgJvtdvHtiyAXyY0ygL1vI7Z5OzQ9Sofx0MApQMLudTRUYhjDND42IxOwkkB4nL/RQaAbmJvJ7crbWyx3Dwwqnx3fhamzb/bgQSb+RJ+xm21G2F8z54WVqD91Hx44yGmilg0nxfuX06Mv2Mwou9gYV8gFBVw/ivXy1/fScg9J87Hs+woiIVZ/hUGgMoK+vdZLf6QIXfoS5lKpuERZc2MQN3I9kEVPI24aWDDuAxKuooqE/H3JsS3nQXWBUKxCqHt+w2W2NVZfPEHJuJx3LXsmg2YvT5qznPfE1UsTnOBFipaSRTrvAd/tpq8hesTNJiNsiGf5PcZLyyI1Ur7/BOMNt0f6KQkcK0Ha0v5XZD1yM/LeVYQgCL1J3v6ry+jjhuEz3rLODPaHhqKvi8uBOYH4KpQUVn/Pwe8N/FGYljpxAF4a1pEQxgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1323,"cache_read_input_tokens":227248,"output_tokens":307,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1323,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":307,"cache_read_input_tokens":227248,"cache_creation_input_tokens":1323,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1323},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHDSCStXNPRs1uB3tuL","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"883557c8-e485-4551-b274-161a70f88c91","timestamp":"2026-06-10T08:41:14.134Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"883557c8-e485-4551-b274-161a70f88c91","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RDbY9C6NxTMXjNNHXsa4Zt","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISkwMKYwgOGAIqQN24dBSWUqvY4gubxIEDSlGdUlwT4QnVPUoZXtvx0Rkvm15lUZ05Dkn4LzVvO00/dAXGLXvs3xBLbDo6LQI3y88yDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMm/V8vJbYNdtld0xEGgxhiUF179GAUOA/FOgiMNR/hY+WoIOfqIoxz0K1rYai6Fy3GAf/AJTmhslMs1WKIsKui1TLyPG+z2alE7j4wyrdARl14c5cEO/ABVCR2+qn0S2Z8OJWXxwF7UZXdDIvTcCm2s82TD1q5nCEf1LgZh8sW4XI/rorPqP1mYOmZzg+1vF6083P+JOHQ8L0a1tMgmEls5NC7yaT9fd47IquH2mmDoGAudje3i6ReIXaqDTu9NruKMx4CXwaovhr5pNi968PXPVokxCbuWZqhntTLUEeOU4WtlvrRLfdVUatHYumLnyd6TsVS4fIRLDwZYwg6jDXqNsN7SqiuLhh7wry7TONF83Y1U8rZujg66JPmcUMGu0F7McZu1ymRRcaNr4WGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1323,"cache_read_input_tokens":227248,"output_tokens":307,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1323,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":307,"cache_read_input_tokens":227248,"cache_creation_input_tokens":1323,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1323},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHDSCStXNPRs1uB3tuL","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"c9cff0d2-038e-46c2-b6d3-7cac260bd450","timestamp":"2026-06-10T08:41:14.134Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c9cff0d2-038e-46c2-b6d3-7cac260bd450","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01RDbY9C6NxTMXjNNHXsa4Zt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MxuQAdRMb2z4Ln3oFvEXyT","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/login"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1323,"cache_read_input_tokens":227248,"output_tokens":307,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1323,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":307,"cache_read_input_tokens":227248,"cache_creation_input_tokens":1323,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1323},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHDSCStXNPRs1uB3tuL","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"26484cd9-cc06-4219-ad4b-b3d98939877c","timestamp":"2026-06-10T08:41:14.154Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"26484cd9-cc06-4219-ad4b-b3d98939877c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MxuQAdRMb2z4Ln3oFvEXyT","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/login');\n```\n### Page\n- Page URL: http://shop.test/admin\n- Page Title: Dashboard - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-14-380Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-41-14-156Z.log#L1"}]}]},"uuid":"ab1a7ddc-3d4b-4630-ba48-93e2693a5a23","timestamp":"2026-06-10T08:41:14.382Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/login');\n```\n### Page\n- Page URL: http://shop.test/admin\n- Page Title: Dashboard - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-14-380Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-41-14-156Z.log#L1"}],"sourceToolAssistantUUID":"26484cd9-cc06-4219-ad4b-b3d98939877c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ab1a7ddc-3d4b-4630-ba48-93e2693a5a23","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01CkGfG1wLwmvUFZP5YytSNm","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISzwIKYggOGAIqQNUdjvLzYQ07t5wBVcSu9PeFL6WdlYcGLgIy8YL/RscY4yWtvKQWlojryCzFMeghZW4uySUILoXQwY07CGTMVVcyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwJhsYoZ52GE4cBZjgaDLkrFQFbrbP6Xl3XBSIwzWgjymSXAPLCJmiGhukME0uwmR7kn56ixN/BaxgyU9o8wVy+4ExPjSILoHWMiXOSKpoB5zpfsYju6azaME0TDmvuEF1Jsc/C47vUOZ79JHxTuPpEm+iNqEoStoGPLt+Xup21Extwv2N+nARlaXkYcc5WPc+np8hsEw0JuyUb22FX0k2AkNPMuFtORxuoyD6mAfMREcQ/sQcMfQxi5R0EL22fPfuHm5089HlE3tLRIqEJtTQ9fwYuFNg2kkuNURow6wrZp3JhuaGwOwO+GhgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":471,"cache_read_input_tokens":228571,"output_tokens":171,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":471,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":171,"cache_read_input_tokens":228571,"cache_creation_input_tokens":471,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":471},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHE3w2aQBiUkgLD65ya","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"7adccea6-cdb5-45f9-bc83-a383c12d0341","timestamp":"2026-06-10T08:41:20.204Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7adccea6-cdb5-45f9-bc83-a383c12d0341","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01CkGfG1wLwmvUFZP5YytSNm","type":"message","role":"assistant","content":[{"type":"text","text":"Already authenticated from an earlier session — on the dashboard. Capturing it."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":471,"cache_read_input_tokens":228571,"output_tokens":171,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":471,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":171,"cache_read_input_tokens":228571,"cache_creation_input_tokens":471,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":471},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHE3w2aQBiUkgLD65ya","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"585211b9-dee0-4fd0-83af-fadaa56c696d","timestamp":"2026-06-10T08:41:20.205Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"585211b9-dee0-4fd0-83af-fadaa56c696d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01CkGfG1wLwmvUFZP5YytSNm","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_013ykZrYukje6bGrhrWQcXSC","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/08-admin-dashboard.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":471,"cache_read_input_tokens":228571,"output_tokens":171,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":471,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":171,"cache_read_input_tokens":228571,"cache_creation_input_tokens":471,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":471},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHE3w2aQBiUkgLD65ya","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"19e5cc25-7c73-4361-87e3-cf7a8fdee127","timestamp":"2026-06-10T08:41:20.326Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"19e5cc25-7c73-4361-87e3-cf7a8fdee127","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_013ykZrYukje6bGrhrWQcXSC","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/08-admin-dashboard.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/08-admin-dashboard.png\nawait page.screenshot({\n  path: 'review/08-admin-dashboard.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"04b42f80-f548-4a89-a626-deedb1a76e40","timestamp":"2026-06-10T08:41:20.379Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/08-admin-dashboard.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/08-admin-dashboard.png\nawait page.screenshot({\n  path: 'review/08-admin-dashboard.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"19e5cc25-7c73-4361-87e3-cf7a8fdee127","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"04b42f80-f548-4a89-a626-deedb1a76e40","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01FsF5E55NcRNYmW5cr86xtj","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01RfqSfcyrfCykTJNgdrC5hz","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/review/08-admin-dashboard.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":296,"cache_read_input_tokens":229042,"output_tokens":78,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":296,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":78,"cache_read_input_tokens":229042,"cache_creation_input_tokens":296,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":296},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHEWukNV2WPEVp9Rxjo","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"6425898f-5171-47ae-abf0-bceb6d6f86d6","timestamp":"2026-06-10T08:41:26.618Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6425898f-5171-47ae-abf0-bceb6d6f86d6","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01RfqSfcyrfCykTJNgdrC5hz","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"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NydEKSmpCYmJOjdLRERERESkQIfR+K6lyfetQEc3R44cgogsKo2xSEZIVYTqhrs659vYWOM/YQp98YeTrgDFmFRFqK5FYqpCRERERESWZVpXh4iIiIiIiIiIFAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhMDFaIiIiIiIiIiMzEYIWIiIiIiIiIyEwMVoiIiIiIiIiIzMRghYiIiIiIiIjITAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhMDFaIiIiIiIiIiMzEYIWIiIiIiIiIyEy2xizk5+cniN41T09PQURERERERJSRGBWssENLRERERERERKSNlwIREREREREREZmJwQoRERERERERkZkYrBARERERERERmYnBChERERERERGRmRisEBERERERERGZicEKEREREREREZGZGKwQEREREREREZmJwQoRERERERERkZkYrBARERERERERmYnBChERERERERGRmRisEBERERERERGZicEKEREREREREZGZGKwQEREREREREZnJVhARERERERFlHqmpqYKyHysrK5EhMVghIiIiIiKizAGRSoJKcnKyoOzExsbGXiUDxisMVoiIiIiIiCgTSEpKiouLs7Ozy5UrF/5m2PMXyOIQqCUmJkarODo62tpmrCiDwQoRERERERFldCkpKUhVnJycXFxcBGUzCNHk6SpRUVExMTE4DKytM9AdY3nzWiIiIiIiIsrQ5BVAdnZ2TFWyORwAOAxwMGSo++yk6YyViIiIW7duyWkESK6urh4eHvieiBJ9fHzkfMRIOXPmlPPlHHz/Z8+evXz5EjlTvnz5ChcujAXkW6dPn/b39/f09HRwcMidOzfeRRAl37p27RrSqfLly8uX4eHhvr6+eOnu7o6XiYmJ9+7dCw0NtbGxwVolS5bE/mBOcHCwxj7j3VKlSiUlJd2+fRvLY/vYgYIFC/IsMiIiIiIiooxJBivoJArK9pydnUNCQjLUzVbSdMZKXFycn59ffHw84gwc6IgqDhw4gMgDwQrmI3aR8+/evSvny7UuXLiAAAUvkZ7cuXMHb4WFhcm3kKoIVRYTFRWFxfbs2fP8+XP51tOnT5HFKB8dGxuLj8BfTEdHR//777/IWfDPip3BiidOnEB0gu3YqLx48QLryml5vtCRI0cePnyIUAaJzMmTJ7GHgoiIiIiIiDKeVBV0M+3s7ARl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RFhY2PHjxxcsWGBvb1+zZk3x1kVFRY0ePRqJTP369QURERERERERZXtpvePLrVu35NkoFSpU0JmqSAhTunXrJv67qa1JcufOXVqlVq1ao0aNcnR0vHTpkngXEhMTEe4IIiIiIiIiIiIVy1wKJK/3EXou9lG/UAh/RRrY2dkhZwkPD8f077//7uzsXLhw4R07dvTt27d27dq+vr67d+++fft20aJFGzRoIM9zgejo6LVr116+fLlQoUIdOnRQtrZt27Zr165NmDBBvly/fv2TJ0/GjBmD6aCgILy8fv26m5tbmzZtmjdvji3jW+CtBQsW4Mv27t0bQc/+/ftPnDjx6tWrmjVrS6SpYgAAEABJREFUdu7cOW/evIKIiIiIiIiIsg3LPKMIeco///yDiZ49e2qck4KXkyZNwgTyC3nSSlogl3n27Fnp0qUxHRISgshm9erVHh4e+fLle/z48cyZM5GMdOzY0draevny5fv27ROqO0UvWrTo8OHDFSpUKFKkyJIlS2JiYuTWIiIinj9/rmw8NDQUeYpQBTHTp09/+PBhp06d8FlLly49efJkyZIlmzZtineLFy+OiQIFCmDdP//8s1GjRoMHD75//778FyAiIiIiIiKi7MOSTwVSfxIQpitWrCifu6zcewU5iDDd1q1b7927J1TBB1IV5BotW7aUbz169GjGjBmYg+m5c+fa2trOmzfPxsYG2crPP/+MpKN169b+/v4XL17s3bs3ZmKxKlWqzJkzx/AnHjt27OXLl9hC/vz58TIlJcXHx+err74qWLDgnj17sB15j5UjR444Ojo2aNDA2dm5aNGid+7ckY/+EkRERERERESUPVgyWBG6HgNkkacsu7m54W+hQoU6depUs2ZNBBlyvqurq0xV4P79+1WrVkWqIl/WqlULaUhAQMDjx4/xEm/J+ZUrV0b+YvjjsKnChQvLVAWGDh2qc7EaNWqsXr36888/r127dosWLZo0aSKIiIiIiIiIKDuxcLAiIUzx9fWtUKGCRVKVLl269OjRQ+dbSqqSmpoaGxurfouT3Llz4y9mRkdHi/+iGbC3t3d0dNS5tbi4ODmBtfQtow7bnDdv3rZt286dO3f06FGEPj179hRERERERERElG1Y5h4r75yVlVWpUqXkFUMSpm1sbDw9PYsVK4aXN27ckPMfPXoUFRUlp62trRGmJCcnC1U0c/XqVTkfm3r69GliYqJ86ePjs2vXLrm8XFLOv3v3blhY2MCBAxctWtS7d+89e/Yo0QwRERERERERZQeWCVaMfIiyefdYMVLz5s19fX2xJ0FBQYhCtm3b1qhRIzs7u5IlS+bJk2fz5s1nz55FdLJq1Sp7e3u5ioeHR2xs7L///hsQEID5CQkJcn69evWQnixZsiQwMPDy5cu///67vN+tm5tbgQIFLly4EBoaigzF399/2rRpiGBSUlJsbW0dHR15gxUiIiIiIiKibCWtlwJVrFhR3lTF8LU/yhOXLXJxkE4NGjRASrJr1y7sjKurK1KVQYMGYX6OHDm+/fbbRYsWzZ8/H/M7duyoPBWofv3658+fX7NmzZYtW5o2bdq6dWv5NOiiRYuOGTNm9erVX3zxBVKYxo0bd+3aVa7SpUuXjRs3Dhs2bPjw4Vjl3r17U6dOjYiIKFiwYN++fR0cHAQRERERERERZRtWymkaaaQ8DEhGJ5MnT5Y5ixKpVKpUqVu3bvLxQOkqKirK2dlZ++SR6OhoJycn7fnIWRCIKHe91VjF0dFR+63Q0FA3Nzd5ZZD8RBcXF0EZQEhIiLy9Dpw5c0bnMt7e3vgbGRkZFxfn7u4uiIiIiIiIiNSgw2h819JiN6+VeYqvr2/Pnj2V01Jk2qL+xOW3QF/GoTxLSAPSFqGHvlVy5cplzCcSERERERERUdZmyacCyTxFedayvKzmbUYqRERERERERERvk+UftyyvBkK2UlFFEBERERERERFlUZYPVqT0u0ktEREREREREVEGYZnHLRMRERERERERZUMMVoiIiIiIiIiIzMRghYiIiIiIiIjITAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhM6fVUICLSkJycnJCQkJSUhAlBREJYWVnZqjg4OAgLiY+PT1JJTU0VRNkeSxnRW2BjY4NSZm9vjwlhCWw0EmmweCmzOAYrRG9DXFxcYmKis7Ozm5sbfhQEEQmRkpKChmNMTExERESOHDns7OxEGqCIxcbGosbNmTMn/lpb85RMIpYyorcBCQhaetHR0Shijo6OIm3YaCTSZtlSlh5YVonSHQb30PosUKCAICI1KBeOKqgpw8LCMPqNrpowC7qO2Ii7u3vGrGuJ3hWWMqK3APGHiwpKGXJMJycnYS6sjq2x0UikwYKlLJ1wqIEofaEZamVlhZaoICI90E/LnTs3qknzznnGWlgXW2B/j0gfljKitwDtPXT/0PYTZsGKWJ2NRiID0ljK0g+DFaL0lZiYyAqS6I0wiu7q6hofHy9Mh7Wwrtnj8ETZBEsZ0VuAVh/afuYlmGw0EhkjLaUs/TBYIUpHsbGxzs7OgoiM4OLikpSUlJKSYtJaWB5rYV1BRG/CUkb0FqDtl5CQIEzERiOR8cwrZemKwQpROkJLlGdNExkP4+EoNSatguU5ik5kPJYyovSGtp+ppUyw0UhkCvNKWbpisEKUjpKTk3k7dyLj2dnZmTGWnsYHnRBlKyxlROkNbT8zLlJgo5HIeOaVsnTFYIWIiIiIiIiIyEwMVoiIiIiIiIiIzMRghYiIiIiIiIjITAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhMFr719C0V7fkffPCBICIiIiIiIiLKWiwZrPTs2bNSpUra82/evLlp06Z//vlHpE1sbGyOHDnEO5KcnCx3wMbGRhARERERERERWTBYQXSCv+PHj9f57uTJk2/dulWxYkVhuuDg4BUrVty+fTs6OjpXrlxVqlQZNGiQo6OjgVXu3r07YcKESZMmlS1bdtq0aZgzbtw4YTqEKfHx8U5OTpi+cuXK7NmzR48eXatWLUFEREREREREZMFgxdfXV6hOWjGwjBnByvPnz7///nvkKb169SpZsuSlS5cOHTr0008/ITdJ77NXoqKiEKP079+/fv36eFmwYMF27doVKFBAEBERERERERGpWCZYkaerIOzQt8CtW7eQvEyePFnfKS36rF271traeuzYsXnz5sVLZCvyJJTz5883btxYpKfExMSwsDDlZZEiRRCyCCIiIiIiIiKi/1gsWKlUqZLO29amRXh4OAKU7t27y1RFqlKlSpkyZa5cuSKDlSNHjhw/ftzf379cuXJt27b18vIysMGgoKCNGzdev349Z86c3t7eXbp0UeavX78e893c3Nq0adO8efPdu3dv3rwZby1YsADfrnfv3tgHTH/22WfFixdPTk7esGHDpUuXoqKiKleu/OGHH+bLlw8LHzx48OTJk59++um6devu3LlTtWrVrl27FixYEG/t37//xIkTr169qlmzZufOndW/ERERERERERFlUhYIVuTpKuK/q4EMkHexNf4JQQEBAfiLIENj/uTJk+XEoUOHli5dWr58+Y4dOx4+fHj27Nnjx48vXbq0zq0hBJk2bVpcXFz79u0DAwO3bNmSkpLSrVu36Ojo6dOnY4FOnTo9ffoUG7S3ty9ZsmTTpk337NmDT69fv36BAgViY2OxPwkJCampqYsXLz59+jTmI085cODAvXv3sEsuLi6RkZF+fn6//fZbxYoVixYtum/fPnzEyJEjnz9//ueffw4aNCh37tzyPr6YKYiIiIiIiIgok7NMsPKByhuXvHXr1qRJk4wPVoKDg4Xq5iY630XAsW7dupo1a44ZMwYvEZcMGzZs69at8qW2Y8eOIeBYsGBB/vz58dLKygq5CYIVzH/58uXPP/8s5yMK8fHx+eqrr/C5WACRjbzHyt27d+V2/P39T5482bdvX3wiXnp7e3/zzTdHjx6VL5G/tG3btmHDhnIa87HB27dvOzo6NmjQwNnZGYHLnTt3sPPYAUFEREREREREmVlagxV5+Y/xWYlJ8uTJI1T3ry1cuLD2uy9evIiKiqpRo4Z8aW1tXb169cuXL+vb2oMHD/B39+7d8uX169ejo6MRqdy/fx/bl6kKDB06VBh07949/FWeDVSsWLF8+fJhI8oCyHrkBDaLbCU5ORk7uXr16s8//7x27dotWrRo0qSJICIiIiIiIqLMz1pkYEWKFMHfx48fa8yfMmXKggULkFmI/8IXCdNxcXGpqak6tyaXj/yPvMYHC2O+4Yc3a4iJibGyssqVK5fG58ppGxsb7ccVubm5zZs3r2HDhleuXBk/fvw///wjiIiIiIiIiCjzy9DBiqura926dffu3RsUFKTMvHXr1o0bN7y8vIoVK2ZnZ6d+qsjdu3dLlCih7xKbUqVKWVtbDx48+DOVYcOG9e/fv0CBApj/9OnTxMREuZiPj8+uXbuE6hQYobrgSGM7pUuXxkx5/gvEx8f7+flhI0I/7FhYWNjAgQMXLVrUu3fvPXv2KEEMEREREREREWVeGTpYAcQQ+DtjxowDBw48fPhw8+bNCxcuLF68eL169WxtbRs3brx9+/azZ88iedmyZcv169ebN2+ub1NYxcHBYdmyZYhRAgMDJ06cuGHDBjkfQcmSJUsw8/Lly7///ntMTIxQnWaC2OXChQuhoaHqOQiCFU9Pz6VLlyIuCQgIQFYiN2LgW/j7+0+bNg2fm5KSgt12dHTkDVaIiIiIiIiIsgDLPG45/SDamD179ooVK9auXRsbG4uwo2rVqoMGDZKX2wwePBg5Bd6NiIjAkpgvn8GsU9GiRb/99tvVq1ePGTPGyckJ2xkwYICcjzmY/8UXX9jb22MLXbt2lat06dJl48aNw4YNGz58uHIPXTs7u3HjxiF/mTp1amJiIlKeb775xsPDw8C3aNq06b1797A89hPb6du3LyIeQURERERERESZnFVCQoJIm8mTJ3fr1q1ixYpvXHKTinl3GElNTUUqgWBF57tRUVEuLi7COAhoEKDY2NhozI+OjnZ0dNSeHxoais+VVwapS05Oxr+e9h1VDDBpP8kMISEhuXPnltNnzpzRuYy3t7dQ3W0nLi7O3d1dpKewsDCdt14mIp1QMBFYm3TfKxRk5N05c+YURGQEljKityAgIMDURiYbjUQmMaOUmQo1pvFdSwucsVKhQoVJkyZVqlTpjUvevHnT7OcHWVlZ6UtVwKS0Ql8U4uzsrHO++n1q1em8T61hTFWIiIiIiIiIshILBCsfqGzatOmNSxp5YgsREdE7h1F9jNILIiKiTCslJSUpKcne3l4QUXqy2D1WzD4VhYiMceDAgX379mnPb9iwYefOnfWtharU1tZQMT9//vzFixeHDh0qzDJlypQ+ffqUKFFCEGUVaIOiuN2+ffvly5cIVkqVKtW4cWNPT09j1kUhDQ8P7969uyCiN0EpW7ZsWbt27Qw8eSDTSU1NHTNmzA8//JCuJ6iHhIRMnz599uzZgkg/f3//7du3P3v2DNO5c+f29vZGo1FkDCj7efPmNdCCtSBU61Yqgig9ZfSb1xKR1KpVq5YtWwrVKPq4cePQaDNwcZx07Nix0NDQt1NpEWUZ27ZtCwgI6NSpU7FixaKioq5evbp8+fKRI0fmz59fEJHlXL58uXr16pcuXcpKwQpRBoHgcuXKle+//37//v1z5Mhx48YNjBlER0e/9957IgNAs/btnESDIUaMAn7zzTdOTk6CKD1l9MctE5HC6j/q0wYC+MjISAydCSIy2sWLF69fvz5gwIDixYtbW1u7uro2ati/PysAABAASURBVNSofv36yFZYmogsCIMEvr6+iP7R03v+/LkgIstBhbVr166mTZuiCkNFZmdnhxATIcvRo0fT/twSi/D09CxUqJBIf/inwBiJIEp/PGOFKNPz8/M7cuTIw4cPixQp4u3tXaVKFdQis2fPfvnyJd69d+9eqVKlunXrFhwcfOzYsZs3b+bNm7devXqoYnVuLSUlZc+ePehbOjo61q5dWzlr1MfHB+OK2Ca236xZM+3zZc6fP3/u3LmgoCB8HCrvPHnyCNVDtfbt24dhk6JFi2JT5cuXF0QZGI5VxCgaTz/BwBqKGEoQyg5KR8GCBQMCAhDBDB8+PF++fCdPnsTBj6ZqjRo11NeKiIjAwnfv3nVxcUFRQusWM8PDw1evXt2pU6fdu3ejEPXu3fucCmJQlKzWrVs7ODgIomwAlRHiS2dnZxz5qFxQa2AmEkzUYsr9+M6ePYtKp2PHjqiY/v33X6yCgoZ3O3ToYGtrq12aHjx4cPr0afzVuILvxIkTFy5ckIU0V65cr169atOmjdBTSNVpV69CVynGBrF7+NxixYqhFKtvQWfN+Pvvv2MHsFdPnz4dO3asXPLAgQP4msrZBPiR2bp1K35kMN5++PDhGzduJCcnY/9R/2o8v/Lnn38eOHCg8twK1P5DhgyRdbTOT6fs4PHjx/j/jspLfSbKTuHChfFW2bJlcbDt378fx1VcXFyFChXatWsnn8iBEoG8IyYmBkcO0k8c9ihKqBlR03388cdyOzgUf/311379+uGIwtZwfOIvtoyDs1y5clgAm0VxQKnBW1i9Tp062g1LzHF3d0eFKwwWtD59+mDJ+/fvlylTpkWLFqh/la+jXRK1G7rYbWRJWHjmzJn4tenfvz+2wHJB6YRnrBBlbmjPrVy5EvXNl19+ifoJ7TC0Ea2srHr06IE2K6ooTMjGIsYuMB/tLSy2cePG+Ph4nRtEzefv7//JJ5906dIF9RymMRPDiWg1YugD80NCQtBy1Vjr8uXLWKBly5affvop2nwrVqyQ28cWUFVj32rWrLl+/XpU0oIoA0M/B6VGYyYOaTTFZFlATwzHPxbr2rUrGoXoraHhiK4UmmsIR65cuSJXQRcOXUR7e/thw4Y1aNAATT1Ek0LVHkVHcefOnSVKlEAbEVtDwUFZQ8lCKdP3JD+irAdhisz38Rc1iDwjDMEEypSyDDo/JUuWxASqtkePHqHj9OGHH6IkogoTWqUJAcTff/+N2nDEiBFIPDFfbgRFDz0rBBndu3dHycU2Ue6E/kKq0Fm9an8utoPFUNOheq1bty76eMoW9NWM2PLevXvt7OzU78dUunRpBEno7ir/PhiQQK2NHUaHE1/8gw8+QJ6L/qrGvyT6h9gl5SX2Tb7U9+mUHeAwKFCggEYGh8Np1KhRSFUwvWPHDqQVPXv2xHGLAwMJhTz2UDpOnTqFpAOHHEoN8j6UOBRDFMAXL17I7aAgYGHkEfgUHPwYM/vss8/Q5ly3bp08+yw2NhYHLcoU2p9Ic3Q2LPFB0dHRwmBBw9Y2bNhQqVIlrIufCPXCJbRKotDV0PXy8kIzGG/1UEH+yHJB6YfBClHmhvYiWqJoFGIUrnLlykjo5T1uMVJXXAUT+fPnR/Xj4eGBUT5UtFWrVkXXUdZb2tDuRB8SYT/WxSCYtfXrXwlUfr169ULdiXEMVJO3bt3SWAsfipEKLIAhCwwvYKwDFbbcGio8jCSg6YxKGnWtIMqo0FJEC08Z+FUnW5ByGkNzQ4cORXFDv+jQoUM48tHsQ9FAk1E53xjjdWFhYZiDDh76WmjzYdxMvoVSUKtWLTRYURgxKJ0zZ050n1BI0cXCHEGUDaCOQD9NnpkizytBscJfFA1fX1/Zz8Hgc2hoKMbSMS6NzBFRJmou9AnRFUS+IGsT9dKExTCBShCFDiXu2bNnstuG6BOFFNtBZTRo0CCUcbkPBgqppK961fhcDI+ji4jdw48AvhGWVLagr2YUqj4hvggGzJWFUeci5ZELoA+JlBZj+5h2cHBA7Yk9QecW1bd2/auPgU+nLA9lBw05fe/iiMXRjoNW1j44wFAe7927J98NDAzEwYlGI443HD/Xrl3DkYlpRBJyAeXgRHSC4xYpBj4LxQHhoJJOogAOGDDA29vb1dVVZ8NSYaCgIbXExtGARNnH9u/cuaMRgqiXRJ0NXYx/4EOFqnzhpwZfhOWC0g8vBSLK3BD8yxMpJbQdMRqA/qFGvYVUvnnz5mhEXr16FX051KCodXRusEaNGgsXLkSLtmbNmlhGbgeVJdp5aM9hCALDaHK4T4GKDU1VjG/IVqxQ3d4FdSp6m6gg165di7oQW+PT1imDkzdVwfCv+snGEmbKUT6QZykLVZsPRz7G2eRLDJThmJfTKJgoDvv375cvEcqg3CmjysqmsC42MnfuXPTr0DpE+RVE2QDqEVQcSj8tLi7u+PHjCD7Qs0LnB+PbKA7y1raovNArwzKovNDBE6rQQaiulMHCQq005VFB0UM0g3cTExNRVdna2qI6k5cnSKiJ5Bb0FVJlkF9f9SpfKp+LtVBFKvc7Uz7LQM0oVOfpaPybYAvyW2PLWMvJyQkdP8xHDxadyfPnzz958gQBk3pwY4DhT6csD4ECCoK+d3FsY8RLHmCAQQIcw5gpj95q1aopbUiMNMhDCMfhP//807ZtW3l3JOQXmIlIAi+VHATHm/IwLGdnZyXZ0dmwVN8ZAwVNqWFR3jETZUHjglmlJBrT0GW5oHTFM1aIMje0R9Wf6YhptAuTkpK0l9y6detvv/2GQQwMkRm4YRje+vbbbzGCt3v37vnz54eEhAjVyMOMGTMwvoGmXqNGjTRu5C5vhIb2a+J/mjZtKq+nqFOnzsiRI7HAihUrlBNNiTIsjN2hQaYxEwUKI3jK6SRK8UHpQw9N/YYsaErKCTmqppQItAhRKOTxj+6T7BAKVUNw9OjR6E1duHBh5syZ+s4jI8piEBPg77X/oKOFMEUmj+i/yUvqlFFxFDShKoayNGECpUmWNfXShIoGddyGDRtQ0JTYAsujkKr3xFBVyQkDhVQyUL2qfy66auo/AqglZchioGYEpU+rDt/3xo0b+AjEK/K7g/xxQA8WP0H6bo6mwB7K2Mjwp1OWh1bcixcv1K8Rk5YsWYJYROPYBuQsyskgGGDQ3iByTxzYSPewesmSJV1cXISqECGUUY4xBBlK8KfeztTZsFQYLmjyzi/6qJdEYURDl+WC0hXPWCHK3Dw8PJB6KENkGNlDz1D7CXYYKECE//3336MKFKpLr/VtEK23okWLdurUCcMRaKGePXu2Xbt2GEv09vZG9YMFMAigNEwl1MdoVmLQQGnzoUZEQxk11sOHD7Fv8mTLxYsXY+PK2AJRBtSgQQMc9nXr1lVv5+3duxddGnk6sTq0PtGJwlGtDIvdu3cPxUeoCiYO/vbt28v56OqgUMjSpw4hDrp8TVXOnTuHcT8WEMryMKSMnhXCevWqBNnBnTt3KlasWKVKle3bt6NYIXaU6QNKE/42btxY6e+hcsG66D6pbxZBDPpgiPKFKl+QG0f3D9UTtqzkFJiW9215YyE1snpF/039vmPYcxlt6KsZhX742cEPyK1btxCvfPXVV3Kv9u/fP2jQIPmPgC4odkljLfQtZfYkVD8pcsKMT6esBDlI3rx5Dx48qP5wZWT3Dx486N+/f0REhIxdlPOzcFw1a9bM8DblGVXh4eFKaSpdujSqMKUQaec4ks6GpfKukQXtjQw3dM0ulUTG45FElLmhnjt69Ki8W1hkZOTOnTvr1Kkj30JrD3WVrEvQDFVOVH78+LFyJa22mzdvoneHtVDToJGqsTpGJ+S7Gmuhlj1x4oRs8OHvnDlzkKSgbsPohDx5G5vCBnnGCmVwXl5eaP+tWrUKrU+0EdEDPHLkyKlTpzp27Kjz0eYYnTt58iQKIBpnZ86cUXp6FSpUQFcHhQJlB9tZv379sWPHtFdH9/Lvv/+WN3XGCDyf6EzZATo8lSpV0gjoq1WrdunSJaG6KgHFEGVQ6bxhoBux5p49e9CjE6o72v7555/am5X1FAoRKhoUPeXMTWwHpRhRBVZHlaT0/d5YSA1Ur+rQScMPBbIVfCIWxu4pvxU6a0ZhED5048aN6GrKU3Jk3CM3iM6wfL6JhoIFC6I/iSVjY2OVK5vM+3TKMtDiQrWFIx81FI6chIQElLsdO3Y0atTI0dERZQqp5bZt2+QpTlgmOjpauehGHxycPj4+fn5+ylWrNWvWRA6IdiM2gqPrl19+wbvaK+psWKpv1piC9kb6Grr4ScmTJ4+SSLJcUPrhGStEmVv58uVRd65evVqe8IyR9iZNmsi30HI9f/78Tz/9hCqwR48eGAacNm2afL6Jt7e3vooEQxabN2+eOnUqlsToWZ8+feRMDDKgKsJ069atMcqnPtABbdu2RYW9ZMkSVGAYVOzevbs8TRQDFP/++y/asmjpYpCQj1umjO/jjz9G52Tt2rUoIyhT6OF89tlnOs/bhy5duvzzzz8LFizAqJ2npydKirw1JsoOtoOidODAAbRiceTLZxZoQCHFEOLs2bNRmlB25FXrRFmb8nBldQhW0CuTN1BAtwr9N2VIGZ2lwYMHr1u3DiUFvTJUYb169dIOOtE9u379+qRJk/AW+ntFihSR1RyqJ1RA6K2hU1e1atUaNWrIm0y/sZAaqF7VoY/at2/f7du3I/pxcnJCKZY34hX6a0YDUFPjmyqhEvYZG1m5ciW+FMbwW7ZsqX3jDOwkcij8i+EjUOcqPVszPp2yknLlyo0cORLpya5du4TqgEfbTx7DOJw++ugjVF6TJ0/GdN68eYcMGYKj1/AGsYX8+fOjTlRO8ZDPacZhtmnTJpTNhg0bytPBNOhsWCqMLGhvhF8GfQ3d5s2bIzlFmDtgwACWC0o/VvJiM6KsAcO/yhM99D24FD+1QhWKa19ianEYxdLXH7M41B86K0V8TdSa8grzZBVjTrDEEBmqN40rFzAaZvhiV6yCj9NeBjPxoTzZkt4IBRNNK3RyjF8FRxcOVPV7HFgKyhQKjsbjKnXSWV6U3cNGdJ7totBXcIjSQ4YqZSYxUNAU8qYP6tUNsk7U9coJMosWLSpbtiwSCmWBNxZSfdWrBn1VpEUK+BvrX307yZ+XdyUgIMDURmY6NRrR8EN3T+cxIO9monE7WDO88fgURpRfIwuaYfoauvhoJKrIUGRJZ7nIGswoZaZCjWl815JnrBBlEfpqI/XWs42KMILGSdrSG2sgfbcZM6kFT5RBGN/C01leJGMO/jfen4+IhMGCptDuIl68eDEoKKh9+/YojNeuXXv69CnGqNUXeGMhNfKnQF8ptkgBf+MW9O0kf14IDT99x4DxzULDjDnG3lh+056qCP3fCAVBPRpmuaD0wGCFiIiIiLKmli1b7tu3b8WKFSEhIQUKFBg8eLDyFFgiIiJLYbBCRERERFkThq8PFZo0AAAQAElEQVTbqQgiIqJ0w1seEBERERERERGZicEKEREREREREZGZGKwQEREREREREZmJwQoRERERERERkZkYrBARERERERERmckCTwW6pWL88h988IEgIiIiIiIiIsr80hqsbNq0ydfX1/jlb968KZitEBEREREREVGWkNZgBalKhQoVjA9KTA1i+vfv//777/fo0UOkv+Tk5Pj4eCcnJ0FEREREREREZAQLXAqEoARxifELI4gRGU9UVNTo0aOR49SvX18QERERERERERkhrcFKt27dNm/ejGClUqVKb1z45s2bWKxixYoi40lMTAwLCxNEREREREREREZLa7CClETeuXb8+PFvXHjy5MkVKlQwL1g5ePDgyZMnP/3003Xr1t25c6dq1apdu3bNnz//jz/+WKVKlQ8//FAuhnefPHny7bffIihZv3795cuX4+LisHDfvn3lNT5jxozp0qVLSEjIsWPH8LJ169atWrXavXs34iG8XLBgAUKi3r1716pVy9fXF/Nv375dtGjRBg0aYDEs8PjxYywzZMiQPXv2BAcHt2nTZuvWrd9//32ePHnwblBQ0PTp0/v371+tWjVBRERERERERFmdBR63jKBE3pJWcUuN+nyNxUwSGRnp5+f322+/FShQoEWLFhcvXkQCYm1t7enpefjw4dTUVCyTkpJy5MiRkiVL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FjMfP368YMGCIUOG7NmzJzg4eOrUqdeuXdu3b9+9e/fKly/frl07/BVERERERERERLpY+OJYeVqKgQUQrwijPXnyJDExsUSJEhrzMSc1NfXRo0eYDggI2Lt377Fjx6pXr25nZ7dz584NGzY4OzvXrl17+/btys7IS4qQqrRv3x5ZCcKXzZs3C9Ud8rGFNWvWYGs1atRISUn5448/cufOPWLECETFCxcu5Al4RERERERERKSPBc5YkVmJvD2t+p1rJfUb2QoTIfLA3/z582vML1CgAP4+e/ZMbvP+/furV6+2t7fHNMIUJCzffvstptu0afPJJ58gZME0kpfnz58vWLBAbs3KymrPnj3dunWTG0xKSsJbmBkYGBgcHFy3bl0vL69y5cqdOXMmMjKSN3MhIiIiIiIiIp0sfKNp7dvTpuVZy3ny5MFfBCJFihRRny8Dl9y5c8uX9erVk6kKMpGoqKgqVarI+Tlz5ixbtmxCQgKmHzx4gL+7d++Wb12/fj06Ovrly5fyZfPmzZGqCFVkU7p06enTpyOdadiwocbFRERERERERERE6ixwKdCtW7cqVapkzJJYzKRLgZCnIO+Ql/yokymJh4eHfOnp6SknkJXgr5ubm7IkshU5ERsbi7+R/ylevHj9+vWVu9njpbLKjz/+2KtXr8DAwF9++eWnn35KSUkRRERERERERES6ZOhHo8u7zO7Zs6dhw4aFChWSM4OCgnbs2FG9enXtS4QKFy5sY2Nz48YNhCZ4iUzE19dXLlaqVKmrV68OHjxYXhmUmJiIFMbd3T08PFx9C8+fP3/16lV7lbt37yJkQRLk5eUliIiIiIiIiIi0WObmtRUqVDByScO3ttXWu3dvOzu7mTNn7tu379GjR/g7ffr05OTkPn36aC9sa2uLwOXs2bO7du168ODBokWLlPNN6tWr5+DgsGzZsqdPnwYGBk6cOHHDhg3aW8Dy2L6Pjw8+wtra2srKytHRURARERERERER6WKBM1aQlRgZrGAxU4OVvHnzzpo1a+XKlchBoqOjc+TIUbFixe+//17efkXbiBEjfv311/Xr1yMWqV27dqNGje7du4f5RYsW/fbbb1evXj1mzBgnJ6eqVasOGDBAe/UiRYr06tULq8+fP9/V1bVt27alS5cWRERERERERES6WMl7u6bF5MmTkZho37ZW261btzZv3jx+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cmpsnzt3rhkPJbWgoCArVUxjntqXyWidClMUneijjx8/XrVq1RQrKV68eKu/NWzY0J6vLT958qRymWuvvbZJkyZmZua3DchlU6dOVYBy1113ffnll48++uiNN944atSoWbNmaR++77779u3bZ+UnFy5c+PPPP50PMvo3+fTTT1MfAQAAAICcs2HDhquuuqp9+/bNmzdXO9/kyZNT35UlPVoyOjo642VWr16thv/WrVvrU1Q/1cdZrjp9+rR9zYFrtm7d2rhxY/eu0wdkK1gxPW6c/xGPHTv23XffaU4BB3MfH0ORR6FChRS4RERELF++XOGLIgzlF23bttWeZF9+koIykeDgYK3QTjc0cfjwYa3ceXSJKlWqaA9WVKaMsEKFCilWUsmJcy+hPn36lCpVSmuzM5osbRuQy3799dcaNWqMGDHCeWb58uVfe+21ixcvLlmyxHKMM6LARcnL7NmztYePHz/ectyTa+TIkV27dlUo8+2336ZY7Y4dO55//vkuXbr07Nnz5ZdftrvyLVu2TKvatGnTG2+8oVcXL16sLOO999674447FFFrhTqqpt7I3bt3awu7devWo0ePF198cf/+/Zp56NAhreqdd96xF4uKirr55psnTJhgOX7U06ZNu+eee3S2ePDBB3W2MMuk+bcYL7zwgl7ShJImTTz00EOa1rZp2vQKNNMKYfWP0717d/3h+tfTfJ2TBg8e3LFjR813PkCl948AAAAAXFENh/r166uIGxQU5N6gYf369ddcc41WXq9evVatWqm8beWRuLg41Tuc+6zAyFZXIKUSdevWVeVKjcYVK1Y8d+6cKifFihUzLca1atXatWvXli1blHQcPXpUwYdJtsqVK6fITU3N2jMKFix45MgRPz+/9K7e10vadZY71K5dW0/37t2r6pCyOufxKfUR2n03b96sQMRcLOPspIPzZpsJveXqq6/+/fff//jjD9U5teVZ2jYgN8XExOgHpWp/6r5pjRo10s9B0fWgQYMUC2qxVatWzZ8/X7u6wkS98ZFHHtEPR4djJZWvv/56gwYN7PcePHhQQYP29ltuuWXnzp2ff/75tm3bPvnkE81RjKJVffbZZz/++KN+zkWLFlUYMWvWrCFDhmg9CjuUvCincB6pWqcQbYMOuL169dJhYc6cOYsWLZo5c6Z+mEpPNKEtMdu/cOFCHS6GDRum6bFjx06fPv26664bMGCAktmnnnrq7bffVhqS+m+xP0grbNiwoX6tmtaEfrma0JFBy+td9vTo0aPDw8OVkOrj9FlqEBgzZoxSFf05H330kf5lFP1k/I9gAQAAAFmhaualS5dUKP3hhx/MReUqr6p4rGLwgQMHVP1UNqGide/evU0h1tBMlULDwsJatmy5YMECVbRr1qxpXnr44YfNhErUqlmrJOz8cVqnWhD19kKFCqmyoFqzCr3vv/9+aGjoihUr7r333uDgYJWxVR8vWbJktWrVzLvS3DyVkOu97mEAABAASURBVJs1a6YCfPv27fXpWq0K9qoOq41T5X/L0RhpuoCcOXMm9Tqjo6NV/lcsoLpJ586dQ0JCpk6dqj+zSpUqluNSF7W5msZR35OtYEX0rWufUFVEtRftQIpXtCuYyENfpKkX6SVVvfQFqPpnOfYzfU+q5q1cuVI7nNrbO3TooJ0gvY9QTKNvRc3mqsVZjmtYlIY4V7FEYYrmqFU8zV4A+tZVrbKfXnvttfa0djKt3DlbydK2AblGVX39oJwzEZvq/zrwKVi05/z222/jx4+/4YYb9GOcMmWKUu3nnntO2YFeevDBB3v06GEv+X//93+RkZHa//Xj1VMdH4cPH64D4p133mkWUKryzTffmLtuKYbQT96kIV26dHnrrbf06zYvGSNGjDh16pQyF/Njv/XWW/v3768sQ9vQt2/fV199VXG76X6pLdSJRBmHwhGlKvo4hSCa/9hjj2mzR40apWAl9d9if9BDDz2k1gD9eO+///5nn33WSkdERIT+Ih0fdARQpqMlv/76a50tLMcFazpVaIO12iv+IwAAAADpUc1RNWKVKhVDqP6rp2rG+/777/XSE088oTTkq6++UmW2U6dOajJUKbR06dJr1qxR6qECrVmDEoqPP/64W7du5m62aqFMPR6FshIFEyr2qzpsz1QhVmVpFYkrV66sou+HH36o4rRqtVpS0cwzzzxToEABlaVVbG7durUK6h988IG53CHNzYuKilq3bt0DDzygSveMGTNUVq9fv74K/Nu3b1dTpeUIR1Rr1sS0adNSr1MNvU0dVAH/9NNPFazoz1myZIlqBHp16dKlim8sH5XdYEWxVgOH+Ph4M+TKf1cdGGiGNdHulaLht7yDvkLtMSlujKp3pa7MVHRQrVJvcW4e10rshds5mOnG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RQQrAAAAAAAALiJYAQAAAAAAcFF+CVYSExOjo6P1aGWbG1cFAAAAAAC8mqcHKwMHDhw8eHBkZKQ9Z9euXf369du/f7+VFRs3brz//vs3bNhguUQxysWLF92yKgAAAAAA4DPccFeg8PDw0aNHZ3LhkSNHNmrUyMqKmJiYb7755oEHHrCyoWLFir169apQoYKVddHR0f/4xz8U8bRv3z6bqwIAAAAAAL7EDcGKghLFJZlf2MqikJCQP/74o2fPntWqVbNcVaVKFSUjlksSEhKcL5nJzqoAAAAAAIAvcUOwYrkUl2ReixYtgoKCPv/88+HDh6d4KT4+/scff1y3bl1UVFT79u179ep14cKF119//e67727ZsqVZZsyYMYpmwsLCJk2a9MQTT9SsWTM5OXnWrFkrV6709/fv1q1bTEzM/v37n3nmGS188uTJX375Ze3atSVKlNAKr7/+ej3VwnpJb//2228HDBhQtmxZe1War9BnyZIlhw8fbtCggZYPDQ3VzAULFixbtuyhhx768ssvd+7c2axZs1tvvbVixYoWAAAAAADwId4xeK2Cks2bN2/cuDHF/Pnz5//666+dOnXq3btH25bNAAAQAElEQVS3Ag7FGZUrV1ZuolDDLHDw4MFt27YpWFEEExERoUfNnDNnjiKS0qVLd+zYUbmJchnlKWb5Tz75JDw8/Pbbb2/SpMn06dN37NhRu3btLl266CXFKJqoUKGC86p+//33qVOn6hNvuummI0eOjB8/fs+ePZqvoEcf/fbbb2v57t276yP0iRYAAAAAAPAt7hljxVzTcUUKOG677TYr66pXr961a9cvvviiadOmzvMLFSr0+OOPN2vWTNPKNf7888++fft27txZ0UlCQkJQUJDmlClTplGjRrt37zZvUQjy448/tmzZ8p///Kee9ujRY8iQIVq/5ejyU7du3QEDBlSpUkVPVzvce++9FStWVP6i6MSMsbJr1y57VV9++WWrVq2effZZPVW488gjj8yePds8jYmJuf7665XdmOlFixYlJSX5+3N/awAAAAAAfId7ugIpMbFy2B133PHUU08tXLjQhCBGt27doqOj586du3fv3iVLlihn0cxOnTp99dVXmzZtCgsLW7Vq1dVXX+3n52e/5dSpUxcvXmzevLl5qrdo4y9cuKBpBTF9+vQ5fvy4cqKDBw8qqcm4886x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IlgBAAAAAABwEcEKAAAAAACAiwhWAAAAAAAAXESwAgAAAAAA4CKCFQAAAFgAAMA1gRYAAAAAAPAVUVFReixWrJiFXMEVK4DX6N27d4O/hYSEXHfddc8888yRI0esPJKQkGDlgLvuuqtz584WAAAAgLT89ddfqhFMnz49xfznn3++R48emrj33nvvueceKyc1btz4vffe04QeNW3lb1yxAniT0qVLDxs2TBOXLl3aunXrokWLbrvttq+++qp69epW7ho9evTu3bs/++wzCwAAAEAuqlq1arNmzebOnTtw4EB7ZmJi4oIFCwYMGKDpG2+8MSkpyUJuIVgBvEmRIkVuv/12++mKFSsGDx78/fffP/7441buWrp0acmSJS0AAAAAue6GG2549dVXT548Wa5cOTNn1apV586d03xNq45gIRfRFQjwYlWqVNHj+fPnzVNF1EOHDm3btm2/fv2mTp3qnFJv3759+PDhHTp06NWr1+uvv64828xPTk6eNm3aPffc07p16wcffFCxt/0Wrer555//66+/XnjhhY4dO3bt2vWLL77Q/C+//FIR+KFDhzZv3nyjw+nTp523SuucPn36oEGDtM4hQ4Zoeful9957T8ufOHHiueee06sXLlzQzD///POJJ57QtikeWr16dYq/Mb0/ymzehg0b7r//fr2kOQcPHtTZ5dprr+3du/ebb76pT7EAAAAAX3T99dfrcd68efac3377rX79+vXq1bMcfYLEzD9y5Mi//vUvledvuummd99918x85JFHXnvtNTNtivdxcXGaVlKjNa9du9ZebWxs7DvvvHPrrbd27979jTfeSFHyh0GwAngrHdSmTJmiiTZt2liOo6qCCR0KlZLosKhk4d///rdZUiHIfffdt3Dhwi5dupQvX15JypNPPmleGjt2rBYrVarUgAEDFL489dRTv//+u3lJOcWuXbuUX+jt7dq1U3zz8ssvHz9+XKF4w4YNzTINHYKCgpw3TMHNK6+8om247bbboqKiXnzxRbOdorBD69Qnzpkzp3r16v7+/rt3737ooYdWrFjRuXNnPR02bJidE2X8R2nz9u7d+49//GPNmjW1a9fWHAVDOp3ceeedOujPnDnTXhIAAADwMSrVh4WFqfRrnqrddP78+eZyFTnmoIlz586ppXPlypV6bNWqlYIVpSSWozORljcLayUqopswZf369Sr8h4SE2B+kcvUnn3xyyy23DB48+JtvvtFTC6nQFQjwJocPH27QoEHZsmVLliy5b9++pKQkxr65OQAAEABJREFUhcfdunVT6PDss8/WqVNHeXNAQMBjjz323HPPffzxx/369atZs+bIkSMvXrz47bffmgBbwccHH3ywZ8+eM2fOTJ8+XUnE6NGjNV/v0rF41KhRCibMx23ZskXJxQMPPKBpBS6PPvroL7/8okPqNddcs3HjRm3D+PHjU2yhjsUffvih1qAwxc/PT1uot0+aNEkbaR+g9+/fr7WZy23GjBkTExPz3XffmSGvZs2apXC9YsWKms74j9IC2oaBAwc+8cQTxYoV0znjwIEDSmHuv/9+vaTP+vXXXy9cuFCkSBELAAAA8Dkqur/00kunTp1S7WD16tVnz561gxXb7NmzVfZesGBBtWrV9FQNmSpOq1TfsWNHVQT0XpWW161bpyrG0qVLO3TooOmWLVs6F6E1rdZNLa9ptWvOnTtXLa8W/hfBCuB9dASsUKGCEoQWLVp07dpV+cXmzZtjY2OrV69+8OBBs4wZzlbJiI6hCiB0lDSpiuXoRNOlSxfFIjrC6qmSC2U05iWFHStWrDhx4oQicDPn3nvvNRPmuhgdTDPeNhN133zzzdoqy3Hs7t2797JlyzZs2GAHKzfeeKNJVZKTk7dt26YttAcSv+6660aMGGGmw8PD0/ujTLBiObqPmtvIlShRolGjRp9//nlwcHCPHj16OlgAAACAj1LJWe2j8+fP79+/v/KOpk2bmvTEmaoJevzkk0/MUxX1z58/r8Zale0LFCigGCUoKKhy5coqVKtxVK2YKrSrDdV5DbfffrveomK2CuFz5swpWrSohVQIVgBvomPlK6+8MmTIkIsXLyryUDht5u/YscNyXFRid+QxlIMcOHAgJiamVq1a9sxChQqFhYXZ7xo7dmyKT9mzZ48JVvQuHXDNzMDATB0ulIbosV27dvac9u3bW45BXuw51157rZk4evRodHS0Tgn2SzpSK2Qxw6Nk8EeZicoO9vwXX3xRp5bxDldfffULL7xg5y8AAACAjylVqpRK2qYvvOKVBx98MPUyKmzrMTIy0jxt5KDWTVMjWL9+fUJCglpqVXh+/vnnVXFQYf6ll15yXsOXX37573//u0mTJq1atVKz7u7duy2kQrACeJm2bdsqOBg2bJhyZSXHJUqUsP4exbZXr16DBg1yXrhixYrFihXz9/c/efJk6lWZdymP0OHVeX6dOnXMRCbDFGdVq1a1HOO/FC9e3Mw5deqUPd8oXLiwmShdunRAQIB9QYrl6B2qA7pZIIM/ykyk6ObTrFmzb7/9VjH84sWLZ82apeR+2bJlWr8FAAAA+KLevXsrEJk3b96ZM2fMcLYpKBBRkXjUqFGmcB4XFxcVFWVaZzt27KhQRpnLmDFjypQpExoa+s4776hy4TzAigrnmvnII4+Y1Obs2bMEK2li8FrA++igqQPorl277rvvPh0ZLUemYDluD9Tsbzom7t27V1G0Qoq6deuuXr364sWL5u3Ks7t06aI55l1ag/2u+Pj4v/76KzMX+CnUsFforHnz5pZjBCx7jpk2n5VCcHBwzZo1N2zYYKJ0y9HNxx68NoM/KvWqVq1aNXz48IiIiA4dOugf54033tDZxXk8cwAAAMDHXHPNNWpHfOaZZ8LCwuy+/M569uypwrOCFQUias686667Jk6caF7q1KnT5s2bVWY2F7OrgvD999+rLG169BsJCQmxsbHHjx9X/rJ06dIvv/wyOTnZQioEK4BXuueeexQbb9269YEHHoiJiVHiYIb7njx58rZt2xRaDxo0aMGCBSaZfuqpp06cOPHYY48tXLhQR8OXX345MDCwVatWV199devWrT/88MPZs2dv3779iy++0LvMBSZX1Llz5z179ugta9as0dHWnq91XnXVVdqMKVOmLF++XAfuDz74QIdpfVCa67n33nsVhN96661a1aRJk4YOHWqfEjL+o1JQ7q4zwciRI9etW7dv375ff/1VM9NcEgAAAPANahBVsfzSpUu9e/dOc4F69epNnTpVkcpNN9102223Va9e/YUXXjAv1a9fXwXvjh07mqvUVWK3HGmL89vVDqqqhBpKVcKfMGHCs88+q6qHuTEznPmpgdrKGd86aELfn+nKZQE5TIFr6dKlzbQq5GkuY4b/iIqKUhxQsmRJKycp2XUeBCSbdLjUNpsRZ43hw4d/9913Osy9//77BQsWVADxww8/HDp0SP8IOkTqoGn/gT///LMCjh07dijSbtu27auvvmryiwsXLijAXrZs2dmzZ2vUqHH99dfr0GlSanN0/umnn8wadAxt3rz57bffrlzGctzteMyYMatWrVKMrfTaOSC/ePHiiy++qHWePn26XLlyOtYr79Dm6aXRo0crQNG7SpUqZS+vY/2MGTOOHTumf6v7779fbwwPD1+8eLF5Nb0/KsXmWY7RWGbOnKmgR8f6kJAQhTV33323BQAAAOR70dHRhQoVcq2bfHJyst5ubhnhISIiInK6KqcKo121vOKSORusqA3cdNDS9G0OlldRQ7oqky7vf8h9vh2sZJLiDMUW/v7+aW6P9meTcTjTsVLvsofCzTwdYRWjpHnZoeUYXSXz68x44Qz+qBR0TNM3y7UqAAAAgK/ytGDFzYPXmhuC6NHOUOwJ++oVK+sUcNx1112amDBhQqVKlSxXmbufPP/881aGn6XmbjN25saNG8ePH/+Pf/zD9DoDvEKZMmXSeym9o4+fn58LqYrluPgwgwFZsrTOjBfO4I9KoYCDBQAAAAC5wp1jrIwZM2b06NGzZs1ShmISFpvylJEjR6aen0nbtm0LCAhQS/vy5cutnKTm96FDhypPMU8rVqzYq1evChUqWAAAAAAAAKm4J1hRXNKvXz9NKD0ZMWJEmss0atSocePGil2srFuxYkWzZs26deumCSsnJSQk2Lf4thx3ex04cGC1atUsAAAAAACAVNzTFUhxSWaGUOnbt68LwYrCjtWrV997772VKlX6+eefDxw4ULNmTfPSe++9V6RIkdDQ0B9//PHo0aOdO3e+5ZZbgoOD9dKOHTsWLFiwZcuWunXrKpFp1aqVvcKkpKQXX3yxYcOGAwYMMHM+++wzvd3OfSZNmvTtt9/q1bJly2r6iSeeMJ84f/78xYsXnzhxQu+97777TK+KzZs3z507d/fu3ZrZq1cvPVoAAAAAACB/cMMVK8ogtm3bljpVadSokeb3czJ69GjNsbJo06ZNcXFxSkbq1atXqlQp54tWzpw5o+hkxowZTZo0admy5Zw5c8yr8fHxEydO1LsUxwQEBCgccR6j19/fv3bt2opdFNlYjuBm4cKF9evX10xziynFKJqoUKGC3hUREWHeq+WnTZuml26++ebDhw+/9NJLycnJymimTp1aunTpoUOH6oOmTJmSmJhoAQAAAACA/MENV6xs3749zWtVFKyMHDnSyjZlJcpNzACZV111lZ7279/f3A5WDh06NHny5HLlyml6z549a9as6dat2+nTp6+77rpevXoVLFiwcePGDz300ObNm50HoO3atetvv/22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c4yip/Z4K5lx8eLFTZs2dezYsaCTTp06RUZGKsoxy+i7nzx58q5du+bOnbtw4UJ9RLFi/xmBbNmyZb/++qsilbffflt1jDZt2mhhzXznnXfOnj2rBbRLUXmA13lsatLj719uzVsWnlx5UOIlp6LIpgPJNe5P/HThf65oPn/RenpaUpMnEus8lHj7a4mLt/7Plc5arPzAxN1H/zNzxY7kO/6dWPehxJZPJ46ckXSBa1ddNXHixK+//trKtnPnzj388MM6BpqnOhHq2PWgwyuvvOLcIzKF+Ph4HRXvueeeBx54QAvrwJhiAR0AFX8rnh48ePCTTz6peNp+adasWQ843HfffbNnz07vI3Rw7tu374gRI1LM/+c//6n5x44dSzFfq9V8PVrIO0uWLBkzZsygQYPuvfdetS6o3cJyN19tc0ZuSrbyplNOXn0uALjmu+++a9CgwfTp083TPXv23HnnnS1atGjZsmWfPn3syrJNleWePXu2dHjkkUdOnz5tv/Tee+916NChlYNKCBcuXHB+44cfftgglS+//DIqKkoTn3/+ufPCb731VmhoqCY2bNhgL9ywYcMePXo8//zzeovluzw6QF2zZo1S3tatWzvPDAkJKVmypBnR1nLkOBUrVnz11VdVntP0448/bi95yy23qEbx6aefli1bVvUE0yNJO5zmPP3001pzrVq1VMS0AK9y6FTy1Y0uZ8kHT1qVS1uBjsT5yGnri8VJk35KjndqcntqWtLa3cn/utW/ZgXr/bnJQyYnLXw5oHo5a+P+5A/mJn+z4r+FyNNR1gNTkto39Fswxm9XhKXgpnLppId7um0MJmSJMpTly5crnXE+5+msFhcX9+9//7to0aJ//PHH66+//uabb5r+jynMmDFDWbMWKF++/J9//qmJ6tWr161b115Atetq1aq9++67iqq1sGKaadOmKXdWEv3DDz88++yzOloePnz4pZdeKl68ePfu3VN/xKpVqxRVb968WTG3DsjOL5UrV04brxjFeabmVK5c2ULe0Vf20UcfKap75pln9HT9+vUff/yxwrvrr7/ecpOdO3fqI1577TULyBkTZk87G3V5+BW1p1YpU7FjaJtG1eumueQHv81MSkp8qNddzjP/2LTi0Mmj917T14L3OHHixBdffKFKoN0Cr7K92tVvuumm9N6yY8eOBQsWqHaQ5vgD58+f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","media_type":"image/png"}}]}]},"uuid":"aabcd9ee-c208-432c-8281-f7cf0a2d3409","timestamp":"2026-06-10T08:41:26.628Z","toolUseResult":{"type":"image","file":{"base64":"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NydEKSmpCYmJOjdLRERERESkQIfR+K6lyfetQEc3R44cgogsKo2xSEZIVYTqhrs659vYWOM/YQp98YeTrgDFmFRFqK5FYqpCRERERESWZVpXh4iIiIiIiIiIFAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhMDFaIiIiIiIiIiMzEYIWIiIiIiIiIyEwMVoiIiIiIiIiIzMRghYiIiIiIiIjITAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhMDFaIiIiIiIiIiMzEYIWIiIiIiIiIyEy2xizk5+cniN41T09PQURERERERJSRGBWssENLRERERERERKSNlwIREREREREREZmJwQoRERERERERkZkYrBARERERERERmYnBChERERERERGRmRisEBERERERERGZicEKEREREREREZGZGKwQEREREREREZmJwQoRERERERERkZkYrBARERERERERmYnBChERERERERGRmRisEBERERERERGZicEKEREREREREZGZGKwQEREREREREZnJVhARERERERFlHqmpqYKyHysrK5EhMVghIiIiIiKizAGRSoJKcnKyoOzExsbGXiUDxisMVoiIiIiIiCgTSEpKiouLs7Ozy5UrF/5m2PMXyOIQqCUmJkarODo62tpmrCiDwQoRERERERFldCkpKUhVnJycXFxcBGUzCNHk6SpRUVExMTE4DKytM9AdY3nzWiIiIiIiIsrQ5BVAdnZ2TFWyORwAOAxwMGSo++yk6YyViIiIW7duyWkESK6urh4eHvieiBJ9fHzkfMRIOXPmlPPlHHz/Z8+evXz5EjlTvnz5ChcujAXkW6dPn/b39/f09HRwcMidOzfeRRAl37p27RrSqfLly8uX4eHhvr6+eOnu7o6XiYmJ9+7dCw0NtbGxwVolS5bE/mBOcHCwxj7j3VKlSiUlJd2+fRvLY/vYgYIFC/IsMiIiIiIiooxJBivoJArK9pydnUNCQjLUzVbSdMZKXFycn59ffHw84gwc6IgqDhw4gMgDwQrmI3aR8+/evSvny7UuXLiAAAUvkZ7cuXMHb4WFhcm3kKoIVRYTFRWFxfbs2fP8+XP51tOnT5HFKB8dGxuLj8BfTEdHR//777/IWfDPip3BiidOnEB0gu3YqLx48QLryml5vtCRI0cePnyIUAaJzMmTJ7GHgoiIiIiIiDKeVBV0M+3s7ARl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RFhY2PHjxxcsWGBvb1+zZk3x1kVFRY0ePRqJTP369QURERERERERZXtpvePLrVu35NkoFSpU0JmqSAhTunXrJv67qa1JcufOXVqlVq1ao0aNcnR0vHTpkngXEhMTEe4IIiIiIiIiIiIVy1wKJK/3EXou9lG/UAh/RRrY2dkhZwkPD8f077//7uzsXLhw4R07dvTt27d27dq+vr67d+++fft20aJFGzRoIM9zgejo6LVr116+fLlQoUIdOnRQtrZt27Zr165NmDBBvly/fv2TJ0/GjBmD6aCgILy8fv26m5tbmzZtmjdvji3jW+CtBQsW4Mv27t0bQc/+/ftPnDjx6tWrmjVrS6SpYgAAEABJREFUdu7cOW/evIKIiIiIiIiIsg3LPKMIeco///yDiZ49e2qck4KXkyZNwgTyC3nSSlogl3n27Fnp0qUxHRISgshm9erVHh4e+fLle/z48cyZM5GMdOzY0draevny5fv27ROqO0UvWrTo8OHDFSpUKFKkyJIlS2JiYuTWIiIinj9/rmw8NDQUeYpQBTHTp09/+PBhp06d8FlLly49efJkyZIlmzZtineLFy+OiQIFCmDdP//8s1GjRoMHD75//778FyAiIiIiIiKi7MOSTwVSfxIQpitWrCifu6zcewU5iDDd1q1b7927J1TBB1IV5BotW7aUbz169GjGjBmYg+m5c+fa2trOmzfPxsYG2crPP/+MpKN169b+/v4XL17s3bs3ZmKxKlWqzJkzx/AnHjt27OXLl9hC/vz58TIlJcXHx+err74qWLDgnj17sB15j5UjR444Ojo2aNDA2dm5aNGid+7ckY/+EkRERERERESUPVgyWBG6HgNkkacsu7m54W+hQoU6depUs2ZNBBlyvqurq0xV4P79+1WrVkWqIl/WqlULaUhAQMDjx4/xEm/J+ZUrV0b+YvjjsKnChQvLVAWGDh2qc7EaNWqsXr36888/r127dosWLZo0aSKIiIiIiIiIKDuxcLAiIUzx9fWtUKGCRVKVLl269OjRQ+dbSqqSmpoaGxurfouT3Llz4y9mRkdHi/+iGbC3t3d0dNS5tbi4ODmBtfQtow7bnDdv3rZt286dO3f06FGEPj179hRERERERERElG1Y5h4r75yVlVWpUqXkFUMSpm1sbDw9PYsVK4aXN27ckPMfPXoUFRUlp62trRGmJCcnC1U0c/XqVTkfm3r69GliYqJ86ePjs2vXLrm8XFLOv3v3blhY2MCBAxctWtS7d+89e/Yo0QwRERERERERZQeWCVaMfIiyefdYMVLz5s19fX2xJ0FBQYhCtm3b1qhRIzs7u5IlS+bJk2fz5s1nz55FdLJq1Sp7e3u5ioeHR2xs7L///hsQEID5CQkJcn69evWQnixZsiQwMPDy5cu///67vN+tm5tbgQIFLly4EBoaigzF399/2rRpiGBSUlJsbW0dHR15gxUiIiIiIiKibCWtlwJVrFhR3lTF8LU/yhOXLXJxkE4NGjRASrJr1y7sjKurK1KVQYMGYX6OHDm+/fbbRYsWzZ8/H/M7duyoPBWofv3658+fX7NmzZYtW5o2bdq6dWv5NOiiRYuOGTNm9erVX3zxBVKYxo0bd+3aVa7SpUuXjRs3Dhs2bPjw4Vjl3r17U6dOjYiIKFiwYN++fR0cHAQRERERERERZRtWymkaaaQ8DEhGJ5MnT5Y5ixKpVKpUqVu3bvLxQOkqKirK2dlZ++SR6OhoJycn7fnIWRCIKHe91VjF0dFR+63Q0FA3Nzd5ZZD8RBcXF0EZQEhIiLy9Dpw5c0bnMt7e3vgbGRkZFxfn7u4uiIiIiIiIiNSgw2h819JiN6+VeYqvr2/Pnj2V01Jk2qL+xOW3QF/GoTxLSAPSFqGHvlVy5cplzCcSERERERERUdZmyacCyTxFedayvKzmbUYqRERERERERERvk+UftyyvBkK2UlFFEBERERERERFlUZYPVqT0u0ktEREREREREVEGYZnHLRMRERERERERZUMMVoiIiIiIiIiIzMRghYiIiIiIiIjITAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhM6fVUICLSkJycnJCQkJSUhAlBREJYWVnZqjg4OAgLiY+PT1JJTU0VRNkeSxnRW2BjY4NSZm9vjwlhCWw0EmmweCmzOAYrRG9DXFxcYmKis7Ozm5sbfhQEEQmRkpKChmNMTExERESOHDns7OxEGqCIxcbGosbNmTMn/lpb85RMIpYyorcBCQhaetHR0Shijo6OIm3YaCTSZtlSlh5YVonSHQb30PosUKCAICI1KBeOKqgpw8LCMPqNrpowC7qO2Ii7u3vGrGuJ3hWWMqK3APGHiwpKGXJMJycnYS6sjq2x0UikwYKlLJ1wqIEofaEZamVlhZaoICI90E/LnTs3qknzznnGWlgXW2B/j0gfljKitwDtPXT/0PYTZsGKWJ2NRiID0ljK0g+DFaL0lZiYyAqS6I0wiu7q6hofHy9Mh7Wwrtnj8ETZBEsZ0VuAVh/afuYlmGw0EhkjLaUs/TBYIUpHsbGxzs7OgoiM4OLikpSUlJKSYtJaWB5rYV1BRG/CUkb0FqDtl5CQIEzERiOR8cwrZemKwQpROkJLlGdNExkP4+EoNSatguU5ik5kPJYyovSGtp+ppUyw0UhkCvNKWbpisEKUjpKTk3k7dyLj2dnZmTGWnsYHnRBlKyxlROkNbT8zLlJgo5HIeOaVsnTFYIWIiIiIiIiIyEwMVoiIiIiIiIiIzMRghYiIiIiIiIjITAxWiIiIiIiIiIjMxGCFiIiIiIiIiMhMFr719C0V7fkffPCBICIiIiIiIiLKWiwZrPTs2bNSpUra82/evLlp06Z//vlHpE1sbGyOHDnEO5KcnCx3wMbGRhARERERERERWTBYQXSCv+PHj9f57uTJk2/dulWxYkVhuuDg4BUrVty+fTs6OjpXrlxVqlQZNGiQo6OjgVXu3r07YcKESZMmlS1bdtq0aZgzbtw4YTqEKfHx8U5OTpi+cuXK7NmzR48eXatWLUFEREREREREZMFgxdfXV6hOWjGwjBnByvPnz7///nvkKb169SpZsuSlS5cOHTr0008/ITdJ77NXoqKiEKP079+/fv36eFmwYMF27doVKFBAEBERERERERGpWCZYkaerIOzQt8CtW7eQvEyePFnfKS36rF271traeuzYsXnz5sVLZCvyJJTz5883btxYpKfExMSwsDDlZZEiRRCyCCIiIiIiIiKi/1gsWKlUqZLO29amRXh4OAKU7t27y1RFqlKlSpkyZa5cuSKDlSNHjhw/ftzf379cuXJt27b18vIysMGgoKCNGzdev349Z86c3t7eXbp0UeavX78e893c3Nq0adO8efPdu3dv3rwZby1YsADfrnfv3tgHTH/22WfFixdPTk7esGHDpUuXoqKiKleu/OGHH+bLlw8LHzx48OTJk59++um6devu3LlTtWrVrl27FixYEG/t37//xIkTr169qlmzZufOndW/ERERERERERFlUhYIVuTpKuK/q4EMkHexNf4JQQEBAfiLIENj/uTJk+XEoUOHli5dWr58+Y4dOx4+fHj27Nnj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1B86K0V8TdSa8grzZBVjTrDEEBmqN40rFzAaZvhiV6yCj9NeBjPxoTzZkt4IBRNNK3RyjF8FRxcOVPV7HFgKyhQKjsbjKnXSWV6U3cNGdJ7totBXcIjSQ4YqZSYxUNAU8qYP6tUNsk7U9coJMosWLSpbtiwSCmWBNxZSfdWrBn1VpEUK+BvrX307yZ+XdyUgIMDURmY6NRrR8EN3T+cxIO9monE7WDO88fgURpRfIwuaYfoauvhoJKrIUGRJZ7nIGswoZaZCjWl815JnrBBlEfpqI/XWs42KMILGSdrSG2sgfbcZM6kFT5RBGN/C01leJGMO/jfen4+IhMGCptDuIl68eDEoKKh9+/YojNeuXXv69CnGqNUXeGMhNfKnQF8ptkgBf+MW9O0kf14IDT99x4DxzULDjDnG3lh+056qCP3fCAVBPRpmuaD0wGCFiIiIiLKmli1b7tu3b8WKFSEhIQUKFBg8eLDyFFgiIiJLYbBCRERERFkThq8PFZo0AAAQAElEQVTbqQgiIqJ0w1seEBERERERERGZicEKEREREREREZGZGKwQEREREREREZmJwQoRERERERERkZkYrBARERERERERmckCTwW6pWL88h988IEgIiIiIiIiIsr80hqsbNq0ydfX1/jlb968KZitEBEREREREVGWkNZgBalKhQoVjA9KTA1i+vfv//777/fo0UOkv+Tk5Pj4eCcnJ0FEREREREREZAQLXAqEoARxifELI4gRGU9UVNTo0aOR49SvX18QERERERERERkhrcFKt27dNm/ejGClUqVKb1z45s2bWKxixYoi40lMTAwLCxNEREREREREREZLa7CClETeuXb8+PFvXHjy5MkVKlQwL1g5ePDgyZMnP/3003Xr1t25c6dq1apdu3bNnz//jz/+WKVKlQ8//FAuhnefPHny7bffIihZv3795cuX4+LisHDfvn3lNT5jxozp0qVLSEjIsWPH8LJ169atWrXavXs34iG8XLBgAUKi3r1716pVy9fXF/Nv375dtGjRBg0aYDEs8PjxYywzZMiQPXv2BAcHt2nTZuvWrd9//32ePHnwblBQ0PTp0/v371+tWjVBRERERERERFmdBR63jKBE3pJWcUuN+nyNxUwSGRnp5+f322+/FShQoEWLFhcvXkQCYm1t7enpefjw4dTUVCyTkpJy5MiRkiVL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FjMfP368YMGCIUOG7NmzJzg4eOrUqdeuXdu3b9+9e/fKly/frl07/BVERERERERERLpY+OJYeVqKgQUQrwijPXnyJDExsUSJEhrzMSc1NfXRo0eYDggI2Lt377Fjx6pXr25nZ7dz584NGzY4OzvXrl17+/btys7IS4qQqrRv3x5ZCcKXzZs3C9Ud8rGFNWvWYGs1atRISUn5448/cufOPWLECETFCxcu5Al4RERERERERKSPBc5YkVmJvD2t+p1rJfUb2QoTIfLA3/z582vML1CgAP4+e/ZMbvP+/furV6+2t7fHNMIUJCzffvstptu0afPJJ58gZME0kpfnz58vWLBAbs3KymrPnj3dunWTG0xKSsJbmBkYGBgcHFy3bl0vL69y5cqdOXMmMjKSN3MhIiIiIiIiIp0sfKNp7dvTpuVZy3ny5MFfBCJFihRRny8Dl9y5c8uX9erVk6kKMpGoqKgqVarI+Tlz5ixbtmxCQgKmHzx4gL+7d++Wb12/fj06Ovrly5fyZfPmzZGqCFVkU7p06enTpyOdadiwocbFRERERERERERE6ixwKdCtW7cqVapkzJJYzKRLgZCnIO+Ql/yokymJh4eHfOnp6SknkJXgr5ubm7IkshU5ERsbi7+R/ylevHj9+vWVu9njpbLKjz/+2KtXr8DAwF9++eWnn35KSUkRRERERERERES6ZOhHo8u7zO7Zs6dhw4aFChWSM4OCgnbs2FG9enXtS4QKFy5sY2Nz48YNhCZ4iUzE19dXLlaqVKmrV68OHjxYXhmUmJiIFMbd3T08PFx9C8+fP3/16lV7lbt37yJkQRLk5eUliIiIiIiIiIi0WObmtRUqVDByScO3ttXWu3dvOzu7mTNn7tu379GjR/g7ffr05OTkPn36aC9sa2uLwOXs2bO7du168ODBokWLlPNN6tWr5+DgsGzZsqdPnwYGBk6cOHHDhg3aW8Dy2L6Pjw8+wtra2srKytHRURARERERERER6WKBM1aQlRgZrGAxU4OVvHnzzpo1a+XKlchBoqOjc+TIUbFixe+//17efkXbiBEjfv311/Xr1yMWqV27dqNGje7du4f5RYsW/fbbb1evXj1mzBgnJ6eqVasOGDBAe/UiRYr06tULq8+fP9/V1bVt27alS5cWRERERERERES6WMl7u6bF5MmTkZho37ZW261btzZv3jx+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cmpsnzt3rhkPJbWgoCArVUxjntqXyWidClMUneijjx8/XrVq1RQrKV68eKu/NWzY0J6vLT958qRymWuvvbZJkyZmZua3DchlU6dOVYBy1113ffnll48++uiNN944atSoWbNmaR++77779u3bZ+UnFy5c+PPPP50PMvo3+fTTT1MfAQAAAICcs2HDhquuuqp9+/bNmzdXO9/kyZNT35UlPVoyOjo642VWr16thv/WrVvrU1Q/1cdZrjp9+rR9zYFrtm7d2rhxY/eu0wdkK1gxPW6c/xGPHTv23XffaU4BB3MfH0ORR6FChRS4RERELF++XOGLIgzlF23bttWeZF9+koIykeDgYK3QTjc0cfjwYa3ceXSJKlWqaA9WVKaMsEKFCilWUsmJcy+hPn36lCpVSmuzM5osbRuQy3799dcaNWqMGDHCeWb58uVfe+21ixcvLlmyxHKMM6LARcnL7NmztYePHz/ectyTa+TIkV27dlUo8+2336ZY7Y4dO55//vkuXbr07Nnz5ZdftrvyLVu2TKvatGnTG2+8oVcXL16sLOO999674447FFFrhTqqpt7I3bt3awu7devWo0ePF198cf/+/Zp56NAhreqdd96xF4uKirr55psnTJhgOX7U06ZNu+eee3S2ePDBB3W2MMuk+bcYL7zwgl7ShJImTTz00EOa1rZp2vQKNNMKYfWP0717d/3h+tfTfJ2TBg8e3LFjR813PkCl948AAAAAXFENh/r166uIGxQU5N6gYf369ddcc41WXq9evVatWqm8beWRuLg41Tuc+6zAyFZXIKUSdevWVeVKjcYVK1Y8d+6cKifFihUzLca1atXatWvXli1blHQcPXpUwYdJtsqVK6fITU3N2jMKFix45MgRPz+/9K7e10vadZY71K5dW0/37t2r6pCyOufxKfUR2n03b96sQMRcLOPspIPzZpsJveXqq6/+/fff//jjD9U5teVZ2jYgN8XExOgHpWp/6r5pjRo10s9B0fWgQYMUC2qxVatWzZ8/X7u6wkS98ZFHHtEPR4djJZWvv/56gwYN7PcePHhQQYP29ltuuWXnzp2ff/75tm3bPvnkE81RjKJVffbZZz/++KN+zkWLFlUYMWvWrCFDhmg9CjuUvCincB6pWqcQbYMOuL169dJhYc6cOYsWLZo5c6Z+mEpPNKEtMdu/cOFCHS6GDRum6bFjx06fPv26664bMGCAktmnnnrq7bffVhqS+m+xP0grbNiwoX6tmtaEfrma0JFBy+td9vTo0aPDw8OVkOrj9FlqEBgzZoxSFf05H330kf5lFP1k/I9gAQAAAFmhaualS5dUKP3hhx/MReUqr6p4rGLwgQMHVP1UNqGide/evU0h1tBMlULDwsJatmy5YMECVbRr1qxpXnr44YfNhErUqlmrJOz8cVqnWhD19kKFCqmyoFqzCr3vv/9+aGjoihUr7r333uDgYJWxVR8vWbJktWrVzLvS3DyVkOu97mEAABAASURBVJs1a6YCfPv27fXpWq0K9qoOq41T5X/L0RhpuoCcOXMm9Tqjo6NV/lcsoLpJ586dQ0JCpk6dqj+zSpUqluNSF7W5msZR35OtYEX0rWufUFVEtRftQIpXtCuYyENfpKkX6SVVvfQFqPpnOfYzfU+q5q1cuVI7nNrbO3TooJ0gvY9QTKNvRc3mqsVZjmtYlIY4V7FEYYrmqFU8zV4A+tZVrbKfXnvttfa0djKt3DlbydK2AblGVX39oJwzEZvq/zrwKVi05/z222/jx4+/4YYb9GOcMmWKUu3nnntO2YFeevDBB3v06GEv+X//93+RkZHa//Xj1VMdH4cPH64D4p133mkWUKryzTffmLtuKYbQT96kIV26dHnrrbf06zYvGSNGjDh16pQyF/Njv/XWW/v3768sQ9vQt2/fV199VXG76X6pLdSJRBmHwhGlKvo4hSCa/9hjj2mzR40apWAl9d9if9BDDz2k1gD9eO+///5nn33WSkdERIT+Ih0fdARQpqMlv/76a50tLMcFazpVaIO12iv+IwAAAADpUc1RNWKVKhVDqP6rp2rG+/777/XSE088oTTkq6++UmW2U6dOajJUKbR06dJr1qxR6qECrVmDEoqPP/64W7du5m62aqFMPR6FshIFEyr2qzpsz1QhVmVpFYkrV66sou+HH36o4rRqtVpS0cwzzzxToEABlaVVbG7durUK6h988IG53CHNzYuKilq3bt0DDzygSveMGTNUVq9fv74K/Nu3b1dTpeUIR1Rr1sS0adNSr1MNvU0dVAH/9NNPFazoz1myZIlqBHp16dKlim8sH5XdYEWxVgOH+Ph4M+TKf1cdGGiGNdHulaLht7yDvkLtMSlujKp3pa7MVHRQrVJvcW4e10rshds5mOnG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RQQrAAAAAAAALiJYAQAAAAAAcFF+CVYSExOjo6P1aGWbG1cFAAAAAAC8mqcHKwMHDhw8eHBkZKQ9Z9euXf369du/f7+VFRs3brz//vs3bNhguUQxysWLF92yKgAAAAAA4DPccFeg8PDw0aNHZ3LhkSNHNmrUyMqKmJiYb7755oEHHrCyoWLFir169apQoYKVddHR0f/4xz8U8bRv3z6bqwIAAAAAAL7EDcGKghLFJZlf2MqikJCQP/74o2fPntWqVbNcVaVKFSUjlksSEhKcL5nJzqoAAAAAAIAvcUOwYrkUl2ReixYtgoKCPv/88+HDh6d4KT4+/scff1y3bl1UVFT79u179ep14cKF119//e67727ZsqVZZsyYMYpmwsLCJk2a9MQTT9SsWTM5OXnWrFkrV6709/fv1q1bTEzM/v37n3nmGS188uTJX375Ze3atSVKlNAKr7/+ej3VwnpJb//2228HDBhQtmxZe1War9BnyZIlhw8fbtCggZYPDQ3VzAULFixbtuyhhx768ssvd+7c2axZs1tvvbVixYoWAAAAAADwId4xeK2Cks2bN2/cuDHF/Pnz5//666+dOnXq3btH25bNAAAQAElEQVS3Ag7FGZUrV1ZuolDDLHDw4MFt27YpWFEEExERoUfNnDNnjiKS0qVLd+zYUbmJchnlKWb5Tz75JDw8/Pbbb2/SpMn06dN37NhRu3btLl266CXFKJqoUKGC86p+//33qVOn6hNvuummI0eOjB8/fs+ePZqvoEcf/fbbb2v57t276yP0iRYAAAAAAPAt7hljxVzTcUUKOG677TYr66pXr961a9cvvviiadOmzvMLFSr0+OOPN2vWTNPKNf7888++fft27txZ0UlCQkJQUJDmlClTplGjRrt37zZvUQjy448/tmzZ8p///Kee9ujRY8iQIVq/5ejyU7du3QEDBlSpUkVPVzvce++9FStWVP6i6MSMsbJr1y57VV9++WWrVq2effZZPVW488gjj8yePds8jYmJuf7665XdmOlFixYlJSX5+3N/awAAAAAAfId7ugIpMbFy2B133PHUU08tXLjQhCBGt27doqOj586du3fv3iVLlihn0cxOnTp99dVXmzZtCgsLW7Vq1dVXX+3n52e/5dSpUxcvXmzevLl5qrdo4y9cuKBpBTF9+vQ5fvy4cqKDBw8qqcm4886x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IlgBAAAAAABwEcEKAAAAAACAiwhWAAAAAAAAXESwAgAAAAAA4CKCFQAAAFgAAMA1gRYAAAAAAPAVUVFReixWrJiFXMEVK4DX6N27d4O/hYSEXHfddc8888yRI0esPJKQkGDlgLvuuqtz584WAAAAgLT89ddfqhFMnz49xfznn3++R48emrj33nvvueceKyc1btz4vffe04QeNW3lb1yxAniT0qVLDxs2TBOXLl3aunXrokWLbrvttq+++qp69epW7ho9evTu3bs/++wzCwAAAEAuqlq1arNmzebOnTtw4EB7ZmJi4oIFCwYMGKDpG2+8MSkpyUJuIVgBvEmRIkVuv/12++mKFSsGDx78/fffP/7441buWrp0acmSJS0AAAAAue6GG2549dVXT548Wa5cOTNn1apV586d03xNq45gIRfRFQjwYlWqVNHj+fPnzVNF1EOHDm3btm2/fv2mTp3qnFJv3759+PDhHTp06NWr1+uvv64828xPTk6eNm3aPffc07p16wcffFCxt/0Wrer555//66+/XnjhhY4dO3bt2vWLL77Q/C+//FIR+KFDhzZv3nyjw+nTp523SuucPn36oEGDtM4hQ4Zoeful9957T8ufOHHiueee06sXLlzQzD///POJJ57QtikeWr16dYq/Mb0/ymzehg0b7r//fr2kOQcPHtTZ5dprr+3du/ebb76pT7EAAAAAX3T99dfrcd68efac3377rX79+vXq1bMcfYLEzD9y5Mi//vUvledvuummd99918x85JFHXnvtNTNtivdxcXGaVlKjNa9du9ZebWxs7DvvvHPrrbd27979jTfeSFHyh0GwAngrHdSmTJmiiTZt2liOo6qCCR0KlZLosKhk4d///rdZUiHIfffdt3Dhwi5dupQvX15JypNPPmleGjt2rBYrVarUgAEDFL489dRTv//+u3lJOcWuXbuUX+jt7dq1U3zz8ssvHz9+XKF4w4YNzTINHYKCgpw3TMHNK6+8om247bbboqKiXnzxRbOdorBD69Qnzpkzp3r16v7+/rt3737ooYdWrFjRuXNnPR02bJidE2X8R2nz9u7d+49//GPNmjW1a9fWHAVDOp3ceeedOujPnDnTXhIAAADwMSrVh4WFqfRrnqrddP78+eZyFTnmoIlz586ppXPlypV6bNWqlYIVpSSWozORljcLayUqopswZf369Sr8h4SE2B+kcvUnn3xyyy23DB48+JtvvtFTC6nQFQjwJocPH27QoEHZsmVLliy5b9++pKQkxr65OQAAEABJREFUhcfdunVT6PDss8/WqVNHeXNAQMBjjz323HPPffzxx/369atZs+bIkSMvXrz47bffmgBbwccHH3ywZ8+eM2fOTJ8+XUnE6NGjNV/v0rF41KhRCibMx23ZskXJxQMPPKBpBS6PPvroL7/8okPqNddcs3HjRm3D+PHjU2yhjsUffvih1qAwxc/PT1uot0+aNEkbaR+g9+/fr7WZy23GjBkTExPz3XffmSGvZs2apXC9YsWKms74j9IC2oaBAwc+8cQTxYoV0znjwIEDSmHuv/9+vaTP+vXXXy9cuFCkSBELAAAA8Dkqur/00kunTp1S7WD16tVnz561gxXb7NmzVfZesGBBtWrV9FQNmSpOq1TfsWNHVQT0XpWW161bpyrG0qVLO3TooOmWLVs6F6E1rdZNLa9ptWvOnTtXLa8W/hfBCuB9dASsUKGCEoQWLVp07dpV+cXmzZtjY2OrV69+8OBBs4wZzlbJiI6hCiB0lDSpiuXoRNOlSxfFIjrC6qmSC2U05iWFHStWrDhx4oQicDPn3nvvNRPmuhgdTDPeNhN133zzzdoqy3Hs7t2797JlyzZs2GAHKzfeeKNJVZKTk7dt26YttAcSv+6660aMGGGmw8PD0/ujTLBiObqPmtvIlShRolGjRp9//nlwcHCPHj16OlgAAACAj1LJWe2j8+fP79+/v/KOpk2bmvTEmaoJevzkk0/MUxX1z58/r8Zale0LFCigGCUoKKhy5coqVKtxVK2YKrSrDdV5DbfffrveomK2CuFz5swpWrSohVQIVgBvomPlK6+8MmTIkIsXLyryUDht5u/YscNyXFRid+QxlIMcOHAgJiamVq1a9sxChQqFhYXZ7xo7dmyKT9mzZ48JVvQuHXDNzMDATB0ulIbosV27dvac9u3bW45BXuw51157rZk4evRodHS0Tgn2SzpSK2Qxw6Nk8EeZicoO9vwXX3xRp5bxDldfffULL7xg5y8AAACAjylVqpRK2qYvvOKVBx98MPUyKmzrMTIy0jxt5KDWTVMjWL9+fUJCglpqVXh+/vnnVXFQYf6ll15yXsOXX37573//u0mTJq1atVKz7u7duy2kQrACeJm2bdsqOBg2bJhyZSXHJUqUsP4exbZXr16DBg1yXrhixYrFihXz9/c/efJk6lWZdymP0OHVeX6dOnXMRCbDFGdVq1a1HOO/FC9e3Mw5deqUPd8oXLiwmShdunRAQIB9QYrl6B2qA7pZIIM/ykyk6ObTrFmzb7/9VjH84sWLZ82apeR+2bJlWr8FAAAA+KLevXsrEJk3b96ZM2fMcLYpKBBRkXjUqFGmcB4XFxcVFWVaZzt27KhQRpnLmDFjypQpExoa+s4776hy4TzAigrnmvnII4+Y1Obs2bMEK2li8FrA++igqQPorl277rvvPh0ZLUemYDluD9Tsbzom7t27V1G0Qoq6deuuXr364sWL5u3Ks7t06aI55l1ag/2u+Pj4v/76KzMX+CnUsFforHnz5pZjBCx7jpk2n5VCcHBwzZo1N2zYYKJ0y9HNxx68NoM/KvWqVq1aNXz48IiIiA4dOugf54033tDZxXk8cwAAAMDHXHPNNWpHfOaZZ8LCwuy+/M569uypwrOCFQUias686667Jk6caF7q1KnT5s2bVWY2F7OrgvD999+rLG169BsJCQmxsbHHjx9X/rJ06dIvv/wyOTnZQioEK4BXuueeexQbb9269YEHHoiJiVHiYIb7njx58rZt2xRaDxo0aMGCBSaZfuqpp06cOPHYY48tXLhQR8OXX345MDCwVatWV199devWrT/88MPZs2dv3779iy++0LvMBSZX1Llz5z179ugta9as0dHWnq91XnXVVdqMKVOmLF++XAfuDz74QIdpfVCa67n33nsVhN96661a1aRJk4YOHWqfEjL+o1JQ7q4zwciRI9etW7dv375ff/1VM9NcEgAAAPANahBVsfzSpUu9e/dOc4F69epNnTpVkcpNN9102223Va9e/YUXXjAv1a9fXwXvjh07mqvUVWK3HGmL89vVDqqqhBpKVcKfMGHCs88+q6qHuTEznPmpgdrKGd86aELfn+nKZQE5TIFr6dKlzbQq5GkuY4b/iIqKUhxQsmRJKycp2XUeBCSbdLjUNpsRZ43hw4d/9913Osy9//77BQsWVADxww8/HDp0SP8IOkTqoGn/gT///LMCjh07dijSbtu27auvvmryiwsXLijAXrZs2dmzZ2vUqHH99dfr0GlSanN0/umnn8wadAxt3rz57bffrlzGctzteMyYMatWrVKMrfTaOSC/ePHiiy++qHWePn26XLlyOtYr79Dm6aXRo0crQNG7SpUqZS+vY/2MGTOOHTumf6v7779fbwwPD1+8eLF5Nb0/KsXmWY7RWGbOnKmgR8f6kJAQhTV33323BQAAAOR70dHRhQoVcq2bfHJyst5ubhnhISIiInK6KqcKo121vOKSORusqA3cdNDS9G0OlldRQ7oqky7vf8h9vh2sZJLiDMUW/v7+aW6P9meTcTjTsVLvsofCzTwdYRWjpHnZoeUYXSXz68x44Qz+qBR0TNM3y7UqAAAAgK/ytGDFzYPXmhuC6NHOUOwJ++oVK+sUcNx1112amDBhQqVKlSxXmbufPP/881aGn6XmbjN25saNG8ePH/+Pf/zD9DoDvEKZMmXSeym9o4+fn58LqYrluPgwgwFZsrTOjBfO4I9KoYCDBQAAAAC5wp1jrIwZM2b06NGzZs1ShmISFpvylJEjR6aen0nbtm0LCAhQS/vy5cutnKTm96FDhypPMU8rVqzYq1evChUqWAAAAAAAAKm4J1hRXNKvXz9NKD0ZMWJEmss0atSocePGil2srFuxYkWzZs26deumCSsnJSQk2Lf4thx3ex04cGC1atUsAAAAAACAVNzTFUhxSWaGUOnbt68LwYrCjtWrV997772VKlX6+eefDxw4ULNmTfPSe++9V6RIkdDQ0B9//PHo0aOdO3e+5ZZbgoOD9dKOHTsWLFiwZcuWunXrKpFp1aqVvcKkpKQXX3yxYcOGAwYMMHM+++wzvd3OfSZNmvTtt9/q1bJly2r6iSeeMJ84f/78xYsXnzhxQu+97777TK+KzZs3z507d/fu3ZrZq1cvPVoAAAAAACB/cMMVK8ogtm3bljpVadSokeb3czJ69GjNsbJo06ZNcXFxSkbq1atXqlQp54tWzpw5o+hkxowZTZo0admy5Zw5c8yr8fHxEydO1LsUxwQEBCgccR6j19/fv3bt2opdFNlYjuBm4cKF9evX10xziynFKJqoUKGC3hUREWHeq+WnTZuml26++ebDhw+/9NJLycnJymimTp1aunTpoUOH6oOmTJmSmJhoAQAAAACA/MENV6xs3749zWtVFKyMHDnSyjZlJcpNzACZV111lZ7279/f3A5WDh06NHny5HLlyml6z549a9as6dat2+nTp6+77rpevXoVLFiwcePGDz300ObNm50HoO3atetvv/22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c4yip/Z4K5lx8eLFTZs2dezYsaCTTp06RUZGKsoxy+i7nzx58q5du+bOnbtw4UJ9RLFi/xmBbNmyZb/++qsilbffflt1jDZt2mhhzXznnXfOnj2rBbRLUXmA13lsatLj719uzVsWnlx5UOIlp6LIpgPJNe5P/HThf65oPn/RenpaUpMnEus8lHj7a4mLt/7Plc5arPzAxN1H/zNzxY7kO/6dWPehxJZPJ46ckXSBa1ddNXHixK+//trKtnPnzj388MM6BpqnOhHq2PWgwyuvvOLcIzKF+Ph4HRXvueeeBx54QAvrwJhiAR0AFX8rnh48ePCTTz6peNp+adasWQ843HfffbNnz07vI3Rw7tu374gRI1LM/+c//6n5x44dSzFfq9V8PVrIO0uWLBkzZsygQYPuvfdetS6o3cJyN19tc0ZuSrbyplNOXn0uALjmu+++a9CgwfTp083TPXv23HnnnS1atGjZsmWfPn3syrJNleWePXu2dHjkkUdOnz5tv/Tee+916NChlYNKCBcuXHB+44cfftgglS+//DIqKkoTn3/+ufPCb731VmhoqCY2bNhgL9ywYcMePXo8//zzeovluzw6QF2zZo1S3tatWzvPDAkJKVmypBnR1nLkOBUrVnz11VdVntP0448/bi95yy23qEbx6aefli1bVvUE0yNJO5zmPP3001pzrVq1VMS0AK9y6FTy1Y0uZ8kHT1qVS1uBjsT5yGnri8VJk35KjndqcntqWtLa3cn/utW/ZgXr/bnJQyYnLXw5oHo5a+P+5A/mJn+z4r+FyNNR1gNTkto39Fswxm9XhKXgpnLppId7um0MJmSJMpTly5crnXE+5+msFhcX9+9//7to0aJ//PHH66+//uabb5r+jynMmDFDWbMWKF++/J9//qmJ6tWr161b115Atetq1aq9++67iqq1sGKaadOmKXdWEv3DDz88++yzOloePnz4pZdeKl68ePfu3VN/xKpVqxRVb968WTG3DsjOL5UrV04brxjFeabmVK5c2ULe0Vf20UcfKap75pln9HT9+vUff/yxwrvrr7/ecpOdO3fqI1577TULyBkTZk87G3V5+BW1p1YpU7FjaJtG1eumueQHv81MSkp8qNddzjP/2LTi0Mmj917T14L3OHHixBdffKFKoN0Cr7K92tVvuumm9N6yY8eOBQsWqHaQ5vgD58+f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","type":"image/png","originalSize":82536,"dimensions":{"originalWidth":1480,"originalHeight":800,"displayWidth":1480,"displayHeight":800}}},"sourceToolAssistantUUID":"6425898f-5171-47ae-abf0-bceb6d6f86d6","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"aabcd9ee-c208-432c-8281-f7cf0a2d3409","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"aabcd9ee-c208-432c-8281-f7cf0a2d3409","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_017PKcJEYXxRNWNx8QhVLsWH","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS1gMKYggOGAIqQKQhQ7H3KNeleoEmvSlR+rLPGAnnx2jJwzCbl50tvUfULg0TqNwKZVQAWOdz/mizdnF3YkGRG35LCFV2sIEkcKMyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwTYnbck2+eVhOVFSIaDMNsrdl7OQ8WvNkAdyIwu0A9AVhf11FBbimbspbopoHWHVlkVh6k9WIa6A/alZl+ZOoLUEs4OWzJZx7Vb1gIKqECa7D2U6uMX7wdpiwRAngc4SyZN05KbNlZ3D0v1LW16wD0HkIgfIU/TbamqhVq6BSoBX7eZaqa4znOisQpnK97M2+WOwkAl7g436bBHTDw66zXTWWEjILTHJqufW3FuRVhXqrNf1E7wnQ4pDWJv5JqdEcLti51dI98DBsAc+cE1xnZWs93EWwl/RSB1CjU4Bw61oqJaAhnvyIhiT3fDxevZv7LjiYeOukZM4VsAZ3PdXeoV+MEg0NOlnMYPxdN8I+/n7pOXCdhUcWu+yI99lajpZiZ6h7PDXU73U9hzGIdCydXyRd0cThQz+ASTlnZ9JmcpxDpuuPVqnePfuR5nuhmlXYxdKXFTZQzHdav7TTnepjOaUV+beL67hG9ap2STwrmFBgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1634,"cache_read_input_tokens":229338,"output_tokens":240,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1634,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":240,"cache_read_input_tokens":229338,"cache_creation_input_tokens":1634,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1634},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHFHytpKH8j47XvhCKM","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"d49ffabf-6981-4861-a143-884f9107eef0","timestamp":"2026-06-10T08:41:39.793Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d49ffabf-6981-4861-a143-884f9107eef0","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_017PKcJEYXxRNWNx8QhVLsWH","type":"message","role":"assistant","content":[{"type":"text","text":"Dashboard looks great — KPIs, order chart, recent orders including our live order #1016. Opening it to fulfill and refund."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1634,"cache_read_input_tokens":229338,"output_tokens":240,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1634,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":240,"cache_read_input_tokens":229338,"cache_creation_input_tokens":1634,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1634},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHFHytpKH8j47XvhCKM","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"035ed44c-4cb7-4799-9bfd-4f11d0f99850","timestamp":"2026-06-10T08:41:39.794Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"035ed44c-4cb7-4799-9bfd-4f11d0f99850","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_017PKcJEYXxRNWNx8QhVLsWH","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01FPmrapndooawBqMtvaEuWv","name":"mcp__playwright__browser_click","input":{"element":"Order #1016 link","target":"a:has-text(\"#1016\")"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":1634,"cache_read_input_tokens":229338,"output_tokens":240,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":1634,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":240,"cache_read_input_tokens":229338,"cache_creation_input_tokens":1634,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":1634},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHFHytpKH8j47XvhCKM","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"2fb908f6-d402-46a0-9927-e3d3da2b0074","timestamp":"2026-06-10T08:41:40.362Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2fb908f6-d402-46a0-9927-e3d3da2b0074","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01FPmrapndooawBqMtvaEuWv","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('a:has-text(\"#1016\")').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-42-411Z.yml)"}]}]},"uuid":"ad71d888-a5b7-4252-8bd7-3a2eae42b6dd","timestamp":"2026-06-10T08:41:42.414Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('a:has-text(\"#1016\")').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-42-411Z.yml)"}],"sourceToolAssistantUUID":"2fb908f6-d402-46a0-9927-e3d3da2b0074","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ad71d888-a5b7-4252-8bd7-3a2eae42b6dd","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01QcyYdNBXzCXuijn4RiVV4x","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01HH4rjbSKLbmRcCd8ixRoue","name":"mcp__playwright__browser_snapshot","input":{"depth":14,"target":"main"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":368,"cache_read_input_tokens":230972,"output_tokens":81,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":368,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":81,"cache_read_input_tokens":230972,"cache_creation_input_tokens":368,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":368},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHG7gJckhJiia3REG4X","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"2e3f1175-08da-40ec-9c54-c0e2bb927498","timestamp":"2026-06-10T08:41:46.943Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2e3f1175-08da-40ec-9c54-c0e2bb927498","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01HH4rjbSKLbmRcCd8ixRoue","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n```yaml\n- main [ref=e326]:\n  - generic [ref=e327]:\n    - generic [ref=e328]:\n      - generic [ref=e329]:\n        - link \"Home\" [ref=e330] [cursor=pointer]:\n          - /url: http://shop.test/admin\n        - img [ref=e331]\n      - generic [ref=e333]:\n        - link \"Orders\" [ref=e334] [cursor=pointer]:\n          - /url: http://shop.test/admin/orders\n        - img [ref=e335]\n      - generic [ref=e338]: \"#1016\"\n    - generic [ref=e339]:\n      - generic [ref=e340]:\n        - generic [ref=e341]:\n          - generic [ref=e342]:\n            - heading \"#1016\" [level=1] [ref=e343]\n            - generic [ref=e344]: Paid\n            - generic [ref=e345]: Unfulfilled\n          - paragraph [ref=e346]: Jun 10, 2026 8:39 AM\n        - generic [ref=e347]:\n          - button \"Create fulfillment\" [ref=e349]\n          - button \"Refund\" [ref=e351]\n          - button \"Cancel order\" [ref=e353]\n        - generic [ref=e354]:\n          - generic [ref=e355]: Timeline\n          - list [ref=e356]:\n            - listitem [ref=e357]:\n              - paragraph [ref=e359]: Order placed\n              - paragraph [ref=e360]: Jun 10, 2026 8:39 AM\n            - listitem [ref=e361]:\n              - paragraph [ref=e363]: Payment received\n              - paragraph [ref=e364]: Paid via credit card\n              - paragraph [ref=e365]: Jun 10, 2026 8:39 AM\n        - generic [ref=e366]:\n          - generic [ref=e368]: Order lines\n          - table [ref=e370]:\n            - rowgroup [ref=e371]:\n              - row \"Image Product Fulfillment Qty Unit price Total\" [ref=e372]:\n                - columnheader \"Image\" [ref=e373]\n                - columnheader \"Product\" [ref=e374]\n                - columnheader \"Fulfillment\" [ref=e375]\n                - columnheader \"Qty\" [ref=e376]\n                - columnheader \"Unit price\" [ref=e377]\n                - columnheader \"Total\" [ref=e378]\n            - rowgroup [ref=e379]:\n              - 'row \"Classic Cotton T-Shirt (M / Navy) SKU: ACME-CTSH-M-NAVY Unfulfilled 2 24.99 EUR 44.99 EUR\" [ref=e380]':\n                - cell [ref=e381]:\n                  - img [ref=e383]\n                - 'cell \"Classic Cotton T-Shirt (M / Navy) SKU: ACME-CTSH-M-NAVY\" [ref=e385]':\n                  - paragraph [ref=e386]: Classic Cotton T-Shirt (M / Navy)\n                  - paragraph [ref=e387]: \"SKU: ACME-CTSH-M-NAVY\"\n                - cell \"Unfulfilled\" [ref=e388]:\n                  - generic [ref=e389]: Unfulfilled\n                - cell \"2\" [ref=e390]\n                - cell \"24.99 EUR\" [ref=e391]\n                - cell \"44.99 EUR\" [ref=e392]\n          - generic [ref=e394]:\n            - generic [ref=e395]:\n              - term [ref=e396]: Subtotal\n              - definition [ref=e397]: 49.98 EUR\n            - generic [ref=e398]:\n              - term [ref=e399]: Discount\n              - definition [ref=e400]: \"-4.99 EUR\"\n            - generic [ref=e401]:\n              - term [ref=e402]: Shipping\n              - definition [ref=e403]: 4.99 EUR\n            - generic [ref=e404]:\n              - term [ref=e405]: Tax\n              - definition [ref=e406]: 7.98 EUR\n            - generic [ref=e407]:\n              - term [ref=e408]: Total\n              - definition [ref=e409]: 49.98 EUR\n        - generic [ref=e410]:\n          - generic [ref=e411]: Payment details\n          - generic [ref=e413]:\n            - generic [ref=e414]:\n              - paragraph [ref=e415]: Credit Card\n              - paragraph [ref=e416]: \"49.98 EUR - Ref: mock_kfkqps3gwqkjvtny\"\n            - generic [ref=e417]: Captured\n      - generic [ref=e418]:\n        - generic [ref=e419]:\n          - generic [ref=e420]: Customer\n          - paragraph [ref=e421]: Guest\n          - paragraph [ref=e422]: erika.musterfrau@example.com\n        - generic [ref=e423]:\n          - generic [ref=e424]: Shipping address\n          - generic [ref=e425]:\n            - paragraph [ref=e426]: Erika Musterfrau\n            - paragraph [ref=e427]: Musterstrasse 12\n            - paragraph [ref=e428]: 10115 Berlin\n            - paragraph [ref=e429]: Germany\n        - generic [ref=e430]:\n          - generic [ref=e431]: Billing address\n          - generic [ref=e432]:\n            - paragraph [ref=e433]: Erika Musterfrau\n            - paragraph [ref=e434]: Musterstrasse 12\n            - paragraph [ref=e435]: 10115 Berlin\n            - paragraph [ref=e436]: Germany\n```"}]}]},"uuid":"6db0af9f-f856-44fc-a8a4-86eecbd85f5c","timestamp":"2026-06-10T08:41:46.966Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n```yaml\n- main [ref=e326]:\n  - generic [ref=e327]:\n    - generic [ref=e328]:\n      - generic [ref=e329]:\n        - link \"Home\" [ref=e330] [cursor=pointer]:\n          - /url: http://shop.test/admin\n        - img [ref=e331]\n      - generic [ref=e333]:\n        - link \"Orders\" [ref=e334] [cursor=pointer]:\n          - /url: http://shop.test/admin/orders\n        - img [ref=e335]\n      - generic [ref=e338]: \"#1016\"\n    - generic [ref=e339]:\n      - generic [ref=e340]:\n        - generic [ref=e341]:\n          - generic [ref=e342]:\n            - heading \"#1016\" [level=1] [ref=e343]\n            - generic [ref=e344]: Paid\n            - generic [ref=e345]: Unfulfilled\n          - paragraph [ref=e346]: Jun 10, 2026 8:39 AM\n        - generic [ref=e347]:\n          - button \"Create fulfillment\" [ref=e349]\n          - button \"Refund\" [ref=e351]\n          - button \"Cancel order\" [ref=e353]\n        - generic [ref=e354]:\n          - generic [ref=e355]: Timeline\n          - list [ref=e356]:\n            - listitem [ref=e357]:\n              - paragraph [ref=e359]: Order placed\n              - paragraph [ref=e360]: Jun 10, 2026 8:39 AM\n            - listitem [ref=e361]:\n              - paragraph [ref=e363]: Payment received\n              - paragraph [ref=e364]: Paid via credit card\n              - paragraph [ref=e365]: Jun 10, 2026 8:39 AM\n        - generic [ref=e366]:\n          - generic [ref=e368]: Order lines\n          - table [ref=e370]:\n            - rowgroup [ref=e371]:\n              - row \"Image Product Fulfillment Qty Unit price Total\" [ref=e372]:\n                - columnheader \"Image\" [ref=e373]\n                - columnheader \"Product\" [ref=e374]\n                - columnheader \"Fulfillment\" [ref=e375]\n                - columnheader \"Qty\" [ref=e376]\n                - columnheader \"Unit price\" [ref=e377]\n                - columnheader \"Total\" [ref=e378]\n            - rowgroup [ref=e379]:\n              - 'row \"Classic Cotton T-Shirt (M / Navy) SKU: ACME-CTSH-M-NAVY Unfulfilled 2 24.99 EUR 44.99 EUR\" [ref=e380]':\n                - cell [ref=e381]:\n                  - img [ref=e383]\n                - 'cell \"Classic Cotton T-Shirt (M / Navy) SKU: ACME-CTSH-M-NAVY\" [ref=e385]':\n                  - paragraph [ref=e386]: Classic Cotton T-Shirt (M / Navy)\n                  - paragraph [ref=e387]: \"SKU: ACME-CTSH-M-NAVY\"\n                - cell \"Unfulfilled\" [ref=e388]:\n                  - generic [ref=e389]: Unfulfilled\n                - cell \"2\" [ref=e390]\n                - cell \"24.99 EUR\" [ref=e391]\n                - cell \"44.99 EUR\" [ref=e392]\n          - generic [ref=e394]:\n            - generic [ref=e395]:\n              - term [ref=e396]: Subtotal\n              - definition [ref=e397]: 49.98 EUR\n            - generic [ref=e398]:\n              - term [ref=e399]: Discount\n              - definition [ref=e400]: \"-4.99 EUR\"\n            - generic [ref=e401]:\n              - term [ref=e402]: Shipping\n              - definition [ref=e403]: 4.99 EUR\n            - generic [ref=e404]:\n              - term [ref=e405]: Tax\n              - definition [ref=e406]: 7.98 EUR\n            - generic [ref=e407]:\n              - term [ref=e408]: Total\n              - definition [ref=e409]: 49.98 EUR\n        - generic [ref=e410]:\n          - generic [ref=e411]: Payment details\n          - generic [ref=e413]:\n            - generic [ref=e414]:\n              - paragraph [ref=e415]: Credit Card\n              - paragraph [ref=e416]: \"49.98 EUR - Ref: mock_kfkqps3gwqkjvtny\"\n            - generic [ref=e417]: Captured\n      - generic [ref=e418]:\n        - generic [ref=e419]:\n          - generic [ref=e420]: Customer\n          - paragraph [ref=e421]: Guest\n          - paragraph [ref=e422]: erika.musterfrau@example.com\n        - generic [ref=e423]:\n          - generic [ref=e424]: Shipping address\n          - generic [ref=e425]:\n            - paragraph [ref=e426]: Erika Musterfrau\n            - paragraph [ref=e427]: Musterstrasse 12\n            - paragraph [ref=e428]: 10115 Berlin\n            - paragraph [ref=e429]: Germany\n        - generic [ref=e430]:\n          - generic [ref=e431]: Billing address\n          - generic [ref=e432]:\n            - paragraph [ref=e433]: Erika Musterfrau\n            - paragraph [ref=e434]: Musterstrasse 12\n            - paragraph [ref=e435]: 10115 Berlin\n            - paragraph [ref=e436]: Germany\n```"}],"sourceToolAssistantUUID":"2e3f1175-08da-40ec-9c54-c0e2bb927498","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6db0af9f-f856-44fc-a8a4-86eecbd85f5c","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"a8c1995e-889b-40d0-a053-0b567e368441","timestamp":"2026-06-10T08:41:46.993Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a8c1995e-889b-40d0-a053-0b567e368441","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UhmbK7cpjQ8dBAoUcHF3MF","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISqAIKYggOGAIqQGijGT2cHvilj7tbWq1ZlddS5VjV2ULwED7xxAkk7kdOlkDe8Pi0Fdw+24nPAI3ejajj2wzuIjS+IRrGT1n/6d0yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzmNC/4/+5pKzRK7LQaDLAUcikuZ8Rgr06P2CIwrJVanjDnWq+PsLBLY7crH7dxvB/PNgduum+ZkOPwhsWB3oV6Ale1ULV9Z0abnTSHKnTMBwvSY3IQHLiATIHIdjIRlGQu2Ny+GL0QE9P6iVhiB9CW+B4eAUiJh7iXpvDv6khGJe8U9+yk3FtpqPSvmOeyYhpih9+QhFBryq+B363r4FpiSWHZTFKnWUomTvyI12ESocz7CVaB3k6o/7E4nke/siBT7RgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":2036,"cache_read_input_tokens":231340,"output_tokens":159,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2036,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":159,"cache_read_input_tokens":231340,"cache_creation_input_tokens":2036,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2036},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHGT8LpU9JHSVDyJyR6","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"58e89f07-87a7-4cad-9cbe-1efd54d21921","timestamp":"2026-06-10T08:41:52.725Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"58e89f07-87a7-4cad-9cbe-1efd54d21921","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UhmbK7cpjQ8dBAoUcHF3MF","type":"message","role":"assistant","content":[{"type":"text","text":"Order detail is complete (timeline, lines, totals, payment ref). Creating a fulfillment with tracking."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":2036,"cache_read_input_tokens":231340,"output_tokens":159,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2036,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":159,"cache_read_input_tokens":231340,"cache_creation_input_tokens":2036,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2036},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHGT8LpU9JHSVDyJyR6","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"6dc0903f-97b8-45d2-a742-a1f0274668aa","timestamp":"2026-06-10T08:41:52.733Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6dc0903f-97b8-45d2-a742-a1f0274668aa","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UhmbK7cpjQ8dBAoUcHF3MF","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01KwDWxxQJ79vUmMkFa2kvx5","name":"mcp__playwright__browser_click","input":{"element":"Create fulfillment button","target":"e349"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":2036,"cache_read_input_tokens":231340,"output_tokens":159,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":2036,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":159,"cache_read_input_tokens":231340,"cache_creation_input_tokens":2036,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":2036},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHGT8LpU9JHSVDyJyR6","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"227ab774-307c-4762-a14a-49067b28ddb7","timestamp":"2026-06-10T08:41:53.034Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"227ab774-307c-4762-a14a-49067b28ddb7","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01KwDWxxQJ79vUmMkFa2kvx5","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"create-fulfillment-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-54-075Z.yml)"}]}]},"uuid":"102adcc2-8461-4f33-83fd-7c96b58e08e6","timestamp":"2026-06-10T08:41:54.078Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"create-fulfillment-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-41-54-075Z.yml)"}],"sourceToolAssistantUUID":"227ab774-307c-4762-a14a-49067b28ddb7","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"102adcc2-8461-4f33-83fd-7c96b58e08e6","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_017KCSt3MREcDgaXiGJxiUZR","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_012muMTj95HPK73cym6Wc9PQ","name":"mcp__playwright__browser_snapshot","input":{"depth":14,"target":"[role=dialog]"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":422,"cache_read_input_tokens":233376,"output_tokens":87,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":422,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":87,"cache_read_input_tokens":233376,"cache_creation_input_tokens":422,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":422},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHGyZgQoVohKYcuYoFB","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"4b7fad5b-6bb5-4f23-ab67-275601a19eea","timestamp":"2026-06-10T08:41:58.670Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4b7fad5b-6bb5-4f23-ab67-275601a19eea","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: \"[role=dialog]\" does not match any elements.","is_error":true,"tool_use_id":"toolu_012muMTj95HPK73cym6Wc9PQ"}]},"uuid":"c0c66f7a-f4dc-49f4-92a8-2651c419ea8c","timestamp":"2026-06-10T08:41:58.678Z","toolUseResult":"Error: ### Error\nError: \"[role=dialog]\" does not match any elements.","sourceToolAssistantUUID":"4b7fad5b-6bb5-4f23-ab67-275601a19eea","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c0c66f7a-f4dc-49f4-92a8-2651c419ea8c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_019f47YSnZ1teidedvZxbTjq","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_0158AqPTHDMvqEfz3a1pGJXD","name":"mcp__playwright__browser_snapshot","input":{"depth":16,"target":"dialog"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":121,"cache_read_input_tokens":233798,"output_tokens":83,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":121,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":83,"cache_read_input_tokens":233798,"cache_creation_input_tokens":121,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":121},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHHKJpn6eJM1H3r2u8S","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"40861377-5e21-49c1-b763-5a9431adb895","timestamp":"2026-06-10T08:42:03.717Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"40861377-5e21-49c1-b763-5a9431adb895","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('dialog') resolved to 3 elements:\n    1) <dialog open=\"\" data-open=\"\" wire:ignore.self=\"\" data-modal=\"create-fulfillment\" x-on:modal-show.document=\"handleShow($event)\" x-on:modal-close.document=\"handleClose($event)\" x-data=\"fluxModal('create-fulfillment', 'WFQYqw5LgeJp6qpn0lSh')\" class=\"p-6 [:where(&)]:max-w-xl [:where(&)]:min-w-xs shadow-lg rounded-xl bg-white dark:bg-zinc-800 ring ring-black/5 dark:ring-zinc-700 shadow-lg rounded-xl md:max-w-lg\">…</dialog> aka getByRole('dialog')\n    2) <dialog wire:ignore.self=\"\" data-modal=\"create-refund\" x-on:modal-show.document=\"handleShow($event)\" x-on:modal-close.document=\"handleClose($event)\" x-data=\"fluxModal('create-refund', 'WFQYqw5LgeJp6qpn0lSh')\" class=\"p-6 [:where(&)]:max-w-xl [:where(&)]:min-w-xs shadow-lg rounded-xl bg-white dark:bg-zinc-800 ring ring-black/5 dark:ring-zinc-700 shadow-lg rounded-xl md:max-w-lg\">…</dialog> aka locator('dialog').filter({ hasText: 'Refund order Classic Cotton T' })\n    3) <dialog wire:ignore.self=\"\" data-modal=\"cancel-order\" x-on:modal-show.document=\"handleShow($event)\" x-on:modal-close.document=\"handleClose($event)\" x-data=\"fluxModal('cancel-order', 'WFQYqw5LgeJp6qpn0lSh')\" class=\"p-6 [:where(&)]:max-w-xl [:where(&)]:min-w-xs shadow-lg rounded-xl bg-white dark:bg-zinc-800 ring ring-black/5 dark:ring-zinc-700 shadow-lg rounded-xl md:max-w-md\">…</dialog> aka locator('dialog').filter({ hasText: 'Cancel this order? Pending' })","is_error":true,"tool_use_id":"toolu_0158AqPTHDMvqEfz3a1pGJXD"}]},"uuid":"ca3101d6-2f43-4bad-b98c-3b092908a2f8","timestamp":"2026-06-10T08:42:03.740Z","toolUseResult":"Error: ### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('dialog') resolved to 3 elements:\n    1) <dialog open=\"\" data-open=\"\" wire:ignore.self=\"\" data-modal=\"create-fulfillment\" x-on:modal-show.document=\"handleShow($event)\" x-on:modal-close.document=\"handleClose($event)\" x-data=\"fluxModal('create-fulfillment', 'WFQYqw5LgeJp6qpn0lSh')\" class=\"p-6 [:where(&)]:max-w-xl [:where(&)]:min-w-xs shadow-lg rounded-xl bg-white dark:bg-zinc-800 ring ring-black/5 dark:ring-zinc-700 shadow-lg rounded-xl md:max-w-lg\">…</dialog> aka getByRole('dialog')\n    2) <dialog wire:ignore.self=\"\" data-modal=\"create-refund\" x-on:modal-show.document=\"handleShow($event)\" x-on:modal-close.document=\"handleClose($event)\" x-data=\"fluxModal('create-refund', 'WFQYqw5LgeJp6qpn0lSh')\" class=\"p-6 [:where(&)]:max-w-xl [:where(&)]:min-w-xs shadow-lg rounded-xl bg-white dark:bg-zinc-800 ring ring-black/5 dark:ring-zinc-700 shadow-lg rounded-xl md:max-w-lg\">…</dialog> aka locator('dialog').filter({ hasText: 'Refund order Classic Cotton T' })\n    3) <dialog wire:ignore.self=\"\" data-modal=\"cancel-order\" x-on:modal-show.document=\"handleShow($event)\" x-on:modal-close.document=\"handleClose($event)\" x-data=\"fluxModal('cancel-order', 'WFQYqw5LgeJp6qpn0lSh')\" class=\"p-6 [:where(&)]:max-w-xl [:where(&)]:min-w-xs shadow-lg rounded-xl bg-white dark:bg-zinc-800 ring ring-black/5 dark:ring-zinc-700 shadow-lg rounded-xl md:max-w-md\">…</dialog> aka locator('dialog').filter({ hasText: 'Cancel this order? Pending' })","sourceToolAssistantUUID":"40861377-5e21-49c1-b763-5a9431adb895","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ca3101d6-2f43-4bad-b98c-3b092908a2f8","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018cMw7cD9MJBEHzjMNqtU3c","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01BBueKzDvz9KjmLJdRoEaRM","name":"mcp__playwright__browser_snapshot","input":{"depth":16,"target":"dialog[data-modal=\"create-fulfillment\"]"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":873,"cache_read_input_tokens":233919,"output_tokens":98,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":873,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":98,"cache_read_input_tokens":233919,"cache_creation_input_tokens":873,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":873},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHHgpPGao81kEvsBo67","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"83224985-9ccb-4880-92ff-cbfa895d753a","timestamp":"2026-06-10T08:42:08.099Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"83224985-9ccb-4880-92ff-cbfa895d753a","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01BBueKzDvz9KjmLJdRoEaRM","type":"tool_result","content":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n```yaml\n- dialog [ref=e437]:\n  - generic [ref=e438]:\n    - generic [ref=e439]: Create fulfillment\n    - generic [ref=e441]:\n      - checkbox [ref=e442]\n      - generic [ref=e444]:\n        - paragraph [ref=e445]: Classic Cotton T-Shirt (M / Navy)\n        - paragraph [ref=e446]: 2 unfulfilled\n      - spinbutton [ref=e448]: \"2\"\n    - generic [ref=e449]:\n      - generic [ref=e450]: Tracking company\n      - textbox \"Tracking company\" [ref=e452]:\n        - /placeholder: UPS, FedEx, DHL...\n    - generic [ref=e453]:\n      - generic [ref=e454]: Tracking number\n      - textbox \"Tracking number\" [ref=e456]\n    - generic [ref=e457]:\n      - generic [ref=e458]: Tracking URL\n      - textbox \"Tracking URL\" [ref=e460]:\n        - /placeholder: https://\n    - generic [ref=e461]:\n      - button \"Cancel\" [ref=e463]\n      - button \"Create fulfillment\" [ref=e464]:\n        - img [ref=e466]\n        - generic [ref=e469]: Create fulfillment\n  - button \"Close modal\" [ref=e472]:\n    - img [ref=e473]\n```"}]}]},"uuid":"292c4315-4996-4e1d-b6aa-c0d5bacf663f","timestamp":"2026-06-10T08:42:08.110Z","toolUseResult":[{"type":"text","text":"### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n```yaml\n- dialog [ref=e437]:\n  - generic [ref=e438]:\n    - generic [ref=e439]: Create fulfillment\n    - generic [ref=e441]:\n      - checkbox [ref=e442]\n      - generic [ref=e444]:\n        - paragraph [ref=e445]: Classic Cotton T-Shirt (M / Navy)\n        - paragraph [ref=e446]: 2 unfulfilled\n      - spinbutton [ref=e448]: \"2\"\n    - generic [ref=e449]:\n      - generic [ref=e450]: Tracking company\n      - textbox \"Tracking company\" [ref=e452]:\n        - /placeholder: UPS, FedEx, DHL...\n    - generic [ref=e453]:\n      - generic [ref=e454]: Tracking number\n      - textbox \"Tracking number\" [ref=e456]\n    - generic [ref=e457]:\n      - generic [ref=e458]: Tracking URL\n      - textbox \"Tracking URL\" [ref=e460]:\n        - /placeholder: https://\n    - generic [ref=e461]:\n      - button \"Cancel\" [ref=e463]\n      - button \"Create fulfillment\" [ref=e464]:\n        - img [ref=e466]\n        - generic [ref=e469]: Create fulfillment\n  - button \"Close modal\" [ref=e472]:\n    - img [ref=e473]\n```"}],"sourceToolAssistantUUID":"83224985-9ccb-4880-92ff-cbfa895d753a","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"292c4315-4996-4e1d-b6aa-c0d5bacf663f","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"292c4315-4996-4e1d-b6aa-c0d5bacf663f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01DVcqJCMfJCYWK9FXNsT3gc","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MmDG6xyNRyW5R5Uy5eHKyU","name":"mcp__playwright__browser_click","input":{"element":"Line checkbox","target":"e442"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":623,"cache_read_input_tokens":234792,"output_tokens":83,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":623,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":83,"cache_read_input_tokens":234792,"cache_creation_input_tokens":623,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":623},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHJ1a1G3YmXRRpSgAHE","attributionMcpServer":"playwright","attributionMcpTool":"browser_snapshot","type":"assistant","uuid":"a500166d-1442-40aa-812a-541c41d0d705","timestamp":"2026-06-10T08:42:12.362Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a500166d-1442-40aa-812a-541c41d0d705","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MmDG6xyNRyW5R5Uy5eHKyU","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"fulfill-line-checkbox-27\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-42-13-396Z.yml)"}]}]},"uuid":"76b5798c-5530-4ccf-97cf-9953859b886d","timestamp":"2026-06-10T08:42:13.399Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"fulfill-line-checkbox-27\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-42-13-396Z.yml)"}],"sourceToolAssistantUUID":"a500166d-1442-40aa-812a-541c41d0d705","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"76b5798c-5530-4ccf-97cf-9953859b886d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0196BtCsTwsYN6Hx3yUPXiWS","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MkhhnXVvyzfSL4G6juDmN2","name":"mcp__playwright__browser_fill_form","input":{"fields":[{"target":"e452","name":"Tracking company","type":"textbox","value":"DHL"},{"target":"e456","name":"Tracking number","type":"textbox","value":"JD014600003828332174"}]},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":221,"cache_read_input_tokens":235415,"output_tokens":137,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":221,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":137,"cache_read_input_tokens":235415,"cache_creation_input_tokens":221,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":221},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHJQ3rdRHYq8KsniZCe","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"e4937506-0581-4311-b21c-fa20629c6dc6","timestamp":"2026-06-10T08:42:18.435Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e4937506-0581-4311-b21c-fa20629c6dc6","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MkhhnXVvyzfSL4G6juDmN2","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Tracking company' }).fill('DHL');\nawait page.getByRole('textbox', { name: 'Tracking number' }).fill('JD014600003828332174');\n```"}]}]},"uuid":"341a076f-3bb8-4bdb-ba1b-2baf6ab54f28","timestamp":"2026-06-10T08:42:18.461Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.getByRole('textbox', { name: 'Tracking company' }).fill('DHL');\nawait page.getByRole('textbox', { name: 'Tracking number' }).fill('JD014600003828332174');\n```"}],"sourceToolAssistantUUID":"e4937506-0581-4311-b21c-fa20629c6dc6","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"341a076f-3bb8-4bdb-ba1b-2baf6ab54f28","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_016RXGs96N7igBmcpUVJFUjh","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_018UF25qJ9z2kd8FbV3mom6s","name":"mcp__playwright__browser_click","input":{"element":"Create fulfillment submit","target":"e464"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":227,"cache_read_input_tokens":235636,"output_tokens":86,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":227,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":86,"cache_read_input_tokens":235636,"cache_creation_input_tokens":227,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":227},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHJmkLGqP8PR318itxu","attributionMcpServer":"playwright","attributionMcpTool":"browser_fill_form","type":"assistant","uuid":"c59eea12-1e44-4849-8daf-2e6facbdb9ce","timestamp":"2026-06-10T08:42:24.092Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c59eea12-1e44-4849-8daf-2e6facbdb9ce","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_018UF25qJ9z2kd8FbV3mom6s","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"submit-fulfillment-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-42-26-136Z.yml)"}]}]},"uuid":"aa805c8d-99da-4a81-8cf2-db8ce66176cc","timestamp":"2026-06-10T08:42:26.140Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"submit-fulfillment-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-42-26-136Z.yml)"}],"sourceToolAssistantUUID":"c59eea12-1e44-4849-8daf-2e6facbdb9ce","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"aa805c8d-99da-4a81-8cf2-db8ce66176cc","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Wh59FtSBk43RjYpNhQSjJ8","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017j7qENAxSHmUsL4tD4jrFS","name":"mcp__playwright__browser_wait_for","input":{"text":"Fulfilled"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":221,"cache_read_input_tokens":235863,"output_tokens":156,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":221,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":156,"cache_read_input_tokens":235863,"cache_creation_input_tokens":221,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":221},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHKLnBZJsxFawSXLmSV","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"d8b480ae-136a-4adf-acea-bf628adaebaf","timestamp":"2026-06-10T08:42:31.675Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d8b480ae-136a-4adf-acea-bf628adaebaf","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017j7qENAxSHmUsL4tD4jrFS","type":"tool_result","content":[{"type":"text","text":"### Result\nWaited for Fulfilled\n### Ran Playwright code\n```js\nawait page.getByText(\"Fulfilled\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-42-31-688Z.yml)"}]}]},"uuid":"572e77eb-dc65-4108-846e-83c5d6fcd5cd","timestamp":"2026-06-10T08:42:31.692Z","toolUseResult":[{"type":"text","text":"### Result\nWaited for Fulfilled\n### Ran Playwright code\n```js\nawait page.getByText(\"Fulfilled\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/admin/orders/19\n- Page Title: Order #1016 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-42-31-688Z.yml)"}],"sourceToolAssistantUUID":"d8b480ae-136a-4adf-acea-bf628adaebaf","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"572e77eb-dc65-4108-846e-83c5d6fcd5cd","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Wh59FtSBk43RjYpNhQSjJ8","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MWncGqhNB5vW3KSVwrj8By","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/09-order-fulfilled.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":221,"cache_read_input_tokens":235863,"output_tokens":156,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":221,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":156,"cache_read_input_tokens":235863,"cache_creation_input_tokens":221,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":221},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHKLnBZJsxFawSXLmSV","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"107ff1eb-7f20-47e8-8440-f30312bc5069","timestamp":"2026-06-10T08:42:32.071Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"107ff1eb-7f20-47e8-8440-f30312bc5069","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MWncGqhNB5vW3KSVwrj8By","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/09-order-fulfilled.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/09-order-fulfilled.png\nawait page.screenshot({\n  path: 'review/09-order-fulfilled.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"a8729508-4365-4ff0-a299-9799c31e14f2","timestamp":"2026-06-10T08:42:32.125Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/09-order-fulfilled.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/09-order-fulfilled.png\nawait page.screenshot({\n  path: 'review/09-order-fulfilled.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"107ff1eb-7f20-47e8-8440-f30312bc5069","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a8729508-4365-4ff0-a299-9799c31e14f2","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"ad493480-281c-4f7b-a41c-cf189ec0d8fc","timestamp":"2026-06-10T08:42:32.158Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ad493480-281c-4f7b-a41c-cf189ec0d8fc","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0199r3kpyKfAwqznPJCj3qck","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS2gkKYggOGAIqQIEnDZpXnL95dycgPouCBI0NK4o+YRrVCpKOMYxyEyjY68rWsh9k7w/gI2KtSup1faD5Qbq5gGqQBxEHCcng4z8yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgykWYs0CcdLJO4bwFUaDAcUrhCG46rzSiWpXiIwYyZ44H2MKjCz55PjxV5d3lhn1QxgLDvMrLKXMqOXyC6U8nJPcP8jnIQQNIjaczgJKqUIamOed4WbBfAymJtcIQCAqWMijNDUF2y3wuxC7YelS7OyfEj1XNlYbQkZ6Irv0kHZauWzetkIxxw29JQjbu3YYLP9fuFodkwVhYVdtdxAOR7I9SchXbgAsf+yD2ZZOcK+iSJfYNKj0QlTp15XdRaV2VLub15y9fq9GBxlsdBLR1pwKA1LrkBy+ikgkstI6PveTeiyYy0OqczRXehQQLyHTbNMpS5xISwf7tVfplxdn+yv3FpctFanqb9mnpA2+PuUOL07YxiBQut4bR3Ju6XcceXZbjDkDp3ykO+bMMI0AZWxMZADB4eZEOpw9g87AkZVDIVG+PJJIQK4HihJh1Nxv5+BhNPQ8KpMZuR575/U41rX/+kRgOz595NJjhThAlGfVCT0HQRHHr8TxrtAarn6dTBp4dMw3jm5GcEE0n4cmPWVNpA8LwGPfJ+FDSrUn5xZT3FPFrAPhdt179gwwqZOrDglkm55wzYgRuQxmLcCXw7Jz1zJ6AL2vz6lam3uHqS7imgy4ycRsED0+2mZbmCmpvrY09HbbA1BIpr8iMQoD5sccXNKjsPv3B5V8J/IwjO9rZF2MmWA0H4zwOJQZtgnDQ/L5CYlGoUbnI4dLJ5/kYgL80e2zmgr9wC2QVxhno/4eObEHOpYx9pbJsjfRuuTlbaHSjHD1qDs5fQ7uBL/alzEBDED1rSg+f/Z8iox0/PSo0o8P/xG8KA51qH86+4sC2KmtO3bEp1VghcfNaG0m21XT2zpn6WcWM6GbLDnFi8DTENGp9idQh8+EsSm5HMHlUJG16/SXoHM1X2nQxGhgD5176VDiIyxiK7d2be3R9iXXJTtw1GsMiHBQjdVr4OvBAegQC1YtY4QwkffanxqBHdhhC8qmlSXGIzaIZkKQ68eyFJ6IlD2g5EJZE8PjFHxpFMCgrCGkIASMoICnGTIOIo1EkeC1JGpKqDWiFggH/db+bdhb3KDca8td3vfvvZTz2pr/4DCt1DXpKG93B+HAHRZs12QDxblLc/hM+ZWsDAYMxjFrJhmtsaZxJjA9sN1dq7uVrFhM1RZ1zsa8Mxrh9G24VRIWIRSB0ieZvu/VEMEkOb3DvxAvAJgypqCwA6G8ReJALUWUCsvyM+FUfJUAI8SuBBVJNqkRpqSIAFpTqyavH6DBMlv2oG/YSfNAFOTPk4hDStH+6h7rgyqFR5CRh2Mv2nQeZw01mpGJJ3zZ31UYpFzeuwkwUAxQOHzZXhKdaCOnEMhW1S4lphV72gUGX+yxbphTWwkDLl1lWF18Di5+WEjL1EKH+8UwRnmvgXUUsoQ7WiAst2xOUEHy3E9MXZdhMwq9/wXnTd8Gx3BpUEXEA0G2dZHmY6pVFXrEbYSoQ1f4zx2YqAk2lVqZ/r484CRw3ov2nFkgvVvcfzHJdMK8EBWaw4YAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":507,"cache_read_input_tokens":236084,"output_tokens":552,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":507,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":552,"cache_read_input_tokens":236084,"cache_creation_input_tokens":507,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":507},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHKn9RJKDWAXN4Derma","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"49cdab6d-8761-4a32-a1b8-116bc20f3efe","timestamp":"2026-06-10T08:42:51.966Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"49cdab6d-8761-4a32-a1b8-116bc20f3efe","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0199r3kpyKfAwqznPJCj3qck","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISwgIKYwgOGAIqQE3Lhi5sZa3vq2DhSuiDEqitkBUptDTRlKwfCY0iQXrkix5obSSSG6d8hf4YwHtgVb7NZg2FrU/plcAgn4lEY/IyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMJyQTVd/C3PxEtNd4GgzLScFtDnuqzRFFX30iMBEQyWvUDMH9/DvaqljlKZHw2/+XysZyJNTJDKa3jgH3jnoiwAAyXYjq5vl7y8VfwiqMAZYDOGkCQLK/XNzLKwzbeWd5Dxol+Vt7yTsSD+QUo+rNh6QSe40dDFRylz9MXGRsWMrOqn7ZxEstLAvIHsKv+LiEAC6ylZuardINfayl6Hdfnxn03jNQXsCpqysK/FuAeP+zfEFjfn4QphM6c9cT6IBfFK4Ml831ylF+Got1yQL0Yc9YqgoVL/YOQrdtGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":507,"cache_read_input_tokens":236084,"output_tokens":552,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":507,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":552,"cache_read_input_tokens":236084,"cache_creation_input_tokens":507,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":507},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHKn9RJKDWAXN4Derma","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"80eb90da-0c0c-427b-9a76-4be3d612739c","timestamp":"2026-06-10T08:42:52.004Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"80eb90da-0c0c-427b-9a76-4be3d612739c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_0199r3kpyKfAwqznPJCj3qck","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Wvbas3WpiQJ6uUzYQNR2oH","name":"Bash","input":{"command":"sqlite3 database/database.sqlite \"select o.id, o.order_number, o.financial_status from orders o join payments p on p.order_id=o.id where p.method='bank_transfer' and o.financial_status='pending' limit 3;\"","description":"Find pending bank transfer orders"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":507,"cache_read_input_tokens":236084,"output_tokens":552,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":507,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":552,"cache_read_input_tokens":236084,"cache_creation_input_tokens":507,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":507},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHKn9RJKDWAXN4Derma","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"41e99fa3-632c-49b0-9411-26daba5777e9","timestamp":"2026-06-10T08:42:52.938Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"41e99fa3-632c-49b0-9411-26daba5777e9","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Wvbas3WpiQJ6uUzYQNR2oH","type":"tool_result","content":"5|#1005|pending\n18|#5003|pending","is_error":false}]},"uuid":"1aaff2df-929b-4205-9acb-0e4272bdf9f7","timestamp":"2026-06-10T08:42:53.039Z","toolUseResult":{"stdout":"5|#1005|pending\n18|#5003|pending","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"41e99fa3-632c-49b0-9411-26daba5777e9","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1aaff2df-929b-4205-9acb-0e4272bdf9f7","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01B4fxWvxNk1qZNN7qxTCRpb","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01TrhAesTJUyddMN9pwCr5qt","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/orders/5"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":703,"cache_read_input_tokens":236591,"output_tokens":71,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":703,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":71,"cache_read_input_tokens":236591,"cache_creation_input_tokens":703,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":703},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHMLiX9V3dKPjrGdjfF","attributionMcpServer":"playwright","attributionMcpTool":"browser_take_screenshot","type":"assistant","uuid":"69b102d8-4273-403e-b3fc-dc9b64d0c9fb","timestamp":"2026-06-10T08:43:00.493Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"69b102d8-4273-403e-b3fc-dc9b64d0c9fb","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01TrhAesTJUyddMN9pwCr5qt","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/orders/5');\n```\n### Page\n- Page URL: http://shop.test/admin/orders/5\n- Page Title: Order #1005 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-00-698Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-00-495Z.log#L1"}]}]},"uuid":"9b7a8430-64a9-4940-b9f9-5b5d418abf34","timestamp":"2026-06-10T08:43:00.701Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/orders/5');\n```\n### Page\n- Page URL: http://shop.test/admin/orders/5\n- Page Title: Order #1005 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-00-698Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-00-495Z.log#L1"}],"sourceToolAssistantUUID":"69b102d8-4273-403e-b3fc-dc9b64d0c9fb","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"9b7a8430-64a9-4940-b9f9-5b5d418abf34","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01R9BJeLo5ZXeAa4EZsMp8GP","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01WfhYH1zhdeVUPqwnShDseo","name":"mcp__playwright__browser_click","input":{"element":"Confirm payment button","target":"button:has-text(\"Confirm payment\")"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":244,"cache_read_input_tokens":237294,"output_tokens":95,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":244,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":95,"cache_read_input_tokens":237294,"cache_creation_input_tokens":244,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":244},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHN6ntmBdzmMkgdR3tD","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"c6616968-6aad-4390-97de-29d7a5c29bd2","timestamp":"2026-06-10T08:43:09.233Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"c6616968-6aad-4390-97de-29d7a5c29bd2","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('button:has-text(\"Confirm payment\")') resolved to 2 elements:\n    1) <button type=\"button\" wire:click=\"confirmPayment\" wire:target=\"confirmPayment\" data-test=\"confirm-payment-button\" data-flux-button=\"data-flux-button\" wire:loading.attr=\"data-flux-loading\" data-flux-group-target=\"data-flux-group-target\" class=\"relative items-center font-medium justify-center gap-2 whitespace-nowrap disabled:opacity-75 dark:disabled:opacity-75 disabled:cursor-default disabled:pointer-events-none justify-center h-10 text-sm rounded-lg ps-4 pe-4 inline-flex  bg-[var(--color-accent)] hover…>…</button> aka locator('[data-test=\"confirm-payment-button\"]')\n    2) <button type=\"button\" wire:click=\"confirmPayment\" wire:target=\"confirmPayment\" data-flux-button=\"data-flux-button\" wire:loading.attr=\"data-flux-loading\" data-test=\"confirm-payment-button-panel\" data-flux-group-target=\"data-flux-group-target\" class=\"relative items-center font-medium justify-center gap-2 whitespace-nowrap disabled:opacity-75 dark:disabled:opacity-75 disabled:cursor-default disabled:pointer-events-none justify-center h-8 text-sm rounded-md px-3 inline-flex  bg-[var(--color-accent)] hover…>…</button> aka locator('[data-test=\"confirm-payment-button-panel\"]')\n\nCall log:\n\u001b[2m  - waiting for locator('button:has-text(\"Confirm payment\")')\u001b[22m","is_error":true,"tool_use_id":"toolu_01WfhYH1zhdeVUPqwnShDseo"}]},"uuid":"a237c27f-6490-41f3-a78a-f117f9eaa630","timestamp":"2026-06-10T08:43:09.252Z","toolUseResult":"Error: ### Error\nError: browserBackend.callTool: Error: strict mode violation: locator('button:has-text(\"Confirm payment\")') resolved to 2 elements:\n    1) <button type=\"button\" wire:click=\"confirmPayment\" wire:target=\"confirmPayment\" data-test=\"confirm-payment-button\" data-flux-button=\"data-flux-button\" wire:loading.attr=\"data-flux-loading\" data-flux-group-target=\"data-flux-group-target\" class=\"relative items-center font-medium justify-center gap-2 whitespace-nowrap disabled:opacity-75 dark:disabled:opacity-75 disabled:cursor-default disabled:pointer-events-none justify-center h-10 text-sm rounded-lg ps-4 pe-4 inline-flex  bg-[var(--color-accent)] hover…>…</button> aka locator('[data-test=\"confirm-payment-button\"]')\n    2) <button type=\"button\" wire:click=\"confirmPayment\" wire:target=\"confirmPayment\" data-flux-button=\"data-flux-button\" wire:loading.attr=\"data-flux-loading\" data-test=\"confirm-payment-button-panel\" data-flux-group-target=\"data-flux-group-target\" class=\"relative items-center font-medium justify-center gap-2 whitespace-nowrap disabled:opacity-75 dark:disabled:opacity-75 disabled:cursor-default disabled:pointer-events-none justify-center h-8 text-sm rounded-md px-3 inline-flex  bg-[var(--color-accent)] hover…>…</button> aka locator('[data-test=\"confirm-payment-button-panel\"]')\n\nCall log:\n\u001b[2m  - waiting for locator('button:has-text(\"Confirm payment\")')\u001b[22m","sourceToolAssistantUUID":"c6616968-6aad-4390-97de-29d7a5c29bd2","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a237c27f-6490-41f3-a78a-f117f9eaa630","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Ndk4R6nYSFaC1KqZV16prn","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01KReeU64NBAnALqTiNZNFux","name":"mcp__playwright__browser_click","input":{"element":"Confirm payment button","target":"[data-test=\"confirm-payment-button\"]"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":682,"cache_read_input_tokens":237538,"output_tokens":97,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":682,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":97,"cache_read_input_tokens":237538,"cache_creation_input_tokens":682,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":682},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHNWygcu2CJLUQX6dnz","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"88a9d5a9-1ad9-4f3d-b562-2f9d727806ef","timestamp":"2026-06-10T08:43:13.984Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"88a9d5a9-1ad9-4f3d-b562-2f9d727806ef","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01KReeU64NBAnALqTiNZNFux","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"confirm-payment-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/5\n- Page Title: Order #1005 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-16-021Z.yml)"}]}]},"uuid":"e22d3ebf-ebc4-4ec0-87ab-bc2081d93d2c","timestamp":"2026-06-10T08:43:16.023Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.locator('[data-test=\"confirm-payment-button\"]').click();\n```\n### Page\n- Page URL: http://shop.test/admin/orders/5\n- Page Title: Order #1005 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-16-021Z.yml)"}],"sourceToolAssistantUUID":"88a9d5a9-1ad9-4f3d-b562-2f9d727806ef","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e22d3ebf-ebc4-4ec0-87ab-bc2081d93d2c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018rAKPu948zxN8mCKFRt1X3","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01HzakxRuS3myr2c8MhtFxsd","name":"mcp__playwright__browser_wait_for","input":{"text":"Payment received"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":230,"cache_read_input_tokens":238220,"output_tokens":186,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":230,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":186,"cache_read_input_tokens":238220,"cache_creation_input_tokens":230,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":230},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHP3kMtPxvS6MhsgKYf","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"e59ffab3-a8b5-4fe0-a89a-9ac26022ca3a","timestamp":"2026-06-10T08:43:22.504Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e59ffab3-a8b5-4fe0-a89a-9ac26022ca3a","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01HzakxRuS3myr2c8MhtFxsd","type":"tool_result","content":[{"type":"text","text":"### Result\nWaited for Payment received\n### Ran Playwright code\n```js\nawait page.getByText(\"Payment received\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/admin/orders/5\n- Page Title: Order #1005 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-22-515Z.yml)"}]}]},"uuid":"f7460f4c-27a1-41e1-a808-136a94d37d0e","timestamp":"2026-06-10T08:43:22.517Z","toolUseResult":[{"type":"text","text":"### Result\nWaited for Payment received\n### Ran Playwright code\n```js\nawait page.getByText(\"Payment received\").first().waitFor({ state: 'visible' });\n```\n### Page\n- Page URL: http://shop.test/admin/orders/5\n- Page Title: Order #1005 - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-22-515Z.yml)"}],"sourceToolAssistantUUID":"e59ffab3-a8b5-4fe0-a89a-9ac26022ca3a","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f7460f4c-27a1-41e1-a808-136a94d37d0e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_018rAKPu948zxN8mCKFRt1X3","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_019fEujUf3kFMxaQB9b41ut7","name":"Bash","input":{"command":"sqlite3 database/database.sqlite \"select order_number, status, financial_status from orders where id=5; select status from payments where order_id=5;\"","description":"Verify bank transfer confirmation effects"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":230,"cache_read_input_tokens":238220,"output_tokens":186,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":230,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":186,"cache_read_input_tokens":238220,"cache_creation_input_tokens":230,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":230},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHP3kMtPxvS6MhsgKYf","attributionMcpServer":"playwright","attributionMcpTool":"browser_click","type":"assistant","uuid":"a3332d5b-39c6-4b97-a69e-046b92b2991f","timestamp":"2026-06-10T08:43:23.285Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a3332d5b-39c6-4b97-a69e-046b92b2991f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_019fEujUf3kFMxaQB9b41ut7","type":"tool_result","content":"#1005|paid|paid\ncaptured","is_error":false}]},"uuid":"ed40af25-0cbf-48ef-b333-7728101093a6","timestamp":"2026-06-10T08:43:23.363Z","toolUseResult":{"stdout":"#1005|paid|paid\ncaptured","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"a3332d5b-39c6-4b97-a69e-046b92b2991f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"ed40af25-0cbf-48ef-b333-7728101093a6","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"ed40af25-0cbf-48ef-b333-7728101093a6","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013Hjz6Yssn5PbATiVKFxFJM","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISjAQKYggOGAIqQJ8peX6wC76n/3oNa5XzvECH2Wupm+Ssok3KK9zvb0TKNom7BGhfS/19Yd8AnWkoIIfZFjT9SCpw8w6F6QEW2IAyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgyaC2FonpWYJfNE0hwaDDMHmrYz3X8PKutHiiIwT4mMAsPRPuXDomiywGQvFEZ2XFPprdX6gIo+nxDgkJZ/MhEgniGkjMuEWzzXPe0TKtcCl24R13SGxWwJU8rxICjWn+KL4I5E/43LlsyC4EbcMqytkCaYAN7bEK3+5ucHB7qTrPKxjfTYTfiZvju2coPU8nDqAk5rC/ZG/BssnX5Gu/hBHgqk1U+M1MD05nS0rr38gd9Fgk02c7zLxwIM7MDLce+mJL1M1MW6mtmISijzuR0jtZjPx0K+gb/9LrNUV2VlQHQgaeq5ggi1VZvTA7psCbMw+8tFx9KDRYzX2awYATPEdp9exeiDv+jsTfWkKgCDiDHd99LuPFQ1ZaaaTjxHXySxvK9cus9To4ko6yRyms57f3E0IZOWy0S5JyKGrapMe9tBveVb4wDT9e2teuacuZWkqHeQbJf22fi7BOSYmeCbZtZ6PQuSEE/GwYLEey4YTxf6NtNV7VVkKvjj52EcUl8GoZMcReJ0JiY/nDWw/qhwXZe/Dw6HY7pZuKlc22NREsO/JN2QfRgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":411,"cache_read_input_tokens":238450,"output_tokens":229,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":411,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":229,"cache_read_input_tokens":238450,"cache_creation_input_tokens":411,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":411},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHPZ9SLAAXDnPQpQsPd","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"7dc9cec2-5c47-4e9f-80e8-e970e8438eb3","timestamp":"2026-06-10T08:43:29.791Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7dc9cec2-5c47-4e9f-80e8-e970e8438eb3","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013Hjz6Yssn5PbATiVKFxFJM","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISuwIKYwgOGAIqQGIkPpdsj47wvMKn3kgXOZKzzwptaoRPPHiyO53CGDhOH7yCzAubhf4SLPx+BgNy5//EWCQM6FvlJLMJSCaLhUoyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMOgEf9lvQFNuwEdZZGgzKr3eSLbMyWkksX3ciMNDcaqiW4pb46gWLl/RVM2bmg2L5dOPcpSTN/subNqmgdhKZ+V6u9I2AXjwZu939MyqFAV9sN9oiwM039kMV7lM6XXpcNi6KMhg29+U2GEkgQPFrMunkWlPS3yAkS4toVv9eDb2ceBVqvzDed4V3NNM3gNiT8sVGzvsbAph4+yOUxiuy7njiGZlAGrc1YbkCJBGih6pG03iKSOXowcDV/fGimKtuqB2kGyr/87KETnwGwrh7mF+39wEYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":411,"cache_read_input_tokens":238450,"output_tokens":229,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":411,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":229,"cache_read_input_tokens":238450,"cache_creation_input_tokens":411,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":411},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHPZ9SLAAXDnPQpQsPd","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"a989be36-4e16-4acf-be4d-c66bfdb22c92","timestamp":"2026-06-10T08:43:29.792Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a989be36-4e16-4acf-be4d-c66bfdb22c92","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_013Hjz6Yssn5PbATiVKFxFJM","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01R5icHqrFdTyLt43FJ186fM","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/products"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":411,"cache_read_input_tokens":238450,"output_tokens":229,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":411,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":229,"cache_read_input_tokens":238450,"cache_creation_input_tokens":411,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":411},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHPZ9SLAAXDnPQpQsPd","attributionMcpServer":"playwright","attributionMcpTool":"browser_wait_for","type":"assistant","uuid":"a7151624-d472-4478-a7b3-1438505849f8","timestamp":"2026-06-10T08:43:30.032Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a7151624-d472-4478-a7b3-1438505849f8","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01R5icHqrFdTyLt43FJ186fM","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/products');\n```\n### Page\n- Page URL: http://shop.test/admin/products\n- Page Title: Products - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-30-273Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-30-034Z.log#L1"}]}]},"uuid":"6ee1b0dc-748e-4680-aad3-7a0c7a994a05","timestamp":"2026-06-10T08:43:30.276Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/products');\n```\n### Page\n- Page URL: http://shop.test/admin/products\n- Page Title: Products - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-30-273Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-30-034Z.log#L1"}],"sourceToolAssistantUUID":"a7151624-d472-4478-a7b3-1438505849f8","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6ee1b0dc-748e-4680-aad3-7a0c7a994a05","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01MWh7MqkxCMovw6qXf8vBiA","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01U41AE4wc4LXPzdTX8gPCDb","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/10-admin-products.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":392,"cache_read_input_tokens":238861,"output_tokens":162,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":392,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":162,"cache_read_input_tokens":238861,"cache_creation_input_tokens":392,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":392},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHQ4ghFpkzpjoTAZMD9","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"32e995b0-2003-44e1-b2a7-70e2efc57446","timestamp":"2026-06-10T08:43:34.856Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"32e995b0-2003-44e1-b2a7-70e2efc57446","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01U41AE4wc4LXPzdTX8gPCDb","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/10-admin-products.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/10-admin-products.png\nawait page.screenshot({\n  path: 'review/10-admin-products.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"0c87ae5e-0915-478a-90fd-3fefc312248b","timestamp":"2026-06-10T08:43:34.920Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/10-admin-products.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/10-admin-products.png\nawait page.screenshot({\n  path: 'review/10-admin-products.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"32e995b0-2003-44e1-b2a7-70e2efc57446","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0c87ae5e-0915-478a-90fd-3fefc312248b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01MWh7MqkxCMovw6qXf8vBiA","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MeSPwTSgPyrBycuGgTPeiF","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/products/1/edit"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":392,"cache_read_input_tokens":238861,"output_tokens":162,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":392,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":162,"cache_read_input_tokens":238861,"cache_creation_input_tokens":392,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":392},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHQ4ghFpkzpjoTAZMD9","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"3be4abac-9258-4365-8a17-42e5149f548f","timestamp":"2026-06-10T08:43:35.159Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3be4abac-9258-4365-8a17-42e5149f548f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MeSPwTSgPyrBycuGgTPeiF","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/products/1/edit');\n```\n### Page\n- Page URL: http://shop.test/admin/products/1/edit\n- Page Title: Classic Cotton T-Shirt - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-35-385Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-35-161Z.log#L1"}]}]},"uuid":"2be71bbd-d992-45dd-b98e-2a433c810c2c","timestamp":"2026-06-10T08:43:35.387Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/products/1/edit');\n```\n### Page\n- Page URL: http://shop.test/admin/products/1/edit\n- Page Title: Classic Cotton T-Shirt - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-35-385Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-35-161Z.log#L1"}],"sourceToolAssistantUUID":"3be4abac-9258-4365-8a17-42e5149f548f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2be71bbd-d992-45dd-b98e-2a433c810c2c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01K6vGjyZ7xY3Dx89dvtzMKE","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01S7SVRoRUzhUZUnzJFDdbQC","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/11-admin-product-form.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":533,"cache_read_input_tokens":239253,"output_tokens":161,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":533,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":161,"cache_read_input_tokens":239253,"cache_creation_input_tokens":533,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":533},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHQScoqPteJoVMFTnXW","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"726fcf12-bac1-4a6f-b378-2f51818e38a3","timestamp":"2026-06-10T08:43:40.481Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"726fcf12-bac1-4a6f-b378-2f51818e38a3","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01K6vGjyZ7xY3Dx89dvtzMKE","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01D6R622Fg5VwiZs5agvs8zY","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/discounts"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":533,"cache_read_input_tokens":239253,"output_tokens":161,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":533,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":161,"cache_read_input_tokens":239253,"cache_creation_input_tokens":533,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":533},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHQScoqPteJoVMFTnXW","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"3a1d22fc-c09e-44bc-bb8f-e6e68d2794d1","timestamp":"2026-06-10T08:43:40.499Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"726fcf12-bac1-4a6f-b378-2f51818e38a3","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01S7SVRoRUzhUZUnzJFDdbQC","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/11-admin-product-form.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/11-admin-product-form.png\nawait page.screenshot({\n  path: 'review/11-admin-product-form.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"06c6fbc5-398e-44e3-bf64-3d0bea5f330e","timestamp":"2026-06-10T08:43:40.570Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/11-admin-product-form.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/11-admin-product-form.png\nawait page.screenshot({\n  path: 'review/11-admin-product-form.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"726fcf12-bac1-4a6f-b378-2f51818e38a3","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3a1d22fc-c09e-44bc-bb8f-e6e68d2794d1","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01D6R622Fg5VwiZs5agvs8zY","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/discounts');\n```\n### Page\n- Page URL: http://shop.test/admin/discounts\n- Page Title: Discounts - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-40-730Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-40-574Z.log#L1"}]}]},"uuid":"4273aac3-303a-4b06-89b4-883c7cca0f42","timestamp":"2026-06-10T08:43:40.732Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/discounts');\n```\n### Page\n- Page URL: http://shop.test/admin/discounts\n- Page Title: Discounts - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-40-730Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-40-574Z.log#L1"}],"sourceToolAssistantUUID":"3a1d22fc-c09e-44bc-bb8f-e6e68d2794d1","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4273aac3-303a-4b06-89b4-883c7cca0f42","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"2ed72c1b-cb4a-4926-ab72-38994dc7451b","timestamp":"2026-06-10T08:43:40.734Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2ed72c1b-cb4a-4926-ab72-38994dc7451b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Nw6prYfK1QoLhsmnnR66v4","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01MiraoCUDKnNgTNz68j3ZKG","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/12-admin-discounts.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":523,"cache_read_input_tokens":239786,"output_tokens":164,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":523,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":164,"cache_read_input_tokens":239786,"cache_creation_input_tokens":523,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":523},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHQqN2sLaXJfJqMkELp","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"3a60ab6c-3655-4821-9f45-3cb4f2e38b0e","timestamp":"2026-06-10T08:43:45.713Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3a60ab6c-3655-4821-9f45-3cb4f2e38b0e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Nw6prYfK1QoLhsmnnR66v4","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01CBQG6iH2HaUfAF2zaEsX9d","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/settings/shipping"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":523,"cache_read_input_tokens":239786,"output_tokens":164,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":523,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":164,"cache_read_input_tokens":239786,"cache_creation_input_tokens":523,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":523},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHQqN2sLaXJfJqMkELp","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"36df26a5-55e1-4b55-a684-05964ae7f9de","timestamp":"2026-06-10T08:43:45.732Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3a60ab6c-3655-4821-9f45-3cb4f2e38b0e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01MiraoCUDKnNgTNz68j3ZKG","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/12-admin-discounts.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/12-admin-discounts.png\nawait page.screenshot({\n  path: 'review/12-admin-discounts.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"ab651e83-a626-4824-8292-c2ebd00591a7","timestamp":"2026-06-10T08:43:45.765Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/12-admin-discounts.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/12-admin-discounts.png\nawait page.screenshot({\n  path: 'review/12-admin-discounts.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"3a60ab6c-3655-4821-9f45-3cb4f2e38b0e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"36df26a5-55e1-4b55-a684-05964ae7f9de","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01CBQG6iH2HaUfAF2zaEsX9d","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/settings/shipping');\n```\n### Page\n- Page URL: http://shop.test/admin/settings/shipping\n- Page Title: Shipping - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-45-967Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-45-766Z.log#L1"}]}]},"uuid":"446bfddf-d8cb-49a4-9187-8df489b125a5","timestamp":"2026-06-10T08:43:45.969Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/settings/shipping');\n```\n### Page\n- Page URL: http://shop.test/admin/settings/shipping\n- Page Title: Shipping - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-45-967Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-45-766Z.log#L1"}],"sourceToolAssistantUUID":"36df26a5-55e1-4b55-a684-05964ae7f9de","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"446bfddf-d8cb-49a4-9187-8df489b125a5","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01BEkKHK2YGjDmgDMoDmornL","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01848FJBFpGAZdjXUxbTtLx3","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/13-admin-shipping.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":661,"cache_read_input_tokens":240309,"output_tokens":161,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":661,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":161,"cache_read_input_tokens":240309,"cache_creation_input_tokens":661,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":661},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHRDkvw85ZpmBKjMTxf","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"ab965d79-b17e-46d0-91fa-d4565ab507df","timestamp":"2026-06-10T08:43:51.303Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ab965d79-b17e-46d0-91fa-d4565ab507df","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01BEkKHK2YGjDmgDMoDmornL","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Jmn1WJYB5r8JErZPzjRtDg","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/analytics"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":661,"cache_read_input_tokens":240309,"output_tokens":161,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":661,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":161,"cache_read_input_tokens":240309,"cache_creation_input_tokens":661,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":661},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHRDkvw85ZpmBKjMTxf","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"7ecb1c81-5bf5-4a74-ba31-25b1642fe425","timestamp":"2026-06-10T08:43:51.319Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"ab965d79-b17e-46d0-91fa-d4565ab507df","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01848FJBFpGAZdjXUxbTtLx3","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/13-admin-shipping.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/13-admin-shipping.png\nawait page.screenshot({\n  path: 'review/13-admin-shipping.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"307041d5-280c-4051-b1f0-d301af63c9fa","timestamp":"2026-06-10T08:43:51.358Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/13-admin-shipping.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/13-admin-shipping.png\nawait page.screenshot({\n  path: 'review/13-admin-shipping.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"ab965d79-b17e-46d0-91fa-d4565ab507df","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"7ecb1c81-5bf5-4a74-ba31-25b1642fe425","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Jmn1WJYB5r8JErZPzjRtDg","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/analytics');\n```\n### Page\n- Page URL: http://shop.test/admin/analytics\n- Page Title: Analytics - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-51-508Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-51-359Z.log#L1"}]}]},"uuid":"42d9fb03-84d5-439e-812b-b2df60a08734","timestamp":"2026-06-10T08:43:51.510Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/analytics');\n```\n### Page\n- Page URL: http://shop.test/admin/analytics\n- Page Title: Analytics - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-51-508Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-51-359Z.log#L1"}],"sourceToolAssistantUUID":"7ecb1c81-5bf5-4a74-ba31-25b1642fe425","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"42d9fb03-84d5-439e-812b-b2df60a08734","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01SkAPQ9NGDfgZvcWJFLXVoj","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01SGvzdF1AGaaVuGFZZECBq5","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/14-admin-analytics.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":523,"cache_read_input_tokens":240970,"output_tokens":165,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":523,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":165,"cache_read_input_tokens":240970,"cache_creation_input_tokens":523,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":523},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHRdQyFtyDA7BfZ6Tqy","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"390f53eb-c50d-4692-bd5e-d49c07410526","timestamp":"2026-06-10T08:43:56.732Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"390f53eb-c50d-4692-bd5e-d49c07410526","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01SkAPQ9NGDfgZvcWJFLXVoj","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01DjEhugwrKUpmkkxqdpX3jx","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/themes/1/editor"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":523,"cache_read_input_tokens":240970,"output_tokens":165,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":523,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":165,"cache_read_input_tokens":240970,"cache_creation_input_tokens":523,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":523},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHRdQyFtyDA7BfZ6Tqy","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"9c4196d1-7cff-40d2-82f7-1b39480a13cd","timestamp":"2026-06-10T08:43:56.748Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"390f53eb-c50d-4692-bd5e-d49c07410526","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01SGvzdF1AGaaVuGFZZECBq5","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/14-admin-analytics.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/14-admin-analytics.png\nawait page.screenshot({\n  path: 'review/14-admin-analytics.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"c28fc2f7-314c-4295-816f-08dced351fe8","timestamp":"2026-06-10T08:43:56.789Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/14-admin-analytics.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/14-admin-analytics.png\nawait page.screenshot({\n  path: 'review/14-admin-analytics.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"390f53eb-c50d-4692-bd5e-d49c07410526","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"c28fc2f7-314c-4295-816f-08dced351fe8","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"9c4196d1-7cff-40d2-82f7-1b39480a13cd","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01DjEhugwrKUpmkkxqdpX3jx","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/themes/1/editor');\n```\n### Page\n- Page URL: http://shop.test/admin/themes/1/editor\n- Page Title: Default Theme - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-57-143Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-56-790Z.log#L1-L2"}]}]},"uuid":"f320dac2-bb89-4b63-9d96-b7b1580e2946","timestamp":"2026-06-10T08:43:57.145Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/themes/1/editor');\n```\n### Page\n- Page URL: http://shop.test/admin/themes/1/editor\n- Page Title: Default Theme - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-43-57-143Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-43-56-790Z.log#L1-L2"}],"sourceToolAssistantUUID":"9c4196d1-7cff-40d2-82f7-1b39480a13cd","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f320dac2-bb89-4b63-9d96-b7b1580e2946","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Y5uzb5xN4N9HaLdvHjtBFc","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_0189nCLqjPw5G6JFv1hjvtP2","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/15-admin-theme-editor.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":539,"cache_read_input_tokens":241493,"output_tokens":162,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":539,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":162,"cache_read_input_tokens":241493,"cache_creation_input_tokens":539,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":539},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHS3hDgBwwW1i3phFwf","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"3a54e107-95e6-4b5a-bdce-a4944ccdcae3","timestamp":"2026-06-10T08:44:03.354Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3a54e107-95e6-4b5a-bdce-a4944ccdcae3","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_0189nCLqjPw5G6JFv1hjvtP2","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/15-admin-theme-editor.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/15-admin-theme-editor.png\nawait page.screenshot({\n  path: 'review/15-admin-theme-editor.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"8f4dd6c9-f96c-4811-b920-cfc4715a93d2","timestamp":"2026-06-10T08:44:03.413Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/15-admin-theme-editor.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/15-admin-theme-editor.png\nawait page.screenshot({\n  path: 'review/15-admin-theme-editor.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"3a54e107-95e6-4b5a-bdce-a4944ccdcae3","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"8f4dd6c9-f96c-4811-b920-cfc4715a93d2","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Y5uzb5xN4N9HaLdvHjtBFc","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01GWYheRfN2QS8xsWxNtrCTr","name":"mcp__playwright__browser_navigate","input":{"url":"http://shop.test/admin/developers"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":539,"cache_read_input_tokens":241493,"output_tokens":162,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":539,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":162,"cache_read_input_tokens":241493,"cache_creation_input_tokens":539,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":539},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHS3hDgBwwW1i3phFwf","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"e3c4eb6f-e8d0-4b8b-bbe9-7eb89ab7354d","timestamp":"2026-06-10T08:44:03.719Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e3c4eb6f-e8d0-4b8b-bbe9-7eb89ab7354d","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01GWYheRfN2QS8xsWxNtrCTr","type":"tool_result","content":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/developers');\n```\n### Page\n- Page URL: http://shop.test/admin/developers\n- Page Title: Developers - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-44-03-884Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-44-03-720Z.log#L1"}]}]},"uuid":"20ed2375-4418-47f4-8e4a-ca8aa3686e32","timestamp":"2026-06-10T08:44:03.886Z","toolUseResult":[{"type":"text","text":"### Ran Playwright code\n```js\nawait page.goto('http://shop.test/admin/developers');\n```\n### Page\n- Page URL: http://shop.test/admin/developers\n- Page Title: Developers - Admin\n### Snapshot\n- [Snapshot](.playwright-mcp/page-2026-06-10T08-44-03-884Z.yml)\n### Events\n- New console entries: .playwright-mcp/console-2026-06-10T08-44-03-720Z.log#L1"}],"sourceToolAssistantUUID":"e3c4eb6f-e8d0-4b8b-bbe9-7eb89ab7354d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"20ed2375-4418-47f4-8e4a-ca8aa3686e32","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01MddRBkL6wauizM9A49H3LE","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01Q24d5hmHVyGwfPryKwtS8d","name":"mcp__playwright__browser_take_screenshot","input":{"type":"png","filename":"review/16-admin-developers.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":527,"cache_read_input_tokens":242032,"output_tokens":170,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":527,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":170,"cache_read_input_tokens":242032,"cache_creation_input_tokens":527,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":527},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHSYLQcsDW8SrraBLrD","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"779ccdc9-3334-4281-b1ac-f79751d54e82","timestamp":"2026-06-10T08:44:09.880Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"779ccdc9-3334-4281-b1ac-f79751d54e82","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01Q24d5hmHVyGwfPryKwtS8d","type":"tool_result","content":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/16-admin-developers.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/16-admin-developers.png\nawait page.screenshot({\n  path: 'review/16-admin-developers.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}]}]},"uuid":"03fe27a5-8677-451a-97e9-978fd59c1a88","timestamp":"2026-06-10T08:44:09.931Z","toolUseResult":[{"type":"text","text":"### Result\n- [Screenshot of viewport](review/16-admin-developers.png)\n### Ran Playwright code\n```js\n// Screenshot viewport and save it as review/16-admin-developers.png\nawait page.screenshot({\n  path: 'review/16-admin-developers.png',\n  scale: 'css',\n  type: 'png'\n});\n```"}],"sourceToolAssistantUUID":"779ccdc9-3334-4281-b1ac-f79751d54e82","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"03fe27a5-8677-451a-97e9-978fd59c1a88","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01MddRBkL6wauizM9A49H3LE","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01SqeoGgwpE1ffqCqyf3z9Mu","name":"mcp__playwright__browser_console_messages","input":{"level":"error","all":true},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":527,"cache_read_input_tokens":242032,"output_tokens":170,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":527,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":170,"cache_read_input_tokens":242032,"cache_creation_input_tokens":527,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":527},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHSYLQcsDW8SrraBLrD","attributionMcpServer":"playwright","attributionMcpTool":"browser_navigate","type":"assistant","uuid":"1b3fcdb4-3fdb-47f0-b809-b44e75c51553","timestamp":"2026-06-10T08:44:10.176Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1b3fcdb4-3fdb-47f0-b809-b44e75c51553","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01SqeoGgwpE1ffqCqyf3z9Mu","type":"tool_result","content":[{"type":"text","text":"### Result\nTotal messages: 3 (Errors: 0, Warnings: 0)\nReturning 2 messages for level \"error\"\n\n[ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error) @ http://shop.test/livewire-6701cc17/update:0\nObject"}]}]},"uuid":"09183c50-69fa-4782-8513-94cc04802227","timestamp":"2026-06-10T08:44:10.194Z","toolUseResult":[{"type":"text","text":"### Result\nTotal messages: 3 (Errors: 0, Warnings: 0)\nReturning 2 messages for level \"error\"\n\n[ERROR] Failed to load resource: the server responded with a status of 500 (Internal Server Error) @ http://shop.test/livewire-6701cc17/update:0\nObject"}],"sourceToolAssistantUUID":"1b3fcdb4-3fdb-47f0-b809-b44e75c51553","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"09183c50-69fa-4782-8513-94cc04802227","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"f34a0014-df80-48ff-9acc-fdbeee8b4b32","timestamp":"2026-06-10T08:44:10.239Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"f34a0014-df80-48ff-9acc-fdbeee8b4b32","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01B5yz9Mno19nK2svMDKyh8M","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS1wYKYggOGAIqQBX6ACQABgJ5CRr4XJs5j/aye/VBbdDRZjlEo0EtYuSchrP/B6GRH+53BLxNI+BdAawGQ/TcqQE3hyP96pD+N74yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgzug113LuuXllGBkfMaDGjzIX9qZCxMGM4/GSIws7tvw2er2cDZporNIg3bhSHRK1AL5FqZ7zykhm9zI9xdT+UGco+R5GuGDCaaQlEUKqIFeJExFQjPBu9UYVPbLCZN6nS4QXkVlBPysana0lW9cSAK4cKaEOjq/kSdVto4Tu1yyBg6b8QOlJWZOwwN0rjQFt9frGHsjLirs2qCt/UHe3kgN+7ykQIy7+OVJfCzdfUmxgHKbnQrIdr3tvf8PbhlQLNMCGx8th1Ep5rOZ+H3D6NoMLcjyhfA0IXZYr7jUzRXdrWIK/44JdAi1xQqP8iceG/iCPVDCV2P/M82n1tElr5V4E/CyU8Ayzw5xuenjdCs73zLkwY2rKD6ot7/y/gFUaac/HfO//ogUFb2ezM5ljkMz+lMDLQEhsdfrEj749tAUhffMdM8Fa7va6qUV0YhrQoEMioJISvQkGsoL/W/6hqbWP2HlclvCjpkeCZFdI3gR2MvbeTxJsZVkLBciiiUxml+CvH6mzESeKHbMEr/WpMAFRjXQKYlSlRrdkS9R0dTL629W5A+CS75miODL/T/Vy/fWfHxmbZUDRsmKVGruj8aeKp12SXFcYszWO3Rqxeqg2U+NfsRcPOUNKp6tN5FnWVXrCMcUDRLMjKezLj2I6TKRJ2X+ILjxGUKKZlr343cCFdvrqH/R4jN6dRSMLmqexZKVKB7PNFrhJVCbmuDyFvOe9eGiz+hWyOcSJnQljr/XABNjOnh1hcBHV9YqBrTfbISFViAXaLrKg3XubMfEXYvzz0Pu/ctfeEg5alL47PXMfBwBuqOxJu5v+o4pK5kLppWZL7MrL/QWW1Gxi0FyBTSlkQcq+1O74sxWbCSyRuPRr6nkBLkt8qTXAJXdjmaAnq52ss++wQuTnW4NUnuvVWguQ4670pPKgH4mjDnIrlqlV+xTB6qy5ssmb6jt+iIsVmldFUQkVVns+8XKnb+rhSA/pPW9NehRTmWS71BDdRyfBcYAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":468,"cache_read_input_tokens":242559,"output_tokens":408,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":468,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":408,"cache_read_input_tokens":242559,"cache_creation_input_tokens":468,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":468},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHT1y4xMKoDW9tVTQkf","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"aa086fbb-55ad-40e9-9ba4-2c223c2cc300","timestamp":"2026-06-10T08:44:20.448Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"aa086fbb-55ad-40e9-9ba4-2c223c2cc300","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01B5yz9Mno19nK2svMDKyh8M","type":"message","role":"assistant","content":[{"type":"text","text":"All console errors trace to the original pre-fix checkout 500 — nothing new. Let me visually verify the key screenshots before the review."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":468,"cache_read_input_tokens":242559,"output_tokens":408,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":468,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":408,"cache_read_input_tokens":242559,"cache_creation_input_tokens":468,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":468},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHT1y4xMKoDW9tVTQkf","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"5724ce69-ac2b-4ecd-9b34-e89bd0d4ee8a","timestamp":"2026-06-10T08:44:20.459Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5724ce69-ac2b-4ecd-9b34-e89bd0d4ee8a","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01B5yz9Mno19nK2svMDKyh8M","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01UfY6vkuZVkVYV13Tnvo3Cp","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/review/11-admin-product-form.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":468,"cache_read_input_tokens":242559,"output_tokens":408,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":468,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":408,"cache_read_input_tokens":242559,"cache_creation_input_tokens":468,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":468},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHT1y4xMKoDW9tVTQkf","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"1ced9bfd-f6ca-4e50-983f-21c16578cf54","timestamp":"2026-06-10T08:44:20.907Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1ced9bfd-f6ca-4e50-983f-21c16578cf54","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01UfY6vkuZVkVYV13Tnvo3Cp","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"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IiIiIiIiDWgw6l6ZtwIREREREREREWUSgxUiIiIiIiIiokwyFkR5V2xs7JMnT+RFXDY2Ns7Ozubm5oKIiIiIiIhITxisUJ4VHR198+bNpKQk+TI4ODgsLKxy5cqWlpaCiIiIiIiISB94KxDlWU+fPlVSFUmlUvn5+QkiIiIiIiIiPeEVK5RnpdmNc4b6diYiIiIiIiLSjsEK5VmJiYmpCxMSEgQRERERERGRnvBWICIiIiIiIiKiTGKwQkRERERERESUSQxWiIiIiIiIiIgyicEKEREREREREVEmMVghIiIiIiIiIsokBitERERERERERJnEYIWIiIiIiIiIKJMYrBARERERERERZRKDFSIiIiIiIiKiTGKwQkRERERERESUSQxWiIiIiIiIiIgyicEKEREREREREVEmMVghIiIiIiIiIsokBitERERERERERJnEYIWIiIiIiIiIKJPeXbDi7e0tiIiIiIiIiIjyEGOR/bapyeFuaoKIiIiIiIiIKPd7F1esIFVBmLJp06aJEycqCQsRERERERERUW73Lq5YARcXF5EpPXr0kANGRkbOzs7lypWrW7duJqZ27949xDqTJ08uX758iremT5+Ov+PGjRPZbNiwYVj4vn37CiIiIiIiIiLKE7IlWPFWE+obf0TWGBsbIwrp3r27SqV6+PDh1atXjx49OnLkyFq1agkiIiIiIiIiovdK/7cCIVKZPHmyj1qPHj2y2GetoaFhBTUXF5cOHTpMmDDBzc3t999/f/TokSAiIiIiIiIieq/0f8UKkhRXV1ckIBieMmWKfh8GZGBgMHz48AEDBly5cqV06dIoOXXq1NmzZ319fWvUqNG2bVtnZ2cU3rhx49ChQ/fv369YsWK7du3wV44eFxf3119/Xbp0ycnJqWPHjpUrV1amjIkcOHAgJCSkdu3avXv3NjExQWFQUNDWrVuvX79uZWWF6X/++eey/NWrV6iM6dja2jZo0ADzxYJhGdzd3QcOHIi3MOK0adOioqI2bNhw9erVokWLIhUSRERERERERJS3vLvHLesLoo2SJUsiNMHw48ePly5dipeIQpBrrF27FoVJSUnLly/Pnz//sGHDjIyMFi9erFKp5LirVq2KiYlB1IJkBCMmJyfL8mfPnq1bt65q1aoIXJDIyOkgFpkxY4aXl1fTpk0R4iAuwaTkKGvWrEFg9Nln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xGCFiIiIiIiIiCiTGKwQEREREREREWUSgxUiIiIiIiIiokzK8OOWiShzVCpVfHx8YmIiBgQRERFRDmZgYGCsZmZmJrJZXFycPEBKSkoSRESpGBoa4ufI1NQUf0WOxGCF6F2IjY1NSEiwsrKytbXNsT8HRERERBIyDpwQio6ODg8Pt7CwMDExEdkAR0cxMTFoLNnY2OAv2k6CiCgVZK9oT0VFRRkZGVlaWoqchw08omyH8zA4UHBwcBBEREREuQEOXczV0JgJDQ1NTk5G8CH0CsENJm5nZ4e5CCKi9OHMtLUafo4Qr+B0tchhmAoTZS8cMRgYGOCgQRARERHlNkg98ufPHx0drd97mTE1TBNTZqpCRLpDq8rExAS/HiKHYbBClL0SEhKYqhAREVHuZWpqmi9fvri4OKE/mBqmqferYIgoz0PbCslsYmKiyEn0fCuQt1rq8m7dugmiD09MTEwOvFCNiIiIKEOsra0jIyOTkpL00g0KpoNGEaYpiIgyDi2s2NjYHNVzpT4XpUePHq6urqnLb9++vW3btk2bNomsQRvVwsJCvCdIxeQCGBkZCSLd4KDB1tZWEBEREeVypqamOLDRyzUmOK7mtSpElGnm5uaIekVOordgBdEJ/k6YMCHNd6dMmeLt7e3i4iIyLigoaNWqVXfu3ImKirK3t69atWq/fv2034157969iRMnTp48uXz58tOnT0fJuHHjRMbhRz8uLk52O3zt2rU5c+b89NNPbm5ugkg32IX4DCAiIiLKA0xMTBISEoQ+4AApmx4zREQfArSwctrT2fXW5PPx8RHqi1a01MlEsPLixYvx48cjT+nZs2fp0qWvXLly7Nix3377DblJdl+9ggwMMUrfvn0bNGiAl0WKFGnXrh0f7EJERERERERECv0EK/JyFYQd6VXw9vZG8jJlypT0LmlJz4YNGwwNDceOHVuwYEG8RLYiL0K5ePFikyZNRHZCJB8aGqq8LFasGEIWQURERERERET0H70FK66urml2W5sVYWFhCFA+//xzmapIVatWLVeu3LVr12Swcvz48VOnTvn5+VWoUKFt27aVK1fWMsFXr15t3br15s2bNjY29evX79y5s1K+efNmlNva2rZp06ZFixb79+/fvn073nJ3d8fa9erVC8uA4e+++65kyZIqlWrLli1XrlyJjIysUqXKZ599VqhQIVQ+evTomTNnBg0atHHjxrt371arVq1Lly5FihTBW4cPHz59+vTr169r1arVqVMnzTUiIiIiIiIiolxKD8GKvFxF/Hc3kBayF1vdnxD0/Plz/EWQkaJ8ypQpcuDYsWN//vlnxYoVO3bs6OHhMWfOnAkTJpQtWzbNqSEEmT59emxsbPv27QMCAnbs2JGUlNS1a9eoqKgZM2agwqeffurv748Jmpqali5dulmzZgcOHMDcGzRo4ODgEBMTg+WJj49PTk5eunTpuXPnUI485ciRI/fv38ciWVtbR0REPHnyZNGiRS4uLsWLFz906BBmMXz48BcvXqxevbpfv3758+eX/fiiUBARERERERFRLqefYKWb2ltrent7T548WfdgJSgoSKg7N0nzXQQcGzdurFWr1qhRo/ASccmQIUN27twpX6Z28uRJBBzu7u6FCxfGSwMDA+QmCFZQHhgYOH/+fFmOKMTLy2vkyJGYLyogspF9rNy7d09Ox8/P78yZM71798Yc8bJ+/fo///zziRMn5EvkL23btm3UqJEcRjkmeOfOHXNz84YNG1pZWSFwuXv3LhYeCyCIiIiIiIiIKDfLarAib//RPSvJkAIFCgh1/7WOjo6p33358mVkZGTNmjXlS0NDwxo1aly9ejW9qT18+BB/9+/fL1/evHkzKioKkcqDBw8wfZmqwODBg4VW9+/fx1/l2UAlSpQoVKgQJqJUQNYjBzBZZCsqlQoLuXbt2hEjRtSuXbtly5ZNmzYVRERERERERJT7GYocrFixYvjr6+ubonzq1Knu7u7ILMR/4YuE4djY2OTk5DSnJutH/Efe44PKKNf+8OYUoqOjDQwM7O3tU8xXDhsZGaV+XJGtre3vv//eqFGja9euTZgwYdOmTYKIiIiIiIiIcr8cHazky5evbt26Bw8efPXqlVLo7e1969atypUrlyhRwsTERPNSkXv37pUqVSq9W2zKlCljaGjYv3//79SGDBnSt29fBwcHlPv7+yckJMhqXl5e+/btE+pLYIT6hqMU0ylbtiwK5fUvEBcX9+TJE0xEpA8LFhoa+tVXXy1ZsqRXr14HDhxQghgiIiIiIiIiyr1ydLACiCHwd+bMmUeOHHn06NH27dsXL15csmTJevXqGRsbN2nSZPfu3efPn0fysmPHjps3b7Zo0SK9SWEUMzOzlStXIkYJCAj49ddft2zZIssRlKxYsQKFV69eXbZsWXR0tFBfZoLY5dKlSyEhIZo5CIIVZ2fnP//8E3HJ8+fPkZXIiWhZCz8/v+nTp2O+SUlJWGxzc3N2sEJERERERESUB+jnccvZB9HGnDlzVq1atWHDhpiYGIQd1apV69evn7zdpn///sgp8G54eDhqolw+gzlNxYsXHz169Nq1a0eNGmVpaYnpfPnll7IcJSj//vvvTU1NMYUuXbrIUTp37rx169YhQ4YMHTpU6UPXxMRk3LhxyF+mTZuWkJCAlOfnn392cnLSshbNmjW7f/8+6mM5MZ3evXsj4hFERERERERElMsZxMfHi6yZMmVK165dXVxc3lpzm1rmehhJTk5GKoFgJc13IyMjra2thW4Q0CBAMTIySlEeFRVlbm6eujwkJATzlXcGaVKpVNh6qXtU0SJDy0mZEBwcnD9/fjns6emZZp369esLdW87sbGxdnZ2IjuFhoam2fUyERERUe6CYyecU8xQ14TpwTEYTlXa2NgIIqJMef78eXY35fCjp3vTUg9XrFSqVGny5Mmurq5vrXn79u1MPz/IwMAgvVQFMpRWpBeFWFlZpVmu2U+tpjT7qdWOqQoRERERERFRXqKHYKWb2rZt295aU8cLW4iIiIiIiIiIcgW99bGS6UtRiIiIiIiIiIhyqZz+VCAiIiIiIiIiohyLwQoRERERERERUSYxWCEiIiIiIiIiyiQGK0REREREREREmcRghYiIiIiIiIgokxisEOUFYWFhMTExgoiIiIiIiN4tBitEucPMmTMrpOWrr76Kjo6uU6fO77//rlQOCQlRhl1dXZctWyaIiIiI8rSIiAhBRPQ+GAsiyg369u3btm1bDLx48WLEiBE//PBD/fr18dLa2trExOTLL79EtiJrfv31105OTr/99psgIiIiyuuSkpLc3d03bdqEE0vFixdv0aIFjppwLCTfjYyMNDc3NzZ+S6sH49rb2wsiokxhsEKUOziqYcDW1hZ/S5YsWa1aNeXdcePGKcPPnj1TDiaIiIiI8rYNGzYsX7585syZtWvX9vHxwcD58+d3795taGjo6ek5ePDgY8eOFSxYUMsUlixZsm/fvgMHDggiokzhrUBEeUH79u1xoubKlStt27b19fXFMAbmz5+fohqOM3B4UadOnT59+hw6dEgQERER5XI4vKlRo8ann36KU1AtW7bE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jIw0lZWz1KhR45133mnUqFHr1q07dOhgAQAAAMgjHnvssb///ttMu7q66ti+U6dOTz/9tLNz5vvmv/zyywcPHly4cKGVKboeXKxYMeu2ioqKatas2UMPPfTqq69aN8m+/VlpBChQsj9YMYOqOMriuCoKUAYNGpSiMDo6esKECfqfDwwMVHqya9cuUx4fH+/h4WGvpn2rvb5ek5OTIyIiTEmrVq2KFCmiiTfeeGP58uVr16795JNP6tatO27cuKzshQEAAADcSrVr1zZPzNAx/19//TVjxgxNKByxbofp06cvXrz4jz/+sG4rNzc3BSKKRayb9Mgjj1SsWFGnWllpBChosjlYmW+TonD8+PFZzFZSW7du3cWLFz///HPFKJGRkV9//bUpr1Sp0u7duxWgODk56a09cKlevbpe7WPcJiUlhYeHK1g5d+6c2ulpc+jQIYUsCobq169vAQAAAMgLvL29AwICzHSLFi0OHz68evXq2xWsnD9/Xuca1u2mTCRz3UzOnj2rYCWLjQAFTTYHK2aoWivnKYROSEhQJqL/dsdOeopOpk6d+s4772hiy5Ytly5dMuU1atTQDmLBggWqX7ly5Z9++kkxyttvv629nio/99xzClycnZ0Vx3h6eloAAAAA8iZdajWXV+fOnbto0aIXXnjhgw8+0KXT1157TWcQn3766Zo1a3SRtVWrVk8//XSFChXMUtOnT//jjz90OjBgwAB7U5s2bZo4ceJXX33l5+ent3/++aea0qmELtDGxcV99NFHSnDi4+O7du360ksv6eJur169jh07pprdu3cvU6bMN998Y2/qeqtWclG0aNFq1ap9+eWXY8aM6dy5sy4eL126VFsycOBAXULWdd/PPvvMskUealDbUKJECV0VfvDBB3X+Yj6jzmu0Mdu2bWvbtu2TTz6p8x3VV50HHnhg8ODBQ4YMCQsLM5uhze7bt6/WHhMTM2vWrFWrVl29erVHjx4PP/zwyZMn9SM6YaMzqS5duowePdreiJbdunWrrmdrLTq30idVs5btfgX9hHUK9sMPP+inoVmPPfZYy5YtLaAgyf4eK/YRavv165ftHVXsOnTosHPnTu16vLy8tGsoVaqUucdHOynTA1C7mEaNGt19993aX2iv5O7urt3EF198oV2hwpQ6deo8++yzClnKly+vPcK8efO0m9MeTXtA7QssAAAAAHlQSEjIihUrTAcWpQlHjhwZO3ZssWLFAgMDFXxoesmSJTpH0FmAggCdUOhEwMfHR9GJTgcaN26sRGDmzJm61GoGDYiKilJQoujENK4zDr01HVLU1Nq1a5VHJCYmfv/999euXZswYYLOgKZMmWLZToUKFy5s36p0Vn3+/PkDBw7o5EUnMopaZsyYMW3aNE1rSxSjFC9eXImMaWTy5MnBwcGjRo1SAqIkRadaTZs21WfU4i+++GLz5s2rV6+uLVF9nfKo/vHjx02eonDEDIygWEexiHlSh9ao9s1gNApu9JH79OnjuP21atVybEQByuOPP65MR6/64G+++aZ+Dvfff39sbKx+Jq+//rouYw8dOlTng/qkWpG5gQAoILJ/jJW6deta2Wf27NlplisEeeONN7SnU7Cif1rtLEz5uXPntIvp1KmTeau9kvaJZhRr7UH0T55g49gtpZeNwmDHfR8AAACAPGHHjh0KOCxbDrJnzx4d1Y8ePdrMunr16siRIx966CFNHzx4cNGiRS+//PIjjzyitz169NBZwIIFC/RWcUbbtm3/+9//qlzpgEKK9E9qdC158eLFyi/UgmV7yMaXX36p/GX48OGnTp3asmWLJhzrHzp06Hqr1tt9+/YtXLhQa1T+8uCDD3bs2FHXg1V+3333NWvWzAQcyi+UFilAMUMcrFy5UvmRghVNK9PRNvfu3duyPaNDzSrrsT/NQxR/WLaY6euvv1bApGb1tlChQh999FHr1q01ffTo0eXLl+sHpc3++eefW7RokWL7LVuPHldX12XLlulVc5XvaHHTacWy3Y1l0pwqVaqoHf0WGjRoYAEFRvbfCmTdQvoHTlGixPfDDz8cOHCgElOlqkpk77rrLscKrjapmyJVQYFlenuZyzIAAAB5UcmSJS3bmCC64NqhQwf7KCHSpUsXM7Fz50692i/BKrCoUKHCrl27goODw8PD27RpY8p1ObZRo0YxMTHprG737t16bdeunXk70Cad+tdbtXlbvHhxk+OcPXtWB2b2LdEZinIQbZumPTw8RowYodRGAYdinSNHjlSqVMnevrIYM1GtWjXlLLqQ7BisGG+++WZ0dPR7771nntQxYMAAtfz9998rBFGsc8OzIX0EfV77mZQ+i5Idc9+T+QnYN8Cy5VkWUJBkT7Di7+8fZJNOHf3/Z29nljRpJzhs2LB//vlHSa32iQpu77nnHgvIF3SZQt/xzz777FNPPeVY3r59+3PnzumKgb4vM9iU/kFeffVVJY/KU3QNJykpKdMPFAQAALi9dApgukukpiDADI9i2XpzODk5lS5d2j63bNmyiiHMRaYSJUrYy4sVK6aDq9StmRtqLNt1KcUTjk8jTd/1Vm2m7WdJpn3T3d5QVGSfHjt27NKlS5VuNGjQQOc7jp/xhrHIkiVLtOxbb71lH1Nmzpw577///h133NGkSRP9AA8fPpzO4snJydpabbPj9lu2zjKOb4ECK3uClX79+ilVsY+ucj05N+SKo042FpAf6ft75cqVjsHKvn37QkJCHL+Ab1avXr1yw9j1AAAAOUp5hAKCPXv2mOcHK8U4cODA0KFDq1Wrpmxi06ZNd999t8oTExO3bt1qAgjTucPe/+Lvv/+2N6XDJ50BKZLQW7WzaNGiUaNG6ZBMi6Q+srreqlNU05a4u7uvW7eub9++lu32H10Gq1q1qqaPHDnyyy+/zJs3r2HDhnr766+/WhkWGho6YcKEjh072m8v0GecPn36k08++fjjj+vtlStX7MGKi4tL6u1XKqQIxt7FxrLdfqUfWp06ddK/uA4UENkTrNSzsQDksC5duixevDg4ONh+7WXVqlW6znDmzBkrs4YNG2YBAADkd0o3FASMGzfu3Xff9fHx+eSTTyzbcCdubm7t27dftmyZco2mTZt+++23yh3MImZ8k++++04ZhDKODRs22JuqWbPmxIkTJ0+erMTkjTfe0NUvc6FLB2aKP1RZrRUvXjz9VafYQoUa99577/z5819//fUWLVp8//335hYn6399Q06fPl2xYsU//vjj6NGj5tE/GfHaa68pG3r44Ye1lGUbTqFYsWIxMTEXLlwICwtT3DNnzpxChQqZyo0bN1audOLECW180aJF7Y0MGDBgzJgx06ZN0xbqwt7MmTPvueeejPfZAfI3ZwtA3hEQEKDv15UrV9pLNN25c2fHOmfPnn355Zdbt27du3dvM/KZsXz58gceeEDHDToI0AUQe/mrNmZaVz8effTRVq1aqUQXUiwAAID8QinArFmzKlWqpKtKPXv21HWpGTNmKB/RrPfff1+ByMcff/zggw86OTnZBxMoX778qFGjlLnosEpXs3QQZco9PT3VlK+v7+DBgwcOHFikSBGTlVi2e7R1KPXQQw85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Nzc3lZQoUaJevXqHDx82iygE+f333xs3bvzSSy/pbdeuXR999FG1b9lu+alRo8Z9991Xvnx5vd1i89BDD5UtW1b5i6ITM8bKoUOH7E3NmTOnSZMmY8aM0VuFO08++eSvv/5q3kZHR3fv3l3ZjZn+66+/kpKSnJ15vjUAAAAAAPlH9twKpMTEymEDBw587rnnVq9ebUIQo2PHjpGRkcuXLz969Ojff/+tnEWFbdq0mTdv3q5duwIDAzdv3ty2bVsnJyf7IhcvXoyKimrYsKF5q0W08deuXdO0gpi+ffteuHBBOdHJkyeV1KR/88758+e1dvs9RwpNGjVq5Pi0IGUuZsLPz0/ZSmJiIsEKAAAAAAD5SfYMXpujY6wYvr6+vXv3nj9//ogRI+yFK1eu/OGHH6pXr16nTp1atWqdPn1ahSVKlKhfv/6mTZvKlSsXHBysYMWxndjYWL16enraS1xd/78fwhdffKEsRvmI2gwKCkp/k5SVmNXZSzQdExOTnJysaRcXFxP0AAAAAACA/Cp7eqzcGj179ly1atWiRYvM28TExF9++aVv37733HOP3oaHh5tgRdq1a/fVV1+VKlWqZs2ailccG9FbNze3nTt3msAlPj5+//79fn5+lu1morVr106aNElL6e3ff/9tFjHdTExc4qhSpUpq6siRI/b+L4cOHapatapjBxkAAADgNuJudADIadkTrNywc4ddVvq2uLu7Dxky5PPPPzdvFawoFrl8+XJERMTRo0dXrlxp7yHStGnTL7/8cuHChY8++miKRlxcXBS7rFmz5j//+U/9+vWXLVvm4+NjZpkeKCEhIaVLl960aZNyljJlyqhEFTSxbds2bbxjJxRXV1elM7/99luFChWqV6++bt26PXv2PPXUUxaQA44fP24BAADcpGLFivHoHADIUdkzeO3EiRMzWHn8+PFZyVZat269dOnSY8eOWbacZcCAAb/++uuKFSuqVq163333zZkzx4xZ6+HhoWxFSUfLli1TNzJs2DBPT89///335MmTClkOHjwYHBys8ho1arRv316Bi3J9La7Q5Pz582aRvn37/vzzz08++aRyE8eBVxTcKF6ZNWtWeHi4whe1nOLOIyC76I/cAgAAuEk6srUAADnJyTw2OO9KTk6Ojo729vbO+CLKZYrZmMVHjhypSGX06NFmrqIZFSq1Sb3glStX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t9CjRw8zzujFixc/+eSTQYMG3XHHHXrL4J0ogE6cOGHRbwUAAAAAcpmcClZSpCqmxPFtRpSwsf53xMrkLQAAEABJREFUrb5cuXI1atSwgALJDF4LAAAAAMhVciRYMamKuf3HXmLdzE1AGbdjx47ff//93Llz7dq169Onj3lmSmho6M8//7xnz54iRYq0bNmyb9++Kly1atX69esfe+yxH3/88ejRoyrX9gQFBWnxK1eudOzYUYubkUHTXDw2NlafYsuWLW5ubk2bNtWyLi4uFgAAAJArlbaxAAA5LPuDFXtfFcdU5WZvAsqg06dPKyVp1apVuXLlFi5cqG8O5SORkZFvv/12TExMz549L1y48MsvvyQlJfXr1y8iIuLkyZNffPHFHXfcofpLliy5du3aoUOH2rdvf+rUqXnz5vn7+9eqVet6i6+3GTZsmGZ9++23pUqV0rosAAAAAABQgOVIsOL4NigoKBM3AWXQlStXJk6caMY5P3LkyNatWxV2rF279ty5c1OnTjUJvZOT0x9//KFkRNPR0dGKS1q0aKHpAwcO/P333x9//LFClsTExO3bt2txBSvXW3z//v2qGRgY6OzsrDXGxsZawC3E6CoAAOCm8FQgALg1sjlYsd/yYybq1aun4COHUhUpX768/XvCz89P3xyaOHr0qF7tjxPas2fPtWvX9L1i3jZs2NBMlCxZ8tKlS8pKNO3i4lKsWDHFLuks3qpVqylTpjz//PPNmzfv1q1b8eLFLeAW4qlAAAAAAJALZVuwEmST4jFAli1kyaFUxbKNbpu60OQjERER5m0Vm+TkZMsWoJhBWAxlKxlfvHHjxu++++6CBQtWrly5fPnyUaNGBQYGWsCtwlOBAAAAbsgc9gPIDcwYpgVB9gQr9lFU/P399+/fb95qul+/fvaRVm6Z6tWr79q169FHHzVX+OPj469du+br65uVxX18fLZv365z2tGjR8fGxn7++eeLFy8mWMGtxFOBAAAArifZJioqKiYmJiEhISkpyQJwW7m6urq7u3t6enp4eOT7hCUbghXTUWXu3Lnm7aRJk1I8EugWa9GixZIlS7788kvFOm5ublOnTq1cufLjjz+excXXr1//xx9/jBw50tvb28XFxcvLywIAAAByq4LzVCBFKtHR0RERETqLK1y4sF6dnZ0tALeVIk4FnVevXtW/pK+vb/7O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eeaZPXv2aK7ilbFjx7q7u1sFT82aNYsXL/7ll1/u3bv3yJEjU6ZMOXv2bO/evS0QrAAAAAAoIMhWcLP0N/PBBx+4urquXbtWb+fNm9ezZ08za8OGDSNGjGjRosWoUaO2bdtmCuPi4t59992uXbsqgnnnnXcSExNN+a+//qqYplWrVq+++uqBAwdMoZr6/fff33rrrZYtW4aFhankiy++uPvuu3v16vXtt99auUxwcHB8fLxiJmVPequPds8997z22mtmbt++fb/66quNGze+/fbbderUcXFx0c9KgZR98RdffPG///2vJhRLvfzyy3/88cdff/01efLkW3BT1S1AsAIAAACgoMiF2QpxTy6nIKBu3bo7d+7U9JUrV44fP66JpKSk119/vWzZslOmTFHsoqQgISFB5WPHjp0/f35vG4Upb7zxhgr37duncsUNqhYUFKTowbSspr777jtVa9++vZubm4KJTz75pGjRol26dJk5c6Y9rMklIiIiFAM9+OCDCxcuvP/++319fVVi8iB/f3+lSPv373/vvff0s1J4pNhF+dGAAQPMn7dylv79++/Zs0dv33///SFDhqxbt+7HH3/s0KHDp59+qrlWHscYKwAAAAAKkFw13gqpSp5QpUqVjRs3OpacOXMmODi4W7duLVq0aNy48dKlS69evRoaGrp48WJFLeYGGT8/vy+//DI2NlZxzIQJEwYNGqRCDw+P559/XiXFihXT2127du3evdsM2qIwpW3btqZbx9ChQ5s3b64sxspNFA9t2bJlzJgx48eP16dQjPLzzz+rXJ9FEdK8efM0rc/70UcfqUT5y+DBgxs1arR9+/ZmzZqZEsUu3bt3V/JiRr09efLk1KlTa9WqpVDGyssIVgAAAAAULLkkWyFVySuOHDmik3/HkkqVKgUEBDzyyCMdOnTo2bNn//79Vbhq1Sq9tmvXztQZaKOJ1q1bJyQkKHz5559/5syZo5Lz58+bYEXRjElVFNMomlFNs6yvr68iiejoaCuX+fXXXxUeKQB67LHHJk+e7O3t/e23365fv97V1VWJicKgIUOGqFq5cuV27Nih3ESFClbuuusuvZ46dUpRi2UbqqZevXqa8PHx0aum83qwwq1AAAAAAAocJxvr9iFVySuuXbt24MCBxo0bpyj//vvvX3zxRWUHzz333AMPPJCUlBQREeHs7Ozl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","media_type":"image/png"}}]}]},"uuid":"e2d603a4-40ec-4513-b199-1f612bd31905","timestamp":"2026-06-10T08:44:20.923Z","toolUseResult":{"type":"image","file":{"base64":"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IiIiIiIiDWgw6l6ZtwIREREREREREWUSgxUiIiIiIiIiokwyFkR5V2xs7JMnT+RFXDY2Ns7Ozubm5oKIiIiIiIhITxisUJ4VHR198+bNpKQk+TI4ODgsLKxy5cqWlpaCiIiIiIiISB94KxDlWU+fPlVSFUmlUvn5+QkiIiIiIiIiPeEVK5RnpdmNc4b6diYiIiIiIiLSjsEK5VmJiYmpCxMSEgQRERERERGRnvBWICIiIiIiIiKiTGKwQkRERERERESUSQxWiIiIiIiIiIgyicEKEREREREREVEmMVghIiIiIiIiIsokBitERERERERERJnEYIWIiIiIiIiIKJMYrBARERERERERZRKDFSIiIiIiIiKiTGKwQkRERERERESUSQxWiIiIiIiIiIgyicEKEREREREREVEmMVghIiIiIiIiIsokBitERERERERERJnEYIWIiIiIiIiIKJPeXbDi7e0tiIiIiIiIiIjyEGOR/bapyeFuaoKIiIiIiIiIKPd7F1esIFVBmLJp06aJEycqCQsRERERERERUW73Lq5YARcXF5EpPXr0kANGRkbOzs7lypWrW7duJqZ27949xDqTJ08uX758iremT5+Ov+PGjRPZbNiwYVj4vn37CiIiIiIiIiLKE7IlWPFWE+obf0TWGBsbIwrp3r27SqV6+PDh1atXjx49OnLkyFq1agkiIiIiIiIiovdK/7cCIVKZPHmyj1qPHj2y2GetoaFhBTUXF5cOHTpMmDDBzc3t999/f/TokSAiIiIiIiIieq/0f8UKkhRXV1ckIBieMmWKfh8GZGBgMHz48AEDBly5cqV06dIoOXXq1NmzZ319fWvUqNG2bVtnZ2cU3rhx49ChQ/fv369YsWK7du3wV44eFxf3119/Xbp0ycnJqWPHjpUrV1amjIkcOHAgJCSkdu3avXv3NjExQWFQUNDWrVuvX79uZWWF6X/++eey/NWrV6iM6dja2jZo0ADzxYJhGdzd3QcOHIi3MOK0adOioqI2bNhw9erVokWLIhUSRERERERERJS3vLvHLesLoo2SJUsiNMHw48ePly5dipeIQpBrrF27FoVJSUnLly/Pnz//sGHDjIyMFi9erFKp5LirVq2KiYlB1IJkBCMmJyfL8mfPnq1bt65q1aoIXJDIyOkgFpkxY4aXl1fTpk0R4iAuwaTkKGvWrEFg9Nln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xGCFiIiIiIiIiCiTGKwQEREREREREWUSgxUiIiIiIiIiokzK8OOWiShzVCpVfHx8YmIiBgQRERFRDmZgYGCsZmZmJrJZXFycPEBKSkoSRESpGBoa4ufI1NQUf0WOxGCF6F2IjY1NSEiwsrKytbXNsT8HRERERBIyDpwQio6ODg8Pt7CwMDExEdkAR0cxMTFoLNnY2OAv2k6CiCgVZK9oT0VFRRkZGVlaWoqchw08omyH8zA4UHBwcBBEREREuQEOXczV0JgJDQ1NTk5G8CH0CsENJm5nZ4e5CCKi9OHMtLUafo4Qr+B0tchhmAoTZS8cMRgYGOCgQRARERHlNkg98ufPHx0drd97mTE1TBNTZqpCRLpDq8rExAS/HiKHYbBClL0SEhKYqhAREVHuZWpqmi9fvri4OKE/mBqmqferYIgoz0PbCslsYmKiyEn0fCuQt1rq8m7dugmiD09MTEwOvFCNiIiIKEOsra0jIyOTkpL00g0KpoNGEaYpiIgyDi2s2NjYHNVzpT4XpUePHq6urqnLb9++vW3btk2bNomsQRvVwsJCvCdIxeQCGBkZCSLd4KDB1tZWEBEREeVypqamOLDRyzUmOK7mtSpElGnm5uaIekVOordgBdEJ/k6YMCHNd6dMmeLt7e3i4iIyLigoaNWqVXfu3ImKirK3t69atWq/fv2034157969iRMnTp48uXz58tOnT0fJuHHjRMbhRz8uLk52O3zt2rU5c+b89NNPbm5ugkg32IX4DCAiIiLKA0xMTBISEoQ+4AApmx4zREQfArSwctrT2fXW5PPx8RHqi1a01MlEsPLixYvx48cjT+nZs2fp0qWvXLly7Nix3377DblJdl+9ggwMMUrfvn0bNGiAl0WKFGnXrh0f7EJERERERERECv0EK/JyFYQd6VXw9vZG8jJlypT0LmlJz4YNGwwNDceOHVuwYEG8RLYiL0K5ePFikyZNRHZCJB8aGqq8LFasGEIWQURERERERET0H70FK66urml2W5sVYWFhCFA+//xzmapIVatWLVeu3LVr12Swcvz48VOnTvn5+VWoUKFt27aVK1fWMsFXr15t3br15s2bNjY29evX79y5s1K+efNmlNva2rZp06ZFixb79+/fvn073nJ3d8fa9erVC8uA4e+++65kyZIqlWrLli1XrlyJjIysUqXKZ599VqhQIVQ+evTomTNnBg0atHHjxrt371arVq1Lly5FihTBW4cPHz59+vTr169r1arVqVMnzTUiIiIiIiIiolxKD8GKvFxF/Hc3kBayF1vdnxD0/Plz/EWQkaJ8ypQpcuDYsWN//vlnxYoVO3bs6OHhMWfOnAkTJpQtWzbNqSEEmT59emxsbPv27QMCAnbs2JGUlNS1a9eoqKgZM2agwqeffurv748Jmpqali5dulmzZgcOHMDcGzRo4ODgEBMTg+WJj49PTk5eunTpuXPnUI485ciRI/fv38ciWVtbR0REPHnyZNGiRS4uLsWLFz906BBmMXz48BcvXqxevbpfv3758+eX/fiiUBARERERERFRLqefYKWb2ltrent7T548WfdgJSgoSKg7N0nzXQQcGzdurFWr1qhRo/ASccmQIUN27twpX6Z28uRJBBzu7u6FCxfGSwMDA+QmCFZQHhgYOH/+fFmOKMTLy2vkyJGYLyogspF9rNy7d09Ox8/P78yZM71798Yc8bJ+/fo///zziRMn5EvkL23btm3UqJEcRjkmeOfOHXNz84YNG1pZWSFwuXv3LhYeCyCIiIiIiIiIKDfLarAib//RPSvJkAIFCgh1/7WOjo6p33358mVkZGTNmjXlS0NDwxo1aly9ejW9qT18+BB/9+/fL1/evHkzKioKkcqDBw8wfZmqwODBg4VW9+/fx1/l2UAlSpQoVKgQJqJUQNYjBzBZZCsqlQoLuXbt2hEjRtSuXbtly5ZNmzYVRERERERERJT7GYocrFixYvjr6+ubonzq1Knu7u7ILMR/4YuE4djY2OTk5DSnJutH/Efe44PKKNf+8OYUoqOjDQwM7O3tU8xXDhsZGaV+XJGtre3vv//eqFGja9euTZgwYdOmTYKIiIiIiIiIcr8cHazky5evbt26Bw8efPXqlVLo7e1969atypUrlyhRwsTERPNSkXv37pUqVSq9W2zKlCljaGjYv3//79SGDBnSt29fBwcHlPv7+yckJMhqXl5e+/btE+pLYIT6hqMU0ylbtiwK5fUvEBcX9+TJE0xEpA8LFhoa+tVXXy1ZsqRXr14HDhxQghgiIiIiIiIiyr1ydLACiCHwd+bMmUeOHHn06NH27dsXL15csmTJevXqGRsbN2nSZPfu3efPn0fysmPHjps3b7Zo0SK9SWEUMzOzlStXIkYJCAj49ddft2zZIssRlKxYsQKFV69eXbZsWXR0tFBfZoLY5dKlSyEhIZo5CIIVZ2fnP//8E3HJ8+fPkZXIiWhZCz8/v+nTp2O+SUlJWGxzc3N2sEJERERERESUB+jnccvZB9HGnDlzVq1atWHDhpiYGIQd1apV69evn7zdpn///sgp8G54eDhqolw+gzlNxYsXHz169Nq1a0eNGmVpaYnpfPnll7IcJSj//vvvTU1NMYUuXbrIUTp37rx169YhQ4YMHTpU6UPXxMRk3LhxyF+mTZuWkJCAlOfnn392cnLSshbNmjW7f/8+6mM5MZ3evXsj4hFERERERERElMsZxMfHi6yZMmVK165dXVxc3lpzm1rmehhJTk5GKoFgJc13IyMjra2thW4Q0CBAMTIySlEeFRVlbm6eujwkJATzlXcGaVKpVNh6qXtU0SJDy0mZEBwcnD9/fjns6emZZp369esLdW87sbGxdnZ2IjuFhoam2fUyERERUe6CYyecU8xQ14TpwTEYTlXa2NgIIqJMef78eXY35fCjp3vTUg9XrFSqVGny5Mmurq5vrXn79u1MPz/IwMAgvVQFMpRWpBeFWFlZpVmu2U+tpjT7qdWOqQoRERERERFRXqKHYKWb2rZt295aU8cLW4iIiIiIiIiIcgW99bGS6UtRiIiIiIiIiIhyqZz+VCAiIiIiIiIiohyLwQoRERERERERUSYxWCEiIiIiIiIiyiQGK0REREREREREmcRghYiIiIiIiIgokxisEOUFYWFhMTExgoiIiIiIiN4tBitEucPMmTMrpOWrr76Kjo6uU6fO77//rlQOCQlRhl1dXZctWyaIiIiI8rSIiAhBRPQ+GAsiyg369u3btm1bDLx48WLEiBE//PBD/fr18dLa2trExOTLL79EtiJrfv31105OTr/99psgIiIiyuuSkpLc3d03bdqEE0vFixdv0aIFjppwLCTfjYyMNDc3NzZ+S6sH49rb2wsiokxhsEKUOziqYcDW1hZ/S5YsWa1aNeXdcePGKcPPnj1TDiaIiIiI8rYNGzYsX7585syZtWvX9vHxwcD58+d3795taGjo6ek5ePDgY8eOFSxYUMsUlixZsm/fvgMHDggiokzhrUBEeUH79u1xoubKlStt27b19fXFMAbmz5+fohqOM3B4UadOnT59+hw6dEgQERER5XI4vKlRo8ann36KU1AtW7bE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jIw0lZWz1KhR45133mnUqFHr1q07dOhgAQAAAMgjHnvssb///ttMu7q66ti+U6dOTz/9tLNz5vvmv/zyywcPHly4cKGVKboeXKxYMeu2ioqKatas2UMPPfTqq69aN8m+/VlpBChQsj9YMYOqOMriuCoKUAYNGpSiMDo6esKECfqfDwwMVHqya9cuUx4fH+/h4WGvpn2rvb5ek5OTIyIiTEmrVq2KFCmiiTfeeGP58uVr16795JNP6tatO27cuKzshQEAAADcSrVr1zZPzNAx/19//TVjxgxNKByxbofp06cvXrz4jz/+sG4rNzc3BSKKRayb9Mgjj1SsWFGnWllpBChosjlYmW+TonD8+PFZzFZSW7du3cWLFz///HPFKJGRkV9//bUpr1Sp0u7duxWgODk56a09cKlevbpe7WPcJiUlhYeHK1g5d+6c2ulpc+jQIYUsCobq169vAQAAAMgLvL29AwICzHSLFi0OHz68evXq2xWsnD9/Xuca1u2mTCRz3UzOnj2rYCWLjQAFTTYHK2aoWivnKYROSEhQJqL/dsdOeopOpk6d+s4772hiy5Ytly5dMuU1atTQDmLBggWqX7ly5Z9++kkxyttvv629nio/99xzClycnZ0Vx3h6eloAAAAA8iZdajWXV+fOnbto0aIXXnjhgw8+0KXT1157TWcQn3766Zo1a3SRtVWrVk8//XSFChXMUtOnT//jjz90OjBgwAB7U5s2bZo4ceJXX33l5+ent3/++aea0qmELtDGxcV99NFHSnDi4+O7du360ksv6eJur169jh07pprdu3cvU6bMN998Y2/qeqtWclG0aNFq1ap9+eWXY8aM6dy5sy4eL126VFsycOBAXULWdd/PPvvMskUealDbUKJECV0VfvDBB3X+Yj6jzmu0Mdu2bWvbtu2TTz6p8x3VV50HHnhg8ODBQ4YMCQsLM5uhze7bt6/WHhMTM2vWrFWrVl29erVHjx4PP/zwyZMn9SM6YaMzqS5duowePdreiJbdunWrrmdrLTq30idVs5btfgX9hHUK9sMPP+inoVmPPfZYy5YtLaAgyf4eK/YRavv165ftHVXsOnTosHPnTu16vLy8tGsoVaqUucdHOynTA1C7mEaNGt19993aX2iv5O7urt3EF198oV2hwpQ6deo8++yzClnKly+vPcK8efO0m9MeTXtA7QssAAAAAHlQSEjIihUrTAcWpQlHjhwZO3ZssWLFAgMDFXxoesmSJTpH0FmAggCdUOhEwMfHR9GJTgcaN26sRGDmzJm61GoGDYiKilJQoujENK4zDr01HVLU1Nq1a5VHJCYmfv/999euXZswYYLOgKZMmWLZToUKFy5s36p0Vn3+/PkDBw7o5EUnMopaZsyYMW3aNE1rSxSjFC9eXImMaWTy5MnBwcGjRo1SAqIkRadaTZs21WfU4i+++GLz5s2rV6+uLVF9nfKo/vHjx02eonDEDIygWEexiHlSh9ao9s1gNApu9JH79OnjuP21atVybEQByuOPP65MR6/64G+++aZ+Dvfff39sbKx+Jq+//rouYw8dOlTng/qkWpG5gQAoILJ/jJW6deta2Wf27NlplisEeeONN7SnU7Cif1rtLEz5uXPntIvp1KmTeau9kvaJZhRr7UH0T55g49gtpZeNwmDHfR8AAACAPGHHjh0KOCxbDrJnzx4d1Y8ePdrMunr16siRIx966CFNHzx4cNGiRS+//PIjjzyitz169NBZwIIFC/RWcUbbtm3/+9//qlzpgEKK9E9qdC158eLFyi/UgmV7yMaXX36p/GX48OGnTp3asmWLJhzrHzp06Hqr1tt9+/YtXLhQa1T+8uCDD3bs2FHXg1V+3333NWvWzAQcyi+UFilAMUMcrFy5UvmRghVNK9PRNvfu3duyPaNDzSrrsT/NQxR/WLaY6euvv1bApGb1tlChQh999FHr1q01ffTo0eXLl+sHpc3++eefW7RokWL7LVuPHldX12XLlulVc5XvaHHTacWy3Y1l0pwqVaqoHf0WGjRoYAEFRvbfCmTdQvoHTlGixPfDDz8cOHCgElOlqkpk77rrLscKrjapmyJVQYFlenuZyzIAAAB5UcmSJS3bmCC64NqhQwf7KCHSpUsXM7Fz50692i/BKrCoUKHCrl27goODw8PD27RpY8p1ObZRo0YxMTHprG737t16bdeunXk70Cad+tdbtXlbvHhxk+OcPXtWB2b2LdEZinIQbZumPTw8RowYodRGAYdinSNHjlSqVMnevrIYM1GtWjXlLLqQ7BisGG+++WZ0dPR7771nntQxYMAAtfz9998rBFGsc8OzIX0EfV77mZQ+i5Idc9+T+QnYN8Cy5VkWUJBkT7Di7+8fZJNOHf3/Z29nljRpJzhs2LB//vlHSa32iQpu77nnHgvIF3SZQt/xzz777FNPPeVY3r59+3PnzumKgb4vM9iU/kFeffVVJY/KU3QNJykpKdMPFAQAALi9dApgukukpiDADI9i2XpzODk5lS5d2j63bNmyiiHMRaYSJUrYy4sVK6aDq9StmRtqLNt1KcUTjk8jTd/1Vm2m7WdJpn3T3d5QVGSfHjt27NKlS5VuNGjQQOc7jp/xhrHIkiVLtOxbb71lH1Nmzpw577///h133NGkSRP9AA8fPpzO4snJydpabbPj9lu2zjKOb4ECK3uClX79+ilVsY+ucj05N+SKo042FpAf6ft75cqVjsHKvn37QkJCHL+Ab1avXr1yw9j1AAAAOUp5hAKCPXv2mOcHK8U4cODA0KFDq1Wrpmxi06ZNd999t8oTExO3bt1qAgjTucPe/+Lvv/+2N6XDJ50BKZLQW7WzaNGiUaNG6ZBMi6Q+srreqlNU05a4u7uvW7eub9++lu32H10Gq1q1qqaPHDnyyy+/zJs3r2HDhnr766+/WhkWGho6YcKEjh072m8v0GecPn36k08++fjjj+vtlStX7MGKi4tL6u1XKqQIxt7FxrLdfqUfWp06ddK/uA4UENkTrNSzsQDksC5duixevDg4ONh+7WXVqlW6znDmzBkrs4YNG2YBAADkd0o3FASMGzfu3Xff9fHx+eSTTyzbcCdubm7t27dftmyZco2mTZt+++23yh3MImZ8k++++04ZhDKODRs22JuqWbPmxIkTJ0+erMTkjTfe0NUvc6FLB2aKP1RZrRUvXjz9VafYQoUa99577/z5819//fUWLVp8//335hYn6399Q06fPl2xYsU//vjj6NGj5tE/GfHaa68pG3r44Ye1lGUbTqFYsWIxMTEXLlwICwtT3DNnzpxChQqZyo0bN1audOLECW180aJF7Y0MGDBgzJgx06ZN0xbqwt7MmTPvueeejPfZAfI3ZwtA3hEQEKDv15UrV9pLNN25c2fHOmfPnn355Zdbt27du3dvM/KZsXz58gceeEDHDToI0AUQe/mrNmZaVz8effTRVq1aqUQXUiwAAID8QinArFmzKlWqpKtKPXv21HWpGTNmKB/RrPfff1+ByMcff/zggw86OTnZBxMoX778qFGjlLnosEpXs3QQZco9PT3VlK+v7+DBgwcOHFikSBGTlVi2e7R1KPXQQw85jj6ZzqpTUPgydOhQ5TLffPONVtqoUSPTa0YHgf369dNctb9z584+ffpcuXLFygAFKGvXrrVsg/L2sHnzzTe1/c8995w+l+IbfWolJtHR0eb4cNCgQUpe7rrrrnfeecexnV69emnB33//vWPHjgqS9COaNGmSBcDGKS4uzgLyi8uXL9uvDGzatCnNOi1btrRsd8bqa8Y8bS7n6CKAvWtJ1ukLVV97hw4dOn78uK6cqOTkyZNdu3b9888/dRDQrl07fdvpcoS+DqOiovS1ferUqQULFowYMeKpp57asWOHUpUyZcroO15foqqgKx5mjBUzHL2+7HXxQV/Yw4cP19e8vss163qP5QIAAAWNjp3i4+Mdn62ZaToGc3Nzu40D5yckJGgbUo9LonDBxcXF3d09RbnOmBITE9O881rtJCcnp54VGRmZlJTk2OMj/VXb6XisdOnSpUqVsmwjmyhG0RHg1KlTzVxlHyrMlt+CaV/bmeYvQgfVilfSXJGONvW5eJoybq/g4OCcPpXTTs9+annDmtn/uGUAOapz587KSnSNolixYrpyUqdOHfsgZJaty4liF5WbwfB1iePrr79WsPLVV181rc81AAAQAElEQVTpK3/58uU6jnnyySfNA/lSUJsTJkxQLmPZrquMHj3arMUCAADIR6432uv1Bq1LHbXYXS/juF50csOBZv+wefrpp318fHQx7Pz58/ZuMpbtCM3KPgpHrhdvpXM+qQ2zAPxfBCtAHtOyZUt9669evbpfv34KUFLcB2Qe/vfNN9+Ytxs3bgwPDz99+vT+/fubN29uBpbXl2jHjh0PHTqUouXWrVvrKsrSpUv/+eefOXPmqOTcuXMEKwAAALfMM888o/Dlhx9+OHbsWJUqVT755BP7Q50B5FoEK0Aeo3Ckbdu2K1eu1Lfszp07x40b5zg3MjLSst2CZN6agaWTk5MVr9gHP7OucxVi165d5vLInXfeqdRmwYIFFgAAAG4hDw+P520sAHkHwQqQ93Tp0uWVV15ZvHhx2bJlUzyQ64477li/fv0bb7xh7umNjY2NiIhQpFK7dm3HQWc2btyYutlZs2ap2pdffqnppUuXEqwAAAAAwA3xVCAg72nbtm1SUtI777yT4j4g6datm5eXl4KVw4cPnzx58v777zdj1Hft2lVvJ0+eHBQUNHXq1F27dqVu9tq1a0phQkND9+zZY5ZKTk62AAAAAADXR7AC5D2FCxdu3ry5ZRvINsWsmjVrzpw5UxlK7969+/fvX6lSpddee82yPWDvkUce+e233/r167dx48ZRo0albnbEiBGRkZGtW7d+5plnNG3ZhrO1AAAAAADXx+OWka/k78ct3xRFJF5eXi4uLo6FiYmJ0dHR6Y9FHx4envrRgAAAoIDLT49bBpDX8bhlALdCmumJcpb0UxUhVQEAAACAjONWIAAAAAAAgEwiWAEAAAAAAMgkghUAAAAAAIBMIlgBAAAAAADIJIIVAAAAAACATCJYAQAAAAAAyCSCFQAAAAAAgEwiWAEAAAAAAMgkghUAAAAAAIBMKijBSmJiYmRkpF6tLMvGpgAAAAAAQJ6W24OVoUOHDhs2LCwszF5y6NChwYMHHz9+3LoZO3fuHD58+I4dO6xMUYwSFRWVLU0BAAAAAIB8w9XKsqCgoIkTJ2aw8vjx4+vVq2fdjOjo6J9//vmxxx6zsqBs2bI9evQoU6aMdfMiIyNffPFFRTytWrXKYlMAAAAAsovj9VcAuZ+vr6+VH2VDsKKgRHFJxitbN6lu3bpr1qzp1q1bxYoVrcwqX768khErU+Lj4x132VlpCgAAAAAA5CfZEKxYmYpLMq5Ro0Zubm7ff//92LFjU8yKi4v7/fff//3334iIiFatWvXo0ePatWsffPDBAw880LhxY1Nn0qRJimYCAwOnTp36zDPPVKlSJTk5ecGCBZs2bXJ2du7YsWN0dPTx48dfeOEFVQ4NDf3jjz+2bdvm4+OjBrt37663qqxZWnz+/Pn33XdfyZIl7U2pXKHP33//ffr06dq1a6t+/fr1Vbhq1ar169c/8cQTc+bMOXjwYEBAwL333lu2bFkLAAAAQDbJr1e/AeQteWPwWgUlu3fv3rlzZ4rylStXLl26tE2bNj179lTAoTjDz89PuYlCDVPh5MmT+/btU7CiCCY4OFivKly4cKEikuLFi7du3Vq5iXIZ5Smm/jfffBMUFDRgwIA77rhj9uzZBw4cqFatWvv27TVLMYomypQp49jUn3/+OXPmTK2xd+/eZ8+enTJlypEjR1SuoEer/uyzz1S/U6dOWoXWaAEAAAAAgPwle8ZYMX06bkgBR//+/a2bV6lSpQ4dOvzwww8NGjRwLPfy8ho1alRAQICmlWv8888//fr1a9eunaKT+Ph4Nzc3lZQoUaJevXqHDx82iygE+f333xs3bvzSSy/pbdeuXR999FG1b9lu+alRo8Z9991Xvnx5vd1i89BDD5UtW1b5i6ITM8bKoUOH7E3NmTOnSZMmY8aM0VuFO08++eSvv/5q3kZHR3fv3l3ZjZn+66+/kpKSnJ15vjUAAAAAAPlH9twKpMTEymEDBw587rnnVq9ebUIQo2PHjpGRkcuXLz969Ojff/+tnEWFbdq0mTdv3q5duwIDAzdv3ty2bVsnJyf7IhcvXoyKimrYsKF5q0W08deuXdO0gpi+ffteuHBBOdHJkyeV1KR/88758+e1dvs9RwpNGjVq5Pi0IGUuZsLPz0/ZSmJiIsEKAAAAAAD5SfYMXpujY6wYvr6+vXv3nj9//ogRI+yFK1eu/OGHH6pXr16nTp1atWqdPn1ahSVKlKhfv/6mTZvKlSsXHBysYMWxndjYWL16enraS1xd/78fwhdffKEsRvmI2gwKCkp/k5SVmNXZSzQdExOTnJysaRcXFxP0AAAAAACA/Cp7eqzcGj179ly1atWiRYvM28TExF9++aVv37733HOP3oaHh5tgRdq1a/fVV1+VKlWqZs2ailccG9FbNze3nTt3msAlPj5+//79fn5+lu1morVr106aNElL6e3ff/9tFjHdTExc4qhSpUpq6siRI/b+L4cOHapatapjBxkAAADgNuJudADIadkTrNywc4ddVvq2uLu7Dxky5PPPPzdvFawoFrl8+XJERMTRo0dXrlxp7yHStGnTL7/8cuHChY8++miKRlxcXBS7rFmz5j//+U/9+vWXLVvm4+NjZpkeKCEhIaVLl960aZNyljJlyqhEFTSxbds2bbxjJxRXV1elM7/99luFChWqV6++bt26PXv2PPXUUxaQA44fP24BAADcpGLFivHoHADIUdkzeO3EiRMzWHn8+PFZyVZat269dOnSY8eOWbacZcCAAb/++uuKFSuqVq163333zZkzx4xZ6+HhoWxFSUfLli1TNzJs2DBPT89///335MmTClkOHjwYHBys8ho1arRv316Bi3J9La7Q5Pz582aRvn37/vzzz08++aRyE8eBVxTcKF6ZNWtWeHi4whe1nOLOIyC76I/cAgAAuEk6srUAADnJyTw2OO9KTk6Ojo729vbO+CLKZYrZmMVHjhypSGX06NFmrqIZFSq1Sb3glStX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t9CjRw8zzujFixc/+eSTQYMG3XHHHXrL4J0ogE6cOGHRbwUAAAAAcpmcClZSpCqmxPFtRpSwsf53xMrkLQAAEABJREFUrb5cuXI1atSwgALJDF4LAAAAAMhVciRYMamKuf3HXmLdzE1AGbdjx47ff//93Llz7dq169Onj3lmSmho6M8//7xnz54iRYq0bNmyb9++Kly1atX69esfe+yxH3/88ejRoyrX9gQFBWnxK1eudOzYUYubkUHTXDw2NlafYsuWLW5ubk2bNtWyLi4uFgAAAJArlbaxAAA5LPuDFXtfFcdU5WZvAsqg06dPKyVp1apVuXLlFi5cqG8O5SORkZFvv/12TExMz549L1y48MsvvyQlJfXr1y8iIuLkyZNffPHFHXfcofpLliy5du3aoUOH2rdvf+rUqXnz5vn7+9eqVet6i6+3GTZsmGZ9++23pUqV0rosAAAAAABQgOVIsOL4NigoKBM3AWXQlStXJk6caMY5P3LkyNatWxV2rF279ty5c1OnTjUJvZOT0x9//KFkRNPR0dGKS1q0aKHpAwcO/P333x9//LFClsTExO3bt2txBSvXW3z//v2qGRgY6OzsrDXGxsZawC3E6CoAAOCm8FQgALg1sjlYsd/yYybq1aun4COHUhUpX768/XvCz89P3xyaOHr0qF7tjxPas2fPtWvX9L1i3jZs2NBMlCxZ8tKlS8pKNO3i4lKsWDHFLuks3qpVqylTpjz//PPNmzfv1q1b8eLFLeAW4qlAAAAAAJALZVuwEmST4jFAli1kyaFUxbKNbpu60OQjERER5m0Vm+TkZMsWoJhBWAxlKxlfvHHjxu++++6CBQtWrly5fPnyUaNGBQYGWsCtwlOBAAAAbsgc9gPIDcwYpgVB9gQr9lFU/P399+/fb95qul+/fvaRVm6Z6tWr79q169FHHzVX+OPj469du+br65uVxX18fLZv365z2tGjR8fGxn7++eeLFy8mWMGtxFOBAAAArifZJioqKiYmJiEhISkpyQJwW7m6urq7u3t6enp4eOT7hCUbghXTUWXu3Lnm7aRJk1I8EugWa9GixZIlS7788kvFOm5ublOnTq1cufLjjz+excXXr1//xx9/jBw50tvb28XFxcvLywIAAAByq4LzVCBFKtHR0RERETqLK1y4sF6dnZ0tALeVIk4FnVevXtW/pK+vb/7O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eeaZPXv2aK7ilbFjx7q7u1sFT82aNYsXL/7ll1/u3bv3yJEjU6ZMOXv2bO/evS0QrAAAAAAoIMhWcLP0N/PBBx+4urquXbtWb+fNm9ezZ08za8OGDSNGjGjRosWoUaO2bdtmCuPi4t59992uXbsqgnnnnXcSExNN+a+//qqYplWrVq+++uqBAwdMoZr6/fff33rrrZYtW4aFhankiy++uPvuu3v16vXtt99auUxwcHB8fLxiJmVPequPds8997z22mtmbt++fb/66quNGze+/fbbderUcXFx0c9KgZR98RdffPG///2vJhRLvfzyy3/88cdff/01efLkW3BT1S1AsAIAAACgoMiF2QpxTy6nIKBu3bo7d+7U9JUrV44fP66JpKSk119/vWzZslOmTFHsoqQgISFB5WPHjp0/f35vG4Upb7zxhgr37duncsUNqhYUFKTowbSspr777jtVa9++vZubm4KJTz75pGjRol26dJk5c6Y9rMklIiIiFAM9+OCDCxcuvP/++319fVVi8iB/f3+lSPv373/vvff0s1J4pNhF+dGAAQPMn7dylv79++/Zs0dv33///SFDhqxbt+7HH3/s0KHDp59+qrlWHscYKwAAAAAKkFw13gqpSp5QpUqVjRs3OpacOXMmODi4W7duLVq0aNy48dKlS69evRoaGrp48WJFLeYGGT8/vy+//DI2NlZxzIQJEwYNGqRCDw+P559/XiXFihXT2127du3evdsM2qIwpW3btqZbx9ChQ5s3b64sxspNFA9t2bJlzJgx48eP16dQjPLzzz+rXJ9FEdK8efM0rc/70UcfqUT5y+DBgxs1arR9+/ZmzZqZEsUu3bt3V/JiRr09efLk1KlTa9WqpVDGyssIVgAAAAAULLkkWyFVySuOHDmik3/HkkqVKgUEBDzyyCMdOnTo2bNn//79Vbhq1Sq9tmvXztQZaKOJ1q1bJyQkKHz5559/5syZo5Lz58+bYEXRjElVFNMomlFNs6yvr68iiejoaCuX+fXXXxUeKQB67LHHJk+e7O3t/e23365fv97V1VWJicKgIUOGqFq5cuV27Nih3ESFClbuuusuvZ46dUpRi2UbqqZevXqa8PHx0aum83qwwq1AAAAAAAocJxvr9iFVySuuXbt24MCBxo0bpyj//vvvX3zxRWUHzz333AMPPJCUlBQREeHs7Ozl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","type":"image/png","originalSize":82677,"dimensions":{"originalWidth":1480,"originalHeight":800,"displayWidth":1480,"displayHeight":800}}},"sourceToolAssistantUUID":"1ced9bfd-f6ca-4e50-983f-21c16578cf54","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e2d603a4-40ec-4513-b199-1f612bd31905","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01B5yz9Mno19nK2svMDKyh8M","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011uSNKUrsyXR9nCS84AegAH","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/review/14-admin-analytics.png"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":468,"cache_read_input_tokens":242559,"output_tokens":408,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":468,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":408,"cache_read_input_tokens":242559,"cache_creation_input_tokens":468,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":468},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHT1y4xMKoDW9tVTQkf","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"dc5fe70d-629d-4238-bf03-12da089b222d","timestamp":"2026-06-10T08:44:21.392Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"dc5fe70d-629d-4238-bf03-12da089b222d","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_011uSNKUrsyXR9nCS84AegAH","type":"tool_result","content":[{"type":"image","source":{"type":"base64","data":"iVBORw0KGgoAAAANSUhEUgAABcgAAAMgCAIAAACYkhb5AAAQAElEQVR4nOzdB1gUx+M+8KFXBRFBQcCCBcFesffeNYkaY4mJsSWmmUQTjdHYYjdqbDGJsST23nvvXVCxoyii9F7/rzff7O/+x3EeByjl/Tw+9+zt7e7dyc7NzDtbTBMTEwVRgRQSEuJSwkUQERERERERqQl+Huzg4KDPklFRUcaCiIiIiIiIiIgMwmCFiIiIiIiIiMhApoKIiIiIiIiIiDIQHx//8OHDqKgoTBcqVMjDw8PS0lJ5lcEKEREREREREZF2sbGx165dS01NlU9DQ0MjIiJ8fHysra3lHJ4KRERERERERESk3aNHj5RURUpJSQkMDFSe8ogVIiIiIiIiIiLt5BlAOmYyWCEiIiIiIiIi0i45OTn9zKSkJGWapwIRERERERERERmIwQoRERERERERkYEYrBARERERERERGYjXWCEiIiIiIqICJz4+PjY2NjklWWSBqYmptbW1paWloAKMwQoREREREREVIMnJyS9evggPDzc1NTU2ztJpHKmpqc9Dntvb2zsWdcTWBBVI/MMTERERERFRQYFU5fGTxwhEChcuLLJJbGzs4/jHJV1LMlspmHiNFSIiIiIiIiooXrx8gVQle0/ewdawTWxZUIFkYJx2/vz5s2fPxsfHC0Nhz6tTp06tWrUEERERERERUc5DHzY8PDwbj1VRoIeLLdvb2fN6KwWQIcHK6NGjV65cKbJD3759p0yZIoiIiIiIiIhyWGxsbM6drYMtY/sMVgqgTJ8KtG/fvuxKVQCbwgYFERERERERUQ5LTknO4tVqdcCWs3iPIcqjMr1LzZkzR2SrbN8gEREREREREdGbkemDoK5evSqyVbZvkIiIiIiIiIjozeBdgYiIiIiIiIiIDJSdl+2pr6L1pZMqwlBpaWkxMTG2traCiHKZpKSkmNgYG2sbMzMzQUREREREb0NcXBweraysBL1x2RasfK2iY4EZKiKToqKixo0bd/z48fj4eG9v7yZNmnz44YcWFhaXL1/u27fvypUrq1WrJojylJSUlErelTCxe9fu0qVLizfi48EfHz16VH1O4cKFz509J/T24aAP8bj89+Ua81E8hwwdsnDBwhYtWggiIiIiojwLDfWWLVtiYsWKFW5ubnLmggUL9u7du2XLFmUxDPw3b978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yfIqgc2aNRs+fLjIpMuXL7u4uBQrVkx9ZtWqVffu23vjxo1GjRpFREScPXf2xIkTHh4erVu13rR5k8gxiIr69O6zc9dOJEpCdSVdtOHl5RRr1679KPDR4iWLo6OjHR0dO3bsaG5m7uzsPGjQoK1bt86YOQOpU8UKFbt07iLoP0aJiYmZWgFRhdb56qf8KOcByRsDyWnlwivpyetl6pCWlob+XmZDEOyXyhVVYOnSpUgWsTcL1UlG6EkKKthCQkKQQYhcJjIy0sbGBqmiMEh4RLiO0ym1ioqKsrG1MTbSzCuTVDK68osOr44MTEww+IoqREREREQ55HnIc3QGlfvMZkpqaioG7x0cHDK6VVB8fDy6mU7FMn3tFQV6vuih63OHh+yC0Vl0PbS+I15K3xdISEgwMzPT5+aeeV3w82B5bWA4deqU1mV8fV/dhhX9qWw7YkUJU9TpCFMyBTuuAYeWqKcqGpiqUK6lcWGqzMpsqgLqV8lSZ6YiMs/gFYmIiIiIci2kCUWLFhU5CT3fN5mqgI5hVK0vveGPl1fkyMVrcyf0HpU7xRIRERERERERZV2mD+CpUqWKyFbZvsGM9OrVa/v27YKIiIiIiIiIKJtkOlj5/PPPRbbK9g0SEREREREREb0ZmQ5WWrVq1bdvtt1WGpvCBgURERERERFRDjM1MU1NTRU5Q96fWFDBY8hffcqUKT169Dh79mx8fLwwlKWlZZ06dWrVqiWIiIiIiIiIcp61tfXzkOciZyQnJxtwS03KBwyM02qpCCIiIiIiIqI8AgP89vb2sbGxht1xWYf4+HhsOds3S3lC/r/7NBEREREREZHkWNTR2Ng4K6dfpIetYZvYsqACiSeAERERERERUUFhampa0rXki5cvwsPDMY1ARGRBampqcnKyvb09UhVsTVCBxD88ERERERERFSBIQIo7F7e3e3VOUHJKssgCUxNTa2trngFUwDFYISIiIiIiogLHUkUQZRmvsUJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGYrBCRERERERERGQgBitERERERERERAZisEJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGMg0JCRFEBVXQ0yBBREREREREpMbExET/hU2LFSsmiPKL0NBQBwcHfZaMioqKj4+3t7cXRERERERERGrQYdR/YZ4KRERERERERERkIAYrREREREREREQGMhVE+Vd8fPzDhw/lQVyFChXy8PCwtLQURERERERERNmEwQrlW7GxsdeuXUtNTZVPQ0NDIyIifHx8rK2tBREREREREVF24KlAlG89evRISVWklJSUwMBAQURERERERJRNeMQK5VtaL+OcqWs7ExEREREREenGYIXyreTk5PQzk5KSBBEREREREVE24alAREREREREREQGYrBCRERERERERGQgBitERERERERERAZisEJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGYrBCRERERERERGQgBitERERERERERAZisEJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGYrBCRERERERERGQgBitERERERERERAZ6c8GKn5+fICIiIiIiIiLKR0xFzluvIqd7qggiIiIiIiIiorzvTRyxglQFYco///wzbtw4JWEhIiIiIiIiIsrr3sQRK1CpUiVhkF69eskJExMTDw+PcuXK1a1b14Ct3b59G7HOhAkTypcvr/HS5MmT8ThmzBiRw4YPH44P369fP0FERERERERE+UKOBCt+KkJ14o/IGlNTU0Qh7733XkpKyt27dy9durR///4vv/yyZs2agoiIiIiIiIjorcr+U4EQqUyYMMFfpVevXlm8Zq2xsXEFlUqVKnXq1Gns2LG1atWaPXv2vXv3BBERERERERHRW5X9R6wgSfH29kYCgumJEydm782AjIyMRowY8dFHH128eLFMmTKYc/To0RMnTjx48KB69ert2rXz8PDAzKtXr+7ZsycgIKBixYrt27fHo1w9ISHh999/P3/+vJubW+fOnX18fJQtYyM7d+4MCwurXbt23759zczMMPPly5fr1q27cuWKjY0Ntv/uu+/K+SEhIVgY27Gzs6tfvz7eFx8Mn2HevHmDBw/GS1hx0qRJMTExq1evvnTpUokSJZAKCSIiIiIiIiLKX97c7ZazC6KNUqVKITTB9P3793/77Tc8RRSCXGPFihWYmZqaunjxYgcHh+HDh5uYmCxYsCAlJUWuu3z58ri4OEQtSEawYlpampz/5MmTv//+u0qVKghckMjI7SAWmTJlytmzZ5s0aYIQB3EJNiVX+fPPPxEYvfPOO5UrV8bCN2/exMzExMSgoKCVK1fiU9WoUQNLLly48ODBg15eXq6urkuWLImNjRVERERERERElI9kwxEriBg2bNiACSQIb+ZWysWLF79+/TomoqKiPvrooxYtWghV4DJv3rzIyEhEJy9fvqxbt66Pj0+FChVOnTqFxeSKRYsWHTFiBCZKlCgxY8aMu3fvenp6CtWRKXPnznV2dsb0okWL9u/fj6Tm6NGjjx8/njx5sjw0Bo/IUzp37ozwBWv16dMHcQnmn1XBd5dvkZycjI9hZGT06NGjCxcuYDGsgvlIbfCOgoiIiIiIiIjykWw4YmXChAlClar4+/tPnDhR5LwnT564u7sLVVrRtGnT06dP//7773PmzElNTQ0NDUU+guBjypQpCDIuX77crFkze3t7uWLLli3lhIuLCx6jo6PlU2cVOV29evW0tLTAwMCAgIAiRYrIVAVq1aqFxzt37iDB6datm6mpKeKkWbNm4cM8f/5c+WzNmzdHqoKJBw8e4LFq1apyfuXKlbGKICIiIiIiIqJ8JKvBiryEytixY3v27KkctZGj4uPjHz58WK5cOaGKOUaMGLF+/Xpzc3MkLMoyP/74Y+/evYODg5G2/PTTTwhc5HwHBwet27Szs1OmbWxshOpqLHijokWLKvORzpiYmMTFxWH6t99+++abbxC+lC1b1tbWVn1TpUqVkhMxMTHqW8YntLS0FERERERERESUj+SxYygQkcybNw8TNWrUwOP27ds9PDy+++47TJ8+ffrw4cOYePr06YsXLzqq3L59GyEL0h/kGjo2e/fuXSQmVlZWmJYnGbm7uyM02bp1K+IVGYhgmZSUFMx88uTJkSNHJk6cKMOdo0ePat2mPKYGW2vYsKFQXQ5GOUCGiIiIiIiIiPKH3B6sIMu4pZKcnHznzp2LFy/eu3fvyy+/lAeGIPWIiYkJCwsLDQ39999/MSctLQ3hy5QpUz7//POaNWsaGxsbGRkhGVEOWtEKkcqvv/7atWtXxB8HDx709vYuVKhQvXr1duzYMX/+/N69e+NdlixZ4ubmhjAlMDAQqzx//tzJyenUqVPIWZTTiNSVKVOmaNGiGzZsMDU1xfY3btyoO9whIt3i4xPwaGlpIYiIiIiIiHKN3H5XIAQrfn5+P/744+TJk8+cOVO6dOkffvihevXq8lVEIbGxsUOHDp01a1a3bt2E6nK2rq6uiEKQs/Tr12/mzJnt2rWTV6jVoXLlyghHpk6dunLlSrzFF198gZnYznfffYfUZtSoUZMmTXJ0dBwzZoyFhQW21rRpU+QsI0aMuH37duPGjbUeioIw5dtvv8Xyc+fOXbhwYZ06dbTmL5TvIaFDPKc+58SJE9iH/f39Rd50/NTFUWNnrlq7Q2TBg0dB2AgedS8WExunTC/+Y91vy9cKIiIiIiKi3CS3H7Hyzz//6Hi1YsWKiE6Qa8gLnSDjkPM7qSjzoXz58uqbcnFxUZ4iLpETffv2RY6jflwJ1kKkEhcXZ2Zmpn7p2SFDhgwaNCgtLU1jYY1P6+7ujrAmJibG2trayMioQ4cOgih3CA8PR2hYokQJAy79c/naLRtrK79bd5OSklA0RI7Zf/j0pas3R302QD6tXsVLuUU6ERERERFRLpE9R6ysX79eXsUWKlWqJFQXtVXmeHt7+/1H5ACNy8e+dn5GTExMtJ6tY2Vllf6GPuhP6nlqj42NjbxPEFHuIfOUp0+fxsfHZ2rFsPDIh4FBvd9pn5yccuPmXZGTIiKi1JOUxg1qNmlYSxAREREREeUmWT1iBTFKz549EazIp5jG4w0VoYpU5KsaCxCRYvPmzdu2bbt79261atX69OlTp04doQord+7cOXbs2Llz516/fr1169ZDhw49d+7cihUrXrx40bVr10GDBsnA7uzZs6tWrbpy5Uq5cuV69erVokULfd4UwUqJEiWeqmTquJXL124Wsber4FnKs4z75Wu3qlWuKOc/efp89bod/Xp1PnHmkt/Nu87FijZtXKdcmVeXcEYWc/TkhRv+d21trapX9mroW109arxw2e/g0TMf9+9hb1cYT0PDIn7/e2PHNk227znyPCQUc6bP+6NwIdtPBr6zdtMePH23Wxu52J4DJ2/feVCokE2DetXr1qyMmS9ehh04cuZmwAMnR4da1SvVruEjiIiIiIiIclg2nArUU0V9jsYZMekXICo4EhIS1q1bp36FnRMnTijTGzdunDhxYo0aNQYMGLBp06aRI0cuXbrUx8cnIiJC3tMKOYu7uzuik6ioqKtXr3bp0gXzFyxYULt27apVqyLBxCqlS5f+7LPPjhw58t133+ElGc28lmHZCsKUKj6v7odVxbv85h0H4uITrFRXk01KSkYOsnbzHkcH+4a+Nc5euL524+4xXw1GhLJ5x8Hw8MjWzX1fvAzfuuuQq4tTmVIllQ2W9yyFxOTilZvNG9eR24+KiilT2q12dZ8de1/dcgsT8oK1ERFRchW8KcIXTDRvXPfZ8xfrt+wzMzWtUdVr78FTkVHRvbq3ffT46brNe0u5uxRzdBBEREREREQ5KY/dbpkoL4qMjJwxY1BdDf0AABAASURBVIbyNDExUU6kpaXNmzevcePGc+fOxdN+/fq1atUKwYp8GhMT07dv39atW2P60qVL27dvR/JSqlSp5OTkY8eOHTp0CMEKFra3t1+9ejWW6d69+zvvvLNmzRo9gxXx/2crSGdeuzyik6Cnz3t0bolpn0qeG7ftv+4XoH5giIW5ee+e7THhWLTIX6u3PH7yrERxR/eSJTq0buxU7FXGcd0/4JpfgHqwUsjWulKFMhcu+/0XrNysXsXLwtysaaPaL0PD7z54jAmNj3H+4o2XoRGjRg4sWsRO/jde97+DYOXeg8e1a3hXKFcK//B2yHoEERERERFRDmOwQpSzLCwskI+MGDFCmXPixAn59NGjRxEREU2aNJHzjY2NGzVqhNBEWbJhw4ZywsXF5dmzZ/Iu46ampk5OTohdMH3x4sWoqKhp06bJxbBBrfeoyi5nL17DY1hYZFh4JCZSU1OPnbqoHqzUrVVZTjipDhWJjYvHp23RpC4ikv2HTyOUCX7+sqiDvcZm69SsvHzlpsdBweZmZk+fhfTq3lb3x3j05ClyE5mqiP9ODgJkK3iXO/ceVa5U3rdOVTMz/r4REREREVGOY8eD6K2R4Ujx4sWVOUhM4uLiEFgIVYBibW2tvFSiRAmN1dPS0uQWwsPD5ZzmzZtn6jY98fHxT58+1bpxrY6fuojHlWu3K3OQg0THxNra/O9z2hUulH6tfzfuvnrjdsXypd1KFr97PzD9AhXKlbYrbHvhsp+VpUVJF2eXEk7iNR870cJcy9ds37qRu1uJoycu7Nx39Pjpi4MHvuOYLsQhIiIiIiLKXgxWiN6acuXKmZubX716tX79+nIOpr28vIyN9bpdl5GRUfXq1WNjY6dMmSLnIGdJSUkR+lFPVfS5wErQ0+cpKakfD+hZys1FzomKiZ06a9nV67fr162W0VrBz1+ev3RjxOA+Hm6vspvzl7TcGszY2KhWdZ8z56+aq84AUuYbGRtpvb+ym6vzsVMXk5OT5e26rvkFhIZF1K7hc//B44rlSvl4eUZERi9a/u+FSzfatGggiIiIiIiIclL23G6ZiAxgZmbWqVOnP/74Y9++fUFBQUuXLj1z5ky3bt3030LXrl1v3bq1ePHiFy9eXLx4sX379sePH9dz3UylKkJ1WVm7wrblyngg/pD/ihaxK1va7dLVmzrWSlBdUCY0LDw6JvbE6UvPQ15qXax2TR8sgHykehUvZWYpd9eXoeH3Hz6JiYlTX7iqTwUELuu37HsRGn4z4P7aTXvi4xMszM227Dy05+DJhIREUxOT1NQ0Cwu9bohORERERESUFTxihehtGjNmjKmp6ZQpU8LCwkqWLPndd9917NhR/9WxcGxs7N9//71o0aLixYv37t0b2Yo+K8bHxyNPKVKkiJ6pSlraq8vKVvYur3aj5FeqeJfftONgeERkRiu6lyxRu4YPQpDU1FSfSuVqVvN+8TIs/WLygin2doUt1dKQShXKlCvrsfiPtYULFRrz1UfKfGenogPf77p11+Fpc5abmZrWqlapZdN6JiYm3Tu3PHD4zPipCzFdplRJ39pVBRERERERUQ4zUm5QQpQPhIaGOjj87w67p06d0rqMr68vHqOiohAu2NvnlmtwRERE2NnZCUNlcfWclpycjGhGx9Vkn4eETp/3x/CPe5Vyd9V4KT4hMS011cpKSwAUpzpQRePMqYSERLyRnqdTERERERERpYcOo/5dSx6xQpQrZDEWyc2pilBdiFf3AsdOXXQqVjR9qgKWGZ/RY2VpkX4mzwAiIiIiIqI3icEKEb1liYlJ9x8+aVivuiAiIiIiIsprGKwQ0Vtmbm729af9BRERERERUR7EyxAQERERERERERmIwQoRERERERERkYEYrBARERERERERGYjBChERERERERGRgRisEBEREREREREZiMEKEREREREREZGBGKwQERERERERERmIwQoRERERERERkYEYrBARERERERERGchUn4UePnwoiN42Dw8PQURERERERJSb6BWssENLRERERERERJQeTwUiIiIiIiIiIjIQgxUiIiIiIiIiIgMxWCEiIiIiIiIiMhCDFSIiIiIiIiIiAzFYISIiIiIiIiIyEIMVIiIiIiIiIiIDMVghIiIiIiIiIjIQgxUiIiIiIiIiIgMxWCEiIiIiIiIiMhCDFSIiIiIiIiIiAzFY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n5+fvb19nz59BBERERFRAWP0HxMTk/Dw8OTkZEG5W1RUFCIwBCvyDydyB54KRFRwubi4HDx4UBARERERFVQyVTEzM0tISHjy5AkGHW1sbHLbARGUlpaGP1BkZCQera2tc/SytQbg7kJEREREREQFlHLECrrrmEDXPTQ0lNeyzYXwNzI3N1duBlQggpX169fjsWfPnoKIiIiIiIgotzI2/t8lMiwsLNB1T1MRlJuon7SFR+VPlktkf7Di5+c3YcIEb2/vGzduIF7pqSKIiIiIiIiIciXZUTc1NZWRCoOV3EYen6LEKyKXyc5gBZHKhg0bkKcoYcp6FX9/fy8vL8YrRERERERElGshXmGkkpvlwkhFyp5gRYlUvL29x40bV6lSJTlfJiwyXhEGnRnUr18/5a5XlpaWHh4ebdu29fX1FVkwfPjwunXrYssi81JSUuTFcgQRERERERHlL7m26065WTYEKzI30YhU1Mk8xd/fv1evXgacGdSkSZNWrVphIjw8/OjRo/PmzTM3N69Zs6Z446Kjo7/++mskMvXr1xdEREREREREVOBl9Yovfn5+8mgULy8vramKhDClR48e4r+L2maKg4ODp0qtWrU+/fRTS0vLixcvirchKSkJ4Y4gIiIiIiIiIlLJnlOB5Pk+IoOTfdRPFMKjyAIzMzPkLBEREZhetGiRjY2Ni4vL1q1b+/btW7t2bX9//x07dty8ebNkyZINGjSQx7lATEzM6tWrL126VKJEiU6dOilb27x589WrV8eNGyef/vvvv48ePRo1ahSmQ0JC8PTatWt2dnZt27Zt3rw5toxvgZfmzZuHL9unTx8EPXv37j127NiLFy9q1qzZtWtXR0dHQUREREREREQFRvbcowh5yj///IOJXr16aRyTgqcTJkzABPILedBKViCXefLkiaenJ6ZDQ0MR2axYscLNza1YsWIPHjyYNm0akpHOnTsbGxv//vvve/bsEarrOS9cuPDgwYNeXl6urq5LliyJjY2VW4uMjHz69Kmy8bCwMOQpQhXETJky5d69e126dMF7LV269Pjx42XKlGnatCleLVWqFCacnZ2x7h9//NGoUaNBgwbduXNH/g8QERERERERUcGRnXcFUr8TEKYrVaok77usXHsFOYjIvE2bNgUEBAhV8IFUBblGy5Yt5Uv379+fOnUq5mB65syZpqams2fPNjExQbYya9YsJB2tW7cODAy8cOFCnz59MBOLValSZcaMGbrf8ciRI8+fP8cWnJyc8DQ1NfXs2bNffvll8eLFd+7cie3Ia6wcOnTI0tKyQYMGNjY2JUuWvHXrFkIcXuuIiIiIiIiIqODIzmBFaLsNULbcZdnOzg6PJUqU6NKlS82aNRFkyPmFCxeWqQrcuXOnatWqSFXk01q1aiENCQoKevDgAZ7iJTm/cuXKyF90vx025eLiIlMVGDJkiNbFatSosWLFipEjR9auXbtFixZNmjQRRERERERERFSQZHOwIiFM8ff39/LyypZUpVu3bu+9957Wl5RUJS0tLS4uTv0SJw4ODnjEN8jfHwAAEABJREFUzJiYGPFfNAPm5uaWlpZatxYfHy8nsFZGy6jDNmfPnr158+YzZ84cPnwYoU+vXr0EERERERERERUY2XONlbfOyMiobNmy8owhCdMmJiYeHh7u7u54ev36dTn//v370dHRctrY2BhhSkpKilBFM1euXJHzsanHjx8nJSXJp2fPnt2+fbtcXi4p59++fTs8PHzAgAELFy7s06fPzp07lWiGiIiIiIiIiAqC7AlW9LyJsmHXWNFT8+bN/f398UlCQkIQhWzevLlRo0ZmZmZlypQpWrTohg0bTp8+jejkr7/+Mjc3l6u4ubnFxcXt3r07KCgI8xMTE+X8evXqIT1ZsmRJcHDwpUuXFi1aJK93a2dn5+zsfP78+bCwMGQogYGBkydPRgSTmppqampqaWnJC6wQERERERERFShZPRWoUqVK8qIqus/9Ue64nC0nB2nVoEEDpCTbt2/HhylcuDBSlYEDB2K+lZXVt99+u3Dhwrlz52J+586dlbsC1a9f/9y5cytXrty4cWPTpk1bt24t7wZdsmTJUaNGrVix4vPPP0cK07hx4+7du8tVunXrtm7duqFDhw4bNgyrBAQETJo0KTIysnjx4n379rWwsBBEREREREREVGAYKYdpZJFyMyAZnUycOFHmLEqk4u3t3aNHD3l7oBwVHR1tY2OT/uCRmJgYa2vr9PORsyAQUa56q7GKpaVl+pfCwsLs7OzkmUHyHW1tbQXlAqGhofLyOnDq1Cmty/j6+uIxKioqPj7e3t5eEBEREREREalBh1H/rmW2XbxW5in+/v69evVSDkuRaYv6HZffgIwyDuVeQhqQtogMZLRKkSJF9HlHIiIiIiIiIsrfsvOuQDJPUe61LE+reZORChERERERERHRm5T9t1uWZwMhW6mkIoiIiIiIiIiI8qnsD1aknLtILRERERERERFRLpE9t1smIiIiIiIiIiqAGKwQERERERERERmIwQoRERERERERkYEYrBARERERERERGYjBChERERERERGRgXLqrkBEpCElJSUxMTE5ORkTgoiEMDIyMlWxsLAQ2SQhISFZJS0tTRAVeCxlRG+AiYkJSpm5uTkmRHZgo5FIQ7aXsmzHYIXoTYiPj09KSrKxsbGzs8OPgiAiIVJTU9FwjI2NjYyMtLKyMjMzE1mAIhYXF4cat1ChQng0NuYhmUQsZURvAhIQtPRiYmJQxCwtLUXWsNFIlF72lrKcwLJKlOMwuIfWp7OzsyAiNSgXliqoKcPDwzH6ja6aMAi6jtiIvb197qxrid4WljKiNwDxh60KShlyTGtra2EorI6tsdFIpCEbS1kO4VADUc5CM9TIyAgtUUFEGUA/zcHBAdWkYcc8Yy2siy2wv0eUEZYyojcA7T10/9D2EwbBilidjUYiHbJYynIOgxWinJWUlMQKkui1MIpeuHDhhIQEkXlYC+saPA5PVECwlBG9AWj1oe1nWILJRiORPrJSynIOgxWiHBQXF2djYyOISA+2trbJycmpqamZWgvLYy2sK4jodVjKiN4AtP0SExNFJrHRSKQ/w0pZjmKwQpSD0BLlUdNE+sN4OEpNplbB8hxFJ9IfSxlRTkPbL7OlTLDRSJQZhpWyHMVghSgHpaSk8HLuRPozMzMzYCw9izc6ISpQWMqIchrafgacpMBGI5H+DCtlOYrBChERERERERGRgRisEBEREREREREZiMEKEREREREREZGBGKwQERERERERERmIwQoRERERERERkYGy+dLTfirp5/fs2VMQEREREREREeUv2Rms9OrVy9vbO/38GzdurF+//p9//hFZExcXZ2VlJd6SlJQU+QFMTEwEEREREREREVE2BiuITvA4duxYra9OnDjRz8+vUqVKIvNevny5fPnymzdvxsTEFClSpEqVKgMHDrS0tNSxyu3bt8eNGzdhwoTy5ctPnjwZc8aMGSMyD2FKQkKCtbU1pi9fvjx9+vSvv/66Vq1agoiIiIiIiIgoG4MVf39/oTpoRccyBgQrT58+/f7775Gn9O7du0yZMhcv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/6VLl/7++++lS5fWabC9cO53ydatW48dO9a3b1/nt/bSSy/ZPUKkdevWKhfv3r27Z8+e9szly5frXWttv/zyy5EjRyxH+4Pq1au3a9euTJky9mIrV65MTU21u4+I1nPmzBl9XFYxVqAWKyEhIfqbkpLiPFOfsrYYswnqK7fnazrAQdP6tq666qouXbpoy4uOjp43b55dL51JcHCwlSWmMTftZjJap8IURSd6am1D2hoyraRcuXLtL2rWrJk9X6/8xIkTymWuuOKKyy67zMx0/bUBhey7777TpraalH0AABAASURBVP7888/3799/4MCBr7zyinZzX375pWmu5WfM0cW+qTf+4Ycf3nvvvRYAAADgbufOnYuJienqoPr1zZs3T58+3fWH64RcpeDcl/niiy8OHDigsqfW//bbb5trs+iB06ZNq1GjRu/evXfs2LFgwQJ7YUUw/fr1a9y48dSpU+1WBbnfpfNnRTy7du3K9NYUkXR1oiKzopA9e/Y4L7Z3717Tb0NBSe3atbWYUh69vMmTJycnJ9uLbdmypUWLFs4P1JPa7RiKrQIFK6bHjfOHqLDt66+/1pwQB7OtGIo8VOeswEXb67Jly7TZKcJQfqGsLiEhwXlrcKZMRHmhVminG5o4ePCgVm5fBshy9AbSRqAtQFtMputLSw0nzr2EhgwZUqFCBa3Nzmjy9NqAQqbtXL8jhdP2nPfee2/RokWlSpXStPZ32vvfddddSluuvPLKmTNnZrsS/YL0qD//+c8dOnTQwooO7btWrVr1f//3f9qH3nbbbdojZ+1kpMd+9NFHI0aM0GPvuOOOzz//3Mx/7rnnBg8ebHbExrvvvnv11Vdrh6Dp7du3P/bYYzpUDBgw4N///rfdVfCtt97SMtpLPPLII1qh9vhmvlJ2zZ8xY4amr3ZQaq59uib0EMtx+NG0nl2x+p133tm9e/cJEybok9HhYfz48X369NG7c35fubxlAAAAwChZsmRdh1atWt144406Kb1kVpIn27Zt0/mwMgudritbUelVM7/55pvOnTsrwtD866+/XifkOq1NTU3Vs19zzTUqlpq7lHqYleRyV3p6+qeffppty5GqVavWdXLJUQtVptZiCm4GDRpUpkwZ5UFmvkoc58+fd+6zAqNAwYpSiUaNGimyUp534sQJbRlr1qwpW7asaTNSv359zdRdKjht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zh7WQZvlrEd9oNgJ5IMPBcfOYTcjrfgEN3b51BpW7fTeI7J99lL4PZeLUEGPi4pOWrRokcsllt3VJ8gWHBxcr149JReajo+Pj4mJ0UR6eroyjooVK44aNUrRyZQpU5SkaP6bb765aNGiHj169OzZc/Hixe+9955m7tu377nnnjtw4MDgwYMDAwM1U1GI5iclJWlt5oFy/vx53dSaNR0bG7t582blLJdddlm7du1mz569fPlyPV3v3r3Nwppo2rRpTi8DAIC8sq/+U7QNVZzZV9614Fbe31zF4NLL8Htm/+YrFexcd9kXuStDN5mFF16AuXimKpZbugJFRkaOGzeuMLOV6tWrHzp0yHnOiRMnTp061alTp9atW//tb3+77rrrlLkoQFH88Ze//OX666+/8cYbb7755q1bt6akpMycObNEiRIvv/yyghW9sI4dO06fPt15gJhsKYh5+OGHhwwZcuedd9atW3f16tVVqlTRGmrUqHH55Zdrom3bttm+DAsAgDxyXFb5P21ovee8hCFsPcGHuh449e1nA4Af8qEfo0HY7UM8MUK5vQF4zz7ZpCqm83KxSlUstwQr1zsUZrZy+PDhOnXqOM+pVq1ao0aNJk6cOGnSpA0bNvTp0yc8PHzPnj26q02bNmaZfv36vfrqqyEhIbt371bwYfoESVRUVGJiomn5kouaNWsqSTHTERER2SYm2b4MCwCAPLKv9+ltFaf06nc73xq1xGyQNFqBX/K5rdoOu9kne78CjlmbLa+6SJB+PlWHpxXbVMVy1+C1ecpWclnGFUlJSfv372/cOPM10J588smbb7752LFjr7zyytNPP52enn7+/PmAgICSJUs6L5aRkaEYxYyiYlSsWFF/s16zOTk52flmpUqVLBdkfRkWAAB54c1X3mUIW/dyy0CGhYxGK/BXvtUPyDBhNztkL+e5Xb2XXCRIT33tBHOd8v9kPcWQ2962i9mK/hYkWFFOMXnyZE20a9fOef6RI0e2b98+aNCgF154Qa9B03qWhg0bKkbZu3evWUZxzKeffpqSkqL5ZogWQ9NBQUF169ZVCmM5xm0x89evX+/KSwoMDLS7EWX7MiwAAPLCE/VabkQFqRv54kV2VDDgOq/wPz7XD8jguss+wezqOzS2PKHILxJkpyp6GcU2VbHcGKxYLmQrph9Qni4PlJaWtsNh69at33zz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X2lLZGSklReXX375rl27HnjgAWUoCjVCQkLCw8MDAgISEhKUdChVGTRoULNmzb7++msFKBUrVrSTDk00bdq0QYMGZo5iFE1Uq1YtJSUlJiZGfzUzNjZWa/jss88uu+yydu3azZ49e/ny5Zajmcxrr7125syZAQMG7N27V0mKHmKuL6OXobTl73//u0IiE+JYAAAAAACguHJDixXTJsVuiqIAxfkSy+PGjTMTmu/cgMVFSkMiIiLee+89rV/pycCBA2+88caSJUsuXrxYocbkyZNNrx9FLT/88MPQoUMHDx68aNEipR6aMGuoXr267tLNrl276ubOnTud13/gwAFlKGYsmN27d69evbpv375z5swJCwubNGlSUFDQ1Vdf/fjjj9vLKyrq06dPG4eaNWsmJydbAAAAAACguHJPVyAxfX9yobDDypcmTZo899xzu3btmjdvniKPY8eO/etf/9qzZ4/u0k2zzObNm8+dO3f8+HHn0VVcoXDEpCqiBOfEiROa2LdvX8uWLe1rD7Vr1848nfTo0UMRj56uU6dOV1xxRUhIiAUAAAAAAIortw1eazdFMQOpmGlN2POHDh1qWq+43mhFAYcZvLZEiRKNHWrUqDF79uykpKTExETLMRSwWbKeQ0ZGhpVHlSpVyjozNTXVebh751H0b775Zr2M77///rPPPvvxxx/HjBlTrVo1CwAAAAAAFEtuCFa2bdumMMWOS5Q1KGcxGYrz/ObNm+e1H9D58+c/+uijsLCwPn36mDm1a9dW6nH69OmGDRtu3LjxjjvuMOOSmqvqhoeHazowMNA5YdFNy3GVZZef1qpTp86mTZv0EHPtIT2RmZ+QkLB9+/bWrVtHRUXpNTz11FOLFy++8cYbLQAAAAAAUCy5YfDaoUOHbt261R681nK0SZnuoJDFeUkzrq3rmjZt2qhRo6+++uqHH344fPiwwo5vv/22UqVK1apV69y5c8mSJd99991Dhw4dO3ZMGceXX35pP0ov5siRI8pBdLN8+fJafs2aNYpCkpKSXHnevn37auGJEyeuXLly8uTJp06dMvNDQ0OnTZum15OYmBgUFKTkxcXrWgMAAAAAAL8UlCn7yIcqVapsc1jicOLECecLKitMmTlzpmbqb69evfLUaCUwMLBdu3bKTebOnfvjjz9u2bKlSZMmI0aMqFChQrly5Zo1a7Z8+XLlKXrShg0b3nHHHabPTnh4uCIYxTpnzpzp0KGD5ij+WLp0qQKRiIiIMmXKLFq0qE+fPgpoNNNyDJtinu633347f/68UpXatWvrKXbv3r1u3bp69erpNaxfv/7aa69VlFOjRo1ly5Z99NFH8+fP15PefPPNwcHBFryGMi8X066UlJQLFy6Yq2t7jrK8smXLWgAAFB0d8tLT0527NuebDp2qW3LuMQ0AQOGLj4/3dFFOR0/Xi5YB5sLDBacARdlKZGSk81WBnIdf0b35DnEyMjL0wSlMyXqXCtIhISH2QLO2s2fP6oN2Hlz29OnT5cuXNz2DcmcuoqwMxdx87bXXlNS88847l3xSFLnY2NiKFSu6sqS2KKUepvuY58TFxSnOswAAKDo65KWmprrlBFSHTlUpUWcAAChaMTExni7K6ejpetHSbVcFspuiKECxB6818/M6tEpWAQEB2aYqlqM1Srbzsy5foUIFyzVHjx598cUXb7zxxtq1a0dHR69Zs+ZPf/qTK08KAAAAAEUrPT3dlepkAO7itmDFZq7+Y199ueCpSuFr27btyJEjf/vtNyVEisEGDx58zTXXWAAAAMVecnKyfVlGAN4pJCTEXf0SALgigJ8c/AldgQAAyISuQEBxQ4sV+D2/7QoEAAAAAChypCpAIeMnBwAAAAAAkE8EKwAAAAAAAPlEsAIAAAAAAJBPBCsAAAAAAAD5RLACwFXx8fHJyckWAKBgUlJS0tPTs87PyMhISkqyAACAT+GqQIDPGDBggJ1rhIWFNWzY8LrrruvTp49VKBITEwcPHnz99dePGjXKAgDky65du2bOnKmcWsGKduPDhg0rU6aM5qempmr+5s2bNR0aGqodfocOHSwAAOALCFYAX6JTbaUbmjh16tT8+fPHjx9fsmTJrl27Wp4XHBysVKV169YWACBfzp8//8477wwcOLB79+6a/uyzz7744os77rhDd/3444/79+9/4IEHKlasuGXLlo8++qh69eq1a9e2AACA1yNYAXxJpUqVIiMjzXSnTp2uvfbaFStWFE6wUqJECdqqAEBB7N27VyG1UhXtUcuVK6e99/Tp0zMyMgICAvbs2dOhQ4fKlStrsVatWilV0RyCFQAAfAJjrAC+SmfnVapUOX36tKY3bdr0zDPPDBky5LHHHlu+fLm9zC+//HL//fffdNNNr776qubffvvt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","media_type":"image/png"}}]}]},"uuid":"9881a4d1-67a4-41af-9dbd-bf81f3e4e34c","timestamp":"2026-06-10T08:44:21.405Z","toolUseResult":{"type":"image","file":{"base64":"iVBORw0KGgoAAAANSUhEUgAABcgAAAMgCAIAAACYkhb5AAAQAElEQVR4nOzdB1gUx+M+8KFXBRFBQcCCBcFesffeNYkaY4mJsSWmmUQTjdHYYjdqbDGJsST23nvvXVCxoyii9F7/rzff7O/+x3EeByjl/Tw+9+zt7e7dyc7NzDtbTBMTEwVRgRQSEuJSwkUQERERERERqQl+Huzg4KDPklFRUcaCiIiIiIiIiIgMwmCFiIiIiIiIiMhApoKIiIiIiIiIiDIQHx//8OHDqKgoTBcqVMjDw8PS0lJ5lcEKEREREREREZF2sbGx165dS01NlU9DQ0MjIiJ8fHysra3lHJ4KRERERERERESk3aNHj5RURUpJSQkMDFSe8ogVIiIiIiIiIiLt5BlAOmYyWCEiIiIiIiIi0i45OTn9zKSkJGWapwIRERERERERERmIwQoRERERERERkYEYrBARERERERERGYjXWCEiIiIiIqICJz4+PjY2NjklWWSBqYmptbW1paWloAKMwQoREREREREVIMnJyS9evggPDzc1NTU2ztJpHKmpqc9Dntvb2zsWdcTWBBVI/MMTERERERFRQYFU5fGTxwhEChcuLLJJbGzs4/jHJV1LMlspmHiNFSIiIiIiIiooXrx8gVQle0/ewdawTWxZUIFkYJx2/vz5s2fPxsfHC0Nhz6tTp06tWrUEERERERERUc5DHzY8PDwbj1VRoIeLLdvb2fN6KwWQIcHK6NGjV65cKbJD3759p0yZIoiIiIiIiIhyWGxsbM6drYMtY/sMVgqgTJ8KtG/fvuxKVQCbwgYFERERERERUQ5LTknO4tVqdcCWs3iPIcqjMr1LzZkzR2SrbN8gEREREREREdGbkemDoK5evSqyVbZvkIiIiIiIiIjozeBdgYiIiIiIiIiIDJSdl+2pr6L1pZMqwlBpaWkxMTG2traCiHKZpKSkmNgYG2sbMzMzQUREREREb0NcXBweraysBL1x2RasfK2iY4EZKiKToqKixo0bd/z48fj4eG9v7yZNmnz44YcWFhaXL1/u27fvypUrq1WrJojylJSUlErelTCxe9fu0qVLizfi48EfHz16VH1O4cKFz509J/T24aAP8bj89+Ua81E8hwwdsnDBwhYtWggiIiIiojwLDfWWLVtiYsWKFW5ubnLmggUL9u7du2XLFmUxDPw3b978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yfIqgc2aNRs+fLjIpMuXL7u4uBQrVkx9ZtWqVffu23vjxo1GjRpFREScPXf2xIkTHh4erVu13rR5k8gxiIr69O6zc9dOJEpCdSVdtOHl5RRr1679KPDR4iWLo6OjHR0dO3bsaG5m7uzsPGjQoK1bt86YOQOpU8UKFbt07iLoP0aJiYmZWgFRhdb56qf8KOcByRsDyWnlwivpyetl6pCWlob+XmZDEOyXyhVVYOnSpUgWsTcL1UlG6EkKKthCQkKQQYhcJjIy0sbGBqmiMEh4RLiO0ym1ioqKsrG1MTbSzCuTVDK68osOr44MTEww+IoqREREREQ55HnIc3QGlfvMZkpqaioG7x0cHDK6VVB8fDy6mU7FMn3tFQV6vuih63OHh+yC0Vl0PbS+I15K3xdISEgwMzPT5+aeeV3w82B5bWA4deqU1mV8fV/dhhX9qWw7YkUJU9TpCFMyBTuuAYeWqKcqGpiqUK6lcWGqzMpsqgLqV8lSZ6YiMs/gFYmIiIiIci2kCUWLFhU5CT3fN5mqgI5hVK0vveGPl1fkyMVrcyf0HpU7xRIRERERERERZV2mD+CpUqWKyFbZvsGM9OrVa/v27YKIiIiIiIiIKJtkOlj5/PPPRbbK9g0SEREREREREb0ZmQ5WWrVq1bdvtt1WGpvCBgURERERERFRDjM1MU1NTRU5Q96fWFDBY8hffcqUKT169Dh79mx8fLwwlKWlZZ06dWrVqiWIiIiIiIiIcp61tfXzkOciZyQnJxtwS03KBwyM02qpCCIiIiIiIqI8AgP89vb2sbGxht1xWYf4+HhsOds3S3lC/r/7NBEREREREZHkWNTR2Ng4K6dfpIetYZvYsqACiSeAERERERERUUFhampa0rXki5cvwsPDMY1ARGRBampqcnKyvb09UhVsTVCBxD88ERERERERFSBIQIo7F7e3e3VOUHJKssgCUxNTa2trngFUwDFYISIiIiIiogLHUkUQZRmvsUJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGYrBCRERERERERGQgBitERERERERERAZisEJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGMg0JCRFEBVXQ0yBBREREREREpMbExET/hU2LFSsmiPKL0NBQBwcHfZaMioqKj4+3t7cXRERERERERGrQYdR/YZ4KRERERERERERkIAYrREREREREREQGMhVE+Vd8fPzDhw/lQVyFChXy8PCwtLQURERERERERNmEwQrlW7GxsdeuXUtNTZVPQ0NDIyIifHx8rK2tBREREREREVF24KlAlG89evRISVWklJSUwMBAQURERERERJRNeMQK5VtaL+OcqWs7ExEREREREenGYIXyreTk5PQzk5KSBBEREREREVE24alAREREREREREQGYrBCRERERERERGQgBitERERERERERAZisEJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGYrBCRERERERERGQgBitERERERERERAZisEJEREREREREZCAGK0REREREREREBmKwQkRERERERERkIAYrREREREREREQGYrBCRERERERERGQgBitERERERERERAZ6c8GKn5+fICIiIiIiIiLKR0xFzluvIqd7qggiIiIiIiIiorzvTRyxglQFYco///wzbtw4JWEhIiIiIiIiIsrr3sQRK1CpUiVhkF69eskJExMTDw+PcuXK1a1b14Ct3b59G7HOhAkTypcvr/HS5MmT8ThmzBiRw4YPH44P369fP0FERERERERE+UKOBCt+KkJ14o/IGlNTU0Qh7733XkpKyt27dy9durR///4vv/yyZs2agoiIiIiIiIjorcr+U4EQqUyYMMFfpVevXlm8Zq2xsXEFlUqVKnXq1Gns2LG1atWaPXv2vXv3BBERERERERHRW5X9R6wgSfH29kYCgumJEydm782AjIyMRowY8dFHH128eLFMmTKYc/To0RMnTjx48KB69ert2rXz8PDAzKtXr+7ZsycgIKBixYrt27fHo1w9ISHh999/P3/+vJubW+fOnX18fJQtYyM7d+4MCwurXbt23759zczMMPPly5fr1q27cuWKjY0Ntv/uu+/K+SEhIVgY27Gzs6tfvz7eFx8Mn2HevHmDBw/GS1hx0qRJMTExq1evvnTpUokSJZAKCSIiIiIiIiLKX97c7ZazC6KNUqVKITTB9P3793/77Tc8RRSCXGPFihWYmZqaunjxYgcHh+HDh5uYmCxYsCAlJUWuu3z58ri4OEQtSEawYlpampz/5MmTv//+u0qVKghckMjI7SAWmTJlytmzZ5s0aYIQ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sVMXk5OT5e26rvkFhIZF1K7hc//B44rlSvl4eUZERi9a/u+FSzfatGggiIiIiIiIclL23G6ZiAxgZmbWqVOnP/74Y9++fUFBQUuXLj1z5ky3bt3030LXrl1v3bq1ePHiFy9eXLx4sX379sePH9dz3UylKkJ1WVm7wrblyngg/pD/ihaxK1va7dLVmzrWSlBdUCY0LDw6JvbE6UvPQ15qXax2TR8sgHykehUvZWYpd9eXoeH3Hz6JiYlTX7iqTwUELuu37HsRGn4z4P7aTXvi4xMszM227Dy05+DJhIREUxOT1NQ0Cwu9bohORERERESUFTxihehtGjNmjKmp6ZQpU8LCwkqWLPndd9917NhR/9WxcGxs7N9//71o0aLixYv37t0b2Yo+K8bHxyNPKVKkiJ6pSlraq8vKVvYur3aj5FeqeJfftONgeERkRiu6lyxRu4YPQpDU1FSfSuVqVvN+8TIs/WLygin2doUt1dKQShXKlCvrsfiPtYULFRrz1UfKfGenogPf77p11+Fpc5abmZrWqlapZdN6JiYm3Tu3PHD4zPipCzFdplRJ39pVBRERERERUQ4zUm5QQpQPhIaGOjj87w67p06d0rqMr68vHqOiohAu2NvnlmtwRERE2NnZCUNlcfWclpycjGhGx9Vkn4eETp/3x/CPe5Vyd9V4KT4hMS011cpKSwAUpzpQRePMqYSERLyRnqdTERERERERpYcOo/5dSx6xQpQrZDEWyc2pilBdiFf3AsdOXXQqVjR9qgKWGZ/RY2VpkX4mzwAiIiIiIqI3icEKEb1liYlJ9x8+aVivuiAiIiIiIsprGKwQ0Vtmbm729af9BRERERERUR7EyxAQERERERERERmIwQoRERERERERkYEYrBARERERERERGYjBChERERERERGRgRisEBEREREREREZiMEKEREREREREZGBGKwQERERERERERmIwQoRERERERERkYEYrBARERERERERGchUn4UePnwoiN42Dw8PQURERERERJSb6BWssENLRERERERERJQeTwUiIiIiIiIiIjIQgxUiIiIiIiIiIgMxWCEiIiIiIiIiMhCDFSIiIiIiIiIiAzFYISIiIiIiIiIyEIMVIiIiIiIiIiIDMVghIiIiIiIiIjIQgxUiIiIiIiIiIgMxWCEiIiIiIiIiMhCDFSIiIiIiIiIiAzFY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n5+fvb19nz59BBERERFRAWP0HxMTk/Dw8OTkZEG5W1RUFCIwBCvyDydyB54KRFRwubi4HDx4UBARERERFVQyVTEzM0tISHjy5AkGHW1sbHLbARGUlpaGP1BkZCQera2tc/SytQbg7kJEREREREQFlHLECrrrmEDXPTQ0lNeyzYXwNzI3N1duBlQggpX169fjsWfPnoKIiIiIiIgotzI2/t8lMiwsLNB1T1MRlJuon7SFR+VPlktkf7Di5+c3YcIEb2/vGzduIF7pqSKIiIiIiIiIciXZUTc1NZWRCoOV3EYen6LEKyKXyc5gBZHKhg0bkKcoYcp6FX9/fy8vL8YrRERERERElGshXmGkkpvlwkhFyp5gRYlUvL29x40bV6lSJTlfJiwyXhEGnRnUr18/5a5XlpaWHh4ebdu29fX1FVkwfPjwunXrYssi81JSUuTFcgQRERERERHlL7m26065WTYEKzI30YhU1Mk8xd/fv1evXgacGdSkSZNWrVphIjw8/OjRo/PmzTM3N69Zs6Z446Kjo7/++mskMvXr1xdEREREREREVOBl9Yovfn5+8mgULy8vramKhDClR48e4r+L2maKg4ODp0qtWrU+/fRTS0vLixcvirchKSkJ4Y4gIiIiIiIiIlLJnlOB5Pk+IoOTfdRPFMKjyAIzMzPkLBEREZhetGiRjY2Ni4vL1q1b+/btW7t2bX9//x07dty8ebNkyZINGjSQx7lATEzM6tWrL126VKJEiU6dOilb27x589WrV8eNGyef/vvvv48ePRo1ahSmQ0JC8PTatWt2dnZt27Zt3rw5toxvgZfmzZuHL9unTx8EPXv37j127NiLFy9q1qzZtWtXR0dHQUREREREREQFRvbcowh5yj///IOJXr16aRyTgqcTJkzABPILedBKViCXefLkiaenJ6ZDQ0MR2axYscLNza1YsWIPHjyYNm0akpHOnTsbGxv//vvve/bsEarrOS9cuPDgwYNeXl6urq5LliyJjY2VW4uMjHz69Kmy8bCwMOQpQhXETJky5d69e126dMF7LV269Pjx42XKlGnatCleLVWqFCacnZ2x7h9//NGoUaNBgwbduXNH/g8QERERERERUcGRnXcFUr8TEKYrVaok77usXHsFOYjIvE2bNgUEBAhV8IFUBblGy5Yt5Uv379+fOnUq5mB65syZpqams2fPNjExQbYya9YsJB2tW7cODAy8cOFCnz59MBOLValSZcaMGbrf8ciRI8+fP8cWnJyc8DQ1NfXs2bNffvll8eLFd+7cie3Ia6wcOnTI0tKyQYMGNjY2JUuWvHXrFkIcXuuIiIiIiIiIqODIzmBFaLsNULbcZdnOzg6PJUqU6NKlS82aNRFkyPmFCxeWqQrcuXOnatWqSFXk01q1aiENCQoKevDgAZ7iJTm/cuXKyF90vx025eLiIlMVGDJkiNbFatSosWLFipEjR9auXbtFixZNmjQRRERERERERFSQZHOwIiFM8ff39/LyypZUpVu3bu+9957Wl5RUJS0tLS4uTv0SJw4ODnjEN8jfHwAAEABJREFUzJiYGPFfNAPm5uaWlpZatxYfHy8nsFZGy6jDNmfPnr158+YzZ84cPnwYoU+vXr0EERERERERERUY2XONlbfOyMiobNmy8owhCdMmJiYeHh7u7u54ev36dTn//v370dHRctrY2BhhSkpKilBFM1euXJHzsanHjx8nJSXJp2fPnt2+fbtcXi4p59++fTs8PHzAgAELFy7s06fPzp07lWiGiIiIiIiIiAqC7AlW9LyJsmHXWNFT8+bN/f398UlCQkIQhWzevLlRo0ZmZmZlypQpWrTohg0bTp8+jejkr7/+Mjc3l6u4ubnFxcXt3r07KCgI8xMTE+X8evXqIT1ZsmRJcHDwpUuXFi1aJK93a2dn5+zsfP78+bCwMGQogYGBkydPRgSTmppqampqaWnJC6wQERERERERFShZPRWoUqVK8qIqus/9Ue64nC0nB2nVoEEDpCTbt2/HhylcuDBSlYEDB2K+lZXVt99+u3Dhwrlz52J+586dlbsC1a9f/9y5cytXrty4cWPTpk1bt24t7wZdsmTJUaNGrVix4vPPP0cK07hx4+7du8tVunXrtm7duqFDhw4bNgyrBAQETJo0KTIysnjx4n379rWwsBBEREREREREVGAYKYdpZJFyMyAZnUycOFHmLEqk4u3t3aNHD3l7oBwVHR1tY2OT/uCRmJgYa2vr9PORsyAQUa56q7GKpaVl+pfCwsLs7OzkmUHyHW1tbQXlAqGhofLyOnDq1Cmty/j6+uIxKioqPj7e3t5eEBEREREREalBh1H/rmW2XbxW5in+/v69evVSDkuRaYv6HZffgIwyDuVeQhqQtogMZLRKkSJF9HlHIiIiIiIiIsrfsvOuQDJPUe61LE+reZORChERERERERHRm5T9t1uWZwMhW6mkIoiIiIiIiIiI8qnsD1aknLtILRERERERERFRLpE9t1smIiIiIiIiIiqAGKwQERERERERERmIwQoRERERERERkYEYrBARERERERERGYjBChERERERERGRgXLqrkBEpCElJSUxMTE5ORkTgoiEMDIyMlWxsLAQ2SQhISFZJS0tTRAVeCxlRG+AiYkJSpm5uTkmRHZgo5FIQ7aXsmzHYIXoTYiPj09KSrKxsbGzs8OPgiAiIVJTU9FwjI2NjYyMtLKyMjMzE1mAIhYXF4cat1ChQng0NuYhmUQsZURvAhIQtPRiYmJQxCwtLUXWsNFIlF72lrKcwLJKlOMwuIfWp7OzsyAiNSgXliqoKcPDwzH6ja6aMAi6jtiIvb197qxrid4WljKiNwDxh60KShlyTGtra2EorI6tsdFIpCEbS1kO4VADUc5CM9TIyAgtUUFEGUA/zcHBAdWkYcc8Yy2siy2wv0eUEZYyojcA7T10/9D2EwbBilidjUYiHbJYynIOgxWinJWUlMQKkui1MIpeuHDhhIQEkXlYC+saPA5PVECwlBG9AWj1oe1nWILJRiORPrJSynIOgxWiHBQXF2djYyOISA+2trbJycmpqamZWgvLYy2sK4jodVjKiN4AtP0SExNFJrHRSKQ/w0pZjmKwQpSD0BLlUdNE+sN4OEpNplbB8hxFJ9IfSxlRTkPbL7OlTLDRSJQZhpWyHMVghSgHpaSk8HLuRPozMzMzYCw9izc6ISpQWMqIchrafgacpMBGI5H+DCtlOYrBChERERERERGRgRisEBEREREREREZiMEKEREREREREZGBGKwQERERERERERmIwQoRERERERERkYGy+dLTfirp5/fs2VMQEREREREREeUv2Rms9OrVy9vbO/38GzdurF+//p9//hFZExcXZ2VlJd6SlJQU+QFMTEwEEREREREREVE2BiuITvA4duxYra9OnDjRz8+vUqVKIvNevny5fPnymzdvxsTEFClSpEqVKgMHDrS0tNSxyu3bt8eNGzdhwoTy5ctPnjwZc8aMGSMyD2FKQkKCtbU1pi9fvjx9+vSvv/66Vq1agoiIiIiIiIgoG4MVf39/oTpoRccyBgQrT58+/f7775Gn9O7du0yZMhcv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/6VLl/7++++lS5fWabC9cO53ydatW48dO9a3b1/nt/bSSy/ZPUKkdevWKhfv3r27Z8+e9szly5frXWttv/zyy5EjRyxH+4Pq1au3a9euTJky9mIrV65MTU21u4+I1nPmzBl9XFYxVqAWKyEhIfqbkpLiPFOfsrYYswnqK7fnazrAQdP6tq666qouXbpoy4uOjp43b55dL51JcHCwlSWmMTftZjJap8IURSd6am1D2hoyraRcuXLtL2rWrJk9X6/8xIkTymWuuOKKyy67zMx0/bUBhey7777TpraalH0AABAASURBVP7888/3799/4MCBr7zyinZzX375pWmu5WfM0cW+qTf+4Ycf3nvvvRYAAADgbufOnYuJienqoPr1zZs3T58+3fWH64RcpeDcl/niiy8OHDigsqfW//bbb5trs+iB06ZNq1GjRu/evXfs2LFgwQJ7YUUw/fr1a9y48dSpU+1WBbnfpfNnRTy7du3K9NYUkXR1oiKzopA9e/Y4L7Z3717Tb0NBSe3atbWYUh69vMmTJycnJ9uLbdmypUWLFs4P1JPa7RiKrQIFK6bHjfOHqLDt66+/1pwQB7OtGIo8VOeswEXb67Jly7TZKcJQfqGsLiEhwXlrcKZMRHmhVminG5o4ePCgVm5fBshy9AbSRqAtQFtMputLSw0nzr2EhgwZUqFCBa3Nzmjy9NqAQqbtXL8jhdP2nPfee2/RokWlSpXStPZ32vvfddddSluuvPLKmTNnZrsS/YL0qD//+c8dOnTQwooO7btWrVr1f//3f9qH3nbbbdojZ+1kpMd+9NFHI0aM0GPvuOOOzz//3Mx/7rnnBg8ebHbExrvvvnv11Vdrh6Dp7du3P/bYYzpUDBgw4N///rfdVfCtt97SMtpLPPLII1qh9vhmvlJ2zZ8xY4amr3ZQaq59uib0EMtx+NG0nl2x+p133tm9e/cJEybok9HhYfz48X369NG7c35fubxlAAAAwChZsmRdh1atWt144406Kb1kVpIn27Zt0/mwMgudritbUelVM7/55pvOnTsrwtD866+/XifkOq1NTU3Vs19zzTUqlpq7lHqYleRyV3p6+qeffppty5GqVavWdXLJUQtVptZiCm4GDRpUpkwZ5UFmvkoc58+fd+6zAqNAwYpSiUaNGimyUp534sQJbRlr1qwpW7asaTNSv359zdRdKjht3LhRhS7NsRzXS9b83377TVuMiliHDx8OCAgwJcOsdJe2DC2vvEOpx5EjRzShFWpbNE2kDH3xwcHBmzZtUnSStb3Wif9lFxf1kJ49e2o9Kpqa61Hn6bUBhUzhhXbu1157reID7U81RxunNn6TDCqzePLJJxVE3n777bo5ZswY5xYfNmUQzz//vH68t9xyi3buo0eP/umnnyxHQqqsZP/+/XfffXeDBg2effbZWbNmZXrspEmTnnnmGe1PtdPXT+app56aMmWK5rdp08Y5XxdFPDoyVa9eXSscOXKkEhC9bO0BPvnkE63fZN76Ie/cuVMvZvbs2Tow2L9cvSm7ZVlkZKSmlaLqjWthk9Wa6ZUrVz700EPa0Wu1H374oaL0Bx98ULsgHZl0r96Xfsu5v2UAAAAgW+YCtYoqVKWnGscXX3zx5ZdfXr9+vblX8cfUqVN1/vnFF19kCl/Wrl37zjvvKH1QWXLu3LnOd1WqVEmV+pYjHFF504x3sWfPHvtCKzp/btKkiYISFVR1bh8eHm4W1mmtkhGzTC536ekqV67s3i45qqFMSUmxGyKoxtScqMfGxqom9YUXXtCbtatXExISdLavAoJqQ3XWrTn6lPQ5mHuVG3z33XeWnyrQGCtiOlypTBUdHa3vWOWoqKgoE3m0bNnSlH90l74JfQHNmze3HJuCqsS1Aa1YsUIZh7aDbt26hYWF5fQUiml69eqlaObXX3+1HG1YlIYoQHFeRkUyzVGQlrUfkOX41n/++Wf75hVXXGFPqxSqlauUpWxFFd1KhfL02oDC1KNHj3Hjxr300kufODRt2vTpp59WUG058mlFGLfddpvyFN1UFq4UZv78+TfffLPzGnQM+Oijj2666SYzlu0//vGPq666SnFMv3799DvVTlPZRMeOHS1He7RMjQPXrVunvaeW1L7SHGbuvPNOHU76Omjn/sMPPyjatxxNTnTM+Mtf/qLpJ554Qhmlfl/aOejm119//eijjypJ0Wswq9WRQz/AmjVr2k+koET76JCQkBkzZigQMWOsODeHMXTk+PLLL1u3bm05Wp9pYb0MhUHaG+j3rvhGr0cZUy5v2QIAAAAuUq2kSq+Wo320Tn11mq2i6yuvvKJyotIKzVReoBJixYoVlRr89a9/VbFXtYnKGuyuMTrpVdFYp6AqQprRQp3Xf8MNN2htCxcu1BN16NBBJ/NKIpKSkpy7Yugk3IxvYjnaB5heP/37969du7bzqrLetWvXrk2bNqkG0W5d4kxLvvHGG/ZNlRqsnKkg/Nlnn+kV6oR/9+7dOo2vW7euuUvhiD4Ny9FwXuVoLXPy5EllK+YTUPDUykHvXRWfqiJVZrRkyRJTJFm6dOnAgQMtP1XQYEXlq6YOKpKZIVf+u+oSJcywJqqdVvbmfFdVB6Vf+qqcG56YR9klLlt1B22XeojzhZy1EnvhLg5muoWDmc66Nssx4K4pj4mCoWuuucaV1wYUOW3PSkwUGSju/e2332655RYlBaNGjVKaoPjAcrTm0H7TdBfS8SBTsKI5+tuwYUO7P5ESjeXLlx8/fly7Rf24lD4oLlF2ed9992V66jVr1uivfixmpCQ946BBgxR3ageqnebVV1+t/a8OEoreFXlob6B79WL0jKVLl1Zmb57RjK2lPbL9w9QDnVMV12m3Y/+KNaFgSMcq0+zFzDcHlVzesp3uAwAAAPHx8YpFLEftu2o0dYqr/OLYsWOa/8svv1iOFiLKL3r37v3nP/9ZEYzONnUmXKFCBVP2VD2fznt1Lm1KkbUcnNc/c+ZM1e2pFlPnzKpuVCLTqFEjFTwVZJihRS3HcKJ2hwmFLH/72990bq8169TXTjey3qUzcOUsw4cPN1WSWUVERIwcOdK+qcV02pwp97FHStXr11tWVaWKEl27drU7/mgBfRpalXITnd6r+KByQZUqVZRAmXFX9aGpSlVn2lrs8OHDemtKAxYsWHDmzBm9Ly3j/Bb8TEGDFVumVMVZplTFpq8hT8lFYcYceX1tQKFR/j3UYevWrf/85z+VECsv169MScHnn3/+5ZdfKjY2A3dnHXdZu2/L0TUm03xF0dppav6kSZMefvhhbfy33nrrvffe69z9UsmF5Ugw7Tl6iOXoLKq/11133ccff2zayChY6du3rx67Z88eHSe0X77yyiszPZ097dyCLE/atWtnT5tfq92K0sSvJgDK5S0TrAAAAMBWr1491fllna+TRnNiqTNeJRrKFN566y2dizZu3Nj5ai1a7MiRI8nJydkOJaFTdJ2uq05U4YWiCqUSGzZsaNasmR4VExNjJw5mAF2dP6sO9fLLL1fgome57LLLNm7caJbJ9i69PCUa33zzjRbYv3+//n7yySfOzVJUWs/UD0N5kHIZZSXmRFoFh71795prCWltSm2OHj2qbOWOO+6wH6Jze9VWWo7G8qarlJlvF5x/+umngwcPmhFkTKWsTsv1dlQXq1SlW7dulv9yW7ACwKOWLVv22GOPKey4/vrrzRxF44pUHn/88ZUrV/bq1eu+++5TNjx69GjtsxQkm553mZi2IU899VSme80u8pprrunfv792iNqHfvrpp9qZvvbaa/YyJnFXvm6nLTo82PO1QoXlP/74Y6tWrRTeP/HEE5Zj3GjLEag7tzy0HM3E7Ol8j2GUdTQl5+ZsLr5lAAAAICdVHFRT2Lp1a6UJP/zwQ506dVQ/pxPg3r17awHNadSokVm4Z8+eOg1+880377zzTp0wnzt3LjY21u7CEx4ervBi586dClNSU1NVN2nOTvv16/fdd9/dddddyj42bdqkR2kBRRUrVqzQWbQqDvXsijyioqLMCvXUWe/q2LHjn/70J/NEqg1dsmRJtv02Mr21SpUqacnu3bsrIlGBQqflKkTYC/To0aNs2bI6jb/99tvNu9iyZYtpGG4uCKNaXpVHFPQo2WnSpInl6Aqk4oneqeIV+0JCpvpW7yjb0MpvEKwAvkFp9IkTJ7RrGzJkiJ0Km+FptRfetWuXdmQKWW644QbL0Uwj2zHMza5Quz+7E83q1auVnevmZ599poOE1jDIoXr16sq5k5KS7PaEpj3I3Llz7777bjPHDMdlr2ro0KHPPvusHqXdtHbQliM00U728OHD2uea1CMhIWH+/Pn2Q3JRunRp/VWFQE4NGl2Uy1u2AAAAgFwpJdH57cKFC0uWLKkIQxWEkZGRqvJ8/fXXlY80aNAgMTHRXlgBh87M33rrLeULChe++eabsWPHmrt0MvyXv/zlq6++Uoqhh+j0WEGM5TjHjouLe/XVVzW/fPnySjHMabOeVzWdOt9WQtGyZUutWbmGWWHWu4IczBOVdLD7Fhn79u2bOHGifVNv5Iorrhg+fPj06dMXLVqkp1ZWMmLEiEw1l3ptOid///33VcTQu1aIc+2115q79F4+/vhj5Up6Xi2mk3bNVF2vFtaza20qEagoERYWppN53auHZ1sJ6jcIVgDfoNj7/vvvf+mll7RfU7CthHvz5s1KQ2rWrKmMQHG1dlsLFizQ/CNHjnzxxReWoxtkppVo992hQ4d3331Xezpl4evWrVN+/PDDD1uOfb120Pp7/fXXayeoIFw7Qecufnps586dX3vtNaX12nsqnnjnnXcU1WuFZgGF0M8///zXX39thvIyM0ePHn3vvff+61//0kFCu34dZvbv32+aKeZO+2VzrZ+rrrpKGXlOPQovKZe3DAAAABh16tT5xz/+kXV+xYoV77vvPudhQ5VZmMtcOp+g6kTdTLRxsP53WE+jYcOGjzzyiM609UC7H430dlBM45yGqJrzn//8p55FM+1hBM0Ks97lLNIh01ubNGlS1rdWqVKlUaNG6XkzMjKcT/t1Mm9PN27c+Mknn9SE0h89u/10ERER//d//5fpQ9BZtyIb5yFjLEeRJDw83G50768IVgCfcdddd2kHrThD6YZ2fwovunbtqr2z6U2j3asS4ltvvVW7uYceeuikQ6Y1KCuZOnWqdo7PPffc6dOn69atq/2msmrddeONN549e3b+/PnKnrVjbdeunVbivKfWzDfffPOpp55S/qK8QznF0KFDFZnbGYpeW48ePZR5DxkyxH6UMqCXX35ZT3rLLbdoDZ06ddJjnYduyYlCnGuuuWbOnDmff/65jgSmCUw+5PKWAQAAAFdkreTLd7VfTs2xM7UxueSz5PsFuPK8WSkcufzyy61LvQYFRplWuGnTJp2BO1/5yC8FmPF7Af8QGxtrD1u9YsWKbJcxw6/Gx8crLTZXgPccJbvOPRXdRdmwMgJFG1mHWDbX5bnkGpTLaEnTPTITxSuZ2qpkpcgm28fmQh+4drJ57dejwPvo0aP6DLOG8XmVy1sGAAAA4Albt27VGXi1atUst4qJifF0UU7lF7toecklabEC+B5lw9WrV8/2LldSFcuRJecUMbjSnCQf8UTZsmWtvCtRokSmy9TlWy5vGQAAAIAnmGtR+72CVgIDAAAAAAAUWwQrAAAAAAAA+USwAgAAAAAAkE8EKwAAAAAAAPlEsAIAAAAAAJBPBCsAAAAAAAD5RLACAAAAAACQTwQe36rlAAAQAElEQVQrAAAAAAAA+USwAgAAAAAAkE8EKwAAAAAAAPlEsAIAAAAAAJBPBCsAAAAAAAD5VMJynxkOmmjRosXQoUObN29uAQAAAAAA+C+3tVgxqcpYh8jIyHHjxkVHR1tulZiYaAEAAAAAAHgNt7VYUapy/fXXm1Yq+rtt2zb7rmgHTWgBK+9OnTr1/vvvb9++/dy5cxUqVGjVqtXIkSNDQ0OtvEtLS0tOTi5VqpQFAAAAAABQYO5psZJtbmJmKnAZN26cchZNjB8/3sqjI0eOPPTQQ0ePHr355psnTJjQr1+/TZs2Pf300/lovZKQkDBq1KgNGzZYAAAAAAAA7uCeYMU0VDEDrFiOSGXr1q1m2rRkGTNmzPTp0zUzr/2DPvvss8DAwEcfffTyyy9v0KCBVnX33Xfv3bt39erVVh6lpqbGxcVZAAAAAAAAbuK2rkCKPEywsm3bNgUo1zuYu+xRbFu0aKFgxfVBbc+cOaMA5cYbb6xcubI9s1WrVo0bN96wYUPPnj0nTZpUo0aNW2+91dz1zDPPaOVDhgxJTk7Wi1m1alVwcHCHDh30SubOnTtz5kwtM3nyZN11yy23REVF6aXOmTNn+/bttWrV6tat2xVXXKEF9u3bp2VGjx6th6xbt65p06Y33HBDRkbGF198sXv37o4dO2pt5cqVsxxJjWauX78+KSmpdevWt912W6lSpczD77rrrh9++OHUqVN6SZs2bZo3b96uXbuaNWs2cOBA/bUAAAAAAIBfcGewYk+PHTvWOUxRomEaqihwGTNmjOWymJgY/a1Xr16m+XaXopMnTzoPtnL06NGaNWtq4leHkSNHKvL48MMPq1Sp0qBBg969eyvs0Nq6du1arVo1JSDPPfecIpLBgwcrpnnvvffS09P/9Kc/paSk6HnffvttpS26+eOPP06bNi0uLq5t27ZauYKYChUqKLtR1DJlyhSlKpdffrlWosX0Yh555BHz8E8++USpkJ5R65w6dWq7du1GjRr1yy+/6CGvvPJKUFCQBQAAAAAAfJ87L7ec7di0SlLMBYOUsChwsfLi1KlT+lu9enUrj7Zt21ajRo2oqKjAwEClKsnJyZGRkVqPghXFKApWtMyLL75YokSJl19+WTGHZr700kvTp0/v37+/WUPZsmX//ve/W45LEX377bd33HGH3Z5lzZo1Clb279+/cuVKLaP0RPP1dFrDgQMHzMMvXLgwefLkgICAY8eO6V106tSpZcuWTZs2XbFiRXx8fHh4uAUAAAAAAHyf24KV6Oho09dm69atylAUZNg5i3O3oDypVKmS5Ri/NiIiIk8PVHTywgsvPPDAA0o0BgwYULFixazL7N69u3Xr1nbjEaUwq1atMm1kpE+fPmZCuYz+tmvXzr55/Phx83D9Vciyd+9eyzEyruWIXcxL7du3r1IVTVSrVq1Ro0YTJ05s27Zt9+7d7dUCAAAAAAA/4J7Ba82lfzQxdOjQsWPHKlXRnGHDhlkXr7U8fvx4024lT6s1/XqUVmSa/+9//3vy5MlZl09JSTETykGeffbZunXrLliwQPGK4o9MS2ZkZCQmJjoP3WLCF/tiQ5kalZhBVZyZJbWeeAdNKM0pW7asude5+9KTTz558803Hzt27JVXXnn66afT09MtAAAAAADgF9zQYsUkJs7jqmji+uuvH+9gN2CxLl42yPXWK4ozOnXq9OOPP/bs2dO0HLEcSc2WLVvuuusuTQcGBp47d87MP3369JkzZyxH2LF+/XpFGw8++GBycvKUKVO+//570y3I3Ku/AQEBDRs23LVrl/1cmg4KClIWY1qgXJIebjlaprRv314TikvOnj2rYGXPnj3Oix05cuTkyZODHHbu3KmQRa+/ZcuWFgAAAAAA8H0FbbGimMBcUDnrtX7MOLXmWsumN5DCFy2cpysu33LLLfr77LPPLliw4Pfff585c6aCEoUmnTt31vxatWppbZs2bVIa8uabb5qHKDT59ddf33jjDUUtuqm4JCwsTBPly5evVq3amjVrND8pKUmZyLZt2/R6Tpw4sWrVqtmzZ/fo0SM4ONjFF9aoUaPatWvr9ejZFei89957zzzzTNbWKJozceJErT8tLU3Jjl6b82i7AAAAAADApxW0xYpyjRYtWuTUCCUyMlLhhX1T4Yu5SJDrV1xWFPLCCy+8//77n332WWJiosKR1q1bjxw50mQlN9xww549eyZMmFCpUqWbb77ZtFiRm2666cMPP3zggQcUZ9SvX3/EiBFm/pAhQ7766qu77777nnvu6dmzp1b4/fffK1spV66cUhWt1nJZSEjI448/rjRn0qRJSk+aNWt2//33Z81latasqRf2xRdfvPrqq3qWK6+8UomMBQAAAMB/Ld+e0bVZgAWgeAiwxyXJH6USik5yuoiy6SVkYheTsGzdujV/Y9lmZGScPXtWwUrWuxISEsqUKZN1vlKV1NTUrC1ETp8+rfWYnkHm4aVLlzZjzebDBYdLtkPJ6UXCvWJjY+2xilesWJHtMl26dNHf+Pj4pKQkT1+hKS4uLq9DLwMAAMDXVR2e9tCQwIeGkK0AHhETE+PpopwKjNleBifbJd0wxoqykmHDhpmsxG6KEh0drSTFDLBiN1oZ6uB6cxVnCj6yTVUkp8AiyCHr/AoVKrjycBeVcLjkYqQqAAAAQHHwwqwMx9/0bpGBtFsBioOCBium+Ylpt6IYxZ6vPEV/nUe0BQAAAAC/p0jl4kTGrEcJVgD/54YWK1ZeLvQDAAAAAP5q+fYMe3rZtgwLQDFQ0KsCAQAAAACMZY5REEZdFdih8R9tVZxzFgD+imAFAAAAANzDTlJGXfVHsGLGWwHg3whWAAAAAMA9TPefewYGdGj8xz/dpNEK4PcIVgAAAADADUz7lFFX/aeQRaMVoJggWAEAAAAAN8jUOMUMs0KjFcDvEawAAAAAgBvY/YDsOSZbodEK4N8IVgAAAACgoDL1AzJMbyCuuwz4N4IVAAAAAPAIM4StRaMVwK8RrAAAAABAQb0wK936335Ahmm0wjArgB8jWAEAAACAAsm2H5DBdZcBv0ewAgAAAAAexHWXAf9GsAIAAAAABZJTPyCD6y4D/o1gBQAAAADyzzRFMelJTkwvIRqtAH6JYAUAAAAACqpjk9yClQ6N//hLoxXALxGsAAAAAED+5d4PyLCvu7xsmwXAzxCsAAAAAEA+udIPyLg4hG26BcC/EKwAAAAAQIHk3g/IsBut0BsI8DMEKwAAAACQT6YFihlC5ZK47jLglwhWAAAA/MeQiemU2YBCY7c9caUrkHWx0QpD2AJ+poQrC+3fv98CilrdunUtAACQM0UqKrDpX7fIwK7NXCrmASgIMxKtuZSyizo2CVi9K0O/1lmP8iMF/IRLwQoFWgAAAO9nD4pJmQ0oHHnqB2TcMzBgypz/XHeZABTwD3QFAgAA8AfOlyahowFQCPLaD8hmlqfXHuA3CFYAAAD8gak579gkwPRKoMwGeFo++gEZZghbBaAWAL9AsAIAAODzTIyiAt49AwP0z6LRCuB5due7vOK6y4CfIVgBAADweZkKeNNG02gFKCQmyswrrrsM+BOCFQAAAN9ml83sAp59SVeKbYCH2M3ErHzhusuAPyFYAQAA8G2muUqmAt7F+vB8dlUAkLuCByI0WgH8BsEKAACAD8vaXMWwB3EYMpFsBXA/M/Rs/voBGVzDC/AbBCsAAAA+L9v+CPaVRyi2Ae5VwH5ANq67DPgHghUAAABfpfKY6eyTbbW5ymxcehnwBHeFlVx3GfAPBCsAAAC+LZdqcy69DHhCwfsBGXaXPdJPwKcRrAAAAPiqXJqr2Gi0AriXu/oBGabRCtEn4NMIVgAAAHySi6U7xS5cehnwWlx3GfADBCsAAAA+yZXmKgaXXgbcyPWfnou47jLg6whWAAAAfE+eOiMwjgPgLuZHZH5Q7sJ1lwFfR7ACAADge0ydeYfGri5vN1qh5AYUXMcm7gxWLMZCAnwcwQoAAICPsZuruF5tTqMVwC3c3g/IMCEpjVYAH0WwAgAA4GPyN1rKtNF/nPhRcgPyzRP9gAw7+ly2zQLgcwhWAAAAfIldtMtHnTndDYCCc3s/IINBpgHfVcIqgLNnzy5fvjwjI6NChQqlS5euVKlS5cqVQ0JCzL0rV66MiIioU6eOphMSEnbt2hUfH1+xYsWaNWtqeXslx44dO3z48Llz58qXL6+Fw8PD7bv0KN114sSJUqVKVa1aVQ8MCPhjd7N3717N7Nixo1lML+C3334zzxUdHa1X1ahRI70S3ZWWlrZ69WrN1/Nu2LAh61to06ZNaGjo77//rpeh9egptJ7g4GALAADAK5lyV/6KdspiVu38z4VduzbzSOEQ8GMe6gdkmEYrq3fx8wR8T4FarCQlJZ05cyY5OTkwMPD48eO//vrrvHnzzp8/b+7dv39/bGysWWz+/PknT55U8qK/mj59+rRZZvPmzb/88otSEqUbiksWLlwYExNj7tKaFyxYsGPHjpIlS2paCc6qVavMXVrtgQMH7JehQETPFRcXp+mjR49qet26dZqpm+np6bqpqEU3gxxSUlI0JzU11dxUUrNx40Ytr2cJCwtT+KI8yAIAAPBKdmOTfBftTK34tROoFQfyxnP9gGxcdxnwUQVqsWJ07NgxIiJCE4pUFIX8/PPPAwYMKFHiv2tW2KEgo3PnzmXLllXA8eOPP27fvr1Lly6KS7Zt21anTh1NW44QRA9fs2bN4MGD09LSFi9eHBIS0r9/f9N+5Pfff1+9enV4eHjTpk1zfz3KR7Tmffv21a9f33lmhw4dNKHg5siRI02aNKlWrZq56+DBgzVr1mzXrp2mK1asqGBFQUy5cuUsAAAAr+TiVZazZdeKq/D20BBqxYG88VA/IMP8PGlTBvgcd46xUqpUKYUX586dO3HihPP80qVL6++OHTsSExMDAgKUlURFRVmOrEQ5S/v27f/zUgIDL7vssvLlyyckJMTGxmrhNm3a2L1yGjRooNTj0KFDl3wZZcqUadSo0ebNmy9cuGC5QMvrBStw0YupW7fukCFDNMcCAADwMopC3NITgUsvA/mQ12uc548Jbmi0AvgWNw9eW6VKFf09efJkppmRkZH79+//9ttv582bd/jwYdOeJS4urmzZsvaYLBIREdGrVy+TdFiO9iPO66lUqZICl7S0tEu+jBYtWmix7du3Wy5o3bp1WFjY0qVLZ82atXr1asUxingsAAAAr1SQ5ioGl14G8spOIT3aFci6GJty9S7At7g5QUhOTtbf0NDQTPNbtWp11VVXtWvXTjHKypUrlV9opqZTUlKcF8vIyNCc9PR001DFrM2WlJRkBkZR8JHhYOZrecvR4MVeUmtWtrJjxw49xLqUChUqXHHFFb17965fv/6hQ4fmzJmTkJBgAQAAeBk3DpxpGq1QeANcZK6CXPBY0xXknoDPcfOuYffu3fpbvXp1a75k0wAAEABJREFU55nR0dHr169X2tK4ceM+ffo0aNDg4MGDikWqVKmi6OT48eP2klu2bJk9e7bSENPyRYvZd2nmiRMnzLV+SpcurTDF7nBk1mA6HNkaNWqkZ9y0aVOur/ePCw/9+uuvp06dqlatWtu2bQcMGKA1Oz8vAADFB2Vsb2ZKWe4q16nkxqWXAdcVTj8gw849LQA+wg3H5uMO+/btW758+Y4dO1q3bl22bFnnBapWrbpz505lHKdPnz558mRsbGxYWFhAQICyj/Dw8GXLlimO0fytW7fq4XXr1i1VqpTmK4VRIrNx40YFKPv371+8ePGFCxeUfWiFtWvXLlGihO46dOjQgQMHNm/eXLJkyZo1a/7PGwsMbNOmzSXHZClTpkxaWtqqVau0ZHx8vN6FlSWjAQDA7ylSGTIx/doJ6fprwSu5/Tqv9DgAXFRo/YDsZzFPxG8T8BVuuCrQDgelIZUrV+7evXumgEM0v0OHDkouFK8EBwcrZ4mMjLQc2Uffvn03bNigZCQlJUVpS9OmTVu2bGke1a5dO6UeWvP27duDgoKqVKnStWtXE9loyR49eqxdu1ahjG4qhdFN57FaDL0SPSrTSLpZRUVF6Vn0Ms6fP1+hQoVWrVrVqVPHAgCg2LCHRLWoI/VW7m2uYps2OnDEK+la+axHuf4IkKPC7AdkjLoqYMQrGfw2AV8RkGmUE49KS0tTRJLtXXoZWZMRIzU1tUSJEgEB2exTzHV/nC/tXBBam7tWhaISGxtrj3m8YsWKbJcxl/eOj49PSkpSKmd5UlxcnLkYOQB4rSET002YojLDqp0Zq3dlzH4skMt8epuqw/8YvH/rlCDL3RSs6Et/aEggl14GcmL2k9pJurHJ2CWZ3yY7ZCBbMTExni7KqcCY6XI6uSxZqJe/ySlVsRzDzeZ0V3BwcLapiuWIVNwYhZCqAACKFdP9x05VVGC4eBVeGq14Fw81VzHsSy9bAHJg9pOFmapY//1tskMGfADXFQYAoDjSyfq1E/5IVTo0Dpg2+j/VsKZjP4NueBuPph72aA4MrwNky6PJZi7MD5MdMuATCFYAACh2VIQ2ZXUVFZSqOA/H2LEJdaTexS7Uea62nEsvA7kowt8F110GfAXBCgAAxYhKCFWHp5lm7XZDFWfmYqIMYes9CqGTDpdeBnJRJP2ADK67DPgKghUAAIoL0/3HchSkt04Jyva6oXbHEMrY3sD+FjxdqOPSy0C2iqofkMEOGfAVBCsAAPg/M06tc/efXBY2daQUsL2B+RYKp1BHoxXAC7FDLlb4on0XwQoAAH5OJ2pZx6nNBUPYegllHIXZB0HPYr53shXAZvLoIukHZLBDLj5Mq1L2wD6KYAUAAH/m3P0n0zi1ueAyn96jMPsgcOllwFnR9gOysUMuDvT9mn2v/vJd+yKCFQAA/FOeuv9kwmU+i5w++cKvKmdAB8ALsUMuDsyXe3EPTLbiewhWAADwQ6ahiuvdf7K6eCpvoUiYT77wq8rtRisU4YAi7wdkYwgk/2Z3/NTx+uJ3zU7YxxCsAADgb+wWxaahiovdfzJhxMSiVVQlOhqtAIb5CeRv/+l2HRr/8ZdGK/7KPmRbjt2+mVDtCF+3DyFYAQDAf2Tq/lOQYjkjJhahoh3ZwfQa46sHpGMTLwlWAmhF6K/sHb59yDZDiVsE3D6FYAUAAD9R8O4/mTBiYlEp8g4I9DsAvKcfkMHY0n4pp+G0TGtTHdBVWWLBFxCsAADgDzKNU+uW5uuMmFgkvOFCJPall/nqUTx5VT8gw260wq/Sn+QynJaJ0rQfJuP2CQQrAAD4Np1kVx2eZo975976VVojFz4vqZGmvRLgJf2AbPwq/Yw9IFq2B27T+NTiIkE+gmAFAAAfZrr/WBfPwNxev2rXmFkoFFk72xcVe5AdTuhRDJnirhky1nsw9JWfcR6zNlv6urlIkK8gWAEAwCdlGqfWE6mKRePzQudVAyhw6WUUT/YG71VdgQzTiIa40w/Y3c1yj9H97CJBfjxkDMEKAAC+R2dXZpxaywPdfzKh8XmhsT9kLxkvk0svo3jKZdiLImd2DjRa8QMmRnelu5mdrfj0rti527Jfctv+ItqJBQAAPMa5+8/WKUGerlNlCNtCc8lm4YXP7gvGt4/iwzv7AdmIO/1AXnt92gOK+2iLD1MbZHllKzB3KWEVmJKUmTNnbt261Xnm9Q4WAABwH8d1GTNMhU9hDsOhM6HVu/546lmP+u0pUZHztuYqhunhP2VOOt8+iglv7gdkKO4c8UoGQ1/5rtzHrM3JtNGBI15JN+NePTTEl/bGdqriDcOHeY57gpXIyMgxY8bYc2Y4WI54xfKk5OTk1NTU0qVLBwRwpAcA+Dn7VMxR1g0ozJN+zuMLjRf2PtB58JQ5/2m00rUZZ1zwc97cD8gwffQUdvOT9FH5bpxojsWOhwf6SrZin7r4d6piFbwrkFIVZSgKUOY6mJm6OXbsWDteKYhhF916662PPfbYBx984NzV6KuvvvrrX/+amJhoFamzZ89aAAB4kvOpiYfGqc0FQ9h6Wv4qMAvNxUt+8u3D/3l5PyCDoa98V0EaJ/rcBZiLT6piuXfw2oyM/367zZs3d0u2UqJECa3q6aeffvzxx7t06XLw4MFnnnlm7dq15t7IyMiBAwcGBwdbRWfChAlffvmlBQCAZ2S6+k9RnZpwHl8IvLaSnEsvo7jx8pEguO6y7yrgWFo+dAHmYpWqWG4MVgYMGHDllVc6z3FLthIYGNjUQWu7+uqrx4wZExUV9fLLL//++++6t3379sOHDy/aYOXEiRMWAACeYcap1dmzqacqwlMThrD1KG9urmLYl162AP9lDylqeT3Cbl+U1zFrs+UTF2AubqmK5ZYxVnJhspVx48ZZbhpvJSAg4B//+Mdf//rXdevWNWjQYOHChfPmzXvhhRd016ZNmzS9a9euZs2aDRw4UH81MzU1dfr06WvWrElLS+vUqdMtt9wSFBSk+du2bZszZ8727dtr1arVrVu3K664QjO3bNny/vvvP/bYY5UrV9ZNPeqzzz7797//XapUqbfeeqt06dItW7b87rvvjhw50qtXr2uvvXb//v1Tp0494hAdHd2xY8dhw4Zl+zIAAMiHIRPTC3+c2lwwhK2H+ERZzh7WQZvlrEd9oNgJ5IMPBcfOYTcjrfgEN3b51BpW7fTeI7J99lL4PZeLUEGPi4pOWrRokcsllt3VJ8gWHBxcr149JReajo+Pj4mJ0UR6eroyjooVK44aNUrRyZQpU5SkaP6bb765aNGiHj169OzZc/Hixe+9955m7tu377nnnjtw4MDgwYMDAwM1U1GI5iclJWlt5oFy/vx53dSaNR0bG7t582blLJdddlm7du1mz569fPlyPV3v3r3Nwppo2rRpTi8DAIC8sq/+U7QNVZzZV9614Fbe31zF4NLL8Htm/+YrFexcd9kXuStDN5mFF16AuXimKpZbugJFRkaOGzeuMLOV6tWrHzp0yHnOiRMnTp061alTp9atW//tb3+77rrrlLkoQFH88Ze//OX666+/8cYbb7755q1bt6akpMycObNEiRIvv/yyghW9sI4dO06fPt15gJhsKYh5+OGHhwwZcuedd9atW3f16tVVqlTRGmrUqHH55Zdrom3bttm+DAsAgDxyXFb5P21ovee8hCFsPcGHuh449e1nA4Af8qEfo0HY7UM8MUK5vQF4zz7ZpCqm83KxSlUstwQr1zsUZrZy+PDhOnXqOM+pVq1ao0aNJk6cOGnSpA0bNvTp0yc8PHzPnj26q02bNmaZfv36vfrqqyEhIbt371bwYfoESVRUVGJiomn5kouaNWsqSTHTERER2SYm2b4MCwCAPLKv9+ltFaf06nc73xq1xGyQNFqBX/K5rdoOu9kne78CjlmbLa+6SJB+PlWHpxXbVMVy1+C1ecpWclnGFUlJSfv372/cOPM10J588smbb7752LFjr7zyytNPP52enn7+/PmAgICSJUs6L5aRkaEYxYyiYlSsWFF/s16zOTk52flmpUqVLBdkfRkWAAB54c1X3mUIW/dyy0CGhYxGK/BXvtUPyDBhNztkL+e5Xb2XXCRIT33tBHOd8v9kPcWQ2962i9mK/hYkWFFOMXnyZE20a9fOef6RI0e2b98+aNCgF154Qa9B03qWhg0bKkbZu3evWUZxzKeffpqSkqL5ZogWQ9NBQUF169ZVCmM5xm0x89evX+/KSwoMDLS7EWX7MiwAAPLCE/VabkQFqRv54kV2VDDgOq/wPz7XD8jguss+wezqOzS2PKHILxJkpyp6GcU2VbHcGKxYLmQrph9Qni4PlJaWtsNh69at33zz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X2lLZGSklReXX375rl27HnjgAWUoCjVCQkLCw8MDAgISEhKUdChVGTRoULNmzb7++msFKBUrVrSTDk00bdq0QYMGZo5iFE1Uq1YtJSUlJiZGfzUzNjZWa/jss88uu+yydu3azZ49e/ny5Zajmcxrr7125syZAQMG7N27V0mKHmKuL6OXobTl73//u0IiE+JYAAAAAACguHJDixXTJsVuiqIAxfkSy+PGjTMTmu/cgMVFSkMiIiLee+89rV/pycCBA2+88caSJUsuXrxYocbkyZNNrx9FLT/88MPQoUMHDx68aNEipR6aMGuoXr267tLNrl276ubOnTud13/gwAFlKGYsmN27d69evbpv375z5swJCwubNGlSUFDQ1Vdf/fjjj9vLKyrq06dPG4eaNWsmJydbAAAAAACguHJPVyAxfX9yobDDypcmTZo899xzu3btmjdvniKPY8eO/etf/9qzZ4/u0k2zzObNm8+dO3f8+HHn0VVcoXDEpCqiBOfEiROa2LdvX8uWLe1rD7Vr1848nfTo0UMRj56uU6dOV1xxRUhIiAUAAAAAAIortw1eazdFMQOpmGlN2POHDh1qWq+43mhFAYcZvLZEiRKNHWrUqDF79uykpKTExETLMRSwWbKeQ0ZGhpVHlSpVyjozNTXVebh751H0b775Zr2M77///rPPPvvxxx/HjBlTrVo1CwAAAAAAFEtuCFa2bdumMMWOS5Q1KGcxGYrz/ObNm+e1H9D58+c/+uijsLCwPn36mDm1a9dW6nH69OmGDRtu3LjxjjvuMOOSmqvqhoeHazowMNA5YdFNy3GVZZef1qpTp86mTZv0EHPtIT2RmZ+QkLB9+/bWrVtHRUXpNTz11FOLFy++8cYbLQAAAAAAUCy5YfDaoUOHbt261R681nK0SZnuoJDFeUkzrq3rmjZt2qhRo6+++uqHH344fPiwwo5vv/22UqVK1apV69y5c8mSJd99991Dhw4dO3ZMGceXX35pP0ov5siRI8pBdLN8+fJafs2aNYpCkpKSXHnevn37auGJEyeuXLly8uTJp06dMvNDQ0OnTZum15OYmBgUFKTkxcXrWgMAAAAAAL8UlCn7yIcqVapsc1jicOLECecLKitMmTlzpmbqb69evfLUaCUwMLBdu3bKTebOnfvjjz9u2bKlSZMmI0aMqFChQrly5Zo1a7Z8+XLlKXrShg0b3nHHHabPTnh4uCIYxTpnzpzp0KGD5ij+WLp0qQKRiIiIMmXKLFq0qE+fPgpoNNNyDJtinu633347f/68UpXatWvrKXbv3r1u3bp69erpNaxfv/7aa69VlFOjRo1ly5Z99NFH8+fP15PefPPNwcHBFryGMi8X066UlJQLFy6Yq2t7jrK8smXLWgAAFB0d8tLT0527NuebDp2qW3LuMQ0AQOGLj4/3dFFOR0/Xi5YB5sLDBacARdlKZGSk81WBnIdf0b35DnEyMjL0wSlMyXqXCtIhISH2QLO2s2fP6oN2Hlz29OnT5cuXNz2DcmcuoqwMxdx87bXXlNS88847l3xSFLnY2NiKFSu6sqS2KKUepvuY58TFxSnOswAAKDo65KWmprrlBFSHTlUpUWcAAChaMTExni7K6ejpetHSbVcFspuiKECxB6818/M6tEpWAQEB2aYqlqM1Srbzsy5foUIFyzVHjx598cUXb7zxxtq1a0dHR69Zs+ZPf/qTK08KAAAAAEUrPT3dlepkAO7itmDFZq7+Y199ueCpSuFr27btyJEjf/vtNyVEisEGDx58zTXXWAAAAMVecnKyfVlGAN4pJCTEXf0SALgigJ8c/AldgQAAyISuQEBxQ4sV+D2/7QoEAAAAAChypCpAIeMnBwAAAAAAkE8EKwAAAAAAAPlEsAIAAAAAAJBPBCsAAAAAAAD5RLACwFXx8fHJyckWAKBgUlJS0tPTs87PyMhISkqyAACAT+GqQIDPGDBggJ1rhIWFNWzY8LrrruvTp49VKBITEwcPHnz99dePGjXKAgDky65du2bOnKmcWsGKduPDhg0rU6aM5qempmr+5s2bNR0aGqodfocOHSwAAOALCFYAX6JTbaUbmjh16tT8+fPHjx9fsmTJrl27Wp4XHBysVKV169YWACBfzp8//8477wwcOLB79+6a/uyzz7744os77rhDd/3444/79+9/4IEHKlasuGXLlo8++qh69eq1a9e2AACA1yNYAXxJpUqVIiMjzXSnTp2uvfbaFStWFE6wUqJECdqqAEBB7N27VyG1UhXtUcuVK6e99/Tp0zMyMgICAvbs2dOhQ4fKlStrsVatWilV0RyCFQAAfAJjrAC+SmfnVapUOX36tKY3bdr0zDPPDBky5LHHHlu+fLm9zC+//HL//fffdNNNr776qubffvvt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","type":"image/png","originalSize":84191,"dimensions":{"originalWidth":1480,"originalHeight":800,"displayWidth":1480,"displayHeight":800}}},"sourceToolAssistantUUID":"dc5fe70d-629d-4238-bf03-12da089b222d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"9881a4d1-67a4-41af-9dbd-bf81f3e4e34c","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"9881a4d1-67a4-41af-9dbd-bf81f3e4e34c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Jy4RF7cj3Ym4kWxbvRYC2L","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS8AYKYggOGAIqQGTGJ6MHNlGPsgiSMf0pvXBytCYo1nqMqvPZr8Q0dFWzpZ1dACn1X2m9FOfmFRmuFUUmfxXkJ53WlPbOZVcPNm8yDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgw+tMFj61jbKa8lBQIaDNOgzctzB9O7cDeYPyIwZBPGIcau6XewJcMZVAed+eXgpPhnlR+h8y5ah5eSUTyKIte4SD4sK5mszeEYF3bgKrsFkAZv/BVzVeycmiV5kAdxmf4EYUDnZed9b1wnzQtrKzbdDO1lgz/yFLpYdop9zrLZw5KIz4PCFxL/bmyk1MBAxY7B66tobf07Ldw4uA0vAedVZ/lkEv0v85073mSSOxFR4pBWrn9MXpcFwTzYRk+F80Cyp6yZSNfWLtJ1sgEMSbrilkZZeaNKXMHR+o8OE+1gnBJleR8EuFsw8nBAYLSd6QvraacaltOq2mSlBgZMed2o0mmLTTAkbHlDLGB2+gjXDmf+8ZOa2Zvv2leyMPJpJcUSv8Rtcev2/sfyJcG0mD7l5N3bxFLNFJLkDma3rbJAZzcB/ViivdaJ/uoUBzX2dAvuUDXC/PX6OIbNefAChoFRWHqLIGEKd+FS5GXy2IJOf4FWGzaTwQ0OUH8ZO3nbJlePH57lZ0wdrkGI6jItqowe5mwuQs0F7LZrLJ2emSX8PTv9gRtCtzNjwR32Hhtf820Z2Wj8E0ZQ/v64L639evdFyXw8zOMyHM5MQMM3bkyWg4KoLOItSES6s5xTzOuy3q69jNIQ2Q1luhD4ZjNRdW3Y6i3u7b2DNche+21CPRg3+nW59YbxZRxXcGO2NSKuUVzH4ndofjpnZTdIB7FsDeHzOl1y4Bjoh62HQ1RC/9rerpSAfW1WrbcEPfjWoo/qg3VOfB2LcUMnmdbCv2X84CRnUMJum2lWHyuqt1NDtFlefAleZBjgJvvsH0DqH83TPWe9/EAPRqpAVfWfMa8R1MzzetSfL/OGUpk4C3UkDmBjcRrkN95KeDEBI0lNkPSSQMxee0slVh87Rgk0BHxllkAKpjP2ZNkPGeH1Sqi0wym3j60aAMDBVXS0QcyqT49utheYki9yyQSbqq94UfLZTSoVOUZW3w461oyP+l6CUIF1BkF1qrEIWWQJRyJFCN+o3phKZXwZ5S4gMaPtGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3677,"cache_read_input_tokens":243027,"output_tokens":408,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3677,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":408,"cache_read_input_tokens":243027,"cache_creation_input_tokens":3677,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3677},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHTqdjgFBBv8S7SKWHd","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"5388a1b6-ec43-40e0-9911-3ce5460b2b8d","timestamp":"2026-06-10T08:44:30.938Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5388a1b6-ec43-40e0-9911-3ce5460b2b8d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Jy4RF7cj3Ym4kWxbvRYC2L","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAISwgIKYwgOGAIqQGpzAtuIw3+O/g1VHtB+UQNQaHpPnU4x4wWRyOAFGl87G99vntdlPV8EIVpiF8Tr5kvvatyUaTnRGf3xyHcDoKQyDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIMTEftDssur3gCBvGyGgxRoEqE+nPLR6RhtxIiMLkpvMNKySVMED9DUGgh5g9F+nUxCOGmHAzqoN62pMbVGSo5ljkL7XwNe1ixs4kN1SqMAYGeR8s9kVG9fqvtqBD13arJ0vqJlZsPDUOv0ca6qZNh4kj7C3tYhZHlcS1Cea7brMQS+Pb3jHcoVfm88C9hFCYeSm7g9LYu+bixZnTIC1+XBsAKL3507qALTpUMwXG3AETd8ZrnUU5niBRWpZmfcu2yScJ5D3adURYXnW8M4MLaeXqp754tzX4c141IGAE="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3677,"cache_read_input_tokens":243027,"output_tokens":408,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3677,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":408,"cache_read_input_tokens":243027,"cache_creation_input_tokens":3677,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3677},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHTqdjgFBBv8S7SKWHd","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"5cd9d4f1-e4b5-44ef-983b-16881f7f047f","timestamp":"2026-06-10T08:44:30.949Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5cd9d4f1-e4b5-44ef-983b-16881f7f047f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Jy4RF7cj3Ym4kWxbvRYC2L","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_014qoqKCa4ktryCgAJPr7ikg","name":"Bash","input":{"command":"vendor/bin/pint --dirty --format agent 2>&1 | tail -2; echo \"review/\" >> .gitignore","description":"Pint the webhook fix and gitignore review screenshots"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":3677,"cache_read_input_tokens":243027,"output_tokens":408,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":3677,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":408,"cache_read_input_tokens":243027,"cache_creation_input_tokens":3677,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":3677},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHTqdjgFBBv8S7SKWHd","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"6a484b04-a04c-47e0-854c-ba5826d9c098","timestamp":"2026-06-10T08:44:31.770Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"6a484b04-a04c-47e0-854c-ba5826d9c098","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_014qoqKCa4ktryCgAJPr7ikg","type":"tool_result","content":"{\"result\":\"pass\"}","is_error":false}]},"uuid":"44cc5671-1651-4b90-8186-974b5788d69c","timestamp":"2026-06-10T08:44:32.249Z","toolUseResult":{"stdout":"{\"result\":\"pass\"}","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"6a484b04-a04c-47e0-854c-ba5826d9c098","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"44cc5671-1651-4b90-8186-974b5788d69c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01AQjazUjLvtyzfr5opNbgEg","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_017QsQ8pyuC3Nxr9LkRn8PVa","name":"Bash","input":{"command":"php artisan test --compact 2>&1 | tail -4","description":"Final full test suite run","timeout":400000,"dangerouslyDisableSandbox":true},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":422,"cache_read_input_tokens":246704,"output_tokens":149,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":422,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":149,"cache_read_input_tokens":246704,"cache_creation_input_tokens":422,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":422},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHUdgBS6M8HBnwbi2LB","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"769bfe0f-e529-4fb9-996a-12d28afcd6e9","timestamp":"2026-06-10T08:44:37.975Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"769bfe0f-e529-4fb9-996a-12d28afcd6e9","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_017QsQ8pyuC3Nxr9LkRn8PVa","type":"tool_result","content":"  Tests:    594 passed (2057 assertions)\n  Duration: 147.77s","is_error":false}]},"uuid":"daa097e8-015b-4818-ab1d-d28585158c2d","timestamp":"2026-06-10T08:47:06.640Z","toolUseResult":{"stdout":"  Tests:    594 passed (2057 assertions)\n  Duration: 147.77s","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false,"dangerouslyDisableSandbox":true},"sourceToolAssistantUUID":"769bfe0f-e529-4fb9-996a-12d28afcd6e9","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"daa097e8-015b-4818-ab1d-d28585158c2d","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01VLKvmEpdMeByaWJFrZHp3R","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01288xcwbWVgN5PEeY5ivYwD","name":"Edit","input":{"replace_all":false,"file_path":"/Users/fabianwesner/Herd/shop/specs/progress.md","old_string":"## Log","new_string":"## Final status (2026-06-10)\n\nALL PHASES COMPLETE. Full suite: 594 passed (2057 assertions), 0 todos - 451 unit/feature + 143 browser tests.\nLive Playwright MCP acceptance simulation on shop.test completed: storefront browse, variant selection, cart drawer + discount (WELCOME10), full checkout with mock credit card -> order #1016 confirmed, search autocomplete, customer registration + account, admin dashboard/orders (fulfillment with tracking, bank-transfer confirmation #1005), products, discounts, shipping settings, analytics, theme editor, developers.\nOne production bug found during live simulation and fixed: DeliverWebhook threw on sync queue when a webhook target was unreachable, 500ing checkout. Fix: inline (sync) execution dead-letters after the first failed attempt instead of throwing; background queues keep retry-by-throwing with backoff. Regression test added.\n\n## Log"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":183,"cache_read_input_tokens":247126,"output_tokens":469,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":183,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":469,"cache_read_input_tokens":247126,"cache_creation_input_tokens":183,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":183},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHg1zfm782U2D1LoA1i","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"dd5159ff-c961-48c6-9fd2-64b6c14d5ee2","timestamp":"2026-06-10T08:47:17.223Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"dd5159ff-c961-48c6-9fd2-64b6c14d5ee2","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"<tool_use_error>File has been modified since read, either by the user or by a linter. Read it again before attempting to write it.</tool_use_error>","is_error":true,"tool_use_id":"toolu_01288xcwbWVgN5PEeY5ivYwD"}]},"uuid":"374bf582-5088-44cf-9a4b-3adde9ff025a","timestamp":"2026-06-10T08:47:17.236Z","toolUseResult":"Error: File has been modified since read, either by the user or by a linter. Read it again before attempting to write it.","sourceToolAssistantUUID":"dd5159ff-c961-48c6-9fd2-64b6c14d5ee2","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"374bf582-5088-44cf-9a4b-3adde9ff025a","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Be5cr48P8NcebTqZM6UW54","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01DdYHGDBcjWsssie5CW4xqR","name":"Read","input":{"file_path":"/Users/fabianwesner/Herd/shop/specs/progress.md","limit":45},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":524,"cache_read_input_tokens":247309,"output_tokens":94,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":524,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":94,"cache_read_input_tokens":247309,"cache_creation_input_tokens":524,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":524},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHgo9n3xJki6n7YG3bJ","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"2b6091ff-1420-4170-8261-4822f5ff0e11","timestamp":"2026-06-10T08:47:22.940Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"2b6091ff-1420-4170-8261-4822f5ff0e11","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01DdYHGDBcjWsssie5CW4xqR","type":"tool_result","content":"1\t# Implementation Progress\n2\t\n3\tTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n4\t\n5\t| Phase | Scope | Status | Tests |\n6\t|-------|-------|--------|-------|\n7\t| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |\n8\t| 2 | Catalog: products, options, variants, inventory, collections, media | DONE | full suite 79 passed, 5 todos (4 deferred to P5, 1 to P4) |\n9\t| 3 | Themes, pages, navigation, storefront layout + components | DONE (commit 5aee8dc4) | full suite 98 passed, 5 todos; Storefront/* rendering tests added |\n10\t| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | DONE | full suite 202 passed, 8 todos; Unit/* (48 new), Cart/CartServiceTest (12), Checkout/* (34), Storefront/CartUiTest (13) |\n11\t| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | DONE | full suite 259 passed, 0 todos; Orders/* (28), Payments/* (17), Storefront/CheckoutUiTest (4), all 8 deferred todos resolved |\n12\t| 6 | Customer accounts | DONE | full suite 273 passed, 0 todos; Customers/CustomerAccountTest (6), Customers/AddressManagementTest (7), checkout prefill case added to Storefront/CheckoutUiTest |\n13\t| 7a | Admin panel core: layout shell (sidebar/top bar/breadcrumbs/toasts), dashboard, products (index + shared form with variants builder + media), orders (index + detail with fulfillment/refund/cancel/confirm-payment), customers (index + detail with address CRUD) | DONE | full suite 290 passed, 0 todos; Admin/DashboardTest (4), Admin/ProductManagementTest (8), Admin/OrderManagementTest (5) |\n14\t| 7b | Admin panel remaining sections: collections, inventory, discounts, settings (general/domains/checkout/notifications/shipping/taxes), themes (cards + editor), pages, navigation (apps/developers/analytics stay \"Coming soon\" until Phases 9/10) | DONE | full suite 338 passed, 0 todos; Admin/DiscountManagementTest (6), Admin/SettingsTest (6), Admin/CollectionManagementTest (7), Admin/InventoryManagementTest (7), Admin/ThemeManagementTest (8), Admin/PageManagementTest (7), Admin/NavigationManagementTest (8) |\n15\t| API | Spec 02 REST APIs + Sanctum: storefront cart/checkout API, admin products/orders API with token abilities, rate limiters, Developers admin page | DONE | full suite 386 passed, 0 todos; Auth/SanctumTokenTest (5), Cart/CartApiTest (8), Api/StorefrontCartApiTest (8), Api/StorefrontCheckoutApiTest (9), Api/AdminProductApiTest (7), Api/AdminOrderApiTest (6), Admin/DevelopersTest (5) |\n16\t| 8 | Search (FTS5) | DONE | full suite 422 passed, 0 todos; Search/SearchTest (5), Search/AutocompleteTest (3), Storefront/SearchUiTest (8), Admin/SearchSettingsTest (5) |\n17\t| 9 | Analytics | DONE | (same run as Phase 8) Analytics/EventIngestionTest (5), Analytics/AggregationTest (3), Admin/AnalyticsTest (7) |\n18\t| 10 | Apps & webhooks: 6 migrations (apps, app_installations, oauth_clients, oauth_tokens, webhook_subscriptions, webhook_deliveries), WebhookService + DeliverWebhook job (HMAC, backoff, circuit breaker), DispatchWebhooks listener + ProductObserver wiring, Admin Apps directory/detail, Developers webhook CRUD, AppSeeder | DONE | full suite 444 passed, 0 todos; Webhooks/WebhookDeliveryTest (5), Webhooks/WebhookSignatureTest (4), Admin/AppsTest (7), Admin/DevelopersTest (+6 webhook cases, 11 total) |\n19\t| 11 | Polish: seeder audit vs spec 07, a11y (skip links, focus management, aria-live, labels), responsive + dark mode pass, error pages (404/419/500/503), structured business-event logging, SmokeTest | DONE | full suite 450 passed, 0 todos; Orders/StructuredLoggingTest (3), SmokeTest (3 tests, ~50 routes) |\n20\t| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | DONE: all 18 suites, 143 browser tests complete | full suite 593 passed (2054 assertions), 0 todos; Browser: SmokeTest (10), Admin/AuthenticationTest (10), Admin/ProductManagementTest (7), Admin/OrderManagementTest (11), Admin/DiscountManagementTest (6), Admin/SettingsTest (7), Admin/CollectionManagementTest (3), Admin/CustomerManagementTest (3), Admin/PageManagementTest (3), Admin/AnalyticsTest (3), Storefront/BrowsingTest (15), CartTest (12), CheckoutTest (13), CustomerAccountTest (12), InventoryTest (4), TenantIsolationTest (5), ResponsiveTest (8), AccessibilityTest (11) |\n21\t\n22\t## Log\n23\t\n24\t- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n25\t- 2026-06-09: Phase 2 done. Catalog migrations (9 tables), models, enums, ProductService/VariantMatrixService/InventoryService/MediaService, HandleGenerator, ProcessMediaUpload job (GD), Collection+Product seeders (25 products, 127 variants). Order-reference checks implemented behind Schema::hasTable('order_lines') guard; 3 order-dependent test cases todo'd for Phase 5.\n26\t- 2026-06-09: Phase 4 done. Migrations for carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings, discounts. Models + factories + 7 enums. Services: CartService (session key `cart_id`, version bump on every mutation, sum-quantities merge on login), DiscountService (reason-coded InvalidDiscountException, largest-remainder allocation), ShippingCalculator (specificity-ordered zone matching, flat/weight/price rates), TaxCalculator (basis points, intdiv for exclusive add and inclusive extract), PricingEngine (deterministic pipeline, snapshot to totals_json; inclusive total = discounted subtotal + shipping), CheckoutService state machine (payment_selected reserves inventory + 24h expires_at; completeCheckout guarded, throws LogicException until Phase 5). Jobs ExpireAbandonedCheckouts (15 min) + CleanupAbandonedCarts (daily) scheduled in routes/console.php. Storefront UI: CartDrawer (global, listens cart-updated/open-cart), /cart page with shipping estimate, /checkout 4-step stepper through payment method selection (pay button is the Phase 5 mount point), live header badge, real addToCart. Seeders: TaxSettingsSeeder, ShippingSeeder, DiscountSeeder (WELCOME10/FLAT5/FREESHIP/EXPIRED20/MAXED). Cart merge wired into CustomerLoginController; CustomerAuthTest merge case implemented. 4 test cases todo'd for Phase 5 (order completion paths).\n27\t- 2026-06-09: Phase 5 done. Migrations for orders (+ nullable unique checkout_id for idempotency), order_lines, payments, refunds, fulfillments (+ delivered_at), fulfillment_lines. Models + factories (paid/pending/fulfilled/cancelled states) + 7 enums (OrderStatus, FinancialStatus, FulfillmentStatus, PaymentMethod, PaymentStatus, RefundStatus, FulfillmentShipmentStatus). PaymentProvider contract bound to MockPaymentProvider (magic cards 4242/0002/9995, paypal instant capture, bank_transfer pending, mock_ reference IDs); PaymentResult/RefundResult value objects. OrderService (createFromCheckout atomic with snapshots + payment record + inventory commit for captured / keep-reserved for bank transfer + discount usage increment + cart converted; generateOrderNumber sequential per store from #1001 inside the creation transaction with unique (store_id, order_number) backstop; cancel releases or restocks per financial status; confirmBankTransferPayment commits inventory + digital auto-fulfillment). RefundService (refundable validation, partial/full financial status, restock flag). FulfillmentService (FulfillmentGuardException unless paid/partially_refunded, qty <= unfulfilled validation, markAsShipped/markAsDelivered, autoFulfillDigital delivered). CheckoutService::completeCheckout implemented: idempotent via orders.checkout_id, PaymentFailedException on decline (reservation kept, released by 24h expiry). Events: OrderCreated/OrderPaid/OrderFulfilled/OrderCancelled/OrderRefunded/CheckoutCompleted/FulfillmentDelivered. CancelUnpaidBankTransferOrders daily job (store settings bank_transfer_cancel_days, default 7). Storefront pay step (card form / paypal / bank transfer) + /checkout/{checkoutId}/confirmation page with bank transfer instructions. CustomerSeeder (12 customers + addresses) and OrderSeeder (15 fashion + 3 electronics orders) wired into DatabaseSeeder, idempotent. All 8 deferred todos resolved; suite has ZERO todos.\n28\t- 2026-06-09: Phase 6 done. Livewire account area behind `auth:customer` inside the storefront group: `Storefront\\Account\\Dashboard` (GET /account: welcome heading, quick-link cards, last 5 orders, profile form with name + marketing_opt_in via `updateProfile`), `Account\\Orders\\Index` (GET /account/orders: paginated table desktop / cards mobile, status + fulfillment badges), `Account\\Orders\\Show` (GET /account/orders/{orderNumber}: bare number in URL matched against the stored `#`-prefixed order_number, scoped to the auth'd customer so foreign orders 404; timeline built from placed_at + captured payment + fulfillments shipped/delivered + cancelled, line items with snapshots, shipping/billing/payment grid, totals, tracking links target=_blank rel=noopener), `Account\\Addresses\\Index` (GET /account/addresses: modal CRUD reusing x-storefront.address-form with prefix=\"form\", postal_code<->zip mapping to the spec 01 JSON shape, first address auto-default, setDefault flips others off, deleting the default promotes the newest remaining, foreign address ids abort 404). New components: x-storefront.account-nav (tabs + logout form), x-storefront.order-status-badge (spec 04 colors). `App\\Support\\Storefront\\Countries` extracted (address-form now uses it). CustomerAddress gained toCheckoutAddress()/summaryLine(). Checkout: address step prefills from the default address when checkout has no address, saved-address dropdown (\"Use a new address\" resets) per spec 04; email prefill existed. Logout now session()->invalidate() + regenerateToken (spec 06). Confirmation page \"View order\" links to the order detail. Header account icon already linked correctly (Phase 3). Verified in browser via Playwright on acme-fashion.test (login, dashboard, orders, order #1002 timeline, address create modal, checkout prefill + dropdown switch).- 2026-06-09: Phase 7a done (admin panel core). Layout: `resources/views/layouts/admin.blade.php` (component layout, used via `#[Layout('layouts::admin')]`) with `Admin\\Layout\\Sidebar` (fixed 256px desktop, Alpine-driven mobile overlay via `toggle-admin-sidebar` window event, nav groups per spec 03 section 1.2; unimplemented sections render as disabled \"Coming soon\" items and auto-activate once `Route::has()` finds them) and `Admin\\Layout\\TopBar` (store selector dropdown -> `switchStore()` validates membership, writes session `current_store_id`, redirects to dashboard; profile menu with logout; mobile hamburger). Global toast container (Alpine, top-right, 5s auto-dismiss, success/error/info left borders) listens for the Livewire `toast` event via `x-on:toast.window` and replays `session('toast')` flashes after redirects; components use the `Admin\\Concerns\\SendsToasts` trait. Breadcrumbs/cards/status badges are anonymous Blade components `x-admin.breadcrumbs` / `x-admin.card` / `x-admin.status-badge`. Dashboard (GET /admin): KPI tiles (total sales/orders/AOV + conversion rate approximated as orders/carts until Phase 9 analytics; change badges vs previous period), dependency-free inline SVG line chart of daily order counts, recent orders table (last 10), 7/30/90-day presets. Products: `Admin\\Products\\Index` (search, status tabs, type filter, sortable columns incl. inventory subquery sum, bulk set-active/archive/delete with confirm modal, empty states, 15/page) and shared `Admin\\Products\\Form` for create+edit (route param `{productId}` because a `{product}` param collides with the `$product` model property during Livewire param auto-assignment): options builder (comma-separated values, live matrix regeneration preserving row edits by combination key), per-variant sku/barcode/price/compare-at/weight/qty/ship rows applied post-`VariantMatrixService::rebuildMatrix` via case-insensitive sorted value-combination keys, diff-based option/value sync so untouched combinations keep variants+inventory, media upload (WithFileUploads, immediate attach in edit mode, pending until save in create mode, alt text inline edit, wire:sort reorder, delete), collections checkboxes, SEO handle (blank -> HandleGenerator), publishing datetime, status transitions through `ProductService::transitionStatus`. Orders: `Admin\\Orders\\Index` (status tabs all/pending/paid/fulfilled/cancelled/refunded, search order#/email, date range, sortable) and `Admin\\Orders\\Show` (computed `order` keyed by locked `orderId`, timeline incl. refunds/cancellation, line items with per-line fulfillment badges, totals incl. refunded, payment panel with Confirm Payment for pending bank transfers -> `OrderService::confirmBankTransferPayment`, fulfillment guard callout, fulfillment modal -> `FulfillmentService::create`, mark shipped/delivered, refund modal (selected lines sum or custom amount, reason, restock) -> `RefundService::create`, cancel modal -> `OrderService::cancel`; service ValidationException/FulfillmentGuardException surfaced as error toasts). Customers: `Admin\\Customers\\Index` (search, orders count + total spent) and `Admin\\Customers\\Show` (info card, paginated order history, address CRUD modal with default handling per spec 03 section 9.2). Routes registered in the existing `['auth','admin']` group; placeholder dashboard route/view removed. All actions policy-guarded (`@can` in views + `authorize()` in actions; Support read-only, Staff cannot delete/archive). Pest helper `createStoreMember(Store, StoreUserRole)` added. Tests: Admin/DashboardTest (4), Admin/ProductManagementTest (8), Admin/OrderManagementTest (5), exactly per roadmap tables; full suite 290 passed, 0 todos; pint clean; npm run build ok; migrate:fresh --seed ok. Browser-verified via Playwright on shop.test/admin: login, dashboard KPIs+chart, products list, Leather Belt edit form (options/variants prefilled), order #1005 bank-transfer confirm -> paid, fulfillment modal -> DHL fulfillment -> shipped -> delivered with timeline updates, toast rendering, customer detail with addresses, mobile sidebar overlay at 375px, store switcher (verified with a temporary second membership, then reverted; revoked membership correctly 403s).\n29\t- 2026-06-10: Phase 7b done (remaining admin sections). Collections: `Admin\\Collections\\Index` (search, status filter, products_count, delete modal) + shared `Admin\\Collections\\Form` ({collectionId} edit route; title/handle/description/status, handle unique per store + auto-slug from title, product picker with debounced search dropdown + Add buttons, assigned list with thumbnails, `wire:sort` drag reorder buffered in `assignedProductIds` and synced to `collection_products.position` on save). Discounts: `Admin\\Discounts\\Index` (code search, schedule-aware status filter incl. scheduled/expired derived states, type filter, value column %/fixed-currency/free-shipping, usage \"n / limit-or-unlimited\" column) + shared `Admin\\Discounts\\Form` (code/automatic radios, Generate code, percent/fixed/free_shipping value types with unit conversion percent-whole-number vs fixed-minor-units, per-store code uniqueness `Rule::unique`, min purchase + specific products/collections + one-per-customer persisted into `rules_json` per DiscountService keys, usage limit, start/end datetimes with after-validation, Active/Disabled switch -> status). Inventory: `Admin\\Inventory\\Index` (search by product title or SKU, stock filter in/low(<=5)/out via on_hand - reserved expressions, inline on-hand number inputs `wire:change` -> `updateQuantity` clamped >= 0 and guarded by ProductPolicy::update so Support is read-only, policy badges, available column color-coded). Settings: `Admin\\Settings\\Index` page with `?tab=` (general/domains/checkout/notifications rendered as child Livewire components `Settings\\General/Domains/Checkout/Notifications`; shared `x-admin.settings-tabs` bar links Shipping/Taxes to their own routes per spec 02). General: store name/contact email/order number prefix + currency/locale/timezone (writes both `stores` columns and `store_settings.settings_json`). Domains: table with type/primary/TLS badges, add-domain modal (hostname regex + global uniqueness), set-primary scoped per domain type, refuses removing the last domain. Checkout: guest checkout toggle + `bank_transfer_cancel_days` (consumed by the Phase 5 job). Notifications: notification email + transactional toggles in settings_json. `Settings\\Shipping`: zone cards (countries checklist of 22 ISO codes + optional comma-separated region codes), nested rate tables (flat amount or multi-range weight/price configs matching ShippingCalculator's `ranges`/`min_g`/`min_amount` shape; carrier intentionally omitted as unimplemented in the calculator), inline active toggles, zone/rate modals, test-address tool calling `ShippingCalculator::getAvailableRates`. `Settings\\Taxes`: manual/provider radios, manual rate % -> `default_rate_bps`, tax name, prices_include_tax + shipping_taxable switches, provider select + API key into config_json. All settings pages authorize via StorePolicy viewSettings/updateSettings (owner/admin only; staff 403s). Themes: `Admin\\Themes\\Index` (card grid, published card gets blue ring, Customize button, ellipsis menu Publish/Duplicate/Delete with wire:confirm; publish demotes other published themes inside a transaction and calls `ThemeSettingsService::forget`; duplicate copies settings as a draft \"(Copy)\"; published theme cannot be deleted) and `Admin\\Themes\\Editor` (three-panel: left fixed groups header/colors/catalog/footer plus orderable+toggleable home sections hero/featured-collections/featured-products/newsletter/rich-text driving the persisted `sections` array via `wire:sort` + eye toggles; center iframe preview of the primary storefront domain; right dynamic fields text/textarea/color/select/number/checkbox bound to `settings.*` from `ThemeSettingsService::defaults()`, featured_collection_handles edited as comma list; Save persists theme_settings (model event invalidates cache), Save & publish also publishes). Pages: `Admin\\Pages\\Index` (search, handle column) + shared `Admin\\Pages\\Form` (title/handle unique per store/body textarea 16 rows/status draft-published-archived/published_at backfilled on publish, delete modal owner-admin only). Navigation: `NavigationMenuPolicy` added (view owner/admin/staff, update owner/admin per spec 06 matrix), `Admin\\Navigation\\Index` (menu cards -> selectMenu buffers items in state; item modal with label, type select link/page/collection/product and conditional URL input or resource select; `wire:sort` reorder; Save menu diff-deletes/upserts with positions inside a transaction then `NavigationService::forget` so storefront trees refresh; nesting omitted because navigation_items has no parent_id in spec 01). Routes registered for all sections ({collectionId}/{discountId}/{pageId}/{themeId} params following the Phase 7a productId convention); sidebar items for Collections/Inventory/Discounts/Pages/Navigation/Themes/Settings auto-enabled via the existing Route::has() mechanism (Analytics/Apps/Developers still disabled). Tests exactly per roadmap tables (DiscountManagementTest 6 cases, SettingsTest 6 cases incl. staff 403 + domains) plus CollectionManagementTest (7), InventoryManagementTest (7), ThemeManagementTest (8, incl. cache invalidation end-to-end via ThemeSettingsService and staff 403), PageManagementTest (7), NavigationManagementTest (8, incl. cached tree invalidation and support 403 / staff read-only). Full suite 338 passed, 0 todos; migrate:fresh --seed ok; pint clean; npm run build ok.\n30\t- 2026-06-10: API phase done. Installed laravel/sanctum ^4.3 (personal access tokens on User via HasApiTokens; config/sanctum.php with token_prefix `shop_` and 1-year default expiration 525600 min; published personal_access_tokens migration). routes/api.php registered in bootstrap/app.php withRouting: Storefront API `/api/storefront/v1` (middleware `store.resolve:storefront`; carts under `throttle:api.storefront`, checkouts under `throttle:checkout`) with carts CRUD (POST 201, line add returns 200 full cart per roadmap table; optimistic concurrency accepts both `cart_version` (spec 02) and `expected_version` (roadmap) and answers 409 with `error_code: version_conflict`, `current_version`, and the full current cart state; CartVersionMismatchException now carries expected/current version properties) and the full checkout flow (create 201/`started`, address with available_shipping_methods, shipping-method with recalculated totals, apply-discount/DELETE discount with InvalidDiscountException mapped to 400 `discount_expired`/`discount_usage_exceeded` or 422, payment-method, pay -> completeCheckout via mock PSP returning order payload + bank transfer instructions, 422 + error_code on decline, 409 on wrong state, 410 on expired checkouts). Admin API `/api/admin/v1/stores/{storeId}` (middleware `auth:sanctum`, `store.resolve:api-admin`, `throttle:api.admin`, Sanctum `abilities:` per endpoint): products index (filters/sort, default per_page 15 per roadmap table, data+meta envelope)/store (options+explicit variants with option_values, inventory quantity+policy, collections sync, store-scoped handle+SKU uniqueness)/show/update (partial; status via ProductService::transitionStatus mapped to 422)/destroy (archives, returns id/status/updated_at), orders index (status/financial/fulfillment/customer/date/query filters)/show (lines+payments+fulfillments+refunds)/fulfillments (creates + marks shipped per spec 02 \"mark items as shipped\"; FulfillmentGuardException -> 409)/refunds (RefundService against latest captured payment; 409 when nothing refundable). ResolveStore gained `api-admin` context resolving the store from {storeId} and verifying token-user membership (404 unknown store, 403 non-member, 403 mutations on suspended). bootstrap/app.php: `abilities`/`ability` middleware aliases; JSON error envelopes for api/* (404 \"The requested resource was not found.\", 403 \"You do not have permission to perform this action.\", InsufficientInventoryException -> 422 validation shape, FulfillmentGuardException -> 409). AppServiceProvider rate limiters per spec 02 section 7: api.admin 60/min per token id, api.storefront 120/min per IP, checkout 10/min per session (IP fallback for stateless API), search 30/min, analytics 60/min, webhooks 100/min, all returning the spec 429 body {message, retry_after}. API Resources: Storefront CartResource/CheckoutResource (unwrapped, spec shapes incl. line snapshots, totals, available_shipping_methods), Admin ProductListResource/ProductResource/OrderListResource/OrderResource/FulfillmentResource/RefundResource (data-wrapped). Admin Developers page (`/admin/developers`, Admin\\Developers\\Index, sidebar auto-enabled): token table (name, ability badges, last used, created, revoke with wire:confirm), generate-token modal (name + 18 ability checkboxes from App\\Support\\TokenAbilities), plaintext shown once in amber callout; StorePolicy::manageDevelopers gates to owner/admin (staff 403); webhooks section deferred to Phase 10. Storefront search/analytics endpoints deferred to Phases 8/9 per roadmap; GET /orders/{orderNumber} tokenized order status endpoint deferred with them. Tests exactly per roadmap tables (SanctumTokenTest 5, CartApiTest 8 incl. 121-request rate limit, StorefrontCartApiTest 8, StorefrontCheckoutApiTest 9, AdminProductApiTest 7 incl. default page size 15, AdminOrderApiTest 6) plus Admin/DevelopersTest (5). Full suite 386 passed, 0 todos; migrate:fresh --seed ok; pint clean.\n31\t- 2026-06-10: Phases 8+9 done (Search + Analytics). Search: migrations `search_settings` (store_id PK, synonyms_json/stop_words_json), `search_queries` (store-scoped log with results_count), and a raw-SQL `products_fts` FTS5 virtual table (CREATE VIRTUAL TABLE IF NOT EXISTS, sqlite-driver-guarded, rowid = product id so upserts are delete+insert by rowid; KEY QUIRK: FTS5 stores column values as text, so the UNINDEXED `store_id` is always filtered with `CAST(store_id AS INTEGER) = ?` because an integer binding/literal silently matches nothing). `SearchService`: `search()` (tokenize -> stop-word removal (falls back to original tokens if all are stop words) -> synonym OR-groups from search_settings with multi-word synonyms as quoted phrases -> trailing prefix `*` on the last token; MATCH subquery joined via joinSub so `fts.rank` drives relevance; filters vendor(s)/product_types/collection_id/price range (minor units)/in_stock/tags; sorts relevance/price_asc/price_desc/newest/best_selling; published+published_at scoping at query time per spec 05 16.3; every search logged to search_queries + a `search` analytics event, with a `logQuery` flag so Livewire filter/pagination re-renders only log when the query text changes), `autocomplete()` (min prefix 2), `countMatches()`, `facetValues()`, `syncProduct()`/`removeProduct()`/`reindexStore()` (last-indexed timestamp kept in cache). `ProductObserver` (created/updated -> sync, deleted -> remove) registered in AppServiceProvider, so seeded/created products index themselves; SearchSettingsSeeder also reindexes both stores defensively. Storefront UI: `Storefront\\Search\\Modal` (global in storefront layout, opened by the header icon dispatching `open-search-modal`, 300ms debounce, products max 5 + collections max 5 + \"View all N results\", skeleton loading, Alpine arrow-key/Enter/Escape keyboard nav, dialog/listbox ARIA) and `Storefront\\Search\\Index` at GET /search (?q= via #[Url], same filter sidebar partial + sort + pagination as collection pages, result heading 'N results for \"q\"', empty state with retry input); 404 page got the spec search form. Storefront API: GET /api/storefront/v1/search (spec JSON with results/facets/pagination, filters as URL-encoded JSON) and /search/suggest (products + collections), both `throttle:search`. Admin: `Admin\\Search\\Settings` at /admin/search/settings (synonym group rows add/remove, comma-separated stop words textarea, Reindex now button calling reindexStore synchronously with last-indexed timestamp; viewSettings/updateSettings policies so staff 403). Analytics: migrations `analytics_events` (unique (store_id, client_event_id) dedupe, occurred_at, properties_json) and `analytics_daily` (composite PK store_id+date). `AnalyticsService` (`track()` swallowing UniqueConstraintViolationException for idempotent ingestion, `getDailyMetrics()`, `eventCountsBetween()` for funnels). `AggregateAnalytics` job (optional Y-m-d constructor arg, defaults to yesterday; per-store recompute + upsert so reruns are idempotent; orders/revenue/AOV from checkout_completed event `total_amount` properties, visits = distinct page_view sessions; scheduled dailyAt 01:00 in routes/console.php). Ingestion endpoint POST /api/storefront/v1/analytics/events (`throttle:analytics`, batch 1-50, occurred_at within +/-1h, 202 {accepted, rejected} where dupes count as rejected, customer guard picked up via $request->user('customer')). Server-side tracking: product_view in Products\\Show::mount, add_to_cart in Products\\Show::addToCart, remove_from_cart in InteractsWithCart::removeLine, checkout_started in CheckoutService::createFromCart, checkout_completed via new `LogOrderAnalyticsEvent` listener on OrderCreated (spec 05 17); page_view via a tiny vanilla fetch snippet in the storefront layout (sessionStorage session id, crypto.randomUUID client_event_id). `Admin\\Analytics\\Index` at /admin/analytics (today/7d/30d/custom ranges, KPI tiles with vs-previous-period badges from analytics_daily, SVG sales chart reusing the Phase 7a dependency-free geometry approach, funnel page_view->product_view->add_to_cart->checkout_started->checkout_completed from raw events with proportional Tailwind bars, top products from order_lines with % of total, top referrers table attributing sessions to first page_view referrer host with per-source conversion); StorePolicy::viewAnalytics owner/admin/staff (support 403); sidebar Analytics item auto-enabled via Route::has(). Dashboard integration point switched: conversion rate now uses analytics_daily visits for the range, falling back to the cart-based approximation when a store has no analytics data. Seeders: AnalyticsSeeder (31 daily rows with ~3% growth + 220 events across ~35 sessions/7 days with spec type distribution and 30% customer attribution) + SearchSettingsSeeder (spec 07 3.18 synonym/stop-word sets for both stores), wired into DatabaseSeeder. Tests exactly per roadmap tables (SearchTest 5, AutocompleteTest 3, EventIngestionTest 5, AggregationTest 3) plus Storefront/SearchUiTest (8 incl. both search APIs), Admin/AnalyticsTest (7 incl. role matrix), Admin/SearchSettingsTest (5 incl. reindex rebuild + staff 403). Full suite 422 passed, 0 todos; migrate:fresh --seed ok (25 products indexed, 31 daily rows, 220 events); pint clean; npm run build ok; live-smoke-tested search page (synonym \"tee\" finds t-shirts), suggest API, and analytics ingestion (202) on shop.test.\n32\t- 2026-06-10: Phase 10 done (Apps and Webhooks). Migrations per spec 01 Epic 8: apps (name/status/created_at), app_installations (unique store+app, scopes_json, active/suspended/uninstalled, installed_at), oauth_clients (client_id unique, encrypted secret, redirect URIs), oauth_tokens (hashed access/refresh, expires_at), webhook_subscriptions (store-scoped, nullable app_installation_id, event_type, target_url, encrypted signing secret, active/paused/disabled, plus a `consecutive_failures` counter column - the one deliberate addition over spec 01 because spec 05 13.4 requires a persisted circuit breaker counter that resets on success), webhook_deliveries (event_id, attempt_count, pending/success/failed, last_attempt_at, response_code, response_body_snippet). OAuth2 flow itself stays deferred per roadmap tech decisions: tables + models + factories only, no Passport. Models: `App\\Models\\App` (explicit $table='apps', UPDATED_AT=null; import as `App as AppModel` where the facade collides), AppInstallation, OauthClient, OauthToken, WebhookSubscription (BelongsToStore, 'encrypted' cast on signing_secret_encrypted, latestDelivery ofMany relation), WebhookDelivery; 4 new enums (AppStatus, AppInstallationStatus, WebhookSubscriptionStatus, WebhookDeliveryStatus). `WebhookService`: EVENT_TYPES catalog (order.created/paid/fulfilled/cancelled/refunded, product.created/updated/deleted, checkout.completed), dispatch(store,eventType,payload) queries active subscriptions withoutGlobalScope + explicit store_id (queue context has no current_store), creates pending deliveries (attempt_count 0) sharing one event UUID, queues DeliverWebhook with a versioned envelope {id, event, api_version:'v1' per spec 02 sec 9, store_id, created_at, data}; sign() HMAC-SHA256 hex; verify() hash_equals timing-safe. `DeliverWebhook` job: tries=6, backoff [60,300,1800,7200,43200] (spec 05 13.3); POSTs JSON via Http facade with X-Platform-Signature/-Event/-Delivery-Id (fresh UUID per attempt)/-Timestamp headers; DB attempt_count is the attempt source of truth (incremented per run, robust under sync driver); records response code + 500-char body snippet + last_attempt_at; non-2xx/connection error throws RuntimeException to trigger queue retry except on the 6th attempt which dead-letters as failed; circuit breaker increments subscription.consecutive_failures per failed attempt, pauses at 5 with a logged warning, success resets to 0; paused/disabled/missing subscriptions cause pending deliveries to be marked failed and skipped. Event wiring: `DispatchWebhooks` listener with a union-typed handle (auto-discovered for all six events, verified via event:list) maps OrderCreated/OrderPaid/OrderFulfilled/OrderCancelled/OrderRefunded (payload incl. refund block)/CheckoutCompleted; product.created/updated/deleted dispatched from ProductObserver (product changes are model events, not domain event classes; archiving via status change emits product.deleted per spec 05 13.1). Admin UI: `Admin\\Apps\\Index` at /admin/apps (installed app cards with icon/installed-ago/status badge/uninstall linking to detail, plus available-apps directory with Install; install reactivates uninstalled rows, uninstall flips status and disables the installation's webhook subscriptions), `Admin\\Apps\\Show` at /admin/apps/{installation} (granted scopes badges, webhook subscriptions table with last delivery + response code badge, usage panel with token count and \"Never\" for API calls since OAuth is stubbed, uninstall), both behind new StorePolicy::manageApps (owner/admin per spec 05 1.3 matrix); sidebar Apps item auto-enabled via existing Route::has(). Developers page webhooks section replaces the placeholder: subscription table (event type, URL, status badge active=green/paused=red, last delivery + response code), Add/Edit modal (event type select from EVENT_TYPES, URL input, secret `whsec_` + 32 random chars generated server-side and shown once in an amber callout), pause/resume (resume resets consecutive_failures per spec 05 13.4 manual re-enable), delete with confirm, recent-deliveries panel (last 10 attempts with status/response/attempts/timestamp). AppSeeder (idempotent, wired into DatabaseSeeder): 3 registry apps each with an oauth client, Loyalty Rewards installed on acme-fashion with an order.created subscription, one store-level order.paid subscription, sample success/pending deliveries. Tests exactly per roadmap tables: Webhooks/WebhookDeliveryTest (5: delivery via real OrderCreated event + Http::fake, HMAC header matches hash_hmac of raw body, retry increments attempt_count + asserts tries/backoff config, 6th attempt dead-letters as failed, 5 consecutive failures pause the subscription and paused subscriptions get no new deliveries) and Webhooks/WebhookSignatureTest (4: known-hash signature, verify round-trip, tampered payload rejected, wrong secret rejected); plus Admin/AppsTest (7: render, install, reinstall reactivation, uninstall disables subscriptions, detail page scopes+webhooks, cross-store 404, staff 403/admin 200) and 6 new Admin/DevelopersTest cases (create with one-time whsec_ secret, event-type/URL validation, edit prefill + update without secret rotation, pause/resume resets failures, delete, deliveries panel render). Full suite 444 passed, 0 todos; migrate:fresh --seed ok (3 apps, 1 installation, 3 oauth clients, 2 subscriptions, 4 deliveries); pint clean.\n33\t- 2026-06-10: Phase 11 done (Polish). Seeder audit against spec 07: all 19 seeders matched the spec'd dataset (2 stores, 4 domains incl. shop.test, 5 users/roles, 25 products with full option/variant/inventory graphs, 6 collections, 5 discounts, 12 customers, 18 orders incl. the full status matrix, themes/pages/navigation, 31 analytics_daily rows + 220 events, search settings, apps/webhooks); one gap fixed: Mechanical Keyboard now assigned to the Electronics \"Featured\" collection per spec 07 section 4. A11y: admin layout gained a skip link + main#main-content (storefront already had one); cart drawer and mobile nav drawer now move focus into the panel on open; account address modal focuses its first control on open; sr-only aria-live cart-count region added to the header; aria-labels added to the admin theme color inputs and the product media alt-text editor. Responsive + dark mode audits found no real gaps (all admin tables wrapped in overflow-x-auto, storefront tables have mobile card alternatives, only intentional light-only classes remain). Error pages: generic styled errors/404, 419, 500, 503 views added (admin/non-tenant contexts; storefront keeps its themed 404/503 via the exception render hooks, API keeps JSON envelopes). Structured logging: new LogStructuredBusinessEvent listener writes order.created/order.paid/order.cancelled/order.refunded to the JSON `structured` channel; payment.failed logged in CheckoutService on declined charges; webhook.delivery_failed logged in DeliverWebhook when attempts are exhausted. New tests: Orders/StructuredLoggingTest (3) and tests/Feature/SmokeTest.php (3 tests iterating every public storefront GET route, customer account pages, and 29 admin pages against the demo seed). phpunit.xml memory_limit raised to 512M (full-suite smoke seeding exceeded the 128M default). Verification checklist: composer install clean, npm run build clean, migrate:fresh --seed clean, route:list 93 routes no duplicates, config:cache + config:clear OK, optimize:clear OK, pint clean on whole codebase, full suite 450 passed / 0 todos.\n34\t- 2026-06-10: Phase 12 part 1 done (browser test infrastructure + suites 1, 2, 7, 8, 9 of spec 08). Installed pestphp/pest-plugin-browser ^4.3 (Playwright 1.59 already present via node_modules/MCP). Infrastructure decisions: Pest's browser plugin serves the Laravel app IN-PROCESS (Amp socket server on 127.0.0.1:random-port inside the test process), so the existing phpunit.xml in-memory SQLite + RefreshDatabase setup is shared by the browser-issued HTTP requests and stays untouched - all 450 existing tests keep their config. `.env.testing` created per spec 08 (APP_ENV/APP_URL/PAYMENT_PROVIDER=mock/MAIL_MAILER=array/QUEUE_CONNECTION=sync + APP_KEY copied from .env because creating .env.testing stops Laravel from falling back to .env); phpunit.xml `<env>` values still win for the test run (DB stays :memory:). Host/tenancy strategy: the spec's \"browse acme-fashion.test via Herd\" approach doesn't work because the plugin's Amp DNS resolver bypasses macOS /etc/resolver (Herd dnsmasq), so instead the Browser suite's beforeEach seeds the full DatabaseSeeder and registers an extra store_domains row mapping hostname `127.0.0.1` to the Acme Fashion store - ResolveStore resolves the tenant through the real domain-table mechanism. `Http::fake()` in the Browser beforeEach prevents the seeded webhook subscriptions (AppSeeder) from making real outbound HTTP on the sync queue during checkout completion (was 500ing the pay step). tests/Browser registered in phpunit.xml testsuites + tests/Pest.php (TestCase + RefreshDatabase + seeded beforeEach); browser helpers added to Pest.php (browserLoginAsAdmin, browserAddClassicTeeToCart, browserFillCheckoutAddress, browserReachCheckoutPaymentStep). App changes made to satisfy spec 08 (spec-vs-implementation deviations fixed toward spec): (1) admin login heading/button \"Login\" -> \"Sign in\" and customer login \"Login\" -> \"Log in\" (specs 08 1.5/1.6/2.x; AdminAuthTest/CustomerAuthTest updated); (2) checkout payment steps 4+5 merged into the single spec-04 \"Payment Method & Pay\" step - radio fieldset (wire:model.live) + method-specific form/pay button render together, the \"Continue to payment\" intermediate click is gone, payNow() now calls selectPaymentMethod when the checkout is still shipping_selected and persists a switched method when already payment_selected (Livewire selectPayment action removed; CheckoutUiTest still green); (3) DE postal-code format validation (regex ^\\d{5}$) + friendly validationAttributes added to the checkout address step (spec 08 9.7); (4) `novalidate` added to admin login + checkout contact/address forms so server-side validation messages render in the browser instead of native bubbles (spec 08 2.3/2.4/9.5/9.6); password @error block added to admin login; (5) InvalidDiscountException::notFound message \"This discount code does not exist.\" -> \"Invalid discount code.\" per spec 04 section \"Invalid discount code\" toast/error (CartUiTest updated); (6) ThemeSeeder: acme-fashion gets featured_products_collection_handle=new-arrivals so the home page actually shows Classic Cotton T-Shirt per spec 08 7.1 (default was latest-by-id which excluded product #1). Browser test gotchas learned: bare tag selectors like 'h1' are NOT treated as CSS by the plugin's locator guesser (use 'h1[data-flux-heading]' or other explicit selectors with CSS metacharacters); explicit selectors are strict-mode (scope duplicates like 'nav a:visible:has-text(...)' / 'table [aria-label=...]'); the cart drawer auto-opens on cart-updated after applying a discount and overlays the page Checkout link (close it via [aria-label=\"Close cart\"]). tests/Browser/Screenshots + database/testing.sqlite gitignored. Suites: SmokeTest 10, Admin/AuthenticationTest 10, Storefront/BrowsingTest 15, Storefront/CartTest 12, Storefront/CheckoutTest 13 (incl. magic cards 4242/0002 declined/9995 insufficient, PayPal, bank transfer IBAN/BIC/reference instructions, FLAT5-in-checkout totals 24.98, DE vs US shipping zones). Full suite 510 passed (1641 assertions), 0 todos, ~81s; pint clean. Remaining for part 2: suites 3-6 and 10-18 (83 tests) + Playwright MCP acceptance verification.\n35\t- 2026-06-10: Phase 12 part 2 done (browser test suites 3-6 and 10-18, 83 new tests; spec 08 complete at 143 browser tests / 18 files). New files: Browser/Admin/ProductManagementTest (7), OrderManagementTest (11), DiscountManagementTest (6), SettingsTest (7), CollectionManagementTest (3), CustomerManagementTest (3), PageManagementTest (3), AnalyticsTest (3); Browser/Storefront/CustomerAccountTest (12), InventoryTest (4), TenantIsolationTest (5), ResponsiveTest (8), AccessibilityTest (11). New Pest.php helpers: browserLoginAsCustomer, browserOpenAdminOrder, browserCreateFulfillment, switchBrowserTestDomainToStore (re-points the 127.0.0.1 store_domains row at another store and forgets the ResolveStore hostname cache so tenant isolation is exercised through the REAL domain-resolution path in both directions; the plugin's in-process HTTP server always reports 127.0.0.1 as the request host, so a second hostname is impossible). REAL BUG found+fixed: discounts/form.blade.php used a Blade `@if` directive inside the <flux:input> component tag attribute list, which is unsupported by the component-tag compiler and silently broke rendering of the discount value input (admin could never enter a discount value in the browser); replaced with a bound `:max` attribute. Spec-08 alignment changes to the app (noted where spec 03/04 said otherwise): refund toast \"Refund issued\" -> \"Refund processed\" (08 4.6; 03's toast table said \"Refund issued\"), shipping rate save toast -> \"Shipping rate saved\" (08 6.4), tax save toast -> \"Tax settings saved\" + \"Tax Settings\" secondary heading on the taxes tab (08 6.5/6.6; 03 only had generic \"Settings saved\"), customer register heading/button \"Register\" -> \"Create an account\"/\"Create account\" (per BOTH 04 10.2 and 08 10.1), account-nav dashboard tab \"Account\" -> \"My Account\" (08 10.1/10.4 expect visible \"My Account\"; 04 doesn't spec the tab labels), address book now shows an \"Address saved\" status message after save (08 10.10/10.11; component previously closed the modal silently). Test-side adaptations to seeded reality (not weakenings): product list paginates at 15 of 20 products sorted by updated_at, so 3.1 sorts by Title and 3.3 uses the admin search; \"FAQ\" page already seeded so 17.2 supplies a unique handle (faq-e2e); pages list shows \"About Us\" (seeded title) for 17.3; 3.4 clicks the Active tab explicitly because the app's default product filter is All. Gotchas learned: Playwright fill() does not trigger Alpine x-model on the entangled PDP quantity input (click + Backspace + type() does - used in 11.4 with assertScript on Alpine.$data to prove qty 15 before the over-stock increment); '#1001'-style text starts with '#' so the locator guesser treats it as CSS - click via 'a:has-text(\"#1001\")'; getByText is case-insensitive substring (\"Fulfilled\" matches \"Unfulfilled\" - 4.11 asserts the badge text via assertScript; \"Visits\" matches \"unique visits\" on analytics); resize() returns AwaitableWebpage so browserFillCheckoutAddress now accepts/returns the union type; keys('body', ...) fails the locator guesser (bare tag) - use 'body:first-of-type'; Flux labels are <ui-label> custom elements associated at runtime, so a11y label checks must accept aria-labelledby. Full suite 593 passed (2054 assertions), 0 todos, ~156s; pint clean.\n36\t"}]},"uuid":"1684a15b-89c5-47ef-a7fa-cf2463143e1b","timestamp":"2026-06-10T08:47:23.874Z","toolUseResult":{"type":"text","file":{"filePath":"/Users/fabianwesner/Herd/shop/specs/progress.md","content":"# Implementation Progress\n\nTracking implementation of the shop system per `specs/09-IMPLEMENTATION-ROADMAP.md`.\n\n| Phase | Scope | Status | Tests |\n|-------|-------|--------|-------|\n| 1 | Foundation: config, tenancy migrations/models, enums, ResolveStore, BelongsToStore, admin+customer auth, policies, Pest helpers | DONE (commit 5b743cde) | 30 passed, 3 todos |\n| 2 | Catalog: products, options, variants, inventory, collections, media | DONE | full suite 79 passed, 5 todos (4 deferred to P5, 1 to P4) |\n| 3 | Themes, pages, navigation, storefront layout + components | DONE (commit 5aee8dc4) | full suite 98 passed, 5 todos; Storefront/* rendering tests added |\n| 4 | Cart, checkout, discounts, shipping, taxes + storefront cart/checkout UI | DONE | full suite 202 passed, 8 todos; Unit/* (48 new), Cart/CartServiceTest (12), Checkout/* (34), Storefront/CartUiTest (13) |\n| 5 | Payments (mock PSP), orders, refunds, fulfillments, events | DONE | full suite 259 passed, 0 todos; Orders/* (28), Payments/* (17), Storefront/CheckoutUiTest (4), all 8 deferred todos resolved |\n| 6 | Customer accounts | DONE | full suite 273 passed, 0 todos; Customers/CustomerAccountTest (6), Customers/AddressManagementTest (7), checkout prefill case added to Storefront/CheckoutUiTest |\n| 7a | Admin panel core: layout shell (sidebar/top bar/breadcrumbs/toasts), dashboard, products (index + shared form with variants builder + media), orders (index + detail with fulfillment/refund/cancel/confirm-payment), customers (index + detail with address CRUD) | DONE | full suite 290 passed, 0 todos; Admin/DashboardTest (4), Admin/ProductManagementTest (8), Admin/OrderManagementTest (5) |\n| 7b | Admin panel remaining sections: collections, inventory, discounts, settings (general/domains/checkout/notifications/shipping/taxes), themes (cards + editor), pages, navigation (apps/developers/analytics stay \"Coming soon\" until Phases 9/10) | DONE | full suite 338 passed, 0 todos; Admin/DiscountManagementTest (6), Admin/SettingsTest (6), Admin/CollectionManagementTest (7), Admin/InventoryManagementTest (7), Admin/ThemeManagementTest (8), Admin/PageManagementTest (7), Admin/NavigationManagementTest (8) |\n| API | Spec 02 REST APIs + Sanctum: storefront cart/checkout API, admin products/orders API with token abilities, rate limiters, Developers admin page | DONE | full suite 386 passed, 0 todos; Auth/SanctumTokenTest (5), Cart/CartApiTest (8), Api/StorefrontCartApiTest (8), Api/StorefrontCheckoutApiTest (9), Api/AdminProductApiTest (7), Api/AdminOrderApiTest (6), Admin/DevelopersTest (5) |\n| 8 | Search (FTS5) | DONE | full suite 422 passed, 0 todos; Search/SearchTest (5), Search/AutocompleteTest (3), Storefront/SearchUiTest (8), Admin/SearchSettingsTest (5) |\n| 9 | Analytics | DONE | (same run as Phase 8) Analytics/EventIngestionTest (5), Analytics/AggregationTest (3), Admin/AnalyticsTest (7) |\n| 10 | Apps & webhooks: 6 migrations (apps, app_installations, oauth_clients, oauth_tokens, webhook_subscriptions, webhook_deliveries), WebhookService + DeliverWebhook job (HMAC, backoff, circuit breaker), DispatchWebhooks listener + ProductObserver wiring, Admin Apps directory/detail, Developers webhook CRUD, AppSeeder | DONE | full suite 444 passed, 0 todos; Webhooks/WebhookDeliveryTest (5), Webhooks/WebhookSignatureTest (4), Admin/AppsTest (7), Admin/DevelopersTest (+6 webhook cases, 11 total) |\n| 11 | Polish: seeder audit vs spec 07, a11y (skip links, focus management, aria-live, labels), responsive + dark mode pass, error pages (404/419/500/503), structured business-event logging, SmokeTest | DONE | full suite 450 passed, 0 todos; Orders/StructuredLoggingTest (3), SmokeTest (3 tests, ~50 routes) |\n| 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | DONE: all 18 suites, 143 browser tests complete | full suite 593 passed (2054 assertions), 0 todos; Browser: SmokeTest (10), Admin/AuthenticationTest (10), Admin/ProductManagementTest (7), Admin/OrderManagementTest (11), Admin/DiscountManagementTest (6), Admin/SettingsTest (7), Admin/CollectionManagementTest (3), Admin/CustomerManagementTest (3), Admin/PageManagementTest (3), Admin/AnalyticsTest (3), Storefront/BrowsingTest (15), CartTest (12), CheckoutTest (13), CustomerAccountTest (12), InventoryTest (4), TenantIsolationTest (5), ResponsiveTest (8), AccessibilityTest (11) |\n\n## Log\n\n- 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1.\n- 2026-06-09: Phase 2 done. Catalog migrations (9 tables), models, enums, ProductService/VariantMatrixService/InventoryService/MediaService, HandleGenerator, ProcessMediaUpload job (GD), Collection+Product seeders (25 products, 127 variants). Order-reference checks implemented behind Schema::hasTable('order_lines') guard; 3 order-dependent test cases todo'd for Phase 5.\n- 2026-06-09: Phase 4 done. Migrations for carts, cart_lines, checkouts, shipping_zones, shipping_rates, tax_settings, discounts. Models + factories + 7 enums. Services: CartService (session key `cart_id`, version bump on every mutation, sum-quantities merge on login), DiscountService (reason-coded InvalidDiscountException, largest-remainder allocation), ShippingCalculator (specificity-ordered zone matching, flat/weight/price rates), TaxCalculator (basis points, intdiv for exclusive add and inclusive extract), PricingEngine (deterministic pipeline, snapshot to totals_json; inclusive total = discounted subtotal + shipping), CheckoutService state machine (payment_selected reserves inventory + 24h expires_at; completeCheckout guarded, throws LogicException until Phase 5). Jobs ExpireAbandonedCheckouts (15 min) + CleanupAbandonedCarts (daily) scheduled in routes/console.php. Storefront UI: CartDrawer (global, listens cart-updated/open-cart), /cart page with shipping estimate, /checkout 4-step stepper through payment method selection (pay button is the Phase 5 mount point), live header badge, real addToCart. Seeders: TaxSettingsSeeder, ShippingSeeder, DiscountSeeder (WELCOME10/FLAT5/FREESHIP/EXPIRED20/MAXED). Cart merge wired into CustomerLoginController; CustomerAuthTest merge case implemented. 4 test cases todo'd for Phase 5 (order completion paths).\n- 2026-06-09: Phase 5 done. Migrations for orders (+ nullable unique checkout_id for idempotency), order_lines, payments, refunds, fulfillments (+ delivered_at), fulfillment_lines. Models + factories (paid/pending/fulfilled/cancelled states) + 7 enums (OrderStatus, FinancialStatus, FulfillmentStatus, PaymentMethod, PaymentStatus, RefundStatus, FulfillmentShipmentStatus). PaymentProvider contract bound to MockPaymentProvider (magic cards 4242/0002/9995, paypal instant capture, bank_transfer pending, mock_ reference IDs); PaymentResult/RefundResult value objects. OrderService (createFromCheckout atomic with snapshots + payment record + inventory commit for captured / keep-reserved for bank transfer + discount usage increment + cart converted; generateOrderNumber sequential per store from #1001 inside the creation transaction with unique (store_id, order_number) backstop; cancel releases or restocks per financial status; confirmBankTransferPayment commits inventory + digital auto-fulfillment). RefundService (refundable validation, partial/full financial status, restock flag). FulfillmentService (FulfillmentGuardException unless paid/partially_refunded, qty <= unfulfilled validation, markAsShipped/markAsDelivered, autoFulfillDigital delivered). CheckoutService::completeCheckout implemented: idempotent via orders.checkout_id, PaymentFailedException on decline (reservation kept, released by 24h expiry). Events: OrderCreated/OrderPaid/OrderFulfilled/OrderCancelled/OrderRefunded/CheckoutCompleted/FulfillmentDelivered. CancelUnpaidBankTransferOrders daily job (store settings bank_transfer_cancel_days, default 7). Storefront pay step (card form / paypal / bank transfer) + /checkout/{checkoutId}/confirmation page with bank transfer instructions. CustomerSeeder (12 customers + addresses) and OrderSeeder (15 fashion + 3 electronics orders) wired into DatabaseSeeder, idempotent. All 8 deferred todos resolved; suite has ZERO todos.\n- 2026-06-09: Phase 6 done. Livewire account area behind `auth:customer` inside the storefront group: `Storefront\\Account\\Dashboard` (GET /account: welcome heading, quick-link cards, last 5 orders, profile form with name + marketing_opt_in via `updateProfile`), `Account\\Orders\\Index` (GET /account/orders: paginated table desktop / cards mobile, status + fulfillment badges), `Account\\Orders\\Show` (GET /account/orders/{orderNumber}: bare number in URL matched against the stored `#`-prefixed order_number, scoped to the auth'd customer so foreign orders 404; timeline built from placed_at + captured payment + fulfillments shipped/delivered + cancelled, line items with snapshots, shipping/billing/payment grid, totals, tracking links target=_blank rel=noopener), `Account\\Addresses\\Index` (GET /account/addresses: modal CRUD reusing x-storefront.address-form with prefix=\"form\", postal_code<->zip mapping to the spec 01 JSON shape, first address auto-default, setDefault flips others off, deleting the default promotes the newest remaining, foreign address ids abort 404). New components: x-storefront.account-nav (tabs + logout form), x-storefront.order-status-badge (spec 04 colors). `App\\Support\\Storefront\\Countries` extracted (address-form now uses it). CustomerAddress gained toCheckoutAddress()/summaryLine(). Checkout: address step prefills from the default address when checkout has no address, saved-address dropdown (\"Use a new address\" resets) per spec 04; email prefill existed. Logout now session()->invalidate() + regenerateToken (spec 06). Confirmation page \"View order\" links to the order detail. Header account icon already linked correctly (Phase 3). Verified in browser via Playwright on acme-fashion.test (login, dashboard, orders, order #1002 timeline, address create modal, checkout prefill + dropdown switch).- 2026-06-09: Phase 7a done (admin panel core). Layout: `resources/views/layouts/admin.blade.php` (component layout, used via `#[Layout('layouts::admin')]`) with `Admin\\Layout\\Sidebar` (fixed 256px desktop, Alpine-driven mobile overlay via `toggle-admin-sidebar` window event, nav groups per spec 03 section 1.2; unimplemented sections render as disabled \"Coming soon\" items and auto-activate once `Route::has()` finds them) and `Admin\\Layout\\TopBar` (store selector dropdown -> `switchStore()` validates membership, writes session `current_store_id`, redirects to dashboard; profile menu with logout; mobile hamburger). Global toast container (Alpine, top-right, 5s auto-dismiss, success/error/info left borders) listens for the Livewire `toast` event via `x-on:toast.window` and replays `session('toast')` flashes after redirects; components use the `Admin\\Concerns\\SendsToasts` trait. Breadcrumbs/cards/status badges are anonymous Blade components `x-admin.breadcrumbs` / `x-admin.card` / `x-admin.status-badge`. Dashboard (GET /admin): KPI tiles (total sales/orders/AOV + conversion rate approximated as orders/carts until Phase 9 analytics; change badges vs previous period), dependency-free inline SVG line chart of daily order counts, recent orders table (last 10), 7/30/90-day presets. Products: `Admin\\Products\\Index` (search, status tabs, type filter, sortable columns incl. inventory subquery sum, bulk set-active/archive/delete with confirm modal, empty states, 15/page) and shared `Admin\\Products\\Form` for create+edit (route param `{productId}` because a `{product}` param collides with the `$product` model property during Livewire param auto-assignment): options builder (comma-separated values, live matrix regeneration preserving row edits by combination key), per-variant sku/barcode/price/compare-at/weight/qty/ship rows applied post-`VariantMatrixService::rebuildMatrix` via case-insensitive sorted value-combination keys, diff-based option/value sync so untouched combinations keep variants+inventory, media upload (WithFileUploads, immediate attach in edit mode, pending until save in create mode, alt text inline edit, wire:sort reorder, delete), collections checkboxes, SEO handle (blank -> HandleGenerator), publishing datetime, status transitions through `ProductService::transitionStatus`. Orders: `Admin\\Orders\\Index` (status tabs all/pending/paid/fulfilled/cancelled/refunded, search order#/email, date range, sortable) and `Admin\\Orders\\Show` (computed `order` keyed by locked `orderId`, timeline incl. refunds/cancellation, line items with per-line fulfillment badges, totals incl. refunded, payment panel with Confirm Payment for pending bank transfers -> `OrderService::confirmBankTransferPayment`, fulfillment guard callout, fulfillment modal -> `FulfillmentService::create`, mark shipped/delivered, refund modal (selected lines sum or custom amount, reason, restock) -> `RefundService::create`, cancel modal -> `OrderService::cancel`; service ValidationException/FulfillmentGuardException surfaced as error toasts). Customers: `Admin\\Customers\\Index` (search, orders count + total spent) and `Admin\\Customers\\Show` (info card, paginated order history, address CRUD modal with default handling per spec 03 section 9.2). Routes registered in the existing `['auth','admin']` group; placeholder dashboard route/view removed. All actions policy-guarded (`@can` in views + `authorize()` in actions; Support read-only, Staff cannot delete/archive). Pest helper `createStoreMember(Store, StoreUserRole)` added. Tests: Admin/DashboardTest (4), Admin/ProductManagementTest (8), Admin/OrderManagementTest (5), exactly per roadmap tables; full suite 290 passed, 0 todos; pint clean; npm run build ok; migrate:fresh --seed ok. Browser-verified via Playwright on shop.test/admin: login, dashboard KPIs+chart, products list, Leather Belt edit form (options/variants prefilled), order #1005 bank-transfer confirm -> paid, fulfillment modal -> DHL fulfillment -> shipped -> delivered with timeline updates, toast rendering, customer detail with addresses, mobile sidebar overlay at 375px, store switcher (verified with a temporary second membership, then reverted; revoked membership correctly 403s).\n- 2026-06-10: Phase 7b done (remaining admin sections). Collections: `Admin\\Collections\\Index` (search, status filter, products_count, delete modal) + shared `Admin\\Collections\\Form` ({collectionId} edit route; title/handle/description/status, handle unique per store + auto-slug from title, product picker with debounced search dropdown + Add buttons, assigned list with thumbnails, `wire:sort` drag reorder buffered in `assignedProductIds` and synced to `collection_products.position` on save). Discounts: `Admin\\Discounts\\Index` (code search, schedule-aware status filter incl. scheduled/expired derived states, type filter, value column %/fixed-currency/free-shipping, usage \"n / limit-or-unlimited\" column) + shared `Admin\\Discounts\\Form` (code/automatic radios, Generate code, percent/fixed/free_shipping value types with unit conversion percent-whole-number vs fixed-minor-units, per-store code uniqueness `Rule::unique`, min purchase + specific products/collections + one-per-customer persisted into `rules_json` per DiscountService keys, usage limit, start/end datetimes with after-validation, Active/Disabled switch -> status). Inventory: `Admin\\Inventory\\Index` (search by product title or SKU, stock filter in/low(<=5)/out via on_hand - reserved expressions, inline on-hand number inputs `wire:change` -> `updateQuantity` clamped >= 0 and guarded by ProductPolicy::update so Support is read-only, policy badges, available column color-coded). Settings: `Admin\\Settings\\Index` page with `?tab=` (general/domains/checkout/notifications rendered as child Livewire components `Settings\\General/Domains/Checkout/Notifications`; shared `x-admin.settings-tabs` bar links Shipping/Taxes to their own routes per spec 02). General: store name/contact email/order number prefix + currency/locale/timezone (writes both `stores` columns and `store_settings.settings_json`). Domains: table with type/primary/TLS badges, add-domain modal (hostname regex + global uniqueness), set-primary scoped per domain type, refuses removing the last domain. Checkout: guest checkout toggle + `bank_transfer_cancel_days` (consumed by the Phase 5 job). Notifications: notification email + transactional toggles in settings_json. `Settings\\Shipping`: zone cards (countries checklist of 22 ISO codes + optional comma-separated region codes), nested rate tables (flat amount or multi-range weight/price configs matching ShippingCalculator's `ranges`/`min_g`/`min_amount` shape; carrier intentionally omitted as unimplemented in the calculator), inline active toggles, zone/rate modals, test-address tool calling `ShippingCalculator::getAvailableRates`. `Settings\\Taxes`: manual/provider radios, manual rate % -> `default_rate_bps`, tax name, prices_include_tax + shipping_taxable switches, provider select + API key into config_json. All settings pages authorize via StorePolicy viewSettings/updateSettings (owner/admin only; staff 403s). Themes: `Admin\\Themes\\Index` (card grid, published card gets blue ring, Customize button, ellipsis menu Publish/Duplicate/Delete with wire:confirm; publish demotes other published themes inside a transaction and calls `ThemeSettingsService::forget`; duplicate copies settings as a draft \"(Copy)\"; published theme cannot be deleted) and `Admin\\Themes\\Editor` (three-panel: left fixed groups header/colors/catalog/footer plus orderable+toggleable home sections hero/featured-collections/featured-products/newsletter/rich-text driving the persisted `sections` array via `wire:sort` + eye toggles; center iframe preview of the primary storefront domain; right dynamic fields text/textarea/color/select/number/checkbox bound to `settings.*` from `ThemeSettingsService::defaults()`, featured_collection_handles edited as comma list; Save persists theme_settings (model event invalidates cache), Save & publish also publishes). Pages: `Admin\\Pages\\Index` (search, handle column) + shared `Admin\\Pages\\Form` (title/handle unique per store/body textarea 16 rows/status draft-published-archived/published_at backfilled on publish, delete modal owner-admin only). Navigation: `NavigationMenuPolicy` added (view owner/admin/staff, update owner/admin per spec 06 matrix), `Admin\\Navigation\\Index` (menu cards -> selectMenu buffers items in state; item modal with label, type select link/page/collection/product and conditional URL input or resource select; `wire:sort` reorder; Save menu diff-deletes/upserts with positions inside a transaction then `NavigationService::forget` so storefront trees refresh; nesting omitted because navigation_items has no parent_id in spec 01). Routes registered for all sections ({collectionId}/{discountId}/{pageId}/{themeId} params following the Phase 7a productId convention); sidebar items for Collections/Inventory/Discounts/Pages/Navigation/Themes/Settings auto-enabled via the existing Route::has() mechanism (Analytics/Apps/Developers still disabled). Tests exactly per roadmap tables (DiscountManagementTest 6 cases, SettingsTest 6 cases incl. staff 403 + domains) plus CollectionManagementTest (7), InventoryManagementTest (7), ThemeManagementTest (8, incl. cache invalidation end-to-end via ThemeSettingsService and staff 403), PageManagementTest (7), NavigationManagementTest (8, incl. cached tree invalidation and support 403 / staff read-only). Full suite 338 passed, 0 todos; migrate:fresh --seed ok; pint clean; npm run build ok.\n- 2026-06-10: API phase done. Installed laravel/sanctum ^4.3 (personal access tokens on User via HasApiTokens; config/sanctum.php with token_prefix `shop_` and 1-year default expiration 525600 min; published personal_access_tokens migration). routes/api.php registered in bootstrap/app.php withRouting: Storefront API `/api/storefront/v1` (middleware `store.resolve:storefront`; carts under `throttle:api.storefront`, checkouts under `throttle:checkout`) with carts CRUD (POST 201, line add returns 200 full cart per roadmap table; optimistic concurrency accepts both `cart_version` (spec 02) and `expected_version` (roadmap) and answers 409 with `error_code: version_conflict`, `current_version`, and the full current cart state; CartVersionMismatchException now carries expected/current version properties) and the full checkout flow (create 201/`started`, address with available_shipping_methods, shipping-method with recalculated totals, apply-discount/DELETE discount with InvalidDiscountException mapped to 400 `discount_expired`/`discount_usage_exceeded` or 422, payment-method, pay -> completeCheckout via mock PSP returning order payload + bank transfer instructions, 422 + error_code on decline, 409 on wrong state, 410 on expired checkouts). Admin API `/api/admin/v1/stores/{storeId}` (middleware `auth:sanctum`, `store.resolve:api-admin`, `throttle:api.admin`, Sanctum `abilities:` per endpoint): products index (filters/sort, default per_page 15 per roadmap table, data+meta envelope)/store (options+explicit variants with option_values, inventory quantity+policy, collections sync, store-scoped handle+SKU uniqueness)/show/update (partial; status via ProductService::transitionStatus mapped to 422)/destroy (archives, returns id/status/updated_at), orders index (status/financial/fulfillment/customer/date/query filters)/show (lines+payments+fulfillments+refunds)/fulfillments (creates + marks shipped per spec 02 \"mark items as shipped\"; FulfillmentGuardException -> 409)/refunds (RefundService against latest captured payment; 409 when nothing refundable). ResolveStore gained `api-admin` context resolving the store from {storeId} and verifying token-user membership (404 unknown store, 403 non-member, 403 mutations on suspended). bootstrap/app.php: `abilities`/`ability` middleware aliases; JSON error envelopes for api/* (404 \"The requested resource was not found.\", 403 \"You do not have permission to perform this action.\", InsufficientInventoryException -> 422 validation shape, FulfillmentGuardException -> 409). AppServiceProvider rate limiters per spec 02 section 7: api.admin 60/min per token id, api.storefront 120/min per IP, checkout 10/min per session (IP fallback for stateless API), search 30/min, analytics 60/min, webhooks 100/min, all returning the spec 429 body {message, retry_after}. API Resources: Storefront CartResource/CheckoutResource (unwrapped, spec shapes incl. line snapshots, totals, available_shipping_methods), Admin ProductListResource/ProductResource/OrderListResource/OrderResource/FulfillmentResource/RefundResource (data-wrapped). Admin Developers page (`/admin/developers`, Admin\\Developers\\Index, sidebar auto-enabled): token table (name, ability badges, last used, created, revoke with wire:confirm), generate-token modal (name + 18 ability checkboxes from App\\Support\\TokenAbilities), plaintext shown once in amber callout; StorePolicy::manageDevelopers gates to owner/admin (staff 403); webhooks section deferred to Phase 10. Storefront search/analytics endpoints deferred to Phases 8/9 per roadmap; GET /orders/{orderNumber} tokenized order status endpoint deferred with them. Tests exactly per roadmap tables (SanctumTokenTest 5, CartApiTest 8 incl. 121-request rate limit, StorefrontCartApiTest 8, StorefrontCheckoutApiTest 9, AdminProductApiTest 7 incl. default page size 15, AdminOrderApiTest 6) plus Admin/DevelopersTest (5). Full suite 386 passed, 0 todos; migrate:fresh --seed ok; pint clean.\n- 2026-06-10: Phases 8+9 done (Search + Analytics). Search: migrations `search_settings` (store_id PK, synonyms_json/stop_words_json), `search_queries` (store-scoped log with results_count), and a raw-SQL `products_fts` FTS5 virtual table (CREATE VIRTUAL TABLE IF NOT EXISTS, sqlite-driver-guarded, rowid = product id so upserts are delete+insert by rowid; KEY QUIRK: FTS5 stores column values as text, so the UNINDEXED `store_id` is always filtered with `CAST(store_id AS INTEGER) = ?` because an integer binding/literal silently matches nothing). `SearchService`: `search()` (tokenize -> stop-word removal (falls back to original tokens if all are stop words) -> synonym OR-groups from search_settings with multi-word synonyms as quoted phrases -> trailing prefix `*` on the last token; MATCH subquery joined via joinSub so `fts.rank` drives relevance; filters vendor(s)/product_types/collection_id/price range (minor units)/in_stock/tags; sorts relevance/price_asc/price_desc/newest/best_selling; published+published_at scoping at query time per spec 05 16.3; every search logged to search_queries + a `search` analytics event, with a `logQuery` flag so Livewire filter/pagination re-renders only log when the query text changes), `autocomplete()` (min prefix 2), `countMatches()`, `facetValues()`, `syncProduct()`/`removeProduct()`/`reindexStore()` (last-indexed timestamp kept in cache). `ProductObserver` (created/updated -> sync, deleted -> remove) registered in AppServiceProvider, so seeded/created products index themselves; SearchSettingsSeeder also reindexes both stores defensively. Storefront UI: `Storefront\\Search\\Modal` (global in storefront layout, opened by the header icon dispatching `open-search-modal`, 300ms debounce, products max 5 + collections max 5 + \"View all N results\", skeleton loading, Alpine arrow-key/Enter/Escape keyboard nav, dialog/listbox ARIA) and `Storefront\\Search\\Index` at GET /search (?q= via #[Url], same filter sidebar partial + sort + pagination as collection pages, result heading 'N results for \"q\"', empty state with retry input); 404 page got the spec search form. Storefront API: GET /api/storefront/v1/search (spec JSON with results/facets/pagination, filters as URL-encoded JSON) and /search/suggest (products + collections), both `throttle:search`. Admin: `Admin\\Search\\Settings` at /admin/search/settings (synonym group rows add/remove, comma-separated stop words textarea, Reindex now button calling reindexStore synchronously with last-indexed timestamp; viewSettings/updateSettings policies so staff 403). Analytics: migrations `analytics_events` (unique (store_id, client_event_id) dedupe, occurred_at, properties_json) and `analytics_daily` (composite PK store_id+date). `AnalyticsService` (`track()` swallowing UniqueConstraintViolationException for idempotent ingestion, `getDailyMetrics()`, `eventCountsBetween()` for funnels). `AggregateAnalytics` job (optional Y-m-d constructor arg, defaults to yesterday; per-store recompute + upsert so reruns are idempotent; orders/revenue/AOV from checkout_completed event `total_amount` properties, visits = distinct page_view sessions; scheduled dailyAt 01:00 in routes/console.php). Ingestion endpoint POST /api/storefront/v1/analytics/events (`throttle:analytics`, batch 1-50, occurred_at within +/-1h, 202 {accepted, rejected} where dupes count as rejected, customer guard picked up via $request->user('customer')). Server-side tracking: product_view in Products\\Show::mount, add_to_cart in Products\\Show::addToCart, remove_from_cart in InteractsWithCart::removeLine, checkout_started in CheckoutService::createFromCart, checkout_completed via new `LogOrderAnalyticsEvent` listener on OrderCreated (spec 05 17); page_view via a tiny vanilla fetch snippet in the storefront layout (sessionStorage session id, crypto.randomUUID client_event_id). `Admin\\Analytics\\Index` at /admin/analytics (today/7d/30d/custom ranges, KPI tiles with vs-previous-period badges from analytics_daily, SVG sales chart reusing the Phase 7a dependency-free geometry approach, funnel page_view->product_view->add_to_cart->checkout_started->checkout_completed from raw events with proportional Tailwind bars, top products from order_lines with % of total, top referrers table attributing sessions to first page_view referrer host with per-source conversion); StorePolicy::viewAnalytics owner/admin/staff (support 403); sidebar Analytics item auto-enabled via Route::has(). Dashboard integration point switched: conversion rate now uses analytics_daily visits for the range, falling back to the cart-based approximation when a store has no analytics data. Seeders: AnalyticsSeeder (31 daily rows with ~3% growth + 220 events across ~35 sessions/7 days with spec type distribution and 30% customer attribution) + SearchSettingsSeeder (spec 07 3.18 synonym/stop-word sets for both stores), wired into DatabaseSeeder. Tests exactly per roadmap tables (SearchTest 5, AutocompleteTest 3, EventIngestionTest 5, AggregationTest 3) plus Storefront/SearchUiTest (8 incl. both search APIs), Admin/AnalyticsTest (7 incl. role matrix), Admin/SearchSettingsTest (5 incl. reindex rebuild + staff 403). Full suite 422 passed, 0 todos; migrate:fresh --seed ok (25 products indexed, 31 daily rows, 220 events); pint clean; npm run build ok; live-smoke-tested search page (synonym \"tee\" finds t-shirts), suggest API, and analytics ingestion (202) on shop.test.\n- 2026-06-10: Phase 10 done (Apps and Webhooks). Migrations per spec 01 Epic 8: apps (name/status/created_at), app_installations (unique store+app, scopes_json, active/suspended/uninstalled, installed_at), oauth_clients (client_id unique, encrypted secret, redirect URIs), oauth_tokens (hashed access/refresh, expires_at), webhook_subscriptions (store-scoped, nullable app_installation_id, event_type, target_url, encrypted signing secret, active/paused/disabled, plus a `consecutive_failures` counter column - the one deliberate addition over spec 01 because spec 05 13.4 requires a persisted circuit breaker counter that resets on success), webhook_deliveries (event_id, attempt_count, pending/success/failed, last_attempt_at, response_code, response_body_snippet). OAuth2 flow itself stays deferred per roadmap tech decisions: tables + models + factories only, no Passport. Models: `App\\Models\\App` (explicit $table='apps', UPDATED_AT=null; import as `App as AppModel` where the facade collides), AppInstallation, OauthClient, OauthToken, WebhookSubscription (BelongsToStore, 'encrypted' cast on signing_secret_encrypted, latestDelivery ofMany relation), WebhookDelivery; 4 new enums (AppStatus, AppInstallationStatus, WebhookSubscriptionStatus, WebhookDeliveryStatus). `WebhookService`: EVENT_TYPES catalog (order.created/paid/fulfilled/cancelled/refunded, product.created/updated/deleted, checkout.completed), dispatch(store,eventType,payload) queries active subscriptions withoutGlobalScope + explicit store_id (queue context has no current_store), creates pending deliveries (attempt_count 0) sharing one event UUID, queues DeliverWebhook with a versioned envelope {id, event, api_version:'v1' per spec 02 sec 9, store_id, created_at, data}; sign() HMAC-SHA256 hex; verify() hash_equals timing-safe. `DeliverWebhook` job: tries=6, backoff [60,300,1800,7200,43200] (spec 05 13.3); POSTs JSON via Http facade with X-Platform-Signature/-Event/-Delivery-Id (fresh UUID per attempt)/-Timestamp headers; DB attempt_count is the attempt source of truth (incremented per run, robust under sync driver); records response code + 500-char body snippet + last_attempt_at; non-2xx/connection error throws RuntimeException to trigger queue retry except on the 6th attempt which dead-letters as failed; circuit breaker increments subscription.consecutive_failures per failed attempt, pauses at 5 with a logged warning, success resets to 0; paused/disabled/missing subscriptions cause pending deliveries to be marked failed and skipped. Event wiring: `DispatchWebhooks` listener with a union-typed handle (auto-discovered for all six events, verified via event:list) maps OrderCreated/OrderPaid/OrderFulfilled/OrderCancelled/OrderRefunded (payload incl. refund block)/CheckoutCompleted; product.created/updated/deleted dispatched from ProductObserver (product changes are model events, not domain event classes; archiving via status change emits product.deleted per spec 05 13.1). Admin UI: `Admin\\Apps\\Index` at /admin/apps (installed app cards with icon/installed-ago/status badge/uninstall linking to detail, plus available-apps directory with Install; install reactivates uninstalled rows, uninstall flips status and disables the installation's webhook subscriptions), `Admin\\Apps\\Show` at /admin/apps/{installation} (granted scopes badges, webhook subscriptions table with last delivery + response code badge, usage panel with token count and \"Never\" for API calls since OAuth is stubbed, uninstall), both behind new StorePolicy::manageApps (owner/admin per spec 05 1.3 matrix); sidebar Apps item auto-enabled via existing Route::has(). Developers page webhooks section replaces the placeholder: subscription table (event type, URL, status badge active=green/paused=red, last delivery + response code), Add/Edit modal (event type select from EVENT_TYPES, URL input, secret `whsec_` + 32 random chars generated server-side and shown once in an amber callout), pause/resume (resume resets consecutive_failures per spec 05 13.4 manual re-enable), delete with confirm, recent-deliveries panel (last 10 attempts with status/response/attempts/timestamp). AppSeeder (idempotent, wired into DatabaseSeeder): 3 registry apps each with an oauth client, Loyalty Rewards installed on acme-fashion with an order.created subscription, one store-level order.paid subscription, sample success/pending deliveries. Tests exactly per roadmap tables: Webhooks/WebhookDeliveryTest (5: delivery via real OrderCreated event + Http::fake, HMAC header matches hash_hmac of raw body, retry increments attempt_count + asserts tries/backoff config, 6th attempt dead-letters as failed, 5 consecutive failures pause the subscription and paused subscriptions get no new deliveries) and Webhooks/WebhookSignatureTest (4: known-hash signature, verify round-trip, tampered payload rejected, wrong secret rejected); plus Admin/AppsTest (7: render, install, reinstall reactivation, uninstall disables subscriptions, detail page scopes+webhooks, cross-store 404, staff 403/admin 200) and 6 new Admin/DevelopersTest cases (create with one-time whsec_ secret, event-type/URL validation, edit prefill + update without secret rotation, pause/resume resets failures, delete, deliveries panel render). Full suite 444 passed, 0 todos; migrate:fresh --seed ok (3 apps, 1 installation, 3 oauth clients, 2 subscriptions, 4 deliveries); pint clean.\n- 2026-06-10: Phase 11 done (Polish). Seeder audit against spec 07: all 19 seeders matched the spec'd dataset (2 stores, 4 domains incl. shop.test, 5 users/roles, 25 products with full option/variant/inventory graphs, 6 collections, 5 discounts, 12 customers, 18 orders incl. the full status matrix, themes/pages/navigation, 31 analytics_daily rows + 220 events, search settings, apps/webhooks); one gap fixed: Mechanical Keyboard now assigned to the Electronics \"Featured\" collection per spec 07 section 4. A11y: admin layout gained a skip link + main#main-content (storefront already had one); cart drawer and mobile nav drawer now move focus into the panel on open; account address modal focuses its first control on open; sr-only aria-live cart-count region added to the header; aria-labels added to the admin theme color inputs and the product media alt-text editor. Responsive + dark mode audits found no real gaps (all admin tables wrapped in overflow-x-auto, storefront tables have mobile card alternatives, only intentional light-only classes remain). Error pages: generic styled errors/404, 419, 500, 503 views added (admin/non-tenant contexts; storefront keeps its themed 404/503 via the exception render hooks, API keeps JSON envelopes). Structured logging: new LogStructuredBusinessEvent listener writes order.created/order.paid/order.cancelled/order.refunded to the JSON `structured` channel; payment.failed logged in CheckoutService on declined charges; webhook.delivery_failed logged in DeliverWebhook when attempts are exhausted. New tests: Orders/StructuredLoggingTest (3) and tests/Feature/SmokeTest.php (3 tests iterating every public storefront GET route, customer account pages, and 29 admin pages against the demo seed). phpunit.xml memory_limit raised to 512M (full-suite smoke seeding exceeded the 128M default). Verification checklist: composer install clean, npm run build clean, migrate:fresh --seed clean, route:list 93 routes no duplicates, config:cache + config:clear OK, optimize:clear OK, pint clean on whole codebase, full suite 450 passed / 0 todos.\n- 2026-06-10: Phase 12 part 1 done (browser test infrastructure + suites 1, 2, 7, 8, 9 of spec 08). Installed pestphp/pest-plugin-browser ^4.3 (Playwright 1.59 already present via node_modules/MCP). Infrastructure decisions: Pest's browser plugin serves the Laravel app IN-PROCESS (Amp socket server on 127.0.0.1:random-port inside the test process), so the existing phpunit.xml in-memory SQLite + RefreshDatabase setup is shared by the browser-issued HTTP requests and stays untouched - all 450 existing tests keep their config. `.env.testing` created per spec 08 (APP_ENV/APP_URL/PAYMENT_PROVIDER=mock/MAIL_MAILER=array/QUEUE_CONNECTION=sync + APP_KEY copied from .env because creating .env.testing stops Laravel from falling back to .env); phpunit.xml `<env>` values still win for the test run (DB stays :memory:). Host/tenancy strategy: the spec's \"browse acme-fashion.test via Herd\" approach doesn't work because the plugin's Amp DNS resolver bypasses macOS /etc/resolver (Herd dnsmasq), so instead the Browser suite's beforeEach seeds the full DatabaseSeeder and registers an extra store_domains row mapping hostname `127.0.0.1` to the Acme Fashion store - ResolveStore resolves the tenant through the real domain-table mechanism. `Http::fake()` in the Browser beforeEach prevents the seeded webhook subscriptions (AppSeeder) from making real outbound HTTP on the sync queue during checkout completion (was 500ing the pay step). tests/Browser registered in phpunit.xml testsuites + tests/Pest.php (TestCase + RefreshDatabase + seeded beforeEach); browser helpers added to Pest.php (browserLoginAsAdmin, browserAddClassicTeeToCart, browserFillCheckoutAddress, browserReachCheckoutPaymentStep). App changes made to satisfy spec 08 (spec-vs-implementation deviations fixed toward spec): (1) admin login heading/button \"Login\" -> \"Sign in\" and customer login \"Login\" -> \"Log in\" (specs 08 1.5/1.6/2.x; AdminAuthTest/CustomerAuthTest updated); (2) checkout payment steps 4+5 merged into the single spec-04 \"Payment Method & Pay\" step - radio fieldset (wire:model.live) + method-specific form/pay button render together, the \"Continue to payment\" intermediate click is gone, payNow() now calls selectPaymentMethod when the checkout is still shipping_selected and persists a switched method when already payment_selected (Livewire selectPayment action removed; CheckoutUiTest still green); (3) DE postal-code format validation (regex ^\\d{5}$) + friendly validationAttributes added to the checkout address step (spec 08 9.7); (4) `novalidate` added to admin login + checkout contact/address forms so server-side validation messages render in the browser instead of native bubbles (spec 08 2.3/2.4/9.5/9.6); password @error block added to admin login; (5) InvalidDiscountException::notFound message \"This discount code does not exist.\" -> \"Invalid discount code.\" per spec 04 section \"Invalid discount code\" toast/error (CartUiTest updated); (6) ThemeSeeder: acme-fashion gets featured_products_collection_handle=new-arrivals so the home page actually shows Classic Cotton T-Shirt per spec 08 7.1 (default was latest-by-id which excluded product #1). Browser test gotchas learned: bare tag selectors like 'h1' are NOT treated as CSS by the plugin's locator guesser (use 'h1[data-flux-heading]' or other explicit selectors with CSS metacharacters); explicit selectors are strict-mode (scope duplicates like 'nav a:visible:has-text(...)' / 'table [aria-label=...]'); the cart drawer auto-opens on cart-updated after applying a discount and overlays the page Checkout link (close it via [aria-label=\"Close cart\"]). tests/Browser/Screenshots + database/testing.sqlite gitignored. Suites: SmokeTest 10, Admin/AuthenticationTest 10, Storefront/BrowsingTest 15, Storefront/CartTest 12, Storefront/CheckoutTest 13 (incl. magic cards 4242/0002 declined/9995 insufficient, PayPal, bank transfer IBAN/BIC/reference instructions, FLAT5-in-checkout totals 24.98, DE vs US shipping zones). Full suite 510 passed (1641 assertions), 0 todos, ~81s; pint clean. Remaining for part 2: suites 3-6 and 10-18 (83 tests) + Playwright MCP acceptance verification.\n- 2026-06-10: Phase 12 part 2 done (browser test suites 3-6 and 10-18, 83 new tests; spec 08 complete at 143 browser tests / 18 files). New files: Browser/Admin/ProductManagementTest (7), OrderManagementTest (11), DiscountManagementTest (6), SettingsTest (7), CollectionManagementTest (3), CustomerManagementTest (3), PageManagementTest (3), AnalyticsTest (3); Browser/Storefront/CustomerAccountTest (12), InventoryTest (4), TenantIsolationTest (5), ResponsiveTest (8), AccessibilityTest (11). New Pest.php helpers: browserLoginAsCustomer, browserOpenAdminOrder, browserCreateFulfillment, switchBrowserTestDomainToStore (re-points the 127.0.0.1 store_domains row at another store and forgets the ResolveStore hostname cache so tenant isolation is exercised through the REAL domain-resolution path in both directions; the plugin's in-process HTTP server always reports 127.0.0.1 as the request host, so a second hostname is impossible). REAL BUG found+fixed: discounts/form.blade.php used a Blade `@if` directive inside the <flux:input> component tag attribute list, which is unsupported by the component-tag compiler and silently broke rendering of the discount value input (admin could never enter a discount value in the browser); replaced with a bound `:max` attribute. Spec-08 alignment changes to the app (noted where spec 03/04 said otherwise): refund toast \"Refund issued\" -> \"Refund processed\" (08 4.6; 03's toast table said \"Refund issued\"), shipping rate save toast -> \"Shipping rate saved\" (08 6.4), tax save toast -> \"Tax settings saved\" + \"Tax Settings\" secondary heading on the taxes tab (08 6.5/6.6; 03 only had generic \"Settings saved\"), customer register heading/button \"Register\" -> \"Create an account\"/\"Create account\" (per BOTH 04 10.2 and 08 10.1), account-nav dashboard tab \"Account\" -> \"My Account\" (08 10.1/10.4 expect visible \"My Account\"; 04 doesn't spec the tab labels), address book now shows an \"Address saved\" status message after save (08 10.10/10.11; component previously closed the modal silently). Test-side adaptations to seeded reality (not weakenings): product list paginates at 15 of 20 products sorted by updated_at, so 3.1 sorts by Title and 3.3 uses the admin search; \"FAQ\" page already seeded so 17.2 supplies a unique handle (faq-e2e); pages list shows \"About Us\" (seeded title) for 17.3; 3.4 clicks the Active tab explicitly because the app's default product filter is All. Gotchas learned: Playwright fill() does not trigger Alpine x-model on the entangled PDP quantity input (click + Backspace + type() does - used in 11.4 with assertScript on Alpine.$data to prove qty 15 before the over-stock increment); '#1001'-style text starts with '#' so the locator guesser treats it as CSS - click via 'a:has-text(\"#1001\")'; getByText is case-insensitive substring (\"Fulfilled\" matches \"Unfulfilled\" - 4.11 asserts the badge text via assertScript; \"Visits\" matches \"unique visits\" on analytics); resize() returns AwaitableWebpage so browserFillCheckoutAddress now accepts/returns the union type; keys('body', ...) fails the locator guesser (bare tag) - use 'body:first-of-type'; Flux labels are <ui-label> custom elements associated at runtime, so a11y label checks must accept aria-labelledby. Full suite 593 passed (2054 assertions), 0 todos, ~156s; pint clean.\n","numLines":36,"startLine":1,"totalLines":36}},"sourceToolAssistantUUID":"2b6091ff-1420-4170-8261-4822f5ff0e11","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"1684a15b-89c5-47ef-a7fa-cf2463143e1b","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"1684a15b-89c5-47ef-a7fa-cf2463143e1b","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_011Zs787UiYjGJMYgxq3mhbT","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_0165BS6xZw1DbZF8HMUbiaHY","name":"Edit","input":{"replace_all":false,"file_path":"/Users/fabianwesner/Herd/shop/specs/progress.md","old_string":"## Log\n\n- 2026-06-09: Project start.","new_string":"## Final status (2026-06-10)\n\nALL PHASES COMPLETE. Full suite: 594 passed (2057 assertions), 0 todos - 451 unit/feature + 143 browser tests.\nLive Playwright MCP acceptance simulation on shop.test completed: storefront browse, variant selection, cart drawer + discount (WELCOME10), full checkout with mock credit card -> order #1016 confirmed (idempotency verified, single order), search autocomplete, customer registration + account dashboard, admin dashboard/order detail (fulfillment with DHL tracking), bank-transfer confirmation (#1005 -> paid/captured), products, product form, discounts, shipping settings, analytics, theme editor, developers. Zero console errors after fix.\nOne production bug found during live simulation and fixed: DeliverWebhook threw on the sync queue when a webhook target was unreachable, which 500'd checkout completion (browser tests had masked it with Http::fake). Fix: inline (sync) execution dead-letters after the first failed attempt instead of throwing; background queues keep retry-by-throwing with backoff. Regression test added (WebhookDeliveryTest, 6 cases now).\n\n## Log\n\n- 2026-06-09: Project start."},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":17629,"cache_read_input_tokens":247833,"output_tokens":575,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":17629,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":575,"cache_read_input_tokens":247833,"cache_creation_input_tokens":17629,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":17629},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHhHX6BKwwAYEWYeGhZ","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"eae9aec7-15c2-4e18-b455-7378a5831f2f","timestamp":"2026-06-10T08:47:34.181Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"eae9aec7-15c2-4e18-b455-7378a5831f2f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_0165BS6xZw1DbZF8HMUbiaHY","type":"tool_result","content":"The file /Users/fabianwesner/Herd/shop/specs/progress.md has been updated successfully. (file state is current in your context — no need to Read it back)"}]},"uuid":"a2ac7539-ce21-4d8e-8560-0bcf82f1fc38","timestamp":"2026-06-10T08:47:34.195Z","toolUseResult":{"filePath":"/Users/fabianwesner/Herd/shop/specs/progress.md","oldString":"## Log\n\n- 2026-06-09: Project start.","newString":"## Final status (2026-06-10)\n\nALL PHASES COMPLETE. Full suite: 594 passed (2057 assertions), 0 todos - 451 unit/feature + 143 browser tests.\nLive Playwright MCP acceptance simulation on shop.test completed: storefront browse, variant selection, cart drawer + discount (WELCOME10), full checkout with mock credit card -> order #1016 confirmed (idempotency verified, single order), search autocomplete, customer registration + account dashboard, admin dashboard/order detail (fulfillment with DHL tracking), bank-transfer confirmation (#1005 -> paid/captured), products, product form, discounts, shipping settings, analytics, theme editor, developers. Zero console errors after fix.\nOne production bug found during live simulation and fixed: DeliverWebhook threw on the sync queue when a webhook target was unreachable, which 500'd checkout completion (browser tests had masked it with Http::fake). Fix: inline (sync) execution dead-letters after the first failed attempt instead of throwing; background queues keep retry-by-throwing with backoff. Regression test added (WebhookDeliveryTest, 6 cases now).\n\n## Log\n\n- 2026-06-09: Project start.","originalFile":null,"structuredPatch":[{"oldStart":19,"oldLines":6,"newStart":19,"newLines":12,"lines":[" | 11 | Polish: seeder audit vs spec 07, a11y (skip links, focus management, aria-live, labels), responsive + dark mode pass, error pages (404/419/500/503), structured business-event logging, SmokeTest | DONE | full suite 450 passed, 0 todos; Orders/StructuredLoggingTest (3), SmokeTest (3 tests, ~50 routes) |"," | 12 | Full suite + browser tests (spec 08) + Playwright MCP acceptance verification | DONE: all 18 suites, 143 browser tests complete | full suite 593 passed (2054 assertions), 0 todos; Browser: SmokeTest (10), Admin/AuthenticationTest (10), Admin/ProductManagementTest (7), Admin/OrderManagementTest (11), Admin/DiscountManagementTest (6), Admin/SettingsTest (7), Admin/CollectionManagementTest (3), Admin/CustomerManagementTest (3), Admin/PageManagementTest (3), Admin/AnalyticsTest (3), Storefront/BrowsingTest (15), CartTest (12), CheckoutTest (13), CustomerAccountTest (12), InventoryTest (4), TenantIsolationTest (5), ResponsiveTest (8), AccessibilityTest (11) |"," ","+## Final status (2026-06-10)","+","+ALL PHASES COMPLETE. Full suite: 594 passed (2057 assertions), 0 todos - 451 unit/feature + 143 browser tests.","+Live Playwright MCP acceptance simulation on shop.test completed: storefront browse, variant selection, cart drawer + discount (WELCOME10), full checkout with mock credit card -> order #1016 confirmed (idempotency verified, single order), search autocomplete, customer registration + account dashboard, admin dashboard/order detail (fulfillment with DHL tracking), bank-transfer confirmation (#1005 -> paid/captured), products, product form, discounts, shipping settings, analytics, theme editor, developers. Zero console errors after fix.","+One production bug found during live simulation and fixed: DeliverWebhook threw on the sync queue when a webhook target was unreachable, which 500'd checkout completion (browser tests had masked it with Http::fake). Fix: inline (sync) execution dead-letters after the first failed attempt instead of throwing; background queues keep retry-by-throwing with backoff. Regression test added (WebhookDeliveryTest, 6 cases now).","+"," ## Log"," "," - 2026-06-09: Project start. Fresh Livewire starter kit (Fortify). Created progress tracker, started Phase 1."]}],"userModified":false,"replaceAll":false},"sourceToolAssistantUUID":"eae9aec7-15c2-4e18-b455-7378a5831f2f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a2ac7539-ce21-4d8e-8560-0bcf82f1fc38","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Gwooa283fqL3X4t6YXxERc","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_019JS1YYfS9MJNY7ggveUoBC","name":"Bash","input":{"command":"git add -A && git commit -q -m \"Fix: webhook delivery on sync queue dead-letters instead of throwing into the triggering request\n\nFound via live Playwright simulation: an unreachable webhook target 500'd\ncheckout completion because DeliverWebhook's retry-by-throwing propagated\nthrough the sync queue into the customer's request. Inline execution now\nrecords the failure and returns; background queues keep backoff retries.\n\nCo-Authored-By: Claude Fable 5 <noreply@anthropic.com>\" && git log --oneline | head -3 && git log --oneline | wc -l","description":"Commit webhook fix and final progress"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":632,"cache_read_input_tokens":265462,"output_tokens":272,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":632,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":272,"cache_read_input_tokens":265462,"cache_creation_input_tokens":632,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":632},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHi3msr4qmQbak9dUxU","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"a3409dae-af8a-4530-841c-d638dcb8e469","timestamp":"2026-06-10T08:47:42.797Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a3409dae-af8a-4530-841c-d638dcb8e469","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_019JS1YYfS9MJNY7ggveUoBC","type":"tool_result","content":"872ac91e Fix: webhook delivery on sync queue dead-letters instead of throwing into the triggering request\nf9e5c73e Phase 12b: Browser suites 3-6, 10-18 (83 tests, 143 total); fix discount value input rendering bug, spec 08 label alignments\n1734bc9e Phase 12a: Pest browser test infrastructure + suites 1,2,7,8,9 (60 tests); checkout single pay step, validation fixes\n      18","is_error":false}]},"uuid":"41db10b5-727d-41e7-b2ed-69f1bba4d7f6","timestamp":"2026-06-10T08:47:43.017Z","toolUseResult":{"stdout":"872ac91e Fix: webhook delivery on sync queue dead-letters instead of throwing into the triggering request\nf9e5c73e Phase 12b: Browser suites 3-6, 10-18 (83 tests, 143 total); fix discount value input rendering bug, spec 08 label alignments\n1734bc9e Phase 12a: Pest browser test infrastructure + suites 1,2,7,8,9 (60 tests); checkout single pay step, validation fixes\n      18","stderr":"","interrupted":false,"isImage":false,"noOutputExpected":false},"sourceToolAssistantUUID":"a3409dae-af8a-4530-841c-d638dcb8e469","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"file-history-snapshot","messageId":"97b3f9c5-f0b4-470a-9b7f-37ac3341393f","snapshot":{"messageId":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","trackedFileBackups":{"specs/progress.md":{"backupFileName":null,"version":1,"backupTime":"2026-06-09T18:16:23.629Z"},"app/Jobs/DeliverWebhook.php":{"backupFileName":"22fa2902cdfbce50@v1","version":1,"backupTime":"2026-06-10T08:38:25.146Z"},"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/project_shop_live_verification_gotchas.md":{"backupFileName":null,"version":1,"backupTime":"2026-06-10T08:47:58.725Z"}},"timestamp":"2026-06-09T18:14:31.432Z"},"isSnapshotUpdate":true}
{"parentUuid":"41db10b5-727d-41e7-b2ed-69f1bba4d7f6","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012X9pwLWwjKGsFf4X3pzSYY","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIS/gYKYggOGAIqQHNBqKp+vkaPwSMVQtBby9O+BkVizySy2zX9m8Xb156YXjNHU/If0qeCVoS5ktSz0/J4RVkgcvhK9qn9UTJqUAYyDmNsYXVkZS1mYWJsZS01OAFCCHRoaW5raW5nEgwYC3uo2gM8k+MrsAgaDAUluDXcC+IRJZ+QhCIwiO0ZO5d0G3e7bxoueTh7M+0huCAFDOb/cBbYNk5CYf6DzT9Z9ND5RA8AGmKiMsC+KskF5mP9uPyT1sTqXyCcP0oGicRjam2XX7RiszA1nuhtMJXZwgLEAxYlBsPXI85Lx/MY1w8s25ukoMG4MOX05J2Z8si4sNeiW0TueEWlGEbzGzRjogz/snO+gfIQt9Z74qj2X4lIeUg5hKruyI3zNFWe1Ejga3JT12BlPpn23LBVhfrFpp9oTP/ytSJmwkGhZY044eRarLa2spd5ktEx82i/YlTIrLduQ8eyeD6J1CG5bDEVeoioUbF4RNNO2N8WSU6N0areMB2RHz2hv+Lj5lprWSnQAh53AfY+2xKo8LZequAAu+hZnYjb05TaN48ypPGWVT+R3Rgfqu+TClDlnguePbPdglVsyXQgFCbnpoxQfp8RI7ZnwDZRXFB1E8rQcuKnZjVPq5MLdDW3ZuxSt07UX79N8AaGtI1ytgWYow8bYlI/mLNuE4HNAYhgL5TVNLmA5RGnUAz4n7FC21tp8C1c3yQ9QV98jH+pNb8JTB2k42cXdR6Gc5n3dLLbcgwMERBlkgGY1b+hCMQq47NmLX4NQbhJxx2cFp7x6S/VNTOGbhs2IXGpgWCrXrXKGvF1gMhUNpQR1GRJvjffxbsJqbG1gowTC3IKrRWKIxwLZrCrBOD4Kkm48q1g/mI7d/pGHwx+R0H8aIKDXTmzX58Um4VBAooj17K2Me/APRTWxVBp2h62zyeKCdKDeybhH/g+tjmkdWdjgTSTh8RI3NHI+bNxawra9sVYZ6Ha7GXBVlyaZbxMiasWuckw5kKH9UJKLe2dbEc/3YBXa0Ha06yljd3nSkULJ9ZxKxDHJDSUbSUfKVES04YDLkz18n2L52+F5r2ajLAinT7t/VNQAfkZONys5ikfPVlKsT1ufnOcQm8v1glGqt5TEEGK9bTfS0c2U14hMDE1ST00jsH/RBVEcRDnUvTfIkDpe3nMO7VfJiy/GZUtQX/O/KuV6K0YAQ=="}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":437,"cache_read_input_tokens":266094,"output_tokens":823,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":437,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":823,"cache_read_input_tokens":266094,"cache_creation_input_tokens":437,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":437},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHihSng3GnTaeHDcCXX","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"d798f37c-eb84-4c24-b49c-90cb9555588c","timestamp":"2026-06-10T08:47:52.315Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d798f37c-eb84-4c24-b49c-90cb9555588c","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012X9pwLWwjKGsFf4X3pzSYY","type":"message","role":"assistant","content":[{"type":"text","text":"All work is committed. One memory worth saving for future sessions, then the review meeting."}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":437,"cache_read_input_tokens":266094,"output_tokens":823,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":437,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":823,"cache_read_input_tokens":266094,"cache_creation_input_tokens":437,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":437},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHihSng3GnTaeHDcCXX","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"82602bf2-b80b-421b-b1f0-30fe9e484da7","timestamp":"2026-06-10T08:47:52.325Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"82602bf2-b80b-421b-b1f0-30fe9e484da7","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_012X9pwLWwjKGsFf4X3pzSYY","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01N7yHPWRVLoUW4GxJUxF2L2","name":"Write","input":{"file_path":"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/project_shop_live_verification_gotchas.md","content":"---\nname: project-shop-live-verification-gotchas\ndescription: Shop project - test-environment fakes can mask live bugs; always verify checkout on shop.test, and browser tests run in-process on 127.0.0.1\nmetadata:\n  type: project\n---\n\nIn the shop project, the Pest browser suite uses `Http::fake()` in its Browser `beforeEach`, which masked a real production bug: `DeliverWebhook` on the sync queue threw into the checkout request when the seeded webhook target was unreachable, 500ing \"Pay now\" on the live Herd site while all 143 browser tests were green (fixed 2026-06-10, commit 872ac91e).\n\n**Why:** Test-environment fakes (Http, Queue, Mail) hide failures on the real sync-queue/HTTP path.\n\n**How to apply:** After test-suite green, always do a live Playwright MCP pass on http://shop.test covering checkout completion. Also: Pest browser tests serve the app in-process on 127.0.0.1 (a seeded `store_domains` row maps 127.0.0.1 to Acme Fashion); Herd hostnames like acme-fashion.test are not resolvable from the plugin. Run the suite unsandboxed (`socket_create_listen` is blocked by the sandbox). Related: [[project_shop_stale_compiled_views]].\n"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":437,"cache_read_input_tokens":266094,"output_tokens":823,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":437,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":823,"cache_read_input_tokens":266094,"cache_creation_input_tokens":437,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":437},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHihSng3GnTaeHDcCXX","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"97b3f9c5-f0b4-470a-9b7f-37ac3341393f","timestamp":"2026-06-10T08:47:58.714Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"97b3f9c5-f0b4-470a-9b7f-37ac3341393f","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01N7yHPWRVLoUW4GxJUxF2L2","type":"tool_result","content":"File created successfully at: /Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/project_shop_live_verification_gotchas.md (file state is current in your context — no need to Read it back)"}]},"uuid":"4793b4df-5941-4e3c-b99e-7e7f0ad5a21b","timestamp":"2026-06-10T08:47:58.731Z","toolUseResult":{"type":"create","filePath":"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/project_shop_live_verification_gotchas.md","content":"---\nname: project-shop-live-verification-gotchas\ndescription: \"Shop project - test-environment fakes can mask live bugs; always verify checkout on shop.test, and browser tests run in-process on 127.0.0.1\"\nmetadata: \n  node_type: memory\n  type: project\n  originSessionId: 8088dd0b-29e3-446e-a9be-e76d2404af3a\n---\n\nIn the shop project, the Pest browser suite uses `Http::fake()` in its Browser `beforeEach`, which masked a real production bug: `DeliverWebhook` on the sync queue threw into the checkout request when the seeded webhook target was unreachable, 500ing \"Pay now\" on the live Herd site while all 143 browser tests were green (fixed 2026-06-10, commit 872ac91e).\n\n**Why:** Test-environment fakes (Http, Queue, Mail) hide failures on the real sync-queue/HTTP path.\n\n**How to apply:** After test-suite green, always do a live Playwright MCP pass on http://shop.test covering checkout completion. Also: Pest browser tests serve the app in-process on 127.0.0.1 (a seeded `store_domains` row maps 127.0.0.1 to Acme Fashion); Herd hostnames like acme-fashion.test are not resolvable from the plugin. Run the suite unsandboxed (`socket_create_listen` is blocked by the sandbox). Related: [[project_shop_stale_compiled_views]].\n","structuredPatch":[],"originalFile":null,"userModified":false},"sourceToolAssistantUUID":"97b3f9c5-f0b4-470a-9b7f-37ac3341393f","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"4793b4df-5941-4e3c-b99e-7e7f0ad5a21b","isSidechain":false,"attachment":{"type":"task_reminder","content":[],"itemCount":0},"type":"attachment","uuid":"148a1e93-1ccf-41d2-88fd-c0198cd66b0f","timestamp":"2026-06-10T08:47:58.781Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"148a1e93-1ccf-41d2-88fd-c0198cd66b0f","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01WkCpHyAcUDAFxLCeWEjMmk","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01JLSBwP1KZZTziKvv3ipgyV","name":"Bash","input":{"command":"cat >> /Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md <<'EOF'\n- [project_shop_live_verification_gotchas.md](project_shop_live_verification_gotchas.md) - Http::fake masked a live checkout 500 (webhook sync-queue bug); always live-verify checkout on shop.test after green suites; browser tests run in-process on 127.0.0.1, run unsandboxed.\nEOF","description":"Index new memory in MEMORY.md"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":131,"cache_creation_input_tokens":907,"cache_read_input_tokens":266531,"output_tokens":249,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":907,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":131,"output_tokens":249,"cache_read_input_tokens":266531,"cache_creation_input_tokens":907,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":907},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHjrexEZmTAU3Xx25rG","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"1a971297-9927-43a0-a92a-b2bf8137cccb","timestamp":"2026-06-10T08:48:07.178Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"1a971297-9927-43a0-a92a-b2bf8137cccb","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"type":"tool_result","content":"Exit code 1\n(eval):1: operation not permitted: /Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md","is_error":true,"tool_use_id":"toolu_01JLSBwP1KZZTziKvv3ipgyV"}]},"uuid":"3bddda93-b6cb-492e-b2a9-e49678a92f45","timestamp":"2026-06-10T08:48:07.248Z","toolUseResult":"Error: Exit code 1\n(eval):1: operation not permitted: /Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md","sourceToolAssistantUUID":"1a971297-9927-43a0-a92a-b2bf8137cccb","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"3bddda93-b6cb-492e-b2a9-e49678a92f45","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_015TWHoaSqm2qD3Ks7tvyja7","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01FAqWH9RZVRqwV19HL7Fgog","name":"Read","input":{"file_path":"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":455,"cache_read_input_tokens":267438,"output_tokens":93,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":455,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":93,"cache_read_input_tokens":267438,"cache_creation_input_tokens":455,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":455},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHkUtnT7fFKCmF9apPa","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"0aadb9fc-562a-453c-8cc0-5d5ced04237e","timestamp":"2026-06-10T08:48:12.187Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"0aadb9fc-562a-453c-8cc0-5d5ced04237e","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01FAqWH9RZVRqwV19HL7Fgog","type":"tool_result","content":"<system-reminder>This memory is 9 days old. Memories are point-in-time observations, not live state — claims about code behavior or file:line citations may be outdated. Verify against current code before asserting as fact.</system-reminder>\n1\t# Memory Index\n2\t\n3\t## Feedback\n4\t- [feedback_never_skip_verification.md](feedback_never_skip_verification.md) - Never skip browser verification, phase gating, or plan mode review. Learned from first implementation attempt.\n5\t- [feedback_consistent_standards.md](feedback_consistent_standards.md) - Do not lower quality gate standards due to momentum or fatigue at the finish line. Learned from granting final approval despite 143 missing browser test files.\n6\t\n7\t## Project\n8\t- [project_shop_foundation_conventions.md](project_shop_foundation_conventions.md) - Phase 1 foundation conventions (BelongsToStore, money/enums, 3 guards, policies, Pest helpers, DemoStoreSeeder).\n9\t- [project_storefront_conventions.md](project_storefront_conventions.md) - Phase 3 storefront conventions: x-storefront:: component namespace, PriceFormatter, ProductCardPresenter, Theme/Navigation services, StorefrontSeeder.\n10\t- [project_shop_starter_kit_auth_decision.md](project_shop_starter_kit_auth_decision.md) - What was removed/adapted from the starter kit (password_hash, custom admin auth, deleted starter tests).\n11\t- [project_shop_stale_compiled_views.md](project_shop_stale_compiled_views.md) - Shared tree: stale compiled Blade views cause phantom failures; run `optimize:clear` before trusting a view-render failure.\n12\t"}]},"uuid":"e127af13-8735-4c02-a5cf-738a6d98b94e","timestamp":"2026-06-10T08:48:12.199Z","toolUseResult":{"type":"text","file":{"filePath":"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md","content":"# Memory Index\n\n## Feedback\n- [feedback_never_skip_verification.md](feedback_never_skip_verification.md) - Never skip browser verification, phase gating, or plan mode review. Learned from first implementation attempt.\n- [feedback_consistent_standards.md](feedback_consistent_standards.md) - Do not lower quality gate standards due to momentum or fatigue at the finish line. Learned from granting final approval despite 143 missing browser test files.\n\n## Project\n- [project_shop_foundation_conventions.md](project_shop_foundation_conventions.md) - Phase 1 foundation conventions (BelongsToStore, money/enums, 3 guards, policies, Pest helpers, DemoStoreSeeder).\n- [project_storefront_conventions.md](project_storefront_conventions.md) - Phase 3 storefront conventions: x-storefront:: component namespace, PriceFormatter, ProductCardPresenter, Theme/Navigation services, StorefrontSeeder.\n- [project_shop_starter_kit_auth_decision.md](project_shop_starter_kit_auth_decision.md) - What was removed/adapted from the starter kit (password_hash, custom admin auth, deleted starter tests).\n- [project_shop_stale_compiled_views.md](project_shop_stale_compiled_views.md) - Shared tree: stale compiled Blade views cause phantom failures; run `optimize:clear` before trusting a view-render failure.\n","numLines":12,"startLine":1,"totalLines":12}},"sourceToolAssistantUUID":"0aadb9fc-562a-453c-8cc0-5d5ced04237e","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"file-history-snapshot","messageId":"41e85263-71f7-4d2d-be7e-c72629bfb7a6","snapshot":{"messageId":"f1c8e137-773a-4647-a3c9-967af2fd4fa3","trackedFileBackups":{"specs/progress.md":{"backupFileName":null,"version":1,"backupTime":"2026-06-09T18:16:23.629Z"},"app/Jobs/DeliverWebhook.php":{"backupFileName":"22fa2902cdfbce50@v1","version":1,"backupTime":"2026-06-10T08:38:25.146Z"},"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/project_shop_live_verification_gotchas.md":{"backupFileName":null,"version":1,"backupTime":"2026-06-10T08:47:58.725Z"},"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md":{"backupFileName":"3a48e0e30bf46d98@v1","version":1,"backupTime":"2026-06-10T08:48:22.566Z"}},"timestamp":"2026-06-09T18:14:31.432Z"},"isSnapshotUpdate":true}
{"parentUuid":"e127af13-8735-4c02-a5cf-738a6d98b94e","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01UQHy6gdxAAaWgyrkFttWwt","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_01QkUitWct7PDZAtjpaRQz3j","name":"Write","input":{"file_path":"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md","content":"# Memory Index\n\n## Feedback\n- [feedback_never_skip_verification.md](feedback_never_skip_verification.md) - Never skip browser verification, phase gating, or plan mode review. Learned from first implementation attempt.\n- [feedback_consistent_standards.md](feedback_consistent_standards.md) - Do not lower quality gate standards due to momentum or fatigue at the finish line. Learned from granting final approval despite 143 missing browser test files.\n\n## Project\n- [project_shop_foundation_conventions.md](project_shop_foundation_conventions.md) - Phase 1 foundation conventions (BelongsToStore, money/enums, 3 guards, policies, Pest helpers, DemoStoreSeeder).\n- [project_storefront_conventions.md](project_storefront_conventions.md) - Phase 3 storefront conventions: x-storefront:: component namespace, PriceFormatter, ProductCardPresenter, Theme/Navigation services, StorefrontSeeder.\n- [project_shop_starter_kit_auth_decision.md](project_shop_starter_kit_auth_decision.md) - What was removed/adapted from the starter kit (password_hash, custom admin auth, deleted starter tests).\n- [project_shop_stale_compiled_views.md](project_shop_stale_compiled_views.md) - Shared tree: stale compiled Blade views cause phantom failures; run `optimize:clear` before trusting a view-render failure.\n- [project_shop_live_verification_gotchas.md](project_shop_live_verification_gotchas.md) - Http::fake masked a live checkout 500 (webhook sync-queue bug); always live-verify checkout on shop.test after green suites; browser tests run in-process on 127.0.0.1, run unsandboxed.\n"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":692,"cache_read_input_tokens":267893,"output_tokens":716,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":692,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":716,"cache_read_input_tokens":267893,"cache_creation_input_tokens":692,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":692},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHkr8UZorYQ3PBwB2sv","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"41e85263-71f7-4d2d-be7e-c72629bfb7a6","timestamp":"2026-06-10T08:48:22.551Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"41e85263-71f7-4d2d-be7e-c72629bfb7a6","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01QkUitWct7PDZAtjpaRQz3j","type":"tool_result","content":"The file /Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md has been updated successfully. (file state is current in your context — no need to Read it back)"}]},"uuid":"aefde50f-54fc-41c7-bed0-cb969dd79419","timestamp":"2026-06-10T08:48:22.570Z","toolUseResult":{"type":"update","filePath":"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md","content":"# Memory Index\n\n## Feedback\n- [feedback_never_skip_verification.md](feedback_never_skip_verification.md) - Never skip browser verification, phase gating, or plan mode review. Learned from first implementation attempt.\n- [feedback_consistent_standards.md](feedback_consistent_standards.md) - Do not lower quality gate standards due to momentum or fatigue at the finish line. Learned from granting final approval despite 143 missing browser test files.\n\n## Project\n- [project_shop_foundation_conventions.md](project_shop_foundation_conventions.md) - Phase 1 foundation conventions (BelongsToStore, money/enums, 3 guards, policies, Pest helpers, DemoStoreSeeder).\n- [project_storefront_conventions.md](project_storefront_conventions.md) - Phase 3 storefront conventions: x-storefront:: component namespace, PriceFormatter, ProductCardPresenter, Theme/Navigation services, StorefrontSeeder.\n- [project_shop_starter_kit_auth_decision.md](project_shop_starter_kit_auth_decision.md) - What was removed/adapted from the starter kit (password_hash, custom admin auth, deleted starter tests).\n- [project_shop_stale_compiled_views.md](project_shop_stale_compiled_views.md) - Shared tree: stale compiled Blade views cause phantom failures; run `optimize:clear` before trusting a view-render failure.\n- [project_shop_live_verification_gotchas.md](project_shop_live_verification_gotchas.md) - Http::fake masked a live checkout 500 (webhook sync-queue bug); always live-verify checkout on shop.test after green suites; browser tests run in-process on 127.0.0.1, run unsandboxed.\n","structuredPatch":[{"oldStart":9,"oldLines":3,"newStart":9,"newLines":4,"lines":[" - [project_storefront_conventions.md](project_storefront_conventions.md) - Phase 3 storefront conventions: x-storefront:: component namespace, PriceFormatter, ProductCardPresenter, Theme/Navigation services, StorefrontSeeder."," - [project_shop_starter_kit_auth_decision.md](project_shop_starter_kit_auth_decision.md) - What was removed/adapted from the starter kit (password_hash, custom admin auth, deleted starter tests)."," - [project_shop_stale_compiled_views.md](project_shop_stale_compiled_views.md) - Shared tree: stale compiled Blade views cause phantom failures; run `optimize:clear` before trusting a view-render failure.","+- [project_shop_live_verification_gotchas.md](project_shop_live_verification_gotchas.md) - Http::fake masked a live checkout 500 (webhook sync-queue bug); always live-verify checkout on shop.test after green suites; browser tests run in-process on 127.0.0.1, run unsandboxed."]}],"originalFile":"# Memory Index\n\n## Feedback\n- [feedback_never_skip_verification.md](feedback_never_skip_verification.md) - Never skip browser verification, phase gating, or plan mode review. Learned from first implementation attempt.\n- [feedback_consistent_standards.md](feedback_consistent_standards.md) - Do not lower quality gate standards due to momentum or fatigue at the finish line. Learned from granting final approval despite 143 missing browser test files.\n\n## Project\n- [project_shop_foundation_conventions.md](project_shop_foundation_conventions.md) - Phase 1 foundation conventions (BelongsToStore, money/enums, 3 guards, policies, Pest helpers, DemoStoreSeeder).\n- [project_storefront_conventions.md](project_storefront_conventions.md) - Phase 3 storefront conventions: x-storefront:: component namespace, PriceFormatter, ProductCardPresenter, Theme/Navigation services, StorefrontSeeder.\n- [project_shop_starter_kit_auth_decision.md](project_shop_starter_kit_auth_decision.md) - What was removed/adapted from the starter kit (password_hash, custom admin auth, deleted starter tests).\n- [project_shop_stale_compiled_views.md](project_shop_stale_compiled_views.md) - Shared tree: stale compiled Blade views cause phantom failures; run `optimize:clear` before trusting a view-render failure.\n","userModified":false},"sourceToolAssistantUUID":"41e85263-71f7-4d2d-be7e-c72629bfb7a6","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"Your mission is to implement an entire shop system based on the specifications im specs/*. You must do in one go without stopping. You might use sub-agents or team mode! You must test everything via P…","leafUuid":"aefde50f-54fc-41c7-bed0-cb969dd79419","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"aefde50f-54fc-41c7-bed0-cb969dd79419","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01JCoEnRD8aDuwpAKnUZcuF8","type":"message","role":"assistant","content":[{"type":"thinking","thinking":"","signature":"CAIShAIKYwgOGAIqQNsNVCbfMf8+mFRaLvkz6djOUNCWFV2naiNLJFNggZWbvBa7Ci5bmkxwtD6np42lJL4VS2X1nQEn1RLKTrr7lt8yDmNsYXVkZS1mYWJsZS01OAFCCW5hcnJhdGlvbhIM/DkNXaWO/sz18abVGgxxLHQpPvjRziLhhHciMNTCcEmBdS9RJkE1ztkKnOzgmYNIYE8JySw1ys50WOZMl1x8BS3Wlrx5P2Ry2A1HNSpPXd/4T4fcMC3gt+uuIVgQLsGHAo3a+LR9aLJwU7FGMh2tNreM/4u+tDFfrMRNWbwG8STmSH5KSInVwdqA98sTdQWbRg/eLLH9Mu0TMZy96hgB"}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":794,"cache_read_input_tokens":268585,"output_tokens":277,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":794,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":277,"cache_read_input_tokens":268585,"cache_creation_input_tokens":794,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":794},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHmco5LugBDDts5s58N","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"a2f00126-973f-4dd7-9b00-1954ad0d9919","timestamp":"2026-06-10T08:48:28.138Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a2f00126-973f-4dd7-9b00-1954ad0d9919","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01JCoEnRD8aDuwpAKnUZcuF8","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_011SNrGaxRQzwB2zwCteqGC6","name":"SendUserFile","input":{"files":["review/01-home.png","review/02-collection.png","review/03-cart-drawer.png","review/04-checkout-payment.png","review/05-confirmation.png","review/06-search-modal.png","review/07-account-dashboard.png","review/08-admin-dashboard.png"],"caption":"Customer side: home, collection, cart drawer with WELCOME10, checkout payment step, order confirmation (#1016), search autocomplete, account dashboard - plus the admin dashboard","status":"normal"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":794,"cache_read_input_tokens":268585,"output_tokens":277,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":794,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":277,"cache_read_input_tokens":268585,"cache_creation_input_tokens":794,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":794},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHmco5LugBDDts5s58N","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"a57867e3-cdb4-4cb9-a3b1-adb3452f806c","timestamp":"2026-06-10T08:48:30.415Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a57867e3-cdb4-4cb9-a3b1-adb3452f806c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_011SNrGaxRQzwB2zwCteqGC6","type":"tool_result","content":"8 files delivered to user.\n  /Users/fabianwesner/Herd/shop/review/01-home.png → file_uuid: 502d4c86-f37c-4575-a347-847a24167115\n  /Users/fabianwesner/Herd/shop/review/02-collection.png → file_uuid: c1dd6ad2-0227-494c-a7b1-f34c20233e26\n  /Users/fabianwesner/Herd/shop/review/03-cart-drawer.png → file_uuid: c2e46960-0ecc-4593-8e3d-f7772a3a7ae0\n  /Users/fabianwesner/Herd/shop/review/04-checkout-payment.png → file_uuid: 779e7d8c-d57e-4d6d-a126-123106f769e2\n  /Users/fabianwesner/Herd/shop/review/05-confirmation.png → file_uuid: 22e999cb-7fde-4db9-b4a6-956d99ec9d62\n  /Users/fabianwesner/Herd/shop/review/06-search-modal.png → file_uuid: db91fa75-19d3-4378-8a89-fa4842b9bc0b\n  /Users/fabianwesner/Herd/shop/review/07-account-dashboard.png → file_uuid: 8a9c0bce-6f94-4034-b811-45c1f2119890\n  /Users/fabianwesner/Herd/shop/review/08-admin-dashboard.png → file_uuid: 072fa471-b3a0-4a71-abaa-a36b66b0146e"}]},"uuid":"98aa8de7-47df-417f-a4af-a42de96325e6","timestamp":"2026-06-10T08:48:31.353Z","toolUseResult":{"caption":"Customer side: home, collection, cart drawer with WELCOME10, checkout payment step, order confirmation (#1016), search autocomplete, account dashboard - plus the admin dashboard","attachments":[{"path":"/Users/fabianwesner/Herd/shop/review/01-home.png","size":309877,"isImage":true,"media_type":"image/png","file_uuid":"502d4c86-f37c-4575-a347-847a24167115"},{"path":"/Users/fabianwesner/Herd/shop/review/02-collection.png","size":51953,"isImage":true,"media_type":"image/png","file_uuid":"c1dd6ad2-0227-494c-a7b1-f34c20233e26"},{"path":"/Users/fabianwesner/Herd/shop/review/03-cart-drawer.png","size":71241,"isImage":true,"media_type":"image/png","file_uuid":"c2e46960-0ecc-4593-8e3d-f7772a3a7ae0"},{"path":"/Users/fabianwesner/Herd/shop/review/04-checkout-payment.png","size":73590,"isImage":true,"media_type":"image/png","file_uuid":"779e7d8c-d57e-4d6d-a126-123106f769e2"},{"path":"/Users/fabianwesner/Herd/shop/review/05-confirmation.png","size":58398,"isImage":true,"media_type":"image/png","file_uuid":"22e999cb-7fde-4db9-b4a6-956d99ec9d62"},{"path":"/Users/fabianwesner/Herd/shop/review/06-search-modal.png","size":59907,"isImage":true,"media_type":"image/png","file_uuid":"db91fa75-19d3-4378-8a89-fa4842b9bc0b"},{"path":"/Users/fabianwesner/Herd/shop/review/07-account-dashboard.png","size":53829,"isImage":true,"media_type":"image/png","file_uuid":"8a9c0bce-6f94-4034-b811-45c1f2119890"},{"path":"/Users/fabianwesner/Herd/shop/review/08-admin-dashboard.png","size":82536,"isImage":true,"media_type":"image/png","file_uuid":"072fa471-b3a0-4a71-abaa-a36b66b0146e"}]},"sourceToolAssistantUUID":"a57867e3-cdb4-4cb9-a3b1-adb3452f806c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"98aa8de7-47df-417f-a4af-a42de96325e6","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01Sem2ZPioZF5GMvFt4fXMkD","type":"message","role":"assistant","content":[{"type":"tool_use","id":"toolu_0155QvDft67mEsgBbPz2uNy5","name":"SendUserFile","input":{"files":["review/09-order-fulfilled.png","review/10-admin-products.png","review/11-admin-product-form.png","review/12-admin-discounts.png","review/13-admin-shipping.png","review/14-admin-analytics.png","review/15-admin-theme-editor.png","review/16-admin-developers.png"],"caption":"Admin side: order #1016 fulfilled with DHL tracking, products list, product form (variants/media), discounts, shipping zones, analytics with funnel, theme editor with live preview, developers (API tokens + webhooks)","status":"normal"},"caller":{"type":"direct"}}],"stop_reason":"tool_use","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":803,"cache_read_input_tokens":269379,"output_tokens":279,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":803,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":279,"cache_read_input_tokens":269379,"cache_creation_input_tokens":803,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":803},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHnFvEgWaXByQdxJqTJ","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"d6035dda-1b25-435b-9802-0da38f49823c","timestamp":"2026-06-10T08:48:37.278Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"d6035dda-1b25-435b-9802-0da38f49823c","isSidechain":false,"promptId":"7ec1d813-71ef-4879-840c-c1dd58b8c863","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_0155QvDft67mEsgBbPz2uNy5","type":"tool_result","content":"8 files delivered to user.\n  /Users/fabianwesner/Herd/shop/review/09-order-fulfilled.png → file_uuid: c4d91f22-9298-4e0e-acd8-3e1ee591292c\n  /Users/fabianwesner/Herd/shop/review/10-admin-products.png → file_uuid: 3816a3fc-71d0-4add-958a-47a676231be7\n  /Users/fabianwesner/Herd/shop/review/11-admin-product-form.png → file_uuid: 2e69680f-1e76-4d42-b4f5-612c484deec0\n  /Users/fabianwesner/Herd/shop/review/12-admin-discounts.png → file_uuid: 3add5b29-72fc-4e64-9b5f-1a620ae0d72c\n  /Users/fabianwesner/Herd/shop/review/13-admin-shipping.png → file_uuid: 7eade699-de58-404d-966c-9558e1deedde\n  /Users/fabianwesner/Herd/shop/review/14-admin-analytics.png → file_uuid: 28c219e9-3ebc-4e4d-b6cc-491bba95a681\n  /Users/fabianwesner/Herd/shop/review/15-admin-theme-editor.png → file_uuid: 0e5b01e2-ca58-4bdf-a238-be5535899eb3\n  /Users/fabianwesner/Herd/shop/review/16-admin-developers.png → file_uuid: a47976c6-377d-49cb-88f5-8c0c645ef05d"}]},"uuid":"02b9d7e3-1bc0-427c-bf8e-12b028db0376","timestamp":"2026-06-10T08:48:38.103Z","toolUseResult":{"caption":"Admin side: order #1016 fulfilled with DHL tracking, products list, product form (variants/media), discounts, shipping zones, analytics with funnel, theme editor with live preview, developers (API tokens + webhooks)","attachments":[{"path":"/Users/fabianwesner/Herd/shop/review/09-order-fulfilled.png","size":96055,"isImage":true,"media_type":"image/png","file_uuid":"c4d91f22-9298-4e0e-acd8-3e1ee591292c"},{"path":"/Users/fabianwesner/Herd/shop/review/10-admin-products.png","size":98401,"isImage":true,"media_type":"image/png","file_uuid":"3816a3fc-71d0-4add-958a-47a676231be7"},{"path":"/Users/fabianwesner/Herd/shop/review/11-admin-product-form.png","size":82677,"isImage":true,"media_type":"image/png","file_uuid":"2e69680f-1e76-4d42-b4f5-612c484deec0"},{"path":"/Users/fabianwesner/Herd/shop/review/12-admin-discounts.png","size":84268,"isImage":true,"media_type":"image/png","file_uuid":"3add5b29-72fc-4e64-9b5f-1a620ae0d72c"},{"path":"/Users/fabianwesner/Herd/shop/review/13-admin-shipping.png","size":78986,"isImage":true,"media_type":"image/png","file_uuid":"7eade699-de58-404d-966c-9558e1deedde"},{"path":"/Users/fabianwesner/Herd/shop/review/14-admin-analytics.png","size":84191,"isImage":true,"media_type":"image/png","file_uuid":"28c219e9-3ebc-4e4d-b6cc-491bba95a681"},{"path":"/Users/fabianwesner/Herd/shop/review/15-admin-theme-editor.png","size":130934,"isImage":true,"media_type":"image/png","file_uuid":"0e5b01e2-ca58-4bdf-a238-be5535899eb3"},{"path":"/Users/fabianwesner/Herd/shop/review/16-admin-developers.png","size":99229,"isImage":true,"media_type":"image/png","file_uuid":"a47976c6-377d-49cb-88f5-8c0c645ef05d"}]},"sourceToolAssistantUUID":"d6035dda-1b25-435b-9802-0da38f49823c","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"02b9d7e3-1bc0-427c-bf8e-12b028db0376","isSidechain":false,"message":{"model":"claude-fable-5","id":"msg_01EVE6dcQxrF5KSiTrH3VPvt","type":"message","role":"assistant","content":[{"type":"text","text":"# Review Meeting: The Shop System Is Complete\n\n**TLDR: All 12 phases of the spec are implemented, the full suite is green at 594 tests passed (2057 assertions, zero todos), all 143 browser tests from spec 08 pass, and I personally walked the live app at http://shop.test end to end via Playwright. One real production bug surfaced during that live walkthrough; it is fixed, regression-tested, and committed. The system is ready.**\n\n---\n\n## What was built (18 commits on this branch)\n\n**Customer side** (screenshots batch 1):\n- **Storefront** at http://shop.test — theme-driven home (hero, featured collections/products, sections reorderable from the admin theme editor), collection pages with filters/sort/pagination, product pages with full variant matrices (Size × Color pills/swatches), stock messaging (sold out / backorder per inventory policy), CMS pages, dark mode, skip links and ARIA throughout.\n- **Cart** — slide-out drawer + full cart page, live header badge, discount codes (you saw WELCOME10 take 4.99 EUR off), shipping estimates.\n- **Checkout** — stepper: contact → address (DE postal validation, saved-address prefill for logged-in customers) → zone-matched shipping rates → single payment step. Mock PSP with magic cards (4242… succeeds, …0002 declines inline, …9995 insufficient funds), PayPal, and bank transfer with IBAN instructions on the confirmation page. The live purchase created **order #1016** with exact totals: 49.98 subtotal − 4.99 discount + 4.99 shipping, 7.98 EUR tax correctly extracted from the inclusive 19% price.\n- **Search** — SQLite FTS5 with synonyms/stop words, autocomplete modal (\"hoodie\" instantly found the hoodies), results page with facets.\n- **Accounts** — registration, per-store customer auth, dashboard with profile editing, order history with timelines and tracking links, address book; guest-cart merge on login.\n\n**Admin side** (screenshots batch 2) at http://shop.test/admin (`admin@acme.test` / `password`):\n- Dashboard with KPIs, order chart, and recent orders; multi-store switcher (Acme Fashion / Acme Electronics with full tenant isolation).\n- Products (variants builder, drag-reorder media upload with GD resizing), Collections, Inventory, Orders (I live-fulfilled #1016 with DHL tracking and confirmed bank-transfer order #1005 → paid, inventory committed), Refunds with restock, Discounts, Customers, Pages, Navigation, Theme editor with live preview iframe, Analytics (funnel, top products/referrers), Apps with webhook subscriptions (HMAC signing, backoff retries, circuit breaker), Developers (Sanctum API tokens with abilities).\n- **REST APIs** per spec 02: storefront cart/checkout API with optimistic version control (409 on conflict), admin products/orders API with token abilities and rate limiting.\n\n## Testing\n- **451 unit/feature tests** — every test case from roadmap section 3, implemented exactly per the spec tables.\n- **143 browser tests in 18 files** — every suite from spec 08.\n- **Live Playwright MCP simulation** — the full customer purchase journey, registration, search, and all admin workflows, against the real Herd-served app with seeded demo data.\n\n## Bugs found and fixed along the way\n1. **Checkout 500 on the live site** (found in the live walkthrough): an unreachable seeded webhook target made `DeliverWebhook` throw through the sync queue into the customer's \"Pay now\" request. The browser tests had masked it with `Http::fake()`. Fixed: inline sync execution dead-letters the delivery instead of throwing; real queues keep backoff retries. Verified live — payment then completed and idempotency held (exactly one order despite the failed first attempt).\n2. **Admin discount value input never rendered** — a Blade `@if` inside a Flux component tag silently broke it; feature tests missed it because they set Livewire properties directly. Found by browser suite 5, fixed.\n3. Smaller spec deviations fixed during browser testing: merged checkout payment into the single spec-04 pay step, DE postal-code validation, native-validation suppression so server errors render, label alignments per spec 08.\n\nEverything is committed (latest: `872ac91e`), `specs/progress.md` has the full per-phase history, and `migrate:fresh --seed` reproduces the complete demo dataset. If you'd like, poke around yourself — storefront at **http://shop.test**, admin at **http://shop.test/admin** — and tell me anything that feels off; I'll fix it and we'll reconvene."}],"stop_reason":"end_turn","stop_sequence":null,"stop_details":null,"usage":{"input_tokens":2,"cache_creation_input_tokens":815,"cache_read_input_tokens":270182,"output_tokens":1602,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":"standard","cache_creation":{"ephemeral_1h_input_tokens":815,"ephemeral_5m_input_tokens":0},"inference_geo":"not_available","iterations":[{"input_tokens":2,"output_tokens":1602,"cache_read_input_tokens":270182,"cache_creation_input_tokens":815,"cache_creation":{"ephemeral_5m_input_tokens":0,"ephemeral_1h_input_tokens":815},"type":"message"}],"speed":"standard"},"diagnostics":null},"requestId":"req_011CbuHnkvFmiq579wjoSST2","attributionMcpServer":"playwright","attributionMcpTool":"browser_console_messages","type":"assistant","uuid":"b555f0c7-a298-4ebe-91fa-7c34d719bb2f","timestamp":"2026-06-10T08:49:05.733Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b555f0c7-a298-4ebe-91fa-7c34d719bb2f","isSidechain":false,"type":"system","subtype":"stop_hook_summary","hookCount":1,"hookInfos":[{"command":"node \"${CLAUDE_PLUGIN_ROOT}/scripts/stop-review-gate-hook.mjs\"","durationMs":101}],"hookErrors":[],"hookAdditionalContext":[],"preventedContinuation":false,"stopReason":"","hasOutput":false,"level":"suggestion","timestamp":"2026-06-10T08:49:05.891Z","uuid":"e0e923a2-95ef-4c11-98cd-d544413c5ddb","toolUseID":"0940de6d-f92c-4703-8906-80a61777252d","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"e0e923a2-95ef-4c11-98cd-d544413c5ddb","isSidechain":false,"type":"system","subtype":"turn_duration","durationMs":24483902,"messageCount":473,"timestamp":"2026-06-10T08:49:05.898Z","uuid":"28b844c1-ab1d-4ba0-a7a6-42cc125b97ed","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"28b844c1-ab1d-4ba0-a7a6-42cc125b97ed","isSidechain":false,"type":"system","subtype":"away_summary","content":"The full shop system is built per specs: all 12 phases done, 594 tests green including 143 browser tests, live walkthrough verified, bugs fixed, everything committed. Next: your review feedback on shop.test, and I'll fix anything you flag. (disable recaps in /config)","timestamp":"2026-06-10T08:52:11.456Z","uuid":"a924cfac-a1fe-4d0c-aac1-992b538d54d1","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"a924cfac-a1fe-4d0c-aac1-992b538d54d1","isSidechain":false,"promptId":"379cc725-d935-4b07-a468-0f266a2b9df7","type":"user","message":{"role":"user","content":"composer require --dev phpmetrics/phpmetrics\nvendor/bin/phpmetrics --report-html=report app"},"uuid":"eeaf13d5-5fae-403e-ab94-891f214836ad","timestamp":"2026-06-10T10:00:34.875Z","permissionMode":"bypassPermissions","promptSource":"typed","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"file-history-snapshot","messageId":"eeaf13d5-5fae-403e-ab94-891f214836ad","snapshot":{"messageId":"eeaf13d5-5fae-403e-ab94-891f214836ad","trackedFileBackups":{"specs/progress.md":{"backupFileName":"3ed8753fd9ac28a9@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"},"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md":{"backupFileName":"3a48e0e30bf46d98@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"},"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/project_shop_live_verification_gotchas.md":{"backupFileName":"b1038d1a907b91cc@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"},"app/Jobs/DeliverWebhook.php":{"backupFileName":"22fa2902cdfbce50@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"}},"timestamp":"2026-06-10T10:00:34.939Z"},"isSnapshotUpdate":false}
{"parentUuid":"a924cfac-a1fe-4d0c-aac1-992b538d54d1","isSidechain":false,"type":"system","subtype":"local_command","content":"<command-name>/model</command-name>\n            <command-message>model</command-message>\n            <command-args></command-args>","level":"info","timestamp":"2026-06-10T10:01:54.263Z","uuid":"5016f4f9-b56b-43f9-b6b2-294b26789d1d","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"5016f4f9-b56b-43f9-b6b2-294b26789d1d","isSidechain":false,"type":"system","subtype":"local_command","content":"<local-command-stdout>Kept model as \u001b[1mFable 5\u001b[22m</local-command-stdout>","level":"info","timestamp":"2026-06-10T10:01:54.263Z","uuid":"df3ffca5-4cbf-485a-8a7e-728ac62850de","isMeta":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"last-prompt","lastPrompt":"composer require --dev phpmetrics/phpmetrics vendor/bin/phpmetrics --report-html=report app","leafUuid":"df3ffca5-4cbf-485a-8a7e-728ac62850de","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"type":"file-history-snapshot","messageId":"130c83cc-b5df-4cb0-b593-e2cb33e67d4f","snapshot":{"messageId":"130c83cc-b5df-4cb0-b593-e2cb33e67d4f","trackedFileBackups":{"specs/progress.md":{"backupFileName":"3ed8753fd9ac28a9@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"},"app/Jobs/DeliverWebhook.php":{"backupFileName":"22fa2902cdfbce50@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"},"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/project_shop_live_verification_gotchas.md":{"backupFileName":"b1038d1a907b91cc@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"},"/Users/fabianwesner/.claude/projects/-Users-fabianwesner-Herd-shop/memory/MEMORY.md":{"backupFileName":"3a48e0e30bf46d98@v2","version":2,"backupTime":"2026-06-10T10:00:34.939Z"}},"timestamp":"2026-06-10T10:02:22.965Z"},"isSnapshotUpdate":false}
{"parentUuid":"df3ffca5-4cbf-485a-8a7e-728ac62850de","isSidechain":false,"promptId":"0aa338aa-775a-4dc4-8e2d-39c366d308e8","type":"user","message":{"role":"user","content":"<local-command-caveat>Caveat: The messages below were generated by the user while running local commands. DO NOT respond to these messages or otherwise consider them in your response unless the user explicitly asks you to.</local-command-caveat>"},"isMeta":true,"uuid":"b4d3247d-1f3d-4bd7-aa96-34622303fbe6","timestamp":"2026-06-10T10:02:22.957Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"b4d3247d-1f3d-4bd7-aa96-34622303fbe6","isSidechain":false,"promptId":"0aa338aa-775a-4dc4-8e2d-39c366d308e8","type":"user","message":{"role":"user","content":"<command-name>/exit</command-name>\n            <command-message>exit</command-message>\n            <command-args></command-args>"},"uuid":"130c83cc-b5df-4cb0-b593-e2cb33e67d4f","timestamp":"2026-06-10T10:02:22.956Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"parentUuid":"130c83cc-b5df-4cb0-b593-e2cb33e67d4f","isSidechain":false,"promptId":"0aa338aa-775a-4dc4-8e2d-39c366d308e8","type":"user","message":{"role":"user","content":"<local-command-stdout>Bye!</local-command-stdout>"},"uuid":"f9c151f4-a588-42ce-a923-4f4d57a5500a","timestamp":"2026-06-10T10:02:22.956Z","userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"ai-title","aiTitle":"Implement complete shop system with tests and review","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"mode","mode":"normal","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"permission-mode","permissionMode":"bypassPermissions","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
{"parentUuid":"f9c151f4-a588-42ce-a923-4f4d57a5500a","isSidechain":false,"type":"assistant","uuid":"1986110f-5bfa-4cfe-84dc-8f0ef82a6015","timestamp":"2026-06-10T10:04:21.602Z","message":{"id":"7897c5c2-b1d1-4106-8289-6c22bfa0f251","container":null,"model":"<synthetic>","role":"assistant","stop_details":null,"stop_reason":"stop_sequence","stop_sequence":"","type":"message","usage":{"input_tokens":0,"output_tokens":0,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"server_tool_use":{"web_search_requests":0,"web_fetch_requests":0},"service_tier":null,"cache_creation":{"ephemeral_1h_input_tokens":0,"ephemeral_5m_input_tokens":0},"inference_geo":null,"iterations":null,"speed":null},"content":[{"type":"text","text":"No response requested."}],"context_management":null},"isApiErrorMessage":false,"userType":"external","entrypoint":"cli","cwd":"/Users/fabianwesner/Herd/shop","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","version":"2.1.170","gitBranch":"2026-06-09-claude-code-fable-5"}
{"type":"bridge-session","sessionId":"8088dd0b-29e3-446e-a9be-e76d2404af3a","bridgeSessionId":"cse_01BtrHHunVE7S5Br1ZjzMAwG","lastSequenceNum":0}
