1this derivation will be built:2 /nix/store/r727nmhx3g81ck3ha6a9gbzjpxk0msv6-horae-browser-checks.drv3building '/nix/store/r727nmhx3g81ck3ha6a9gbzjpxk0msv6-horae-browser-checks.drv'4horae-browser-checks> initdb: warning: enabling "trust" authentication for local connections5horae-browser-checks> initdb: hint: You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb.6horae-browser-checks> waiting for server to start.... done7horae-browser-checks> server started8horae-browser-checks> 2026-10-07T17:39:19.400509Z INFO horae: Running migrations...9horae-browser-checks> 2026-10-07T17:39:19.547111Z INFO horae: Migrations complete.10horae-browser-checks> 2026-10-07T17:39:19.560137Z INFO horae::seed: Seeding demo data…11horae-browser-checks> 2026-10-07T17:39:19.572605Z INFO horae::seed: Seed complete.12horae-browser-checks> 2026-10-07T17:39:19.575840Z INFO horae::seed: time_entries: 10 rows13horae-browser-checks> 2026-10-07T17:39:19.576064Z INFO horae::seed: clients: 2 rows14horae-browser-checks> PASS: scoped project list/detail expose workflow labels without directory access, private notes or rates15horae-browser-checks> PASS: edit and managed-project revocation remove current UI authority without legacy Administrator fallback16horae-browser-checks> PASS: inactive-account and changed-policy responses clear retained detail; retry recovers only the original binding17horae-browser-checks> PASS: header actions, supported metrics and labelled native budget progress18horae-browser-checks> PASS: design heading, compact row typography and inline project type19horae-browser-checks> PASS: filtered empty state resets search, scope and client20horae-browser-checks> PASS: narrow/short layouts, keyboard row actions and export formats21horae-browser-checks> PASS: loading spend is unavailable until the read completes22horae-browser-checks> PASS: failed spend is unavailable; retry restores real amounts23horae-browser-checks> PASS: configured monthly consumption replaces lifetime spend only after loading24horae-browser-checks> PASS: keyboard-accessible scope breakdown exposes overruns without layout overflow25horae-browser-checks> PASS: failed configured budget never falls back to lifetime figures26horae-browser-checks> PASS: empty-state guidance and action visibility for admin27horae-browser-checks> PASS: empty-state guidance and action visibility for manager28horae-browser-checks> PASS: empty-state guidance and action visibility for member29horae-browser-checks> PASS: shared Menu, Combobox, empty-state and navigation-icon defaults are unchanged30horae-browser-checks> PASS: /clients header at 320px31horae-browser-checks> PASS: /clients header at 390px32horae-browser-checks> PASS: /clients header at 768px33horae-browser-checks> PASS: /clients header at 1280px34horae-browser-checks> PASS: /clients header at 1440px35horae-browser-checks> PASS: /projects header at 320px36horae-browser-checks> PASS: /projects header at 390px37horae-browser-checks> PASS: /projects header at 768px38horae-browser-checks> PASS: /projects header at 1280px39horae-browser-checks> PASS: /projects header at 1440px40horae-browser-checks> PASS: /invoices header at 320px41horae-browser-checks> PASS: /invoices header at 390px42horae-browser-checks> PASS: /invoices header at 768px43horae-browser-checks> PASS: /invoices header at 1280px44horae-browser-checks> PASS: /invoices header at 1440px45horae-browser-checks> PASS: /reports header at 320px46horae-browser-checks> PASS: /reports header at 390px47horae-browser-checks> PASS: /reports header at 768px48horae-browser-checks> PASS: /reports header at 1280px49horae-browser-checks> PASS: /reports header at 1440px50horae-browser-checks> PASS: /admin/users header at 320px51horae-browser-checks> PASS: /admin/users header at 390px52horae-browser-checks> PASS: /admin/users header at 768px53horae-browser-checks> PASS: /admin/users header at 1280px54horae-browser-checks> PASS: /admin/users header at 1440px55horae-browser-checks> PASS: /approvals header at 320px56horae-browser-checks> PASS: /approvals header at 390px57horae-browser-checks> PASS: /approvals header at 768px58horae-browser-checks> PASS: /approvals header at 1280px59horae-browser-checks> PASS: /approvals header at 1440px60horae-browser-checks> PASS: /settings header at 320px61horae-browser-checks> PASS: /settings header at 390px62horae-browser-checks> PASS: /settings header at 768px63horae-browser-checks> PASS: /settings header at 1280px64horae-browser-checks> PASS: /settings header at 1440px65horae-browser-checks> PASS: /admin/importers header at 320px66horae-browser-checks> PASS: /admin/importers header at 390px67horae-browser-checks> PASS: /admin/importers header at 768px68horae-browser-checks> PASS: /admin/importers header at 1280px69horae-browser-checks> PASS: /admin/importers header at 1440px70horae-browser-checks> PASS: /timesheet/week/2026-10-05 header at 320px71horae-browser-checks> PASS: /timesheet/week/2026-10-05 header at 390px72horae-browser-checks> PASS: /timesheet/week/2026-10-05 header at 768px73horae-browser-checks> PASS: /timesheet/week/2026-10-05 header at 1280px74horae-browser-checks> PASS: /timesheet/week/2026-10-05 header at 1440px75horae-browser-checks> PASS: /timesheet/day/2026-10-05 header at 320px76horae-browser-checks> PASS: /timesheet/day/2026-10-05 header at 390px77horae-browser-checks> PASS: /timesheet/day/2026-10-05 header at 768px78horae-browser-checks> PASS: /timesheet/day/2026-10-05 header at 1280px79horae-browser-checks> PASS: /timesheet/day/2026-10-05 header at 1440px80horae-browser-checks> PASS: /timesheet/calendar/2026-10-05 header at 320px81horae-browser-checks> PASS: /timesheet/calendar/2026-10-05 header at 390px82horae-browser-checks> PASS: /timesheet/calendar/2026-10-05 header at 768px83horae-browser-checks> PASS: /timesheet/calendar/2026-10-05 header at 1280px84horae-browser-checks> PASS: /timesheet/calendar/2026-10-05 header at 1440px85horae-browser-checks> PASS: project names and badges stay within aligned columns; scrolling to last-row actions opens editing86horae-browser-checks> PASS: small-screen timesheet pager, date picker and view controls remain usable87horae-browser-checks> PASS: admin subnavigation and its content remain reachable on mobile88horae-browser-checks> PASS: day strip scrolls to Sunday and long entry labels do not cover actions89horae-browser-checks> CHECK: late popover initialization restores missing focus without overriding deliberate focus90horae-browser-checks> PASS: late popover initialization restores missing focus without overriding deliberate focus91horae-browser-checks> CHECK: content reflow preserves an open menu while deliberate scrolling still dismisses it92horae-browser-checks> PASS: content reflow preserves an open menu while deliberate scrolling still dismisses it93horae-browser-checks> CHECK: first and last project-row actions are initially visible and clickable94horae-browser-checks> PASS: first and last project-row actions are initially visible and clickable95horae-browser-checks> CHECK: menu keyboard, disabled items, outside click and repeated opening96horae-browser-checks> PASS: menu keyboard, disabled items, outside click and repeated opening97horae-browser-checks> CHECK: scroll and resize dismiss without leaving stale menus or focus98horae-browser-checks> PASS: scroll and resize dismiss without leaving stale menus or focus99horae-browser-checks> CHECK: short-screen menu scrolls internally and supports reverse Tab and Space100horae-browser-checks> PASS: short-screen menu scrolls internally and supports reverse Tab and Space101horae-browser-checks> CHECK: filter and calendar menus keep their callbacks and survive route changes102horae-browser-checks> PASS: filter and calendar menus keep their callbacks and survive route changes103horae-browser-checks> CHECK: Timesheet keeps the shared calendar and week selection behavior104horae-browser-checks> PASS: Timesheet keeps the shared calendar and week selection behavior105horae-browser-checks> PASS: mobile content width, keyboard toggle, Escape/focus restoration and navigation close106horae-browser-checks> PASS: short mobile viewport reaches account navigation and preserves desktop collapse state107horae-browser-checks> PASS: desktop drag width survives mobile and breakpoint transitions108horae-browser-checks> PASS: keyboard selection, mixed/select-all states and Actions count109horae-browser-checks> PASS: search, status and client changes clear selection110horae-browser-checks> PASS: keyboard selection/confirmation and no document overflow in both themes at three widths111horae-browser-checks> PASS: cancel/focus, failure retry, pending guard and archive/reactivate confirmation112horae-browser-checks> PASS: oversized selection cannot submit and members have no bulk controls113horae-browser-checks> PASS: real atomic archive/reactivate, anonymous/member/inactive denial, manager/admin and safe retries114horae-browser-checks> PASS: bulk success restores focus and recovers the list without stale actions115horae-browser-checks> PASS: bulk pending restores focus and recovers the list without stale actions116horae-browser-checks> PASS: bulk pending-navigation restores focus and recovers the list without stale actions117horae-browser-checks> PASS: bulk failure restores focus and recovers the list without stale actions118horae-browser-checks> PASS: client activation failure remains visible with form closed, open and cancelled119horae-browser-checks> PASS: successful form save preserves action error; real status retry clears it and refreshes the row120horae-browser-checks> PASS: archive failure survives menu dismissal; shared edit failure preserves input and safely retries121horae-browser-checks> PASS: failed team removal preserves the draft, safely retries and can be restored through the shared editor122horae-browser-checks> PASS: initial catalog/draft failures show loading and recovery without rendering or saving an empty replacement123horae-browser-checks> PASS: design typography, section spacing, quiet dividers and theme-aware task information124horae-browser-checks> PASS: project types retain native keyboard selection and the designed icon/option-card states125horae-browser-checks> PASS: searchable client selection, pending/error recovery and explicit/inherited currency126horae-browser-checks> PASS: client default-rate currency rejects relabelling, preserves failed input and permits compatible edits127horae-browser-checks> PASS: task and teammate searches handle pending results, keyboard selection, duplicates and retry128horae-browser-checks> PASS: real client, team, task restrictions, billing and invoice defaults survive reload129horae-browser-checks> PASS: all invoice-default errors identify and focus their field, preserve input and recover at three widths130horae-browser-checks> PASS: basic-field rejections retain values, link visible errors and restore focus at three widths131horae-browser-checks> PASS: failed resume and retry preserve the existing draft without a replacement write132horae-browser-checks> PASS: invalid hourly rates and hour/fee budgets retain input and focus their error at three widths133horae-browser-checks> PASS: a stale email configuration rejection can be corrected without sending mail134horae-browser-checks> PASS: task/person rate, cost and budget errors identify their row and preserve other inputs at three widths135horae-browser-checks> PASS: single/monthly fees, empty schedules and individual milestone errors recover without changing another row136horae-browser-checks> PASS: responsive form, conditional panels and Cancel preserve the draft137horae-browser-checks> PASS: edits made while a save is pending are saved after its acknowledgement138horae-browser-checks> PASS: lost acknowledgement retries the same request and preserves newer edits139horae-browser-checks> PASS: real finalized budget reaches the authorized Projects endpoint and display140horae-browser-checks> PASS: a new tagged project reaches reports and both exports; pending/error filters never show stale rows141horae-browser-checks> PASS: project invoice defaults prefill real estimates, stale reviews cannot generate, and editable draft values persist independently142horae-browser-checks> PASS: lost creation response is idempotent and clears the completed draft143horae-browser-checks> PASS: stale tabs cannot overwrite saved input; explicit discard removes only the draft144horae-browser-checks> PASS: invoice selection, partial balances, exact excess, dirty/pending navigation, reload recovery, account-scoped replay, storage failure safety and authorized per-occurrence project balances145horae-browser-checks> PASS: New Project task rates and editor capabilities preserve configured/legacy modes, source currencies, unknown/zero recovery, scoped budgets and keyboard recovery across three widths146horae-browser-checks> PASS: organization admin real-session UI, draft ownership, progress/export scope and financial redaction147horae-browser-checks> PASS: organization manager real-session UI, draft ownership, progress/export scope and financial redaction148horae-browser-checks> PASS: project lead real-session UI, draft ownership, progress/export scope and financial redaction149horae-browser-checks> PASS: project admin real-session UI, draft ownership, progress/export scope and financial redaction150horae-browser-checks> PASS: visible assigned member real-session UI, draft ownership, progress/export scope and financial redaction151horae-browser-checks> PASS: private assigned member real-session UI, draft ownership, progress/export scope and financial redaction152horae-browser-checks> PASS: revoked assignment and outsider identities cannot grant project-wide access153horae-browser-checks> PASS: inactive/anonymous requests are denied and a manager creates a real project without private overrides154horae-browser-checks> PASS: stale client/task/person references and archived task-name conflicts preserve drafts and support field-level recovery at three widths155horae-browser-checks> PASS: saved invalid task names/access identify their row, preserve input and support keyboard recovery at three widths before real finalization156horae-browser-checks> PASS: 390/1 hourly Person/No budget157horae-browser-checks> PASS: 390/1 hourly Task/Hours per task158horae-browser-checks> PASS: 390/1 hourly Project/Total project hours159horae-browser-checks> PASS: 390/1 hourly Person/Hours per person160horae-browser-checks> PASS: 390/1 hourly Task/Fees per task161horae-browser-checks> PASS: 390/1 hourly Project/Total project fees162horae-browser-checks> PASS: 390/1 fixed/no budget163horae-browser-checks> PASS: 390/1 fixed/Single fee164horae-browser-checks> PASS: 390/1 fixed/Milestones165horae-browser-checks> PASS: 390/1 fixed/Monthly166horae-browser-checks> PASS: 390/1 non-billable/No budget167horae-browser-checks> PASS: 390/1 non-billable/Total project hours168horae-browser-checks> PASS: 390/1 non-billable/Hours per task169horae-browser-checks> PASS: 390/1 non-billable/Hours per person170horae-browser-checks> PASS: native Tab order, accessible names, reverse Tab and unclipped focus across all billing/budget branches at 390px and 100% text171horae-browser-checks> PASS: 768/1 hourly Person/No budget172horae-browser-checks> PASS: 768/1 hourly Task/Hours per task173horae-browser-checks> PASS: 768/1 hourly Project/Total project hours174horae-browser-checks> PASS: 768/1 hourly Person/Hours per person175horae-browser-checks> PASS: 768/1 hourly Task/Fees per task176horae-browser-checks> PASS: 768/1 hourly Project/Total project fees177horae-browser-checks> PASS: 768/1 fixed/no budget