Cockpit · main

Cycle time

How long each merged pull request was written against how long it waited on the harness, how many rounds it took, and which check held each one. Read the box below before the totals: it says what they leave out.

generated 2026-10-12 16:09Z commit d533189 merged pull requests read 120 covering 7 days Test explorer → CI stability → Test selection →
What this does and does not measure

Evolution

One point per merged pull request read, not one window, positioned by when it merged — so a trend is something to see rather than a pair of snapshots to compare by eye. Each panel's own size lane carries the pull request's lines changed. Zoom in with the tabs below; every day's data is already on this page, so nothing is fetched to do it.

Where the harness minutes go

LocalLocal code reviewLocal security reviewLocal test runBrowser pass
CITests and checks

A pull request with no session record has no local lanes; hover its bar and it says not recorded, which is not zero.

0m34m68m101m#760 Switch the Car view dark from inside it, for capturing at night (#753) Tests and checks: 16m 22s Local test run: not recorded Browser pass: not recorded#760 Switch the Car view dark from inside it, for capturing at night (#753) Local code review: 3m 10s Local test run: not recorded Browser pass: not recorded#763 Keep a note's formatting when Cockpit rewrites it (#756) Tests and checks: 36m 47s Local test run: not recorded Browser pass: not recorded#763 Keep a note's formatting when Cockpit rewrites it (#756) Local code review: 33s Local test run: not recorded Browser pass: not recorded#765 Make Capture's chips compact and its note box resizable Tests and checks: 35m 15s Local test run: not recorded Browser pass: not recorded#765 Make Capture's chips compact and its note box resizable Local code review: 1m 35s Local test run: not recorded Browser pass: not recorded#766 Switch the Capture note to formatted Tests and checks: 36m 07s Local test run: not recorded Browser pass: not recorded#768 Let a backup go into a folder that's already there (#764) Tests and checks: 14m 01s Local test run: not recorded Browser pass: not recorded#768 Let a backup go into a folder that's already there (#764) Local code review: 2m 33s Local test run: not recorded Browser pass: not recorded#768 Let a backup go into a folder that's already there (#764) Local security review: 47s Local test run: not recorded Browser pass: not recorded#776 Refuse every connection change from the guest account (#772) Tests and checks: 16m 34s Local test run: not recorded Browser pass: not recorded#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit Tests and checks: 17m 51s Local test run: not recorded Browser pass: not recorded#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit Tests and checks: 32m 07s Local test run: not recorded Browser pass: not recorded#779 Show agents at work in the guest demo, with simulated runs (#774) Tests and checks: 1h 23m Local test run: not recorded Browser pass: not recorded#780 Retire the welcome question and the filing hints now that a new account carries its guide Tests and checks: 1h 29m Local test run: not recorded Browser pass: not recorded#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) Tests and checks: 44m 19s Local test run: not recorded Browser pass: not recorded#783 Give an Item row's title the width on a phone Tests and checks: 17m 00s Local test run: not recorded Browser pass: not recorded#783 Give an Item row's title the width on a phone Local code review: 7m 48s Local test run: not recorded Browser pass: not recorded#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) Tests and checks: 25m 56s Local test run: not recorded Browser pass: not recorded#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) Tests and checks: 16m 07s Local test run: not recorded Browser pass: not recorded#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) Local code review: 6m 16s Local test run: not recorded Browser pass: not recorded#794 Open an Item's form as a page of its own on a phone Tests and checks: 40m 57s Local test run: not recorded Browser pass: not recorded#794 Open an Item's form as a page of its own on a phone Local code review: 17m 51s Local test run: not recorded Browser pass: not recorded#796 Keep the selection bar on screen on a phone, without scrolling to it Tests and checks: 58m 59s Local test run: not recorded Browser pass: not recorded#796 Keep the selection bar on screen on a phone, without scrolling to it Local code review: 17m 08s Local test run: not recorded Browser pass: not recorded#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) Tests and checks: 34m 43s Local test run: not recorded Browser pass: not recorded#801 Edit an Item's type, status, priority and due date from chips on a phone Tests and checks: 37m 40s Local test run: not recorded Browser pass: not recorded#801 Edit an Item's type, status, priority and due date from chips on a phone Local code review: 5m 25s Local test run: not recorded Browser pass: not recorded#800 Share photos, files and links into Cockpit from Android's share sheet Tests and checks: 1h 27m Local test run: not recorded Browser pass: not recorded#800 Share photos, files and links into Cockpit from Android's share sheet Local code review: 6m 45s Local test run: not recorded Browser pass: not recorded#800 Share photos, files and links into Cockpit from Android's share sheet Local security review: 6m 46s Local test run: not recorded Browser pass: not recorded#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) Tests and checks: 18m 07s Local test run: not recorded Browser pass: not recorded#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) Local code review: 4m 10s Local test run: not recorded Browser pass: not recorded#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) Local security review: 7m 24s Local test run: not recorded Browser pass: not recorded#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) Tests and checks: 53m 40s Local test run: not recorded Browser pass: not recorded#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) Tests and checks: 40m 40s Local test run: not recorded Browser pass: not recorded#809 Keep a two-item list as a list in the note-cleanup prompt (#705) Tests and checks: 18m 29s Local test run: not recorded Browser pass: not recorded#809 Keep a two-item list as a list in the note-cleanup prompt (#705) Local code review: 7m 13s Local test run: not recorded Browser pass: not recorded#816 Stop rearranging a Dashboard from its Panel column (#812) Tests and checks: 21m 15s Local test run: not recorded Browser pass: not recorded#817 Open a Dashboard's filter bar with F (#811) Tests and checks: 43m 23s Local test run: not recorded Browser pass: not recorded#818 Go to a Panel of this Dashboard from the keyboard with G (#813) Tests and checks: 25m 12s Local test run: not recorded Browser pass: not recorded#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) Tests and checks: 25m 46s Local test run: not recorded Browser pass: not recorded#820 Resize the Go to panel column by dragging its edge (#815) Tests and checks: 15m 15s Local test run: not recorded Browser pass: not recorded#832 Remove the temporary session-title POC hook Tests and checks: 30s Local code review: not recorded Local security review: not recorded Local test run: not recorded Browser pass: not recorded#826 Connect Gmail by star, and bring in conversations starred from then on (#822) Tests and checks: 31m 22s Local test run: not recorded Browser pass: not recorded#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) Tests and checks: 23m 04s Local test run: not recorded Browser pass: not recorded#838 Stop showing Any workspace on Inbox rows (#837) Tests and checks: 19m 00s Local test run: not recorded Browser pass: not recorded#838 Stop showing Any workspace on Inbox rows (#837) Local code review: 2m 00s Local test run: not recorded Browser pass: not recorded#839 Open each Agent session by naming the Agent and the item (#835) Tests and checks: 18m 38s Local test run: not recorded Browser pass: not recorded#839 Open each Agent session by naming the Agent and the item (#835) Local code review: 2m 01s Local test run: not recorded Browser pass: not recorded#839 Open each Agent session by naming the Agent and the item (#835) Local security review: 51s Local test run: not recorded Browser pass: not recorded#847 Write every white surface in a named colour, not literal white (#842) Tests and checks: 33m 03s Local test run: not recorded Browser pass: not recorded#851 Keep a starred Gmail task in step with its star, both ways (#823) Tests and checks: 36m 32s Local test run: not recorded Browser pass: not recorded#841 End an Item's agent run from its Status, and bring it back on Undo Tests and checks: 1h 15m Local test run: not recorded Browser pass: not recorded#852 Keep a Panel out of proposals with Never propose (#848) Tests and checks: 34m 01s Local test run: not recorded Browser pass: not recorded#852 Keep a Panel out of proposals with Never propose (#848) Local code review: 2m 27s Local test run: not recorded Browser pass: not recorded#853 Paint the whole app dark when the device is set to dark (#843) Tests and checks: 37m 58s Local test run: not recorded Browser pass: not recorded#855 End the agent runs left open on Items already done or dismissed Tests and checks: 28m 09s Local test run: not recorded Browser pass: not recorded#854 Change what a Gmail connection follows, without reconnecting (#824) Tests and checks: 1h 20m Local test run: not recorded Browser pass: not recorded#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) Tests and checks: 53m 25s Local test run: not recorded Browser pass: not recorded#857 Show and Also show on… in the undo bar after moving an Item (#849) Tests and checks: 47m 41s Local test run: not recorded Browser pass: not recorded#858 Keep the Car view dark whenever the app is (#845) Tests and checks: 19m 09s Local test run: not recorded Browser pass: not recorded#859 Show and Also show on… after moving a selection (#850) Tests and checks: 26m 47s Local test run: not recorded Browser pass: not recorded#866 Show and hide the All items tab from the Workspace's menu (#862) Tests and checks: 20m 23s Local test run: not recorded Browser pass: not recorded#866 Show and hide the All items tab from the Workspace's menu (#862) Local code review: 4m 46s Local test run: not recorded Browser pass: not recorded#865 Keep the top of the board reachable after dropping a Panel low (#860) Tests and checks: 58m 48s Local test run: not recorded Browser pass: not recorded#865 Keep the top of the board reachable after dropping a Panel low (#860) Local code review: 3m 29s Local test run: not recorded Browser pass: not recorded#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) Tests and checks: 1h 30m Local test run: not recorded Browser pass: not recorded#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) Local code review: 39s Local test run: not recorded Browser pass: not recorded#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) Tests and checks: 20m 54s Local test run: not recorded Browser pass: not recorded#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) Local code review: 1m 11s Local test run: not recorded Browser pass: not recorded#881 Draw Cockpit's deployment every night, beside the other reports (#871) Tests and checks: 32m 32s Local test run: not recorded Browser pass: not recorded#884 Hold a web test file's teardown until Milkdown's timers have fired Tests and checks: 19m 44s Local code review: not recorded Local security review: not recorded Local test run: not recorded Browser pass: not recorded#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) Tests and checks: 19m 47s Local test run: not recorded Browser pass: not recorded#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) Local code review: 34s Local test run: not recorded Browser pass: not recorded#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) Tests and checks: 41m 01s Local test run: not recorded Browser pass: not recorded#888 Show each area of Cockpit, and mark source code in the core (#872) Tests and checks: 24m 33s Local test run: not recorded Browser pass: not recorded#889 Show which areas of Cockpit depend on which (#873) Tests and checks: 22m 21s Local test run: not recorded Browser pass: not recorded#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) Tests and checks: 20m 29s Local test run: not recorded Browser pass: not recorded#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) Local code review: 4m 09s Local test run: not recorded Browser pass: not recorded#900 Show what changed in Cockpit's architecture since the last report (#874) Tests and checks: 27m 34s Local test run: not recorded Browser pass: not recorded#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) Tests and checks: 1h 03m Local test run: not recorded Browser pass: not recorded#903 Check a pulled connector on its cadence through the generic host (#891) Tests and checks: 56m 32s Local test run: not recorded Browser pass: not recorded#906 Connect and disconnect a source through one generic sign-in flow (#892) Tests and checks: 25m 00s Local test run: not recorded Browser pass: not recorded#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) Tests and checks: 40m 09s Local test run: not recorded Browser pass: not recorded#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) Local code review: 3m 49s Local test run: not recorded Browser pass: not recorded#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) Local security review: 52s Local test run: not recorded Browser pass: not recorded#905 Add, rename and delete a titled Section on a Dashboard (#896) Tests and checks: 21m 40s Local test run: not recorded Browser pass: not recorded#905 Add, rename and delete a titled Section on a Dashboard (#896) Local code review: 11m 46s Local test run: not recorded Browser pass: not recorded#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) Tests and checks: 27m 55s Local test run: not recorded Browser pass: not recorded#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) Tests and checks: 25m 10s Local test run: not recorded Browser pass: not recorded#912 Mirror an Item's open state back to a pulled source (#893) Tests and checks: 20m 17s Local test run: not recorded Browser pass: not recorded#912 Mirror an Item's open state back to a pulled source (#893) Local code review: 8m 27s Local test run: not recorded Browser pass: not recorded#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) Tests and checks: 32m 15s Local test run: not recorded Browser pass: not recorded#921 List the registry's connectors in the Connections window (#894) Tests and checks: 1h 01m Local test run: not recorded Browser pass: not recorded#921 List the registry's connectors in the Connections window (#894) Local code review: 12m 05s Local test run: not recorded Browser pass: not recorded#921 List the registry's connectors in the Connections window (#894) Local security review: 12m 06s Local test run: not recorded Browser pass: not recorded#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) Tests and checks: 25m 35s Local test run: not recorded Browser pass: not recorded#930 Move an Item from one Panel's row without taking it off its other Panels (#923) Tests and checks: 52m 02s Local test run: not recorded Browser pass: not recorded#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) Tests and checks: 41m 32s Local test run: not recorded Browser pass: not recorded#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) Tests and checks: 16m 21s Local test run: not recorded Browser pass: not recorded#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) Local code review: 39s Local test run: not recorded Browser pass: not recorded#934 Read a connector id as an Item's source (#925) Tests and checks: 42m 17s Local test run: not recorded Browser pass: not recorded#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) Tests and checks: 1h 01m Local test run: not recorded Browser pass: not recorded#937 Draw Modules as boxes and arrows in dependency order (#914) Tests and checks: 23m 49s Local test run: not recorded Browser pass: not recorded#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard Tests and checks: 46m 06s Local test run: not recorded Browser pass: not recorded#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) Tests and checks: 24m 29s Local test run: not recorded Browser pass: not recorded#947 Give each connector its own box on Modules, and show what is released together (#915) Tests and checks: 25m 07s Local test run: not recorded Browser pass: not recorded#946 Export a period's usage records as CSV with pnpm usage:export (#918) Tests and checks: 44m 16s Local test run: not recorded Browser pass: not recorded#948 Put Claude Code behind an engine list, and let CI hold it there (#879) Tests and checks: 1h 13m Local test run: not recorded Browser pass: not recorded#948 Put Claude Code behind an engine list, and let CI hold it there (#879) Local code review: 2m 59s Local test run: not recorded Browser pass: not recorded#948 Put Claude Code behind an engine list, and let CI hold it there (#879) Local security review: 50s Local test run: not recorded Browser pass: not recorded#949 Store Gmail Items under their connector id (#926) Tests and checks: 1h 09m Local test run: not recorded Browser pass: not recorded#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) Tests and checks: 42m 03s Local test run: not recorded Browser pass: not recorded#951 Close a pulled connector's Items its complete listing no longer sees (#938) Tests and checks: 20m 18s Local test run: not recorded Browser pass: not recorded#951 Close a pulled connector's Items its complete listing no longer sees (#938) Local code review: 10m 52s Local test run: not recorded Browser pass: not recorded#951 Close a pulled connector's Items its complete listing no longer sees (#938) Local security review: 10m 52s Local test run: not recorded Browser pass: not recorded#952 Name each source by its connector, and read Gmail Items as gmail (#927) Tests and checks: 38m 25s Local test run: not recorded Browser pass: not recorded#952 Name each source by its connector, and read Gmail Items as gmail (#927) Local code review: 1m 22s Local test run: not recorded Browser pass: not recorded#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) Tests and checks: 58m 06s Local test run: not recorded Browser pass: not recorded#954 Let a pulled connector give up on an open state its source refuses for good (#940) Tests and checks: 26m 58s Local test run: not recorded Browser pass: not recorded#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) Tests and checks: 35m 44s Local test run: not recorded Browser pass: not recorded#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) Local code review: 9m 07s Local test run: not recorded Browser pass: not recorded#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) Local security review: 9m 07s Local test run: not recorded Browser pass: not recorded#956 Ask a connection's one choice on connecting, and change it later (#942) Tests and checks: 1h 09m Local test run: not recorded Browser pass: not recorded#956 Ask a connection's one choice on connecting, and change it later (#942) Local code review: 15m 18s Local test run: not recorded Browser pass: not recorded#956 Ask a connection's one choice on connecting, and change it later (#942) Local security review: 15m 18s Local test run: not recorded Browser pass: not recorded#958 Check a pulled connector again soon when its run says there is more to do (#957) Tests and checks: 40m 07s Local test run: not recorded Browser pass: not recorded#958 Check a pulled connector again soon when its run says there is more to do (#957) Local code review: 2m 14s Local test run: not recorded Browser pass: not recorded#958 Check a pulled connector again soon when its run says there is more to do (#957) Local security review: 2m 14s Local test run: not recorded Browser pass: not recorded#959 Build Gmail as a connector package on the SDK, unregistered (#943) Tests and checks: 27m 13s Local test run: not recorded Browser pass: not recorded#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) Tests and checks: 34m 31s Local test run: not recorded Browser pass: not recorded#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) Local code review: 6m 39s Local test run: not recorded Browser pass: not recorded#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) Local security review: 6m 39s Local test run: not recorded Browser pass: not recorded#962 Learn from declined review findings in /periodic-review (#961) Tests and checks: 30s Local test run: not recorded Browser pass: not recorded#962 Learn from declined review findings in /periodic-review (#961) Local code review: 21s Local test run: not recorded Browser pass: not recorded#964 Open each architecture diagram full size on its own page (#963) Tests and checks: 18m 33s Local test run: not recorded Browser pass: not recorded#964 Open each architecture diagram full size on its own page (#963) Local code review: 2m 17s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Tests and checks: 42m 01s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Local code review: 53s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Local security review: 52s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Tests and checks: 17m 01s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Local code review: 2m 27s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Local security review: 2m 27s Local test run: not recorded Browser pass: not recorded#980 Let the guest demo's seed name the sources it imitates (#968) Tests and checks: 30s Local test run: not recorded Browser pass: not recorded#980 Let the guest demo's seed name the sources it imitates (#968) Local code review: 14s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Tests and checks: 21m 20s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Local code review: 2m 50s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Local security review: 34s Local test run: not recorded Browser pass: not recorded#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) Tests and checks: 25m 12s Local test run: not recorded Browser pass: not recorded#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) Tests and checks: 21m 03s Local test run: not recorded Browser pass: not recorded#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) Local code review: 2m 09s Local test run: not recorded Browser pass: not recorded#983 Drop Gmail's old core tables and the follows column (#967) Tests and checks: 21m 40s Local test run: not recorded Browser pass: not recorded#983 Drop Gmail's old core tables and the follows column (#967) Local code review: 43s Local test run: not recorded Browser pass: not recorded#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) Tests and checks: 39m 27s Local test run: not recorded Browser pass: not recorded#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) Local code review: 53s Local test run: not recorded Browser pass: not recorded#986 Upload past Claude Code session logs to the Harness Monitor (#975) Tests and checks: 18m 27s Local test run: not recorded Browser pass: not recorded#986 Upload past Claude Code session logs to the Harness Monitor (#975) Local code review: 1m 51s Local test run: not recorded Browser pass: not recorded#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) Tests and checks: 21m 44s Local test run: not recorded Browser pass: not recorded#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) Local code review: 4m 22s Local test run: not recorded Browser pass: not recorded#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) Tests and checks: 1h 01m Local test run: not recorded Browser pass: not recorded#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) Local code review: 2m 57s Local test run: not recorded Browser pass: not recorded#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) Tests and checks: 22m 53s Local test run: not recorded Browser pass: not recorded#998 Keep the HTTP layer to adapters (#991) Tests and checks: 7m 34s Local test run: not recorded Browser pass: not recorded#998 Keep the HTTP layer to adapters (#991) Local code review: 1m 43s Local test run: not recorded Browser pass: not recorded#999 Decide filing an Item and saving a layout in the domain (#995) Tests and checks: 22m 21s Local test run: not recorded Browser pass: not recorded#1000 Store every connector Item under its connector id, old Gmail Items included (#993) Tests and checks: 38m 02s Local test run: not recorded Browser pass: not recorded#1001 Decide whether an agent may start in the domain (#996) Tests and checks: 21m 17s Local test run: not recorded Browser pass: not recorded#1002 Decide what connecting a source changes in the domain (#997) Tests and checks: 25m 41s Local test run: not recorded Browser pass: not recorded#1010 Fail CI when core code names a registered source in a string (#994) Tests and checks: 21m 17s Local test run: not recorded Browser pass: not recorded#1010 Fail CI when core code names a registered source in a string (#994) Local code review: 7m 59s Local test run: not recorded Browser pass: not recorded#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) Tests and checks: 39m 19s Local test run: not recorded Browser pass: not recorded#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) Local code review: 1m 00s Local test run: not recorded Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Tests and checks: 42m 16s Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Local code review: 5m 35s Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Local test run: 12m 03s Browser pass: not recorded#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report Tests and checks: 21m 55s Local test run: not recorded Browser pass: not recorded#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report Local code review: 57s Local test run: not recorded Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Tests and checks: 21m 46s Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Local code review: 1m 53s Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Local test run: 9s Browser pass: not recorded#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) Tests and checks: 16m 57s Local test run: not recorded Browser pass: not recorded#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) Local code review: 11m 38s Local test run: not recorded Browser pass: not recorded#1017 Rename the lead-time report to cycle time (#1006) Tests and checks: 16m 58s#1017 Rename the lead-time report to cycle time (#1006) Local code review: 1m 00s#1017 Rename the lead-time report to cycle time (#1006) Local security review: 51s#1017 Rename the lead-time report to cycle time (#1006) Local test run: 19s#1017 Rename the lead-time report to cycle time (#1006) Browser pass: 13s#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) Tests and checks: 21m 10s Local test run: not recorded Browser pass: not recorded#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) Local code review: 8m 08s Local test run: not recorded Browser pass: not recorded#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Tests and checks: 20m 58s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Local code review: 1m 11s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Local test run: 8s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Browser pass: 1m 53s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Tests and checks: 19m 00s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Local code review: 1m 24s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Local test run: 22s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Browser pass: 45s#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) Tests and checks: 1h 04m Local test run: not recorded Browser pass: not recorded#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) Local code review: 26m 27s Local test run: not recorded Browser pass: not recorded#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Tests and checks: 21m 28s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Local code review: 56s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Local test run: 9s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Browser pass: 3m 34ssize#760 Switch the Car view dark from inside it, for capturing at night (#753) · 418 lines changed#763 Keep a note's formatting when Cockpit rewrites it (#756) · 113 lines changed#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Start to merge

0m522m1043m1565m#760 Switch the Car view dark from inside it, for capturing at night (#753) · 1h 07m to merge#763 Keep a note's formatting when Cockpit rewrites it (#756) · 49m 36s to merge#765 Make Capture's chips compact and its note box resizable · 44m 20s to merge#766 Switch the Capture note to formatted · 1h 02m to merge#768 Let a backup go into a folder that's already there (#764) · 30m 14s to merge#776 Refuse every connection change from the guest account (#772) · 42m 44s to merge#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 47m 04s to merge#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 2h 01m to merge#779 Show agents at work in the guest demo, with simulated runs (#774) · 1h 51m to merge#780 Retire the welcome question and the filing hints now that a new account carries its guide · 2h 18m to merge#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 1h 03m to merge#783 Give an Item row's title the width on a phone · 45m 10s to merge#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 37m 29s to merge#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 1h 02m to merge#794 Open an Item's form as a page of its own on a phone · 1h 33m to merge#796 Keep the selection bar on screen on a phone, without scrolling to it · 1h 56m to merge#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 1h 26m to merge#801 Edit an Item's type, status, priority and due date from chips on a phone · 1h 16m to merge#800 Share photos, files and links into Cockpit from Android's share sheet · 3h 05m to merge#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1h 07m to merge#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 1h 22m to merge#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 1h 14m to merge#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 38m 13s to merge#816 Stop rearranging a Dashboard from its Panel column (#812) · 29m 29s to merge#817 Open a Dashboard's filter bar with F (#811) · 54m 03s to merge#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 41m 11s to merge#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 49m 55s to merge#820 Resize the Go to panel column by dragging its edge (#815) · 24m 21s to merge#832 Remove the temporary session-title POC hook · 10m 02s to merge#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 1h 07m to merge#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 36m 47s to merge#838 Stop showing Any workspace on Inbox rows (#837) · 32m 05s to merge#839 Open each Agent session by naming the Agent and the item (#835) · 38m 17s to merge#847 Write every white surface in a named colour, not literal white (#842) · 42m 58s to merge#851 Keep a starred Gmail task in step with its star, both ways (#823) · 1h 12m to merge#841 End an Item's agent run from its Status, and bring it back on Undo · 1h 48m to merge#852 Keep a Panel out of proposals with Never propose (#848) · 1h 25m to merge#853 Paint the whole app dark when the device is set to dark (#843) · 1h 11m to merge#855 End the agent runs left open on Items already done or dismissed · 55m 17s to merge#854 Change what a Gmail connection follows, without reconnecting (#824) · 2h 14m to merge#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 1h 41m to merge#857 Show and Also show on… in the undo bar after moving an Item (#849) · 2h 12m to merge#858 Keep the Car view dark whenever the app is (#845) · 52m 35s to merge#859 Show and Also show on… after moving a selection (#850) · 54m 54s to merge#866 Show and hide the All items tab from the Workspace's menu (#862) · 41m 58s to merge#865 Keep the top of the board reachable after dropping a Panel low (#860) · 1h 28m to merge#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 3h 16m to merge#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 44m 38s to merge#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 45m 36s to merge#884 Hold a web test file's teardown until Milkdown's timers have fired · 23m 29s to merge#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 42m 22s to merge#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1h 19m to merge#888 Show each area of Cockpit, and mark source code in the core (#872) · 42m 00s to merge#889 Show which areas of Cockpit depend on which (#873) · 33m 10s to merge#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 1h 10m to merge#900 Show what changed in Cockpit's architecture since the last report (#874) · 39m 33s to merge#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 1h 14m to merge#903 Check a pulled connector on its cadence through the generic host (#891) · 2h 22m to merge#906 Connect and disconnect a source through one generic sign-in flow (#892) · 49m 30s to merge#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 4h 07m to merge#905 Add, rename and delete a titled Section on a Dashboard (#896) · 2h 17m to merge#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 57m 08s to merge#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 51m 43s to merge#912 Mirror an Item's open state back to a pulled source (#893) · 1h 34m to merge#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 54m 32s to merge#921 List the registry's connectors in the Connections window (#894) · 1h 40m to merge#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 27m 23s to merge#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 1h 26m to merge#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 1h 57m to merge#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 1h 03m to merge#934 Read a connector id as an Item's source (#925) · 1h 32m to merge#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 1h 52m to merge#937 Draw Modules as boxes and arrows in dependency order (#914) · 31m 04s to merge#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 1h 01m to merge#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 36m 10s to merge#947 Give each connector its own box on Modules, and show what is released together (#915) · 30m 56s to merge#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 1h 08m to merge#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 2h 18m to merge#949 Store Gmail Items under their connector id (#926) · 1h 59m to merge#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 1h 38m to merge#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 1h 13m to merge#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 1h 25m to merge#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 1h 25m to merge#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 57m 34s to merge#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 1h 08m to merge#956 Ask a connection's one choice on connecting, and change it later (#942) · 1h 48m to merge#958 Check a pulled connector again soon when its run says there is more to do (#957) · 1h 09m to merge#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 8h 31m to merge#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 1h 41m to merge#962 Learn from declined review findings in /periodic-review (#961) · 3m 07s to merge#964 Open each architecture diagram full size on its own page (#963) · 28m 00s to merge#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 45m 16s to merge#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 40m 03s to merge#980 Let the guest demo's seed name the sources it imitates (#968) · 2m 51s to merge#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 38m 50s to merge#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 35m 57s to merge#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 36m 25s to merge#983 Drop Gmail's old core tables and the follows column (#967) · 56m 58s to merge#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 58m 53s to merge#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 38m 45s to merge#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1h 10m to merge#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 1h 24m to merge#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 36m 03s to merge#998 Keep the HTTP layer to adapters (#991) · 44m 30s to merge#999 Decide filing an Item and saving a layout in the domain (#995) · 23m 54s to merge#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 1h 39m to merge#1001 Decide whether an agent may start in the domain (#996) · 21m 57s to merge#1002 Decide what connecting a source changes in the domain (#997) · 26m 30s to merge#1010 Fail CI when core code names a registered source in a string (#994) · 39m 08s to merge#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 55m 00s to merge#1011 Record local test runs and the browser pass on the pull request (#1007) · 1h 16m to merge#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 29m 31s to merge#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 36m 55s to merge#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 26h 04m to merge#1017 Rename the lead-time report to cycle time (#1006) · 24m 31s to merge#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 34m 57s to merge#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 38m 02s to merge#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 27m 11s to merge#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 1h 48m to merge#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 46m 48s to mergesize#760 Switch the Car view dark from inside it, for capturing at night (#753) · 418 lines changed#763 Keep a note's formatting when Cockpit rewrites it (#756) · 113 lines changed#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Rounds to merge

0246#760 Switch the Car view dark from inside it, for capturing at night (#753) · 1 round#763 Keep a note's formatting when Cockpit rewrites it (#756) · 2 rounds#765 Make Capture's chips compact and its note box resizable · 3 rounds#766 Switch the Capture note to formatted · 3 rounds#768 Let a backup go into a folder that's already there (#764) · 1 round#776 Refuse every connection change from the guest account (#772) · 1 round#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 1 round#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 2 rounds#779 Show agents at work in the guest demo, with simulated runs (#774) · 3 rounds#780 Retire the welcome question and the filing hints now that a new account carries its guide · 1 round#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 2 rounds#783 Give an Item row's title the width on a phone · 1 round#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 2 rounds#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 1 round#794 Open an Item's form as a page of its own on a phone · 3 rounds#796 Keep the selection bar on screen on a phone, without scrolling to it · 4 rounds#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 3 rounds#801 Edit an Item's type, status, priority and due date from chips on a phone · 4 rounds#800 Share photos, files and links into Cockpit from Android's share sheet · 6 rounds#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1 round#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 4 rounds#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 3 rounds#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 1 round#816 Stop rearranging a Dashboard from its Panel column (#812) · 2 rounds#817 Open a Dashboard's filter bar with F (#811) · 4 rounds#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 2 rounds#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 2 rounds#820 Resize the Go to panel column by dragging its edge (#815) · 1 round#832 Remove the temporary session-title POC hook · 1 round#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 2 rounds#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 2 rounds#838 Stop showing Any workspace on Inbox rows (#837) · 1 round#839 Open each Agent session by naming the Agent and the item (#835) · 1 round#847 Write every white surface in a named colour, not literal white (#842) · 1 round#851 Keep a starred Gmail task in step with its star, both ways (#823) · 2 rounds#841 End an Item's agent run from its Status, and bring it back on Undo · 4 rounds#852 Keep a Panel out of proposals with Never propose (#848) · 2 rounds#853 Paint the whole app dark when the device is set to dark (#843) · 3 rounds#855 End the agent runs left open on Items already done or dismissed · 2 rounds#854 Change what a Gmail connection follows, without reconnecting (#824) · 4 rounds#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 3 rounds#857 Show and Also show on… in the undo bar after moving an Item (#849) · 3 rounds#858 Keep the Car view dark whenever the app is (#845) · 1 round#859 Show and Also show on… after moving a selection (#850) · 3 rounds#866 Show and hide the All items tab from the Workspace's menu (#862) · 1 round#865 Keep the top of the board reachable after dropping a Panel low (#860) · 2 rounds#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2 rounds#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 1 round#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 3 rounds#884 Hold a web test file's teardown until Milkdown's timers have fired · 1 round#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 1 round#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 3 rounds#888 Show each area of Cockpit, and mark source code in the core (#872) · 2 rounds#889 Show which areas of Cockpit depend on which (#873) · 2 rounds#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 1 round#900 Show what changed in Cockpit's architecture since the last report (#874) · 3 rounds#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 2 rounds#903 Check a pulled connector on its cadence through the generic host (#891) · 3 rounds#906 Connect and disconnect a source through one generic sign-in flow (#892) · 2 rounds#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 2 rounds#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1 round#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 2 rounds#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 2 rounds#912 Mirror an Item's open state back to a pulled source (#893) · 1 round#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 2 rounds#921 List the registry's connectors in the Connections window (#894) · 3 rounds#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 2 rounds#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 3 rounds#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2 rounds#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 1 round#934 Read a connector id as an Item's source (#925) · 2 rounds#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 2 rounds#937 Draw Modules as boxes and arrows in dependency order (#914) · 2 rounds#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 2 rounds#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 2 rounds#947 Give each connector its own box on Modules, and show what is released together (#915) · 2 rounds#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 2 rounds#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 2 rounds#949 Store Gmail Items under their connector id (#926) · 2 rounds#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 2 rounds#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 1 round#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 2 rounds#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 3 rounds#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 2 rounds#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 2 rounds#956 Ask a connection's one choice on connecting, and change it later (#942) · 3 rounds#958 Check a pulled connector again soon when its run says there is more to do (#957) · 2 rounds#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 2 rounds#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 2 rounds#962 Learn from declined review findings in /periodic-review (#961) · 1 round#964 Open each architecture diagram full size on its own page (#963) · 1 round#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 1 round#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 1 round#980 Let the guest demo's seed name the sources it imitates (#968) · 1 round#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1 round#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 2 rounds#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1 round#983 Drop Gmail's old core tables and the follows column (#967) · 1 round#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 2 rounds#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 1 round#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1 round#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 1 round#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 3 rounds#998 Keep the HTTP layer to adapters (#991) · 1 round#999 Decide filing an Item and saving a layout in the domain (#995) · 2 rounds#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 2 rounds#1001 Decide whether an agent may start in the domain (#996) · 1 round#1002 Decide what connecting a source changes in the domain (#997) · 2 rounds#1010 Fail CI when core code names a registered source in a string (#994) · 1 round#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 1 round#1011 Record local test runs and the browser pass on the pull request (#1007) · 2 rounds#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 1 round#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 1 round#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 1 round#1017 Rename the lead-time report to cycle time (#1006) · 1 round#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 1 round#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 1 round#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 1 round#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 2 rounds#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 1 roundsize#760 Switch the Car view dark from inside it, for capturing at night (#753) · 418 lines changed#763 Keep a note's formatting when Cockpit rewrites it (#756) · 113 lines changed#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Red rounds

0%33%67%100%#765 Make Capture's chips compact and its note box resizable · 33% of its rounds red#779 Show agents at work in the guest demo, with simulated runs (#774) · 33% of its rounds red#794 Open an Item's form as a page of its own on a phone · 67% of its rounds red#796 Keep the selection bar on screen on a phone, without scrolling to it · 25% of its rounds red#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 67% of its rounds red#801 Edit an Item's type, status, priority and due date from chips on a phone · 50% of its rounds red#800 Share photos, files and links into Cockpit from Android's share sheet · 67% of its rounds red#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 25% of its rounds red#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 67% of its rounds red#817 Open a Dashboard's filter bar with F (#811) · 50% of its rounds red#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 50% of its rounds red#841 End an Item's agent run from its Status, and bring it back on Undo · 25% of its rounds red#854 Change what a Gmail connection follows, without reconnecting (#824) · 25% of its rounds red#857 Show and Also show on… in the undo bar after moving an Item (#849) · 67% of its rounds red#865 Keep the top of the board reachable after dropping a Panel low (#860) · 50% of its rounds red#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 50% of its rounds red#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 50% of its rounds red#903 Check a pulled connector on its cadence through the generic host (#891) · 67% of its rounds red#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 50% of its rounds red#921 List the registry's connectors in the Connections window (#894) · 33% of its rounds red#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 33% of its rounds red#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 50% of its rounds red#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 50% of its rounds red#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 50% of its rounds red#956 Ask a connection's one choice on connecting, and change it later (#942) · 67% of its rounds red#958 Check a pulled connector again soon when its run says there is more to do (#957) · 50% of its rounds red#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 50% of its rounds red#1011 Record local test runs and the browser pass on the pull request (#1007) · 50% of its rounds redsize#760 Switch the Car view dark from inside it, for capturing at night (#753) · 418 lines changed#763 Keep a note's formatting when Cockpit rewrites it (#756) · 113 lines changed#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Where the harness minutes go

LocalLocal code reviewLocal security reviewLocal test runBrowser pass
CITests and checks

A pull request with no session record has no local lanes; hover its bar and it says not recorded, which is not zero.

0m34m68m101m#765 Make Capture's chips compact and its note box resizable Tests and checks: 35m 15s Local test run: not recorded Browser pass: not recorded#765 Make Capture's chips compact and its note box resizable Local code review: 1m 35s Local test run: not recorded Browser pass: not recorded#766 Switch the Capture note to formatted Tests and checks: 36m 07s Local test run: not recorded Browser pass: not recorded#768 Let a backup go into a folder that's already there (#764) Tests and checks: 14m 01s Local test run: not recorded Browser pass: not recorded#768 Let a backup go into a folder that's already there (#764) Local code review: 2m 33s Local test run: not recorded Browser pass: not recorded#768 Let a backup go into a folder that's already there (#764) Local security review: 47s Local test run: not recorded Browser pass: not recorded#776 Refuse every connection change from the guest account (#772) Tests and checks: 16m 34s Local test run: not recorded Browser pass: not recorded#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit Tests and checks: 17m 51s Local test run: not recorded Browser pass: not recorded#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit Tests and checks: 32m 07s Local test run: not recorded Browser pass: not recorded#779 Show agents at work in the guest demo, with simulated runs (#774) Tests and checks: 1h 23m Local test run: not recorded Browser pass: not recorded#780 Retire the welcome question and the filing hints now that a new account carries its guide Tests and checks: 1h 29m Local test run: not recorded Browser pass: not recorded#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) Tests and checks: 44m 19s Local test run: not recorded Browser pass: not recorded#783 Give an Item row's title the width on a phone Tests and checks: 17m 00s Local test run: not recorded Browser pass: not recorded#783 Give an Item row's title the width on a phone Local code review: 7m 48s Local test run: not recorded Browser pass: not recorded#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) Tests and checks: 25m 56s Local test run: not recorded Browser pass: not recorded#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) Tests and checks: 16m 07s Local test run: not recorded Browser pass: not recorded#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) Local code review: 6m 16s Local test run: not recorded Browser pass: not recorded#794 Open an Item's form as a page of its own on a phone Tests and checks: 40m 57s Local test run: not recorded Browser pass: not recorded#794 Open an Item's form as a page of its own on a phone Local code review: 17m 51s Local test run: not recorded Browser pass: not recorded#796 Keep the selection bar on screen on a phone, without scrolling to it Tests and checks: 58m 59s Local test run: not recorded Browser pass: not recorded#796 Keep the selection bar on screen on a phone, without scrolling to it Local code review: 17m 08s Local test run: not recorded Browser pass: not recorded#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) Tests and checks: 34m 43s Local test run: not recorded Browser pass: not recorded#801 Edit an Item's type, status, priority and due date from chips on a phone Tests and checks: 37m 40s Local test run: not recorded Browser pass: not recorded#801 Edit an Item's type, status, priority and due date from chips on a phone Local code review: 5m 25s Local test run: not recorded Browser pass: not recorded#800 Share photos, files and links into Cockpit from Android's share sheet Tests and checks: 1h 27m Local test run: not recorded Browser pass: not recorded#800 Share photos, files and links into Cockpit from Android's share sheet Local code review: 6m 45s Local test run: not recorded Browser pass: not recorded#800 Share photos, files and links into Cockpit from Android's share sheet Local security review: 6m 46s Local test run: not recorded Browser pass: not recorded#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) Tests and checks: 18m 07s Local test run: not recorded Browser pass: not recorded#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) Local code review: 4m 10s Local test run: not recorded Browser pass: not recorded#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) Local security review: 7m 24s Local test run: not recorded Browser pass: not recorded#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) Tests and checks: 53m 40s Local test run: not recorded Browser pass: not recorded#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) Tests and checks: 40m 40s Local test run: not recorded Browser pass: not recorded#809 Keep a two-item list as a list in the note-cleanup prompt (#705) Tests and checks: 18m 29s Local test run: not recorded Browser pass: not recorded#809 Keep a two-item list as a list in the note-cleanup prompt (#705) Local code review: 7m 13s Local test run: not recorded Browser pass: not recorded#816 Stop rearranging a Dashboard from its Panel column (#812) Tests and checks: 21m 15s Local test run: not recorded Browser pass: not recorded#817 Open a Dashboard's filter bar with F (#811) Tests and checks: 43m 23s Local test run: not recorded Browser pass: not recorded#818 Go to a Panel of this Dashboard from the keyboard with G (#813) Tests and checks: 25m 12s Local test run: not recorded Browser pass: not recorded#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) Tests and checks: 25m 46s Local test run: not recorded Browser pass: not recorded#820 Resize the Go to panel column by dragging its edge (#815) Tests and checks: 15m 15s Local test run: not recorded Browser pass: not recorded#832 Remove the temporary session-title POC hook Tests and checks: 30s Local code review: not recorded Local security review: not recorded Local test run: not recorded Browser pass: not recorded#826 Connect Gmail by star, and bring in conversations starred from then on (#822) Tests and checks: 31m 22s Local test run: not recorded Browser pass: not recorded#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) Tests and checks: 23m 04s Local test run: not recorded Browser pass: not recorded#838 Stop showing Any workspace on Inbox rows (#837) Tests and checks: 19m 00s Local test run: not recorded Browser pass: not recorded#838 Stop showing Any workspace on Inbox rows (#837) Local code review: 2m 00s Local test run: not recorded Browser pass: not recorded#839 Open each Agent session by naming the Agent and the item (#835) Tests and checks: 18m 38s Local test run: not recorded Browser pass: not recorded#839 Open each Agent session by naming the Agent and the item (#835) Local code review: 2m 01s Local test run: not recorded Browser pass: not recorded#839 Open each Agent session by naming the Agent and the item (#835) Local security review: 51s Local test run: not recorded Browser pass: not recorded#847 Write every white surface in a named colour, not literal white (#842) Tests and checks: 33m 03s Local test run: not recorded Browser pass: not recorded#851 Keep a starred Gmail task in step with its star, both ways (#823) Tests and checks: 36m 32s Local test run: not recorded Browser pass: not recorded#841 End an Item's agent run from its Status, and bring it back on Undo Tests and checks: 1h 15m Local test run: not recorded Browser pass: not recorded#852 Keep a Panel out of proposals with Never propose (#848) Tests and checks: 34m 01s Local test run: not recorded Browser pass: not recorded#852 Keep a Panel out of proposals with Never propose (#848) Local code review: 2m 27s Local test run: not recorded Browser pass: not recorded#853 Paint the whole app dark when the device is set to dark (#843) Tests and checks: 37m 58s Local test run: not recorded Browser pass: not recorded#855 End the agent runs left open on Items already done or dismissed Tests and checks: 28m 09s Local test run: not recorded Browser pass: not recorded#854 Change what a Gmail connection follows, without reconnecting (#824) Tests and checks: 1h 20m Local test run: not recorded Browser pass: not recorded#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) Tests and checks: 53m 25s Local test run: not recorded Browser pass: not recorded#857 Show and Also show on… in the undo bar after moving an Item (#849) Tests and checks: 47m 41s Local test run: not recorded Browser pass: not recorded#858 Keep the Car view dark whenever the app is (#845) Tests and checks: 19m 09s Local test run: not recorded Browser pass: not recorded#859 Show and Also show on… after moving a selection (#850) Tests and checks: 26m 47s Local test run: not recorded Browser pass: not recorded#866 Show and hide the All items tab from the Workspace's menu (#862) Tests and checks: 20m 23s Local test run: not recorded Browser pass: not recorded#866 Show and hide the All items tab from the Workspace's menu (#862) Local code review: 4m 46s Local test run: not recorded Browser pass: not recorded#865 Keep the top of the board reachable after dropping a Panel low (#860) Tests and checks: 58m 48s Local test run: not recorded Browser pass: not recorded#865 Keep the top of the board reachable after dropping a Panel low (#860) Local code review: 3m 29s Local test run: not recorded Browser pass: not recorded#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) Tests and checks: 1h 30m Local test run: not recorded Browser pass: not recorded#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) Local code review: 39s Local test run: not recorded Browser pass: not recorded#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) Tests and checks: 20m 54s Local test run: not recorded Browser pass: not recorded#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) Local code review: 1m 11s Local test run: not recorded Browser pass: not recorded#881 Draw Cockpit's deployment every night, beside the other reports (#871) Tests and checks: 32m 32s Local test run: not recorded Browser pass: not recorded#884 Hold a web test file's teardown until Milkdown's timers have fired Tests and checks: 19m 44s Local code review: not recorded Local security review: not recorded Local test run: not recorded Browser pass: not recorded#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) Tests and checks: 19m 47s Local test run: not recorded Browser pass: not recorded#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) Local code review: 34s Local test run: not recorded Browser pass: not recorded#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) Tests and checks: 41m 01s Local test run: not recorded Browser pass: not recorded#888 Show each area of Cockpit, and mark source code in the core (#872) Tests and checks: 24m 33s Local test run: not recorded Browser pass: not recorded#889 Show which areas of Cockpit depend on which (#873) Tests and checks: 22m 21s Local test run: not recorded Browser pass: not recorded#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) Tests and checks: 20m 29s Local test run: not recorded Browser pass: not recorded#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) Local code review: 4m 09s Local test run: not recorded Browser pass: not recorded#900 Show what changed in Cockpit's architecture since the last report (#874) Tests and checks: 27m 34s Local test run: not recorded Browser pass: not recorded#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) Tests and checks: 1h 03m Local test run: not recorded Browser pass: not recorded#903 Check a pulled connector on its cadence through the generic host (#891) Tests and checks: 56m 32s Local test run: not recorded Browser pass: not recorded#906 Connect and disconnect a source through one generic sign-in flow (#892) Tests and checks: 25m 00s Local test run: not recorded Browser pass: not recorded#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) Tests and checks: 40m 09s Local test run: not recorded Browser pass: not recorded#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) Local code review: 3m 49s Local test run: not recorded Browser pass: not recorded#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) Local security review: 52s Local test run: not recorded Browser pass: not recorded#905 Add, rename and delete a titled Section on a Dashboard (#896) Tests and checks: 21m 40s Local test run: not recorded Browser pass: not recorded#905 Add, rename and delete a titled Section on a Dashboard (#896) Local code review: 11m 46s Local test run: not recorded Browser pass: not recorded#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) Tests and checks: 27m 55s Local test run: not recorded Browser pass: not recorded#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) Tests and checks: 25m 10s Local test run: not recorded Browser pass: not recorded#912 Mirror an Item's open state back to a pulled source (#893) Tests and checks: 20m 17s Local test run: not recorded Browser pass: not recorded#912 Mirror an Item's open state back to a pulled source (#893) Local code review: 8m 27s Local test run: not recorded Browser pass: not recorded#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) Tests and checks: 32m 15s Local test run: not recorded Browser pass: not recorded#921 List the registry's connectors in the Connections window (#894) Tests and checks: 1h 01m Local test run: not recorded Browser pass: not recorded#921 List the registry's connectors in the Connections window (#894) Local code review: 12m 05s Local test run: not recorded Browser pass: not recorded#921 List the registry's connectors in the Connections window (#894) Local security review: 12m 06s Local test run: not recorded Browser pass: not recorded#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) Tests and checks: 25m 35s Local test run: not recorded Browser pass: not recorded#930 Move an Item from one Panel's row without taking it off its other Panels (#923) Tests and checks: 52m 02s Local test run: not recorded Browser pass: not recorded#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) Tests and checks: 41m 32s Local test run: not recorded Browser pass: not recorded#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) Tests and checks: 16m 21s Local test run: not recorded Browser pass: not recorded#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) Local code review: 39s Local test run: not recorded Browser pass: not recorded#934 Read a connector id as an Item's source (#925) Tests and checks: 42m 17s Local test run: not recorded Browser pass: not recorded#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) Tests and checks: 1h 01m Local test run: not recorded Browser pass: not recorded#937 Draw Modules as boxes and arrows in dependency order (#914) Tests and checks: 23m 49s Local test run: not recorded Browser pass: not recorded#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard Tests and checks: 46m 06s Local test run: not recorded Browser pass: not recorded#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) Tests and checks: 24m 29s Local test run: not recorded Browser pass: not recorded#947 Give each connector its own box on Modules, and show what is released together (#915) Tests and checks: 25m 07s Local test run: not recorded Browser pass: not recorded#946 Export a period's usage records as CSV with pnpm usage:export (#918) Tests and checks: 44m 16s Local test run: not recorded Browser pass: not recorded#948 Put Claude Code behind an engine list, and let CI hold it there (#879) Tests and checks: 1h 13m Local test run: not recorded Browser pass: not recorded#948 Put Claude Code behind an engine list, and let CI hold it there (#879) Local code review: 2m 59s Local test run: not recorded Browser pass: not recorded#948 Put Claude Code behind an engine list, and let CI hold it there (#879) Local security review: 50s Local test run: not recorded Browser pass: not recorded#949 Store Gmail Items under their connector id (#926) Tests and checks: 1h 09m Local test run: not recorded Browser pass: not recorded#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) Tests and checks: 42m 03s Local test run: not recorded Browser pass: not recorded#951 Close a pulled connector's Items its complete listing no longer sees (#938) Tests and checks: 20m 18s Local test run: not recorded Browser pass: not recorded#951 Close a pulled connector's Items its complete listing no longer sees (#938) Local code review: 10m 52s Local test run: not recorded Browser pass: not recorded#951 Close a pulled connector's Items its complete listing no longer sees (#938) Local security review: 10m 52s Local test run: not recorded Browser pass: not recorded#952 Name each source by its connector, and read Gmail Items as gmail (#927) Tests and checks: 38m 25s Local test run: not recorded Browser pass: not recorded#952 Name each source by its connector, and read Gmail Items as gmail (#927) Local code review: 1m 22s Local test run: not recorded Browser pass: not recorded#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) Tests and checks: 58m 06s Local test run: not recorded Browser pass: not recorded#954 Let a pulled connector give up on an open state its source refuses for good (#940) Tests and checks: 26m 58s Local test run: not recorded Browser pass: not recorded#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) Tests and checks: 35m 44s Local test run: not recorded Browser pass: not recorded#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) Local code review: 9m 07s Local test run: not recorded Browser pass: not recorded#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) Local security review: 9m 07s Local test run: not recorded Browser pass: not recorded#956 Ask a connection's one choice on connecting, and change it later (#942) Tests and checks: 1h 09m Local test run: not recorded Browser pass: not recorded#956 Ask a connection's one choice on connecting, and change it later (#942) Local code review: 15m 18s Local test run: not recorded Browser pass: not recorded#956 Ask a connection's one choice on connecting, and change it later (#942) Local security review: 15m 18s Local test run: not recorded Browser pass: not recorded#958 Check a pulled connector again soon when its run says there is more to do (#957) Tests and checks: 40m 07s Local test run: not recorded Browser pass: not recorded#958 Check a pulled connector again soon when its run says there is more to do (#957) Local code review: 2m 14s Local test run: not recorded Browser pass: not recorded#958 Check a pulled connector again soon when its run says there is more to do (#957) Local security review: 2m 14s Local test run: not recorded Browser pass: not recorded#959 Build Gmail as a connector package on the SDK, unregistered (#943) Tests and checks: 27m 13s Local test run: not recorded Browser pass: not recorded#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) Tests and checks: 34m 31s Local test run: not recorded Browser pass: not recorded#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) Local code review: 6m 39s Local test run: not recorded Browser pass: not recorded#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) Local security review: 6m 39s Local test run: not recorded Browser pass: not recorded#962 Learn from declined review findings in /periodic-review (#961) Tests and checks: 30s Local test run: not recorded Browser pass: not recorded#962 Learn from declined review findings in /periodic-review (#961) Local code review: 21s Local test run: not recorded Browser pass: not recorded#964 Open each architecture diagram full size on its own page (#963) Tests and checks: 18m 33s Local test run: not recorded Browser pass: not recorded#964 Open each architecture diagram full size on its own page (#963) Local code review: 2m 17s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Tests and checks: 42m 01s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Local code review: 53s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Local security review: 52s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Tests and checks: 17m 01s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Local code review: 2m 27s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Local security review: 2m 27s Local test run: not recorded Browser pass: not recorded#980 Let the guest demo's seed name the sources it imitates (#968) Tests and checks: 30s Local test run: not recorded Browser pass: not recorded#980 Let the guest demo's seed name the sources it imitates (#968) Local code review: 14s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Tests and checks: 21m 20s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Local code review: 2m 50s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Local security review: 34s Local test run: not recorded Browser pass: not recorded#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) Tests and checks: 25m 12s Local test run: not recorded Browser pass: not recorded#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) Tests and checks: 21m 03s Local test run: not recorded Browser pass: not recorded#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) Local code review: 2m 09s Local test run: not recorded Browser pass: not recorded#983 Drop Gmail's old core tables and the follows column (#967) Tests and checks: 21m 40s Local test run: not recorded Browser pass: not recorded#983 Drop Gmail's old core tables and the follows column (#967) Local code review: 43s Local test run: not recorded Browser pass: not recorded#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) Tests and checks: 39m 27s Local test run: not recorded Browser pass: not recorded#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) Local code review: 53s Local test run: not recorded Browser pass: not recorded#986 Upload past Claude Code session logs to the Harness Monitor (#975) Tests and checks: 18m 27s Local test run: not recorded Browser pass: not recorded#986 Upload past Claude Code session logs to the Harness Monitor (#975) Local code review: 1m 51s Local test run: not recorded Browser pass: not recorded#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) Tests and checks: 21m 44s Local test run: not recorded Browser pass: not recorded#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) Local code review: 4m 22s Local test run: not recorded Browser pass: not recorded#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) Tests and checks: 1h 01m Local test run: not recorded Browser pass: not recorded#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) Local code review: 2m 57s Local test run: not recorded Browser pass: not recorded#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) Tests and checks: 22m 53s Local test run: not recorded Browser pass: not recorded#998 Keep the HTTP layer to adapters (#991) Tests and checks: 7m 34s Local test run: not recorded Browser pass: not recorded#998 Keep the HTTP layer to adapters (#991) Local code review: 1m 43s Local test run: not recorded Browser pass: not recorded#999 Decide filing an Item and saving a layout in the domain (#995) Tests and checks: 22m 21s Local test run: not recorded Browser pass: not recorded#1000 Store every connector Item under its connector id, old Gmail Items included (#993) Tests and checks: 38m 02s Local test run: not recorded Browser pass: not recorded#1001 Decide whether an agent may start in the domain (#996) Tests and checks: 21m 17s Local test run: not recorded Browser pass: not recorded#1002 Decide what connecting a source changes in the domain (#997) Tests and checks: 25m 41s Local test run: not recorded Browser pass: not recorded#1010 Fail CI when core code names a registered source in a string (#994) Tests and checks: 21m 17s Local test run: not recorded Browser pass: not recorded#1010 Fail CI when core code names a registered source in a string (#994) Local code review: 7m 59s Local test run: not recorded Browser pass: not recorded#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) Tests and checks: 39m 19s Local test run: not recorded Browser pass: not recorded#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) Local code review: 1m 00s Local test run: not recorded Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Tests and checks: 42m 16s Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Local code review: 5m 35s Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Local test run: 12m 03s Browser pass: not recorded#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report Tests and checks: 21m 55s Local test run: not recorded Browser pass: not recorded#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report Local code review: 57s Local test run: not recorded Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Tests and checks: 21m 46s Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Local code review: 1m 53s Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Local test run: 9s Browser pass: not recorded#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) Tests and checks: 16m 57s Local test run: not recorded Browser pass: not recorded#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) Local code review: 11m 38s Local test run: not recorded Browser pass: not recorded#1017 Rename the lead-time report to cycle time (#1006) Tests and checks: 16m 58s#1017 Rename the lead-time report to cycle time (#1006) Local code review: 1m 00s#1017 Rename the lead-time report to cycle time (#1006) Local security review: 51s#1017 Rename the lead-time report to cycle time (#1006) Local test run: 19s#1017 Rename the lead-time report to cycle time (#1006) Browser pass: 13s#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) Tests and checks: 21m 10s Local test run: not recorded Browser pass: not recorded#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) Local code review: 8m 08s Local test run: not recorded Browser pass: not recorded#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Tests and checks: 20m 58s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Local code review: 1m 11s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Local test run: 8s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Browser pass: 1m 53s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Tests and checks: 19m 00s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Local code review: 1m 24s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Local test run: 22s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Browser pass: 45s#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) Tests and checks: 1h 04m Local test run: not recorded Browser pass: not recorded#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) Local code review: 26m 27s Local test run: not recorded Browser pass: not recorded#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Tests and checks: 21m 28s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Local code review: 56s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Local test run: 9s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Browser pass: 3m 34ssize#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Start to merge

0m522m1043m1565m#765 Make Capture's chips compact and its note box resizable · 44m 20s to merge#766 Switch the Capture note to formatted · 1h 02m to merge#768 Let a backup go into a folder that's already there (#764) · 30m 14s to merge#776 Refuse every connection change from the guest account (#772) · 42m 44s to merge#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 47m 04s to merge#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 2h 01m to merge#779 Show agents at work in the guest demo, with simulated runs (#774) · 1h 51m to merge#780 Retire the welcome question and the filing hints now that a new account carries its guide · 2h 18m to merge#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 1h 03m to merge#783 Give an Item row's title the width on a phone · 45m 10s to merge#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 37m 29s to merge#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 1h 02m to merge#794 Open an Item's form as a page of its own on a phone · 1h 33m to merge#796 Keep the selection bar on screen on a phone, without scrolling to it · 1h 56m to merge#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 1h 26m to merge#801 Edit an Item's type, status, priority and due date from chips on a phone · 1h 16m to merge#800 Share photos, files and links into Cockpit from Android's share sheet · 3h 05m to merge#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1h 07m to merge#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 1h 22m to merge#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 1h 14m to merge#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 38m 13s to merge#816 Stop rearranging a Dashboard from its Panel column (#812) · 29m 29s to merge#817 Open a Dashboard's filter bar with F (#811) · 54m 03s to merge#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 41m 11s to merge#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 49m 55s to merge#820 Resize the Go to panel column by dragging its edge (#815) · 24m 21s to merge#832 Remove the temporary session-title POC hook · 10m 02s to merge#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 1h 07m to merge#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 36m 47s to merge#838 Stop showing Any workspace on Inbox rows (#837) · 32m 05s to merge#839 Open each Agent session by naming the Agent and the item (#835) · 38m 17s to merge#847 Write every white surface in a named colour, not literal white (#842) · 42m 58s to merge#851 Keep a starred Gmail task in step with its star, both ways (#823) · 1h 12m to merge#841 End an Item's agent run from its Status, and bring it back on Undo · 1h 48m to merge#852 Keep a Panel out of proposals with Never propose (#848) · 1h 25m to merge#853 Paint the whole app dark when the device is set to dark (#843) · 1h 11m to merge#855 End the agent runs left open on Items already done or dismissed · 55m 17s to merge#854 Change what a Gmail connection follows, without reconnecting (#824) · 2h 14m to merge#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 1h 41m to merge#857 Show and Also show on… in the undo bar after moving an Item (#849) · 2h 12m to merge#858 Keep the Car view dark whenever the app is (#845) · 52m 35s to merge#859 Show and Also show on… after moving a selection (#850) · 54m 54s to merge#866 Show and hide the All items tab from the Workspace's menu (#862) · 41m 58s to merge#865 Keep the top of the board reachable after dropping a Panel low (#860) · 1h 28m to merge#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 3h 16m to merge#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 44m 38s to merge#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 45m 36s to merge#884 Hold a web test file's teardown until Milkdown's timers have fired · 23m 29s to merge#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 42m 22s to merge#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1h 19m to merge#888 Show each area of Cockpit, and mark source code in the core (#872) · 42m 00s to merge#889 Show which areas of Cockpit depend on which (#873) · 33m 10s to merge#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 1h 10m to merge#900 Show what changed in Cockpit's architecture since the last report (#874) · 39m 33s to merge#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 1h 14m to merge#903 Check a pulled connector on its cadence through the generic host (#891) · 2h 22m to merge#906 Connect and disconnect a source through one generic sign-in flow (#892) · 49m 30s to merge#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 4h 07m to merge#905 Add, rename and delete a titled Section on a Dashboard (#896) · 2h 17m to merge#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 57m 08s to merge#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 51m 43s to merge#912 Mirror an Item's open state back to a pulled source (#893) · 1h 34m to merge#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 54m 32s to merge#921 List the registry's connectors in the Connections window (#894) · 1h 40m to merge#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 27m 23s to merge#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 1h 26m to merge#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 1h 57m to merge#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 1h 03m to merge#934 Read a connector id as an Item's source (#925) · 1h 32m to merge#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 1h 52m to merge#937 Draw Modules as boxes and arrows in dependency order (#914) · 31m 04s to merge#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 1h 01m to merge#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 36m 10s to merge#947 Give each connector its own box on Modules, and show what is released together (#915) · 30m 56s to merge#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 1h 08m to merge#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 2h 18m to merge#949 Store Gmail Items under their connector id (#926) · 1h 59m to merge#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 1h 38m to merge#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 1h 13m to merge#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 1h 25m to merge#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 1h 25m to merge#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 57m 34s to merge#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 1h 08m to merge#956 Ask a connection's one choice on connecting, and change it later (#942) · 1h 48m to merge#958 Check a pulled connector again soon when its run says there is more to do (#957) · 1h 09m to merge#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 8h 31m to merge#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 1h 41m to merge#962 Learn from declined review findings in /periodic-review (#961) · 3m 07s to merge#964 Open each architecture diagram full size on its own page (#963) · 28m 00s to merge#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 45m 16s to merge#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 40m 03s to merge#980 Let the guest demo's seed name the sources it imitates (#968) · 2m 51s to merge#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 38m 50s to merge#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 35m 57s to merge#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 36m 25s to merge#983 Drop Gmail's old core tables and the follows column (#967) · 56m 58s to merge#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 58m 53s to merge#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 38m 45s to merge#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1h 10m to merge#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 1h 24m to merge#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 36m 03s to merge#998 Keep the HTTP layer to adapters (#991) · 44m 30s to merge#999 Decide filing an Item and saving a layout in the domain (#995) · 23m 54s to merge#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 1h 39m to merge#1001 Decide whether an agent may start in the domain (#996) · 21m 57s to merge#1002 Decide what connecting a source changes in the domain (#997) · 26m 30s to merge#1010 Fail CI when core code names a registered source in a string (#994) · 39m 08s to merge#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 55m 00s to merge#1011 Record local test runs and the browser pass on the pull request (#1007) · 1h 16m to merge#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 29m 31s to merge#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 36m 55s to merge#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 26h 04m to merge#1017 Rename the lead-time report to cycle time (#1006) · 24m 31s to merge#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 34m 57s to merge#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 38m 02s to merge#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 27m 11s to merge#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 1h 48m to merge#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 46m 48s to mergesize#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Rounds to merge

0246#765 Make Capture's chips compact and its note box resizable · 3 rounds#766 Switch the Capture note to formatted · 3 rounds#768 Let a backup go into a folder that's already there (#764) · 1 round#776 Refuse every connection change from the guest account (#772) · 1 round#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 1 round#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 2 rounds#779 Show agents at work in the guest demo, with simulated runs (#774) · 3 rounds#780 Retire the welcome question and the filing hints now that a new account carries its guide · 1 round#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 2 rounds#783 Give an Item row's title the width on a phone · 1 round#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 2 rounds#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 1 round#794 Open an Item's form as a page of its own on a phone · 3 rounds#796 Keep the selection bar on screen on a phone, without scrolling to it · 4 rounds#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 3 rounds#801 Edit an Item's type, status, priority and due date from chips on a phone · 4 rounds#800 Share photos, files and links into Cockpit from Android's share sheet · 6 rounds#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1 round#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 4 rounds#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 3 rounds#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 1 round#816 Stop rearranging a Dashboard from its Panel column (#812) · 2 rounds#817 Open a Dashboard's filter bar with F (#811) · 4 rounds#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 2 rounds#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 2 rounds#820 Resize the Go to panel column by dragging its edge (#815) · 1 round#832 Remove the temporary session-title POC hook · 1 round#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 2 rounds#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 2 rounds#838 Stop showing Any workspace on Inbox rows (#837) · 1 round#839 Open each Agent session by naming the Agent and the item (#835) · 1 round#847 Write every white surface in a named colour, not literal white (#842) · 1 round#851 Keep a starred Gmail task in step with its star, both ways (#823) · 2 rounds#841 End an Item's agent run from its Status, and bring it back on Undo · 4 rounds#852 Keep a Panel out of proposals with Never propose (#848) · 2 rounds#853 Paint the whole app dark when the device is set to dark (#843) · 3 rounds#855 End the agent runs left open on Items already done or dismissed · 2 rounds#854 Change what a Gmail connection follows, without reconnecting (#824) · 4 rounds#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 3 rounds#857 Show and Also show on… in the undo bar after moving an Item (#849) · 3 rounds#858 Keep the Car view dark whenever the app is (#845) · 1 round#859 Show and Also show on… after moving a selection (#850) · 3 rounds#866 Show and hide the All items tab from the Workspace's menu (#862) · 1 round#865 Keep the top of the board reachable after dropping a Panel low (#860) · 2 rounds#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2 rounds#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 1 round#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 3 rounds#884 Hold a web test file's teardown until Milkdown's timers have fired · 1 round#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 1 round#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 3 rounds#888 Show each area of Cockpit, and mark source code in the core (#872) · 2 rounds#889 Show which areas of Cockpit depend on which (#873) · 2 rounds#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 1 round#900 Show what changed in Cockpit's architecture since the last report (#874) · 3 rounds#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 2 rounds#903 Check a pulled connector on its cadence through the generic host (#891) · 3 rounds#906 Connect and disconnect a source through one generic sign-in flow (#892) · 2 rounds#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 2 rounds#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1 round#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 2 rounds#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 2 rounds#912 Mirror an Item's open state back to a pulled source (#893) · 1 round#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 2 rounds#921 List the registry's connectors in the Connections window (#894) · 3 rounds#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 2 rounds#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 3 rounds#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2 rounds#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 1 round#934 Read a connector id as an Item's source (#925) · 2 rounds#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 2 rounds#937 Draw Modules as boxes and arrows in dependency order (#914) · 2 rounds#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 2 rounds#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 2 rounds#947 Give each connector its own box on Modules, and show what is released together (#915) · 2 rounds#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 2 rounds#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 2 rounds#949 Store Gmail Items under their connector id (#926) · 2 rounds#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 2 rounds#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 1 round#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 2 rounds#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 3 rounds#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 2 rounds#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 2 rounds#956 Ask a connection's one choice on connecting, and change it later (#942) · 3 rounds#958 Check a pulled connector again soon when its run says there is more to do (#957) · 2 rounds#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 2 rounds#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 2 rounds#962 Learn from declined review findings in /periodic-review (#961) · 1 round#964 Open each architecture diagram full size on its own page (#963) · 1 round#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 1 round#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 1 round#980 Let the guest demo's seed name the sources it imitates (#968) · 1 round#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1 round#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 2 rounds#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1 round#983 Drop Gmail's old core tables and the follows column (#967) · 1 round#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 2 rounds#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 1 round#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1 round#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 1 round#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 3 rounds#998 Keep the HTTP layer to adapters (#991) · 1 round#999 Decide filing an Item and saving a layout in the domain (#995) · 2 rounds#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 2 rounds#1001 Decide whether an agent may start in the domain (#996) · 1 round#1002 Decide what connecting a source changes in the domain (#997) · 2 rounds#1010 Fail CI when core code names a registered source in a string (#994) · 1 round#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 1 round#1011 Record local test runs and the browser pass on the pull request (#1007) · 2 rounds#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 1 round#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 1 round#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 1 round#1017 Rename the lead-time report to cycle time (#1006) · 1 round#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 1 round#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 1 round#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 1 round#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 2 rounds#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 1 roundsize#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Red rounds

0%33%67%100%#765 Make Capture's chips compact and its note box resizable · 33% of its rounds red#779 Show agents at work in the guest demo, with simulated runs (#774) · 33% of its rounds red#794 Open an Item's form as a page of its own on a phone · 67% of its rounds red#796 Keep the selection bar on screen on a phone, without scrolling to it · 25% of its rounds red#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 67% of its rounds red#801 Edit an Item's type, status, priority and due date from chips on a phone · 50% of its rounds red#800 Share photos, files and links into Cockpit from Android's share sheet · 67% of its rounds red#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 25% of its rounds red#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 67% of its rounds red#817 Open a Dashboard's filter bar with F (#811) · 50% of its rounds red#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 50% of its rounds red#841 End an Item's agent run from its Status, and bring it back on Undo · 25% of its rounds red#854 Change what a Gmail connection follows, without reconnecting (#824) · 25% of its rounds red#857 Show and Also show on… in the undo bar after moving an Item (#849) · 67% of its rounds red#865 Keep the top of the board reachable after dropping a Panel low (#860) · 50% of its rounds red#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 50% of its rounds red#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 50% of its rounds red#903 Check a pulled connector on its cadence through the generic host (#891) · 67% of its rounds red#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 50% of its rounds red#921 List the registry's connectors in the Connections window (#894) · 33% of its rounds red#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 33% of its rounds red#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 50% of its rounds red#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 50% of its rounds red#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 50% of its rounds red#956 Ask a connection's one choice on connecting, and change it later (#942) · 67% of its rounds red#958 Check a pulled connector again soon when its run says there is more to do (#957) · 50% of its rounds red#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 50% of its rounds red#1011 Record local test runs and the browser pass on the pull request (#1007) · 50% of its rounds redsize#765 Make Capture's chips compact and its note box resizable · 68 lines changed#766 Switch the Capture note to formatted · 674 lines changed#768 Let a backup go into a folder that's already there (#764) · 760 lines changed#776 Refuse every connection change from the guest account (#772) · 362 lines changed#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · 773 lines changed#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · 813 lines changed#779 Show agents at work in the guest demo, with simulated runs (#774) · 801 lines changed#780 Retire the welcome question and the filing hints now that a new account carries its guide · 832 lines changed#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · 373 lines changed#783 Give an Item row's title the width on a phone · 169 lines changed#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · 53 lines changed#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · 612 lines changed#794 Open an Item's form as a page of its own on a phone · 690 lines changed#796 Keep the selection bar on screen on a phone, without scrolling to it · 906 lines changed#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · 992 lines changed#801 Edit an Item's type, status, priority and due date from chips on a phone · 708 lines changed#800 Share photos, files and links into Cockpit from Android's share sheet · 1562 lines changed#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · 1116 lines changed#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · 953 lines changed#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · 511 lines changed#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · 13 lines changed#816 Stop rearranging a Dashboard from its Panel column (#812) · 512 lines changed#817 Open a Dashboard's filter bar with F (#811) · 367 lines changed#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · 1122 lines changed#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · 1360 lines changed#820 Resize the Go to panel column by dragging its edge (#815) · 370 lines changed#832 Remove the temporary session-title POC hook · 12 lines changed#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · 948 lines changed#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · 530 lines changed#838 Stop showing Any workspace on Inbox rows (#837) · 83 lines changed#839 Open each Agent session by naming the Agent and the item (#835) · 110 lines changed#847 Write every white surface in a named colour, not literal white (#842) · 60 lines changed#851 Keep a starred Gmail task in step with its star, both ways (#823) · 504 lines changed#841 End an Item's agent run from its Status, and bring it back on Undo · 616 lines changed#852 Keep a Panel out of proposals with Never propose (#848) · 626 lines changed#853 Paint the whole app dark when the device is set to dark (#843) · 933 lines changed#855 End the agent runs left open on Items already done or dismissed · 217 lines changed#854 Change what a Gmail connection follows, without reconnecting (#824) · 719 lines changed#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · 356 lines changed#857 Show and Also show on… in the undo bar after moving an Item (#849) · 660 lines changed#858 Keep the Car view dark whenever the app is (#845) · 164 lines changed#859 Show and Also show on… after moving a selection (#850) · 449 lines changed#866 Show and hide the All items tab from the Workspace's menu (#862) · 288 lines changed#865 Keep the top of the board reachable after dropping a Panel low (#860) · 244 lines changed#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · 2278 lines changed#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · 754 lines changed#881 Draw Cockpit's deployment every night, beside the other reports (#871) · 1390 lines changed#884 Hold a web test file's teardown until Milkdown's timers have fired · 45 lines changed#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · 66 lines changed#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · 1399 lines changed#888 Show each area of Cockpit, and mark source code in the core (#872) · 1262 lines changed#889 Show which areas of Cockpit depend on which (#873) · 464 lines changed#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · 294 lines changed#900 Show what changed in Cockpit's architecture since the last report (#874) · 788 lines changed#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · 100 lines changed#903 Check a pulled connector on its cadence through the generic host (#891) · 1953 lines changed#906 Connect and disconnect a source through one generic sign-in flow (#892) · 1470 lines changed#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · 3241 lines changed#905 Add, rename and delete a titled Section on a Dashboard (#896) · 1283 lines changed#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · 421 lines changed#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · 528 lines changed#912 Mirror an Item's open state back to a pulled source (#893) · 865 lines changed#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · 289 lines changed#921 List the registry's connectors in the Connections window (#894) · 315 lines changed#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · 604 lines changed#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · 457 lines changed#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · 2273 lines changed#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · 3 lines changed#934 Read a connector id as an Item's source (#925) · 175 lines changed#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · 597 lines changed#937 Draw Modules as boxes and arrows in dependency order (#914) · 395 lines changed#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · 444 lines changed#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · 338 lines changed#947 Give each connector its own box on Modules, and show what is released together (#915) · 716 lines changed#946 Export a period's usage records as CSV with pnpm usage:export (#918) · 771 lines changed#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · 231 lines changed#949 Store Gmail Items under their connector id (#926) · 326 lines changed#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · 954 lines changed#951 Close a pulled connector's Items its complete listing no longer sees (#938) · 516 lines changed#952 Name each source by its connector, and read Gmail Items as gmail (#927) · 745 lines changed#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · 272 lines changed#954 Let a pulled connector give up on an open state its source refuses for good (#940) · 164 lines changed#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · 630 lines changed#956 Ask a connection's one choice on connecting, and change it later (#942) · 1269 lines changed#958 Check a pulled connector again soon when its run says there is more to do (#957) · 163 lines changed#959 Build Gmail as a connector package on the SDK, unregistered (#943) · 3153 lines changed#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · 7730 lines changed#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-0610-0710-0810-0910-1010-1110-12

Where the harness minutes go

LocalLocal code reviewLocal security reviewLocal test runBrowser pass
CITests and checks

A pull request with no session record has no local lanes; hover its bar and it says not recorded, which is not zero.

0m34m68m101m#962 Learn from declined review findings in /periodic-review (#961) Tests and checks: 30s Local test run: not recorded Browser pass: not recorded#962 Learn from declined review findings in /periodic-review (#961) Local code review: 21s Local test run: not recorded Browser pass: not recorded#964 Open each architecture diagram full size on its own page (#963) Tests and checks: 18m 33s Local test run: not recorded Browser pass: not recorded#964 Open each architecture diagram full size on its own page (#963) Local code review: 2m 17s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Tests and checks: 42m 01s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Local code review: 53s Local test run: not recorded Browser pass: not recorded#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) Local security review: 52s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Tests and checks: 17m 01s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Local code review: 2m 27s Local test run: not recorded Browser pass: not recorded#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) Local security review: 2m 27s Local test run: not recorded Browser pass: not recorded#980 Let the guest demo's seed name the sources it imitates (#968) Tests and checks: 30s Local test run: not recorded Browser pass: not recorded#980 Let the guest demo's seed name the sources it imitates (#968) Local code review: 14s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Tests and checks: 21m 20s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Local code review: 2m 50s Local test run: not recorded Browser pass: not recorded#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) Local security review: 34s Local test run: not recorded Browser pass: not recorded#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) Tests and checks: 25m 12s Local test run: not recorded Browser pass: not recorded#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) Tests and checks: 21m 03s Local test run: not recorded Browser pass: not recorded#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) Local code review: 2m 09s Local test run: not recorded Browser pass: not recorded#983 Drop Gmail's old core tables and the follows column (#967) Tests and checks: 21m 40s Local test run: not recorded Browser pass: not recorded#983 Drop Gmail's old core tables and the follows column (#967) Local code review: 43s Local test run: not recorded Browser pass: not recorded#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) Tests and checks: 39m 27s Local test run: not recorded Browser pass: not recorded#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) Local code review: 53s Local test run: not recorded Browser pass: not recorded#986 Upload past Claude Code session logs to the Harness Monitor (#975) Tests and checks: 18m 27s Local test run: not recorded Browser pass: not recorded#986 Upload past Claude Code session logs to the Harness Monitor (#975) Local code review: 1m 51s Local test run: not recorded Browser pass: not recorded#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) Tests and checks: 21m 44s Local test run: not recorded Browser pass: not recorded#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) Local code review: 4m 22s Local test run: not recorded Browser pass: not recorded#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) Tests and checks: 1h 01m Local test run: not recorded Browser pass: not recorded#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) Local code review: 2m 57s Local test run: not recorded Browser pass: not recorded#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) Tests and checks: 22m 53s Local test run: not recorded Browser pass: not recorded#998 Keep the HTTP layer to adapters (#991) Tests and checks: 7m 34s Local test run: not recorded Browser pass: not recorded#998 Keep the HTTP layer to adapters (#991) Local code review: 1m 43s Local test run: not recorded Browser pass: not recorded#999 Decide filing an Item and saving a layout in the domain (#995) Tests and checks: 22m 21s Local test run: not recorded Browser pass: not recorded#1000 Store every connector Item under its connector id, old Gmail Items included (#993) Tests and checks: 38m 02s Local test run: not recorded Browser pass: not recorded#1001 Decide whether an agent may start in the domain (#996) Tests and checks: 21m 17s Local test run: not recorded Browser pass: not recorded#1002 Decide what connecting a source changes in the domain (#997) Tests and checks: 25m 41s Local test run: not recorded Browser pass: not recorded#1010 Fail CI when core code names a registered source in a string (#994) Tests and checks: 21m 17s Local test run: not recorded Browser pass: not recorded#1010 Fail CI when core code names a registered source in a string (#994) Local code review: 7m 59s Local test run: not recorded Browser pass: not recorded#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) Tests and checks: 39m 19s Local test run: not recorded Browser pass: not recorded#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) Local code review: 1m 00s Local test run: not recorded Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Tests and checks: 42m 16s Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Local code review: 5m 35s Browser pass: not recorded#1011 Record local test runs and the browser pass on the pull request (#1007) Local test run: 12m 03s Browser pass: not recorded#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report Tests and checks: 21m 55s Local test run: not recorded Browser pass: not recorded#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report Local code review: 57s Local test run: not recorded Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Tests and checks: 21m 46s Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Local code review: 1m 53s Browser pass: not recorded#1014 Draw local test runs and the browser pass on the lead-time page (#1008) Local test run: 9s Browser pass: not recorded#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) Tests and checks: 16m 57s Local test run: not recorded Browser pass: not recorded#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) Local code review: 11m 38s Local test run: not recorded Browser pass: not recorded#1017 Rename the lead-time report to cycle time (#1006) Tests and checks: 16m 58s#1017 Rename the lead-time report to cycle time (#1006) Local code review: 1m 00s#1017 Rename the lead-time report to cycle time (#1006) Local security review: 51s#1017 Rename the lead-time report to cycle time (#1006) Local test run: 19s#1017 Rename the lead-time report to cycle time (#1006) Browser pass: 13s#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) Tests and checks: 21m 10s Local test run: not recorded Browser pass: not recorded#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) Local code review: 8m 08s Local test run: not recorded Browser pass: not recorded#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Tests and checks: 20m 58s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Local code review: 1m 11s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Local test run: 8s#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) Browser pass: 1m 53s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Tests and checks: 19m 00s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Local code review: 1m 24s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Local test run: 22s#1024 Price every waiting request with one pnpm harness:run prices (#1021) Browser pass: 45s#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) Tests and checks: 1h 04m Local test run: not recorded Browser pass: not recorded#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) Local code review: 26m 27s Local test run: not recorded Browser pass: not recorded#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Tests and checks: 21m 28s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Local code review: 56s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Local test run: 9s#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) Browser pass: 3m 34ssize#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-1010-1110-12

Start to merge

0m522m1043m1565m#962 Learn from declined review findings in /periodic-review (#961) · 3m 07s to merge#964 Open each architecture diagram full size on its own page (#963) · 28m 00s to merge#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 45m 16s to merge#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 40m 03s to merge#980 Let the guest demo's seed name the sources it imitates (#968) · 2m 51s to merge#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 38m 50s to merge#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 35m 57s to merge#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 36m 25s to merge#983 Drop Gmail's old core tables and the follows column (#967) · 56m 58s to merge#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 58m 53s to merge#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 38m 45s to merge#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1h 10m to merge#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 1h 24m to merge#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 36m 03s to merge#998 Keep the HTTP layer to adapters (#991) · 44m 30s to merge#999 Decide filing an Item and saving a layout in the domain (#995) · 23m 54s to merge#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 1h 39m to merge#1001 Decide whether an agent may start in the domain (#996) · 21m 57s to merge#1002 Decide what connecting a source changes in the domain (#997) · 26m 30s to merge#1010 Fail CI when core code names a registered source in a string (#994) · 39m 08s to merge#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 55m 00s to merge#1011 Record local test runs and the browser pass on the pull request (#1007) · 1h 16m to merge#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 29m 31s to merge#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 36m 55s to merge#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 26h 04m to merge#1017 Rename the lead-time report to cycle time (#1006) · 24m 31s to merge#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 34m 57s to merge#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 38m 02s to merge#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 27m 11s to merge#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 1h 48m to merge#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 46m 48s to mergesize#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-1010-1110-12

Rounds to merge

0246#962 Learn from declined review findings in /periodic-review (#961) · 1 round#964 Open each architecture diagram full size on its own page (#963) · 1 round#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 1 round#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 1 round#980 Let the guest demo's seed name the sources it imitates (#968) · 1 round#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1 round#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 2 rounds#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1 round#983 Drop Gmail's old core tables and the follows column (#967) · 1 round#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 2 rounds#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 1 round#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1 round#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 1 round#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 3 rounds#998 Keep the HTTP layer to adapters (#991) · 1 round#999 Decide filing an Item and saving a layout in the domain (#995) · 2 rounds#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 2 rounds#1001 Decide whether an agent may start in the domain (#996) · 1 round#1002 Decide what connecting a source changes in the domain (#997) · 2 rounds#1010 Fail CI when core code names a registered source in a string (#994) · 1 round#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 1 round#1011 Record local test runs and the browser pass on the pull request (#1007) · 2 rounds#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 1 round#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 1 round#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 1 round#1017 Rename the lead-time report to cycle time (#1006) · 1 round#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 1 round#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 1 round#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 1 round#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 2 rounds#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 1 roundsize#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-1010-1110-12

Red rounds

0%33%67%100%#1011 Record local test runs and the browser pass on the pull request (#1007) · 50% of its rounds redsize#962 Learn from declined review findings in /periodic-review (#961) · 20 lines changed#964 Open each architecture diagram full size on its own page (#963) · 277 lines changed#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · 66 lines changed#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · 463 lines changed#980 Let the guest demo's seed name the sources it imitates (#968) · 2 lines changed#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · 1169 lines changed#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · 552 lines changed#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · 1019 lines changed#983 Drop Gmail's old core tables and the follows column (#967) · 342 lines changed#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · 834 lines changed#986 Upload past Claude Code session logs to the Harness Monitor (#975) · 396 lines changed#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · 1599 lines changed#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · 488 lines changed#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · 815 lines changed#998 Keep the HTTP layer to adapters (#991) · 478 lines changed#999 Decide filing an Item and saving a layout in the domain (#995) · 1023 lines changed#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · 627 lines changed#1001 Decide whether an agent may start in the domain (#996) · 159 lines changed#1002 Decide what connecting a source changes in the domain (#997) · 206 lines changed#1010 Fail CI when core code names a registered source in a string (#994) · 186 lines changed#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · 787 lines changed#1011 Record local test runs and the browser pass on the pull request (#1007) · 622 lines changed#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · 198 lines changed#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · 477 lines changed#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · 729 lines changed#1017 Rename the lead-time report to cycle time (#1006) · 302 lines changed#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · 347 lines changed#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · 354 lines changed#1024 Price every waiting request with one pnpm harness:run prices (#1021) · 159 lines changed#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · 742 lines changed#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · 647 lines changed10-1010-1110-12

Coding against the harness

Minutes spent writing and fixing against minutes spent in the harness, the rounds plus local review, test runs and the browser pass. Every pull request pays a fixed harness cost, so a small change sits above the dashed line whatever it did; read the minutes beside the ratio. No line is drawn as healthy, since there is no accepted benchmark for this ratio: the reference is the window’s own median.

14 days (only 7 covered)

00 3030 6060 9090 120120 #1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) · coding and fixing 19m 40s · in the harness 26m 06s · ratio 1.3× · 1 round#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) · coding and fixing 17m 26s · in the harness 1h 30m · ratio 5.2× · 2 rounds#1023#1024 Price every waiting request with one pnpm harness:run prices (#1021) · coding and fixing 4m 34s · in the harness 21m 29s · ratio 4.7× · 1 round#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) · coding and fixing 12m 41s · in the harness 24m 11s · ratio 1.9× · 1 round#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) · coding and fixing 5m 07s · in the harness 29m 18s · ratio 5.7× · 1 round#1017 Rename the lead-time report to cycle time (#1006) · coding and fixing 5m 04s · in the harness 18m 30s · ratio 3.7× · 1 round#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) · coding and fixing 25h 35m · in the harness 28m 35s · ratio 0.02× · 1 round · beyond the scale, so drawn on its edge#1014 Draw local test runs and the browser pass on the lead-time page (#1008) · coding and fixing 12m 12s · in the harness 23m 47s · ratio 1.9× · 1 round#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report · coding and fixing 5m 42s · in the harness 22m 52s · ratio 4.0× · 1 round#1011 Record local test runs and the browser pass on the pull request (#1007) · coding and fixing 16m 26s · in the harness 59m 26s · ratio 3.6× · 2 rounds#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) · coding and fixing 14m 21s · in the harness 40m 19s · ratio 2.8× · 1 round#1010 Fail CI when core code names a registered source in a string (#994) · coding and fixing 8m 44s · in the harness 29m 16s · ratio 3.3× · 1 round#1002 Decide what connecting a source changes in the domain (#997) · coding and fixing 19s · in the harness 25m 41s · ratio 81× · 2 rounds#1001 Decide whether an agent may start in the domain (#996) · coding and fixing 9s · in the harness 21m 17s · ratio 142× · 1 round#1000 Store every connector Item under its connector id, old Gmail Items included (#993) · coding and fixing 1h 00m · in the harness 38m 02s · ratio 0.63× · 2 rounds#999 Decide filing an Item and saving a layout in the domain (#995) · coding and fixing 23s · in the harness 22m 21s · ratio 57× · 2 rounds#998 Keep the HTTP layer to adapters (#991) · coding and fixing 34m 17s · in the harness 9m 17s · ratio 0.27× · 1 round#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) · coding and fixing 11m 44s · in the harness 22m 53s · ratio 1.9× · 3 rounds#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) · coding and fixing 19m 46s · in the harness 1h 04m · ratio 3.2× · 1 round#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) · coding and fixing 42m 53s · in the harness 26m 06s · ratio 0.61× · 1 round#986 Upload past Claude Code session logs to the Harness Monitor (#975) · coding and fixing 17m 14s · in the harness 20m 18s · ratio 1.2× · 1 round#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) · coding and fixing 18m 04s · in the harness 40m 20s · ratio 2.2× · 2 rounds#983 Drop Gmail's old core tables and the follows column (#967) · coding and fixing 33m 00s · in the harness 22m 23s · ratio 0.68× · 1 round#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) · coding and fixing 11m 42s · in the harness 23m 12s · ratio 2.0× · 1 round#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) · coding and fixing 9m 37s · in the harness 25m 12s · ratio 2.6× · 2 rounds#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) · coding and fixing 13m 11s · in the harness 24m 45s · ratio 1.9× · 1 round#980 Let the guest demo's seed name the sources it imitates (#968) · coding and fixing 1m 19s · in the harness 44s · ratio 0.56× · 1 round#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) · coding and fixing 19m 33s · in the harness 19m 28s · ratio 1.00× · 1 round#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) · coding and fixing 1m 51s · in the harness 42m 54s · ratio 23× · 1 round#964 Open each architecture diagram full size on its own page (#963) · coding and fixing 6m 05s · in the harness 20m 50s · ratio 3.4× · 1 round#962 Learn from declined review findings in /periodic-review (#961) · coding and fixing 1m 28s · in the harness 51s · ratio 0.58× · 1 round#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) · coding and fixing 55m 29s · in the harness 41m 10s · ratio 0.74× · 2 rounds#959 Build Gmail as a connector package on the SDK, unregistered (#943) · coding and fixing 8h 02m · in the harness 27m 13s · ratio 0.06× · 2 rounds · beyond the scale, so drawn on its edge#958 Check a pulled connector again soon when its run says there is more to do (#957) · coding and fixing 26m 22s · in the harness 42m 21s · ratio 1.6× · 2 rounds#956 Ask a connection's one choice on connecting, and change it later (#942) · coding and fixing 23m 23s · in the harness 1h 24m · ratio 3.6× · 3 rounds#956#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) · coding and fixing 22m 18s · in the harness 44m 51s · ratio 2.0× · 2 rounds#954 Let a pulled connector give up on an open state its source refuses for good (#940) · coding and fixing 29m 36s · in the harness 26m 58s · ratio 0.91× · 2 rounds#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) · coding and fixing 26m 35s · in the harness 58m 06s · ratio 2.2× · 3 rounds#952 Name each source by its connector, and read Gmail Items as gmail (#927) · coding and fixing 44m 46s · in the harness 39m 47s · ratio 0.89× · 2 rounds#951 Close a pulled connector's Items its complete listing no longer sees (#938) · coding and fixing 40m 43s · in the harness 31m 10s · ratio 0.77× · 1 round#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) · coding and fixing 55m 16s · in the harness 42m 03s · ratio 0.76× · 2 rounds#949 Store Gmail Items under their connector id (#926) · coding and fixing 48m 41s · in the harness 1h 09m · ratio 1.4× · 2 rounds#948 Put Claude Code behind an engine list, and let CI hold it there (#879) · coding and fixing 1h 00m · in the harness 1h 17m · ratio 1.3× · 2 rounds#946 Export a period's usage records as CSV with pnpm usage:export (#918) · coding and fixing 23m 06s · in the harness 44m 16s · ratio 1.9× · 2 rounds#947 Give each connector its own box on Modules, and show what is released together (#915) · coding and fixing 5m 33s · in the harness 25m 07s · ratio 4.5× · 2 rounds#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) · coding and fixing 10m 36s · in the harness 24m 29s · ratio 2.3× · 2 rounds#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard · coding and fixing 13m 56s · in the harness 46m 06s · ratio 3.3× · 2 rounds#937 Draw Modules as boxes and arrows in dependency order (#914) · coding and fixing 7m 04s · in the harness 23m 49s · ratio 3.4× · 2 rounds#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) · coding and fixing 50m 29s · in the harness 1h 01m · ratio 1.2× · 2 rounds#934 Read a connector id as an Item's source (#925) · coding and fixing 48m 31s · in the harness 42m 17s · ratio 0.87× · 2 rounds#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) · coding and fixing 44m 54s · in the harness 17m 00s · ratio 0.38× · 1 round#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) · coding and fixing 1h 14m · in the harness 41m 32s · ratio 0.56× · 2 rounds#930 Move an Item from one Panel's row without taking it off its other Panels (#923) · coding and fixing 33m 36s · in the harness 52m 02s · ratio 1.5× · 3 rounds#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) · coding and fixing 24s · in the harness 25m 35s · ratio 64× · 2 rounds#921 List the registry's connectors in the Connections window (#894) · coding and fixing 25m 56s · in the harness 1h 13m · ratio 2.8× · 3 rounds#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) · coding and fixing 21m 30s · in the harness 32m 15s · ratio 1.5× · 2 rounds#912 Mirror an Item's open state back to a pulled source (#893) · coding and fixing 1h 04m · in the harness 28m 44s · ratio 0.45× · 1 round#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) · coding and fixing 25m 43s · in the harness 25m 10s · ratio 0.98× · 2 rounds#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) · coding and fixing 28m 38s · in the harness 27m 55s · ratio 0.97× · 2 rounds#905 Add, rename and delete a titled Section on a Dashboard (#896) · coding and fixing 1h 43m · in the harness 33m 26s · ratio 0.32× · 1 round#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) · coding and fixing 3h 22m · in the harness 43m 58s · ratio 0.22× · 2 rounds · beyond the scale, so drawn on its edge#906 Connect and disconnect a source through one generic sign-in flow (#892) · coding and fixing 23m 16s · in the harness 25m 00s · ratio 1.1× · 2 rounds#903 Check a pulled connector on its cadence through the generic host (#891) · coding and fixing 1h 24m · in the harness 56m 32s · ratio 0.67× · 3 rounds#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) · coding and fixing 9m 47s · in the harness 1h 03m · ratio 6.5× · 2 rounds#900 Show what changed in Cockpit's architecture since the last report (#874) · coding and fixing 10m 43s · in the harness 27m 34s · ratio 2.6× · 3 rounds#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) · coding and fixing 44m 54s · in the harness 24m 38s · ratio 0.55× · 1 round#889 Show which areas of Cockpit depend on which (#873) · coding and fixing 9m 55s · in the harness 22m 21s · ratio 2.3× · 2 rounds#888 Show each area of Cockpit, and mark source code in the core (#872) · coding and fixing 16m 05s · in the harness 24m 33s · ratio 1.5× · 2 rounds#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) · coding and fixing 37m 06s · in the harness 41m 01s · ratio 1.1× · 3 rounds#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) · coding and fixing 20m 54s · in the harness 20m 21s · ratio 0.97× · 1 round#881 Draw Cockpit's deployment every night, beside the other reports (#871) · coding and fixing 12m 05s · in the harness 32m 32s · ratio 2.7× · 3 rounds#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) · coding and fixing 21m 32s · in the harness 22m 05s · ratio 1.0× · 1 round#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) · coding and fixing 1h 44m · in the harness 1h 31m · ratio 0.87× · 2 rounds#865 Keep the top of the board reachable after dropping a Panel low (#860) · coding and fixing 25m 05s · in the harness 1h 02m · ratio 2.5× · 2 rounds#866 Show and hide the All items tab from the Workspace's menu (#862) · coding and fixing 15m 31s · in the harness 25m 09s · ratio 1.6× · 1 round#859 Show and Also show on… after moving a selection (#850) · coding and fixing 27m 41s · in the harness 26m 47s · ratio 0.97× · 3 rounds#858 Keep the Car view dark whenever the app is (#845) · coding and fixing 32m 40s · in the harness 19m 09s · ratio 0.59× · 1 round#857 Show and Also show on… in the undo bar after moving an Item (#849) · coding and fixing 1h 24m · in the harness 47m 41s · ratio 0.57× · 3 rounds#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) · coding and fixing 47m 09s · in the harness 53m 25s · ratio 1.1× · 3 rounds#854 Change what a Gmail connection follows, without reconnecting (#824) · coding and fixing 53m 52s · in the harness 1h 20m · ratio 1.5× · 4 rounds#855 End the agent runs left open on Items already done or dismissed · coding and fixing 26m 00s · in the harness 28m 09s · ratio 1.1× · 2 rounds#853 Paint the whole app dark when the device is set to dark (#843) · coding and fixing 32m 37s · in the harness 37m 58s · ratio 1.2× · 3 rounds#852 Keep a Panel out of proposals with Never propose (#848) · coding and fixing 47m 14s · in the harness 36m 28s · ratio 0.77× · 2 rounds#841 End an Item's agent run from its Status, and bring it back on Undo · coding and fixing 32m 38s · in the harness 1h 15m · ratio 2.3× · 4 rounds#851 Keep a starred Gmail task in step with its star, both ways (#823) · coding and fixing 34m 47s · in the harness 36m 32s · ratio 1.1× · 2 rounds#847 Write every white surface in a named colour, not literal white (#842) · coding and fixing 9m 11s · in the harness 33m 03s · ratio 3.6× · 1 round#839 Open each Agent session by naming the Agent and the item (#835) · coding and fixing 15m 05s · in the harness 21m 30s · ratio 1.4× · 1 round#838 Stop showing Any workspace on Inbox rows (#837) · coding and fixing 9m 09s · in the harness 21m 00s · ratio 2.3× · 1 round#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) · coding and fixing 12m 32s · in the harness 23m 04s · ratio 1.8× · 2 rounds#826 Connect Gmail by star, and bring in conversations starred from then on (#822) · coding and fixing 34m 46s · in the harness 31m 22s · ratio 0.90× · 2 rounds#820 Resize the Go to panel column by dragging its edge (#815) · coding and fixing 8m 48s · in the harness 15m 15s · ratio 1.7× · 1 round#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) · coding and fixing 23m 30s · in the harness 25m 46s · ratio 1.1× · 2 rounds#818 Go to a Panel of this Dashboard from the keyboard with G (#813) · coding and fixing 15m 01s · in the harness 25m 12s · ratio 1.7× · 2 rounds#817 Open a Dashboard's filter bar with F (#811) · coding and fixing 9m 36s · in the harness 43m 23s · ratio 4.5× · 4 rounds#816 Stop rearranging a Dashboard from its Panel column (#812) · coding and fixing 7m 21s · in the harness 21m 15s · ratio 2.9× · 2 rounds#809 Keep a two-item list as a list in the note-cleanup prompt (#705) · coding and fixing 11m 36s · in the harness 25m 42s · ratio 2.2× · 1 round#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) · coding and fixing 32m 14s · in the harness 40m 40s · ratio 1.3× · 3 rounds#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) · coding and fixing 27m 20s · in the harness 53m 40s · ratio 2.0× · 4 rounds#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) · coding and fixing 36m 31s · in the harness 29m 41s · ratio 0.81× · 1 round#800 Share photos, files and links into Cockpit from Android's share sheet · coding and fixing 1h 30m · in the harness 1h 34m · ratio 1.0× · 6 rounds#801 Edit an Item's type, status, priority and due date from chips on a phone · coding and fixing 32m 40s · in the harness 43m 05s · ratio 1.3× · 4 rounds#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) · coding and fixing 51m 21s · in the harness 34m 43s · ratio 0.68× · 3 rounds#796 Keep the selection bar on screen on a phone, without scrolling to it · coding and fixing 39m 43s · in the harness 1h 16m · ratio 1.9× · 4 rounds#794 Open an Item's form as a page of its own on a phone · coding and fixing 34m 17s · in the harness 58m 48s · ratio 1.7× · 3 rounds#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) · coding and fixing 39m 25s · in the harness 22m 23s · ratio 0.57× · 1 round#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) · coding and fixing 11m 13s · in the harness 25m 56s · ratio 2.3× · 2 rounds#783 Give an Item row's title the width on a phone · coding and fixing 19m 57s · in the harness 24m 48s · ratio 1.2× · 1 round#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) · coding and fixing 18m 51s · in the harness 44m 19s · ratio 2.4× · 2 rounds#780 Retire the welcome question and the filing hints now that a new account carries its guide · coding and fixing 48m 05s · in the harness 1h 29m · ratio 1.9× · 1 round#779 Show agents at work in the guest demo, with simulated runs (#774) · coding and fixing 28m 10s · in the harness 1h 23m · ratio 3.0× · 3 rounds#779#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit · coding and fixing 1h 28m · in the harness 32m 07s · ratio 0.36× · 2 rounds#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit · coding and fixing 28m 12s · in the harness 17m 51s · ratio 0.63× · 1 round#776 Refuse every connection change from the guest account (#772) · coding and fixing 25m 18s · in the harness 16m 34s · ratio 0.65× · 1 round#768 Let a backup go into a folder that's already there (#764) · coding and fixing 12m 50s · in the harness 16m 34s · ratio 1.3× · 1 round#766 Switch the Capture note to formatted · coding and fixing 25m 39s · in the harness 36m 07s · ratio 1.4× · 3 rounds#765 Make Capture's chips compact and its note box resizable · coding and fixing 7m 09s · in the harness 36m 50s · ratio 5.1× · 3 rounds#763 Keep a note's formatting when Cockpit rewrites it (#756) · coding and fixing 11m 34s · in the harness 37m 20s · ratio 3.2× · 2 rounds#760 Switch the Car view dark from inside it, for capturing at night (#753) · coding and fixing 47m 31s · in the harness 19m 32s · ratio 0.41× · 1 round Minutes coding and fixing Minutes in the harness
the harness took as long as the coding this window’s median ratio dot size: 1 round, and 5 hollow on the edge: off the chart

Median ratio 1.5× over 118 pull requests.

Scale to 2h 00m on both axes; 3 dots beyond it, drawn hollow on the edge. The three furthest above the dashed line are named. Hover or focus a dot for its figures; it opens the pull request.

2 merged pull requests in this window carry no session record and are not on the chart.

The figures behind the dots
Pull requestCoding and fixingIn the harnessRatioRounds
#1026 Draw a cycle-time strip to scale, name its CI Rounds, and zoom into it (#1025) 19m 40s 26m 06s 1.3× 1
#1023 Link every branch that has a pull request, and stop calling caught-up branches linking (#1020) 17m 26s 1h 30m 5.2× 2
#1024 Price every waiting request with one pnpm harness:run prices (#1021) 4m 34s 21m 29s 4.7× 1
#1022 Draw parallel local reviews as parallel lanes, each at its own length (#1019) 12m 41s 24m 11s 1.9× 1
#1018 Link branches without GitHub timing out on a 100-pull-request page (#1016) 5m 07s 29m 18s 5.7× 1
#1017 Rename the lead-time report to cycle time (#1006) 5m 04s 18m 30s 3.7× 1
#1015 Start the Harness Monitor's jobs by hand, and show what each job's last run did (#1013) 25h 35m 28m 35s 0.02× 1 off the chart
#1014 Draw local test runs and the browser pass on the lead-time page (#1008) 12m 12s 23m 47s 1.9× 1
#1012 Show each check's last run beside its 7- and 30-day rates on the CI stability report 5m 42s 22m 52s 4.0× 1
#1011 Record local test runs and the browser pass on the pull request (#1007) 16m 26s 59m 26s 3.6× 2
#1009 Show local code and security review time on the lead-time page, apart from CI (#1004) 14m 21s 40m 19s 2.8× 1
#1010 Fail CI when core code names a registered source in a string (#994) 8m 44s 29m 16s 3.3× 1
#1002 Decide what connecting a source changes in the domain (#997) 19s 25m 41s 81× 2
#1001 Decide whether an agent may start in the domain (#996) 9s 21m 17s 142× 1
#1000 Store every connector Item under its connector id, old Gmail Items included (#993) 1h 00m 38m 02s 0.63× 2
#999 Decide filing an Item and saving a layout in the domain (#995) 23s 22m 21s 57× 2
#998 Keep the HTTP layer to adapters (#991) 34m 17s 9m 17s 0.27× 1
#989 Open one pull request's Claude Code costs, and export the rows as CSV (#977) 11m 44s 22m 53s 1.9× 3
#987 Include or exclude a Dashboard in a Filter panel's conditions (#985) 19m 46s 1h 04m 3.2× 1
#988 Show Claude Code costs grouped by pull request, issue, engineer, category or day, with filters (#976) 42m 53s 26m 06s 0.61× 1
#986 Upload past Claude Code session logs to the Harness Monitor (#975) 17m 14s 20m 18s 1.2× 1
#984 Link each session's branch to its pull request, issue and engineer, hourly (#974) 18m 04s 40m 20s 2.2× 2
#983 Drop Gmail's old core tables and the follows column (#967) 33m 00s 22m 23s 0.68× 1
#982 Price Claude Code usage from a daily price list, and say which tokens have no price (#973) 11m 42s 23m 12s 2.0× 1
#981 Report each Claude Code session's usage to the Harness Monitor from a hook, with its category (#972) 9m 37s 25m 12s 2.6× 2
#979 Stand up the Harness Monitor: store each Claude Code request once, and show daily token totals (#971) 13m 11s 24m 45s 1.9× 1
#980 Let the guest demo's seed name the sources it imitates (#968) 1m 19s 44s 0.56× 1
#978 Empty the import-rule allowlist, so every API area imports only those below it (#966) 19m 33s 19m 28s 1.00× 1
#969 Stop a build relaxing the architecture document without the engineer agreeing (#965) 1m 51s 42m 54s 23× 1
#964 Open each architecture diagram full size on its own page (#963) 6m 05s 20m 50s 3.4× 1
#962 Learn from declined review findings in /periodic-review (#961) 1m 28s 51s 0.58× 1
#960 Run Gmail on the generic connector host, and reconnect each Gmail account once (#944) 55m 29s 41m 10s 0.74× 2
#959 Build Gmail as a connector package on the SDK, unregistered (#943) 8h 02m 27m 13s 0.06× 2 off the chart
#958 Check a pulled connector again soon when its run says there is more to do (#957) 26m 22s 42m 21s 1.6× 2
#956 Ask a connection's one choice on connecting, and change it later (#942) 23m 23s 1h 24m 3.6× 3
#955 Let a connector's sign-in ask for more, refuse a grant, and be revoked on disconnect (#941) 22m 18s 44m 51s 2.0× 2
#954 Let a pulled connector give up on an open state its source refuses for good (#940) 29m 36s 26m 58s 0.91× 2
#953 Bring a pulled connector's Items in as titled Tasks where it says so (#939) 26m 35s 58m 06s 2.2× 3
#952 Name each source by its connector, and read Gmail Items as gmail (#927) 44m 46s 39m 47s 0.89× 2
#951 Close a pulled connector's Items its complete listing no longer sees (#938) 40m 43s 31m 10s 0.77× 1
#950 Record Workers AI and Claude Code calls, and fail any provider call around the gateway (#919) 55m 16s 42m 03s 0.76× 2
#949 Store Gmail Items under their connector id (#926) 48m 41s 1h 09m 1.4× 2
#948 Put Claude Code behind an engine list, and let CI hold it there (#879) 1h 00m 1h 17m 1.3× 2
#946 Export a period's usage records as CSV with pnpm usage:export (#918) 23m 06s 44m 16s 1.9× 2
#947 Give each connector its own box on Modules, and show what is released together (#915) 5m 33s 25m 07s 4.5× 2
#945 Move a selection off only the Panels of the Dashboard it was selected on (#924) 10m 36s 24m 29s 2.3× 2
#935 Choose a Filter condition's values from a searchable list, with Panels under their Dashboard 13m 56s 46m 06s 3.3× 2
#937 Draw Modules as boxes and arrows in dependency order (#914) 7m 04s 23m 49s 3.4× 2
#931 Hide a Section the filter empties, and head Go to panel's Panels with their Sections (#898) 50m 29s 1h 01m 1.2× 2
#934 Read a connector id as an Item's source (#925) 48m 31s 42m 17s 0.87× 2
#936 Wait for the check a second connection starts before asserting the next one is scheduled (#929) 44m 54s 17m 00s 0.38× 1
#932 Record every Claude call Cockpit makes, and keep the record for 12 months (#917) 1h 14m 41m 32s 0.56× 2
#930 Move an Item from one Panel's row without taking it off its other Panels (#923) 33m 36s 52m 02s 1.5× 3
#933 Order the dependencies by who imports whom, and mark only a cycle's upward half (#913) 24s 25m 35s 64× 2
#921 List the registry's connectors in the Connections window (#894) 25m 56s 1h 13m 2.8× 3
#928 Join a Filter's conditions with and/or beside each row, and set Group by apart as Display (#909) 21m 30s 32m 15s 1.5× 2
#912 Mirror an Item's open state back to a pulled source (#893) 1h 04m 28m 44s 0.45× 1
#920 Include or exclude a Filter panel condition's values, and filter on To do as well as In progress (#908) 25m 43s 25m 10s 0.98× 2
#916 Drag a Section between a Dashboard's rows, and keep Panels off its line (#897) 28m 38s 27m 55s 0.97× 2
#905 Add, rename and delete a titled Section on a Dashboard (#896) 1h 43m 33m 26s 0.32× 1
#904 Cut what cleaning up a captured note costs: Sonnet, a cached history, fewer re-reads, and no model calls for the guest (#887) 3h 22m 43m 58s 0.22× 2 off the chart
#906 Connect and disconnect a source through one generic sign-in flow (#892) 23m 16s 25m 00s 1.1× 2
#903 Check a pulled connector on its cadence through the generic host (#891) 1h 24m 56m 32s 0.67× 3
#899 Stack a Dashboard's Panels on a phone in the order they are read on a wide screen (#895) 9m 47s 1h 03m 6.5× 2
#900 Show what changed in Cockpit's architecture since the last report (#874) 10m 43s 27m 34s 2.6× 3
#901 Put every Panel in its real place on the drop, with no empty space above or below the board (#886) 44m 54s 24m 38s 0.55× 1
#889 Show which areas of Cockpit depend on which (#873) 9m 55s 22m 21s 2.3× 2
#888 Show each area of Cockpit, and mark source code in the core (#872) 16m 05s 24m 33s 1.5× 2
#883 Change the type, priority, due date or status of every selected item from the selection bar (#864) 37m 06s 41m 01s 1.1× 3
#885 Take the ✓ off Inbox rows, so an Item is filed rather than ticked off (#880) 20m 54s 20m 21s 0.97× 1
#881 Draw Cockpit's deployment every night, beside the other reports (#871) 12m 05s 32m 32s 2.7× 3
#882 Fail CI when the core imports source code, or an area imports against the agreed direction (#876) 21m 32s 22m 05s 1.0× 1
#867 Select across every panel of a dashboard, with Select all on a panel and on the dashboard (#863) 1h 44m 1h 31m 0.87× 2
#865 Keep the top of the board reachable after dropping a Panel low (#860) 25m 05s 1h 02m 2.5× 2
#866 Show and hide the All items tab from the Workspace's menu (#862) 15m 31s 25m 09s 1.6× 1
#859 Show and Also show on… after moving a selection (#850) 27m 41s 26m 47s 0.97× 3
#858 Keep the Car view dark whenever the app is (#845) 32m 40s 19m 09s 0.59× 1
#857 Show and Also show on… in the undo bar after moving an Item (#849) 1h 24m 47m 41s 0.57× 3
#856 Choose Light, Dark or Match device in Settings, on a phone too (#844) 47m 09s 53m 25s 1.1× 3
#854 Change what a Gmail connection follows, without reconnecting (#824) 53m 52s 1h 20m 1.5× 4
#855 End the agent runs left open on Items already done or dismissed 26m 00s 28m 09s 1.1× 2
#853 Paint the whole app dark when the device is set to dark (#843) 32m 37s 37m 58s 1.2× 3
#852 Keep a Panel out of proposals with Never propose (#848) 47m 14s 36m 28s 0.77× 2
#841 End an Item's agent run from its Status, and bring it back on Undo 32m 38s 1h 15m 2.3× 4
#851 Keep a starred Gmail task in step with its star, both ways (#823) 34m 47s 36m 32s 1.1× 2
#847 Write every white surface in a named colour, not literal white (#842) 9m 11s 33m 03s 3.6× 1
#839 Open each Agent session by naming the Agent and the item (#835) 15m 05s 21m 30s 1.4× 1
#838 Stop showing Any workspace on Inbox rows (#837) 9m 09s 21m 00s 2.3× 1
#836 Type straight into Go to panel, and choose its scope with G and Shift+G (#827) 12m 32s 23m 04s 1.8× 2
#826 Connect Gmail by star, and bring in conversations starred from then on (#822) 34m 46s 31m 22s 0.90× 2
#820 Resize the Go to panel column by dragging its edge (#815) 8m 48s 15m 15s 1.7× 1
#819 Go to a Panel on any Dashboard or Workspace, the screen following the highlight (#814) 23m 30s 25m 46s 1.1× 2
#818 Go to a Panel of this Dashboard from the keyboard with G (#813) 15m 01s 25m 12s 1.7× 2
#817 Open a Dashboard's filter bar with F (#811) 9m 36s 43m 23s 4.5× 4
#816 Stop rearranging a Dashboard from its Panel column (#812) 7m 21s 21m 15s 2.9× 2
#809 Keep a two-item list as a list in the note-cleanup prompt (#705) 11m 36s 25m 42s 2.2× 1
#808 Rearrange a Dashboard by dragging Panels in its panel list (#804) 32m 14s 40m 40s 1.3× 3
#806 Show a Dashboard's Panels in a collapsible column at its right, and jump to one (#803) 27m 20s 53m 40s 2.0× 4
#807 Group a Filter panel's items by the Dashboard or Panel they are filed on (#805) 36m 31s 29m 41s 0.81× 1
#800 Share photos, files and links into Cockpit from Android's share sheet 1h 30m 1h 34m 1.0× 6
#801 Edit an Item's type, status, priority and due date from chips on a phone 32m 40s 43m 05s 1.3× 4
#798 Fold the Dashboard filter bar into a summary line and a sheet on a phone (#792) 51m 21s 34m 43s 0.68× 3
#796 Keep the selection bar on screen on a phone, without scrolling to it 39m 43s 1h 16m 1.9× 4
#794 Open an Item's form as a page of its own on a phone 34m 17s 58m 48s 1.7× 3
#795 On a phone, collapse every Panel to its header with a double-tap, and tap one to jump to it (#784) 39m 25s 22m 23s 0.57× 1
#793 Make a pressed filter option unmistakable, and offer Attachments as With or Without (#791) 11m 13s 25m 56s 2.3× 2
#783 Give an Item row's title the width on a phone 19m 57s 24m 48s 1.2× 1
#781 Drop a mail and a Teams message into the guest's Inbox after each sign-in (#775) 18m 51s 44m 19s 2.4× 2
#780 Retire the welcome question and the filing hints now that a new account carries its guide 48m 05s 1h 29m 1.9× 1
#779 Show agents at work in the guest demo, with simulated runs (#774) 28m 10s 1h 23m 3.0× 3
#777 Give a new account a Getting started panel and an Inbox item that explain Cockpit 1h 28m 32m 07s 0.36× 2
#778 Seed Gmail and Teams in the guest demo, with fewer items, opening their links inside Cockpit 28m 12s 17m 51s 0.63× 1
#776 Refuse every connection change from the guest account (#772) 25m 18s 16m 34s 0.65× 1
#768 Let a backup go into a folder that's already there (#764) 12m 50s 16m 34s 1.3× 1
#766 Switch the Capture note to formatted 25m 39s 36m 07s 1.4× 3
#765 Make Capture's chips compact and its note box resizable 7m 09s 36m 50s 5.1× 3
#763 Keep a note's formatting when Cockpit rewrites it (#756) 11m 34s 37m 20s 3.2× 2
#760 Switch the Car view dark from inside it, for capturing at night (#753) 47m 31s 19m 32s 0.41× 1

Each pull request, start to merge

Every strip is on one scale, up to 4h 00m, and every part sits at its own time and length on it; one too short to see is drawn a little wider, over what follows it. Time away is not on it. A CI Round is split into the checks that held it, in the order they finished — hover a slice for which one and how long, and hover a round to find its line in the list; it is named on the strip as far as its width allows. Click a strip to open that pull request on its own scale, uncut, with a clock-time axis (UTC) above its CI Rounds in words; click it again to close it. A local review, test run or browser pass is cut out of the coding or fixing it sat in, at the time it ran; where several run in parallel, the longest stays on the line and the others stack above it, then below, and the minutes they share are counted once. Work on the developer’s machine is drawn in greens and teals, CI in blue.

CI Round: a push, until the last check on it finishes; a red one failed and was pushed again.

Localcoding before the first pushfixing between roundscode review (local, at the time it ran)security review (local, at the time it ran)test run (local, at the time it ran)browser pass (local, at the time it ran)
CIheld by tests and checks
waiting to merge away (over 3h 00m, off the scale) red round fluke: failed, passed on re-run not recorded: no session record, so its strip starts at the first commit
14:5815:1015:2015:3015:4015:44

1 CI Round · 46m 48s to merge

  1. CI Round 1 · 21m 28s · pushed 2026-10-12 15:22Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
46m 48s to merge, 1 CI Round
1 CI Round · 46m 48s to merge
  1. CI Round 1 · 21m 28s · pushed 2026-10-12 15:22Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
13:3113:4514:0014:1514:3014:4515:0015:20

2 CI Rounds · 1h 48m to merge

  1. CI Round 1 · 43m 07s · pushed 2026-10-12 14:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 42s
  2. CI Round 2 · 21m 03s · pushed 2026-10-12 14:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 48m to merge, 2 CI Rounds
2 CI Rounds · 1h 48m to merge
  1. CI Round 1 · 43m 07s · pushed 2026-10-12 14:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 42s
  2. CI Round 2 · 21m 03s · pushed 2026-10-12 14:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
14:1214:1514:2014:2514:3014:3514:39

1 CI Round · 27m 11s to merge

  1. CI Round 1 · 19m 00s · pushed 2026-10-12 14:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
27m 11s to merge, 1 CI Round
1 CI Round · 27m 11s to merge
  1. CI Round 1 · 19m 00s · pushed 2026-10-12 14:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
13:3213:3513:4013:4513:5013:5514:0014:0514:10

1 CI Round · 38m 02s to merge

  1. CI Round 1 · 20m 58s · pushed 2026-10-12 13:47Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
38m 02s to merge, 1 CI Round
1 CI Round · 38m 02s to merge
  1. CI Round 1 · 20m 58s · pushed 2026-10-12 13:47Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:4312:5012:5513:0013:0513:1013:1513:18

1 CI Round · 34m 57s to merge

  1. CI Round 1 · 21m 10s · pushed 2026-10-12 12:56Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
34m 57s to merge, 1 CI Round
1 CI Round · 34m 57s to merge
  1. CI Round 1 · 21m 10s · pushed 2026-10-12 12:56Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:4612:5012:5513:0013:0513:10

1 CI Round · 24m 31s to merge

  1. CI Round 1 · 16m 58s · pushed 2026-10-12 12:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
24m 31s to merge, 1 CI Round
1 CI Round · 24m 31s to merge
  1. CI Round 1 · 16m 58s · pushed 2026-10-12 12:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
10:1818:0010-12 00:0010-12 06:0010-12 12:23

1 CI Round · 26h 04m to merge

  1. CI Round 1 · 16m 57s · pushed 2026-10-12 12:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

The session record's start is after the pull request's first commit, so it is ignored.

26h 04m to merge, 1 CI Round

Clipped: 26h 04m on the scale in all (time away is not counted), the first 4h 00m shown. The strip ends at the edge of the scale, not at the merge. Click it to see all of it.

1 CI Round · 26h 04m to merge
  1. CI Round 1 · 16m 57s · pushed 2026-10-12 12:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

The session record's start is after the pull request's first commit, so it is ignored.

11:4511:5011:5512:0012:0512:1012:1512:22

1 CI Round · 36m 55s to merge

  1. CI Round 1 · 21m 46s · pushed 2026-10-12 11:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
36m 55s to merge, 1 CI Round
1 CI Round · 36m 55s to merge
  1. CI Round 1 · 21m 46s · pushed 2026-10-12 11:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:1911:2511:3011:3511:4011:4511:48

1 CI Round · 29m 31s to merge

  1. CI Round 1 · 21m 55s · pushed 2026-10-12 11:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
29m 31s to merge, 1 CI Round
1 CI Round · 29m 31s to merge
  1. CI Round 1 · 21m 55s · pushed 2026-10-12 11:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
10:1710:3010:4010:5011:0011:1011:2011:34

2 CI Rounds, 1 red · 1h 16m to merge

  1. CI Round 1 · 21m 15s · pushed 2026-10-12 10:51Z · held by Checks, then Contract tests, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 21m 01s · pushed 2026-10-12 11:12Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3)
1h 16m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 16m to merge
  1. CI Round 1 · 21m 15s · pushed 2026-10-12 10:51Z · held by Checks, then Contract tests, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 21m 01s · pushed 2026-10-12 11:12Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3)
10:1710:3010:4010:5011:0011:12

1 CI Round · 55m 00s to merge

  1. CI Round 1 · 39m 19s · pushed 2026-10-12 10:33Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 56s
55m 00s to merge, 1 CI Round
1 CI Round · 55m 00s to merge
  1. CI Round 1 · 39m 19s · pushed 2026-10-12 10:33Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 56s
10:2110:2510:3010:3510:4010:4510:5010:5511:00

1 CI Round · 39m 08s to merge

  1. CI Round 1 · 21m 17s · pushed 2026-10-12 10:38Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
39m 08s to merge, 1 CI Round
1 CI Round · 39m 08s to merge
  1. CI Round 1 · 21m 17s · pushed 2026-10-12 10:38Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
19:4719:5019:5520:0020:0520:1020:13

2 CI Rounds · 26m 30s to merge

  1. CI Round 1 · 4m 24s · pushed 2026-10-11 19:47Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 17s · pushed 2026-10-11 19:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

The session record's start is after the pull request's first commit, so it is ignored.

26m 30s to merge, 2 CI Rounds
2 CI Rounds · 26m 30s to merge
  1. CI Round 1 · 4m 24s · pushed 2026-10-11 19:47Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 17s · pushed 2026-10-11 19:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

The session record's start is after the pull request's first commit, so it is ignored.

19:0119:0519:1019:1519:2019:23

1 CI Round · 21m 57s to merge

  1. CI Round 1 · 21m 17s · pushed 2026-10-11 19:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
21m 57s to merge, 1 CI Round
1 CI Round · 21m 57s to merge
  1. CI Round 1 · 21m 17s · pushed 2026-10-11 19:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
17:3717:4518:0018:1518:3018:4519:0019:16

2 CI Rounds · 1h 39m to merge

  1. CI Round 1 · 16m 57s · pushed 2026-10-11 18:37Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 05s · pushed 2026-10-11 18:54Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 39m to merge, 2 CI Rounds
2 CI Rounds · 1h 39m to merge
  1. CI Round 1 · 16m 57s · pushed 2026-10-11 18:37Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 05s · pushed 2026-10-11 18:54Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
18:1918:2518:3018:3518:4018:42

2 CI Rounds · 23m 54s to merge

  1. CI Round 1 · 5m 30s · pushed 2026-10-11 18:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 51s · pushed 2026-10-11 18:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
23m 54s to merge, 2 CI Rounds
2 CI Rounds · 23m 54s to merge
  1. CI Round 1 · 5m 30s · pushed 2026-10-11 18:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 51s · pushed 2026-10-11 18:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
17:3617:4017:5018:0018:1018:20

1 CI Round · 44m 30s to merge

  1. CI Round 1 · 7m 34s · pushed 2026-10-11 18:12Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
44m 30s to merge, 1 CI Round
1 CI Round · 44m 30s to merge
  1. CI Round 1 · 7m 34s · pushed 2026-10-11 18:12Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
15:5616:0016:0516:1016:1516:2016:2516:3016:33

3 CI Rounds · 36m 03s to merge

  1. CI Round 1 · 3m 40s · pushed 2026-10-11 16:08Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 57s · pushed 2026-10-11 16:12Z · held by Checks, then Test Explorer, then Test, then E2E (F3)
  3. CI Round 3 · 18m 16s · pushed 2026-10-11 16:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
36m 03s to merge, 3 CI Rounds
3 CI Rounds · 36m 03s to merge
  1. CI Round 1 · 3m 40s · pushed 2026-10-11 16:08Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 57s · pushed 2026-10-11 16:12Z · held by Checks, then Test Explorer, then Test, then E2E (F3)
  3. CI Round 3 · 18m 16s · pushed 2026-10-11 16:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
13:0413:1513:3013:4514:0014:1514:29

1 CI Round · 1h 24m to merge

  1. CI Round 1 · 1h 01m · pushed 2026-10-11 13:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +42m 24s
1h 24m to merge, 1 CI Round
1 CI Round · 1h 24m to merge
  1. CI Round 1 · 1h 01m · pushed 2026-10-11 13:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +42m 24s
12:5513:1013:2013:3013:4013:5014:0014:05

1 CI Round · 1h 10m to merge

  1. CI Round 1 · 21m 44s · pushed 2026-10-11 13:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 10m to merge, 1 CI Round
1 CI Round · 1h 10m to merge
  1. CI Round 1 · 21m 44s · pushed 2026-10-11 13:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:5513:0013:0513:1013:1513:2013:2513:3013:34

1 CI Round · 38m 45s to merge

  1. CI Round 1 · 18m 27s · pushed 2026-10-11 13:14Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
38m 45s to merge, 1 CI Round
1 CI Round · 38m 45s to merge
  1. CI Round 1 · 18m 27s · pushed 2026-10-11 13:14Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:3711:5012:0012:1012:2012:3012:36

2 CI Rounds · 58m 53s to merge

  1. CI Round 1 · 21m 03s · pushed 2026-10-11 11:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 24s · pushed 2026-10-11 12:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
58m 53s to merge, 2 CI Rounds
2 CI Rounds · 58m 53s to merge
  1. CI Round 1 · 21m 03s · pushed 2026-10-11 11:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 24s · pushed 2026-10-11 12:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:1711:3011:4011:5012:0012:1012:14

1 CI Round · 56m 58s to merge

  1. CI Round 1 · 21m 40s · pushed 2026-10-11 11:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
56m 58s to merge, 1 CI Round
1 CI Round · 56m 58s to merge
  1. CI Round 1 · 21m 40s · pushed 2026-10-11 11:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:3711:4011:4511:5011:5512:0012:0512:1012:13

1 CI Round · 36m 25s to merge

  1. CI Round 1 · 21m 03s · pushed 2026-10-11 11:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
36m 25s to merge, 1 CI Round
1 CI Round · 36m 25s to merge
  1. CI Round 1 · 21m 03s · pushed 2026-10-11 11:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:3111:3511:4011:4511:5011:5512:0012:07

2 CI Rounds · 35m 57s to merge

  1. CI Round 1 · 4m 11s · pushed 2026-10-11 11:40Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 21m 01s · pushed 2026-10-11 11:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
35m 57s to merge, 2 CI Rounds
2 CI Rounds · 35m 57s to merge
  1. CI Round 1 · 4m 11s · pushed 2026-10-11 11:40Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 21m 01s · pushed 2026-10-11 11:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
10:4810:5511:0011:0511:1011:1511:2011:27

1 CI Round · 38m 50s to merge

  1. CI Round 1 · 21m 20s · pushed 2026-10-11 11:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
38m 50s to merge, 1 CI Round
1 CI Round · 38m 50s to merge
  1. CI Round 1 · 21m 20s · pushed 2026-10-11 11:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:1411:1511:1611:16

1 CI Round · 2m 51s to merge

  1. CI Round 1 · 30s · pushed 2026-10-11 11:15Z · held by Checks
2m 51s to merge, 1 CI Round
1 CI Round · 2m 51s to merge
  1. CI Round 1 · 30s · pushed 2026-10-11 11:15Z · held by Checks
10:3310:4010:5011:0011:1011:13

1 CI Round · 40m 03s to merge

  1. CI Round 1 · 17m 01s · pushed 2026-10-11 10:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
40m 03s to merge, 1 CI Round
1 CI Round · 40m 03s to merge
  1. CI Round 1 · 17m 01s · pushed 2026-10-11 10:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
09:4710:0010:1010:2010:33

1 CI Round · 45m 16s to merge

  1. CI Round 1 · 42m 01s · pushed 2026-10-11 09:50Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +21m 06s
45m 16s to merge, 1 CI Round
1 CI Round · 45m 16s to merge
  1. CI Round 1 · 42m 01s · pushed 2026-10-11 09:50Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +21m 06s
13:1713:2013:2513:3013:3513:4013:45

1 CI Round · 28m 00s to merge

  1. CI Round 1 · 18m 33s · pushed 2026-10-10 13:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
28m 00s to merge, 1 CI Round
1 CI Round · 28m 00s to merge
  1. CI Round 1 · 18m 33s · pushed 2026-10-10 13:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
19:2219:2319:2419:2519:25

1 CI Round · 3m 07s to merge

  1. CI Round 1 · 30s · pushed 2026-10-09 19:24Z · held by Checks
3m 07s to merge, 1 CI Round
1 CI Round · 3m 07s to merge
  1. CI Round 1 · 30s · pushed 2026-10-09 19:24Z · held by Checks
12:1912:3012:4513:0013:1513:3013:4514:00

2 CI Rounds, 1 red · 1h 41m to merge

  1. CI Round 1 · 16m 29s · pushed 2026-10-09 13:15Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 18m 02s · pushed 2026-10-09 13:38Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3)
1h 41m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 41m to merge
  1. CI Round 1 · 16m 29s · pushed 2026-10-09 13:15Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 18m 02s · pushed 2026-10-09 13:38Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3)
03:4706:0008:0010:0012:18

2 CI Rounds · 8h 31m to merge

  1. CI Round 1 · 7m 34s · pushed 2026-10-09 11:49Z · held by Contract tests, then Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 19m 39s · pushed 2026-10-09 11:57Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
8h 31m to merge, 2 CI Rounds

Clipped: 8h 31m on the scale in all (time away is not counted), the first 4h 00m shown. The strip ends at the edge of the scale, not at the merge. Click it to see all of it.

2 CI Rounds · 8h 31m to merge
  1. CI Round 1 · 7m 34s · pushed 2026-10-09 11:49Z · held by Contract tests, then Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 19m 39s · pushed 2026-10-09 11:57Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
09:5410:0010:1010:2010:3010:4010:5011:04

2 CI Rounds, 1 red · 1h 09m to merge

  1. CI Round 1 · 18m 13s · pushed 2026-10-09 10:16Z · held by Checks, then Test, then E2E (F3) · RED: Test failed
  2. CI Round 2 · 21m 54s · pushed 2026-10-09 10:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 09m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 09m to merge
  1. CI Round 1 · 18m 13s · pushed 2026-10-09 10:16Z · held by Checks, then Test, then E2E (F3) · RED: Test failed
  2. CI Round 2 · 21m 54s · pushed 2026-10-09 10:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
01:5802:1502:3002:4503:0003:1503:3003:46

3 CI Rounds, 2 red · 1h 48m to merge

  1. CI Round 1 · 16m 55s · pushed 2026-10-09 02:18Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: E2E (F3) failed
  2. CI Round 2 · 12m 02s · pushed 2026-10-09 02:51Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: E2E (F3) failed
  3. CI Round 3 · 40m 03s · pushed 2026-10-09 03:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 49s
1h 48m to merge, 3 CI Rounds
3 CI Rounds, 2 red · 1h 48m to merge
  1. CI Round 1 · 16m 55s · pushed 2026-10-09 02:18Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: E2E (F3) failed
  2. CI Round 2 · 12m 02s · pushed 2026-10-09 02:51Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: E2E (F3) failed
  3. CI Round 3 · 40m 03s · pushed 2026-10-09 03:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 49s
00:4801:0001:1001:2001:3001:4001:5001:57

2 CI Rounds · 1h 08m to merge

  1. CI Round 1 · 19m 01s · pushed 2026-10-09 01:11Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 43s · pushed 2026-10-09 01:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 08m to merge, 2 CI Rounds
2 CI Rounds · 1h 08m to merge
  1. CI Round 1 · 19m 01s · pushed 2026-10-09 01:11Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 43s · pushed 2026-10-09 01:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
23:5010-09 00:0010-09 00:1010-09 00:2010-09 00:3010-09 00:4010-09 00:48

2 CI Rounds · 57m 34s to merge

  1. CI Round 1 · 9m 39s · pushed 2026-10-09 00:20Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 17m 19s · pushed 2026-10-09 00:29Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
57m 34s to merge, 2 CI Rounds
2 CI Rounds · 57m 34s to merge
  1. CI Round 1 · 9m 39s · pushed 2026-10-09 00:20Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 17m 19s · pushed 2026-10-09 00:29Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
22:2422:4523:0023:1523:3023:50

3 CI Rounds · 1h 25m to merge

  1. CI Round 1 · 16m 36s · pushed 2026-10-08 22:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 08s · pushed 2026-10-08 22:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 20m 22s · pushed 2026-10-08 23:28Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 25m to merge, 3 CI Rounds
3 CI Rounds · 1h 25m to merge
  1. CI Round 1 · 16m 36s · pushed 2026-10-08 22:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 08s · pushed 2026-10-08 22:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 20m 22s · pushed 2026-10-08 23:28Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
21:2921:4522:0022:1522:3022:4522:54

2 CI Rounds, 1 red · 1h 25m to merge

  1. CI Round 1 · 20m 27s · pushed 2026-10-08 22:10Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 17m 58s · pushed 2026-10-08 22:35Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 25m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 25m to merge
  1. CI Round 1 · 20m 27s · pushed 2026-10-08 22:10Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 17m 58s · pushed 2026-10-08 22:35Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
21:1021:2021:3021:4021:5022:0022:1022:24

1 CI Round · 1h 13m to merge

  1. CI Round 1 · 20m 18s · pushed 2026-10-08 22:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 13m to merge, 1 CI Round
1 CI Round · 1h 13m to merge
  1. CI Round 1 · 20m 18s · pushed 2026-10-08 22:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
20:1720:3020:4521:0021:1521:3021:4521:56

2 CI Rounds, 1 red · 1h 38m to merge

  1. CI Round 1 · 20m 53s · pushed 2026-10-08 21:07Z · held by Contract tests, then Checks, then Test, then E2E (F3) · RED: E2E (F3), Test failed
  2. CI Round 2 · 21m 10s · pushed 2026-10-08 21:34Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
1h 38m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 38m to merge
  1. CI Round 1 · 20m 53s · pushed 2026-10-08 21:07Z · held by Contract tests, then Checks, then Test, then E2E (F3) · RED: E2E (F3), Test failed
  2. CI Round 2 · 21m 10s · pushed 2026-10-08 21:34Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
#949 Store Gmail Items under their connector id (#926)
merged 2026-10-08 21:25Z 2 flukes
19:2619:4520:0020:1520:3020:4521:0021:1521:25

2 CI Rounds · 1h 59m to merge

  1. CI Round 1 · 12m 44s · pushed 2026-10-08 20:15Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 56m 51s · pushed 2026-10-08 20:28Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer, then E2E (F3) · FLUKE: Test failed and passed on re-run, +34m 28s; E2E (F3) failed and passed on re-run, +37m 55s
1h 59m to merge, 2 CI Rounds
2 CI Rounds · 1h 59m to merge
  1. CI Round 1 · 12m 44s · pushed 2026-10-08 20:15Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 56m 51s · pushed 2026-10-08 20:28Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer, then E2E (F3) · FLUKE: Test failed and passed on re-run, +34m 28s; E2E (F3) failed and passed on re-run, +37m 55s
18:5119:3020:0020:3021:0021:09

2 CI Rounds, 1 red · 2h 18m to merge

  1. CI Round 1 · 30m 56s · pushed 2026-10-08 19:45Z · held by Checks, then Test, then E2E (F3), then Test · RED: Test failed
  2. CI Round 2 · 42m 30s · pushed 2026-10-08 20:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 55s
2h 18m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 2h 18m to merge
  1. CI Round 1 · 30m 56s · pushed 2026-10-08 19:45Z · held by Checks, then Test, then E2E (F3), then Test · RED: Test failed
  2. CI Round 2 · 42m 30s · pushed 2026-10-08 20:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 55s
19:0919:2019:3019:4019:5020:0020:1020:17

2 CI Rounds · 1h 08m to merge

  1. CI Round 1 · 3m 31s · pushed 2026-10-08 19:32Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 40m 45s · pushed 2026-10-08 19:35Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 57s
1h 08m to merge, 2 CI Rounds
2 CI Rounds · 1h 08m to merge
  1. CI Round 1 · 3m 31s · pushed 2026-10-08 19:32Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 40m 45s · pushed 2026-10-08 19:35Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 57s
19:3819:4519:5019:5520:0020:0520:09

2 CI Rounds · 30m 56s to merge

  1. CI Round 1 · 4m 19s · pushed 2026-10-08 19:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 48s · pushed 2026-10-08 19:48Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
30m 56s to merge, 2 CI Rounds
2 CI Rounds · 30m 56s to merge
  1. CI Round 1 · 4m 19s · pushed 2026-10-08 19:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 48s · pushed 2026-10-08 19:48Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
19:0719:1019:1519:2019:2519:3019:3519:4019:43

2 CI Rounds · 36m 10s to merge

  1. CI Round 1 · 7m 52s · pushed 2026-10-08 19:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 37s · pushed 2026-10-08 19:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
36m 10s to merge, 2 CI Rounds
2 CI Rounds · 36m 10s to merge
  1. CI Round 1 · 7m 52s · pushed 2026-10-08 19:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 37s · pushed 2026-10-08 19:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
18:3318:4018:5019:0019:1019:2019:3019:34

2 CI Rounds · 1h 01m to merge

  1. CI Round 1 · 4m 17s · pushed 2026-10-08 18:47Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 41m 49s · pushed 2026-10-08 18:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 55s
1h 01m to merge, 2 CI Rounds
2 CI Rounds · 1h 01m to merge
  1. CI Round 1 · 4m 17s · pushed 2026-10-08 18:47Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 41m 49s · pushed 2026-10-08 18:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +20m 55s
18:5919:0519:1019:1519:2019:2519:30

2 CI Rounds · 31m 04s to merge

  1. CI Round 1 · 3m 35s · pushed 2026-10-08 19:06Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 14s · pushed 2026-10-08 19:10Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
31m 04s to merge, 2 CI Rounds
2 CI Rounds · 31m 04s to merge
  1. CI Round 1 · 3m 35s · pushed 2026-10-08 19:06Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 14s · pushed 2026-10-08 19:10Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
17:3317:4518:0018:1518:3018:4519:0019:1519:26

2 CI Rounds · 1h 52m to merge

  1. CI Round 1 · 4m 39s · pushed 2026-10-08 18:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 56m 53s · pushed 2026-10-08 18:29Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +35m 42s
1h 52m to merge, 2 CI Rounds
2 CI Rounds · 1h 52m to merge
  1. CI Round 1 · 4m 39s · pushed 2026-10-08 18:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 56m 53s · pushed 2026-10-08 18:29Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +35m 42s
17:5318:1518:3018:4519:0019:1519:25

2 CI Rounds · 1h 32m to merge

  1. CI Round 1 · 20m 33s · pushed 2026-10-08 18:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 44s · pushed 2026-10-08 19:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 32m to merge, 2 CI Rounds
2 CI Rounds · 1h 32m to merge
  1. CI Round 1 · 20m 33s · pushed 2026-10-08 18:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 44s · pushed 2026-10-08 19:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
18:0718:2018:3018:4018:5019:0019:10

1 CI Round · 1h 03m to merge

  1. CI Round 1 · 16m 21s · pushed 2026-10-08 18:53Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 03m to merge, 1 CI Round
1 CI Round · 1h 03m to merge
  1. CI Round 1 · 16m 21s · pushed 2026-10-08 18:53Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
17:1117:3017:4518:0018:1518:3018:4519:0019:08

2 CI Rounds · 1h 57m to merge

  1. CI Round 1 · 20m 46s · pushed 2026-10-08 18:26Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 46s · pushed 2026-10-08 18:46Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
1h 57m to merge, 2 CI Rounds
2 CI Rounds · 1h 57m to merge
  1. CI Round 1 · 20m 46s · pushed 2026-10-08 18:26Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 46s · pushed 2026-10-08 18:46Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3)
17:4018:0018:1518:3018:4519:0019:06

3 CI Rounds, 1 red · 1h 26m to merge

  1. CI Round 1 · 9m 37s · pushed 2026-10-08 18:07Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 21m 20s · pushed 2026-10-08 18:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  3. CI Round 3 · 21m 05s · pushed 2026-10-08 18:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 26m to merge, 3 CI Rounds
3 CI Rounds, 1 red · 1h 26m to merge
  1. CI Round 1 · 9m 37s · pushed 2026-10-08 18:07Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 21m 20s · pushed 2026-10-08 18:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  3. CI Round 3 · 21m 05s · pushed 2026-10-08 18:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
18:3118:3518:4018:4518:5018:5518:58

2 CI Rounds · 27m 23s to merge

  1. CI Round 1 · 4m 20s · pushed 2026-10-08 18:31Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 15s · pushed 2026-10-08 18:36Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

The session record's start is after the pull request's first commit, so it is ignored.

27m 23s to merge, 2 CI Rounds
2 CI Rounds · 27m 23s to merge
  1. CI Round 1 · 4m 20s · pushed 2026-10-08 18:31Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 21m 15s · pushed 2026-10-08 18:36Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

The session record's start is after the pull request's first commit, so it is ignored.

17:0517:1517:3017:4518:0018:1518:3018:45

3 CI Rounds, 1 red · 1h 40m to merge

  1. CI Round 1 · 20m 16s · pushed 2026-10-08 17:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 15s · pushed 2026-10-08 17:56Z · held by Checks, then Test, then E2E (F3) · RED: E2E (F3), Checks failed
  3. CI Round 3 · 20m 43s · pushed 2026-10-08 18:23Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 40m to merge, 3 CI Rounds
3 CI Rounds, 1 red · 1h 40m to merge
  1. CI Round 1 · 20m 16s · pushed 2026-10-08 17:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 15s · pushed 2026-10-08 17:56Z · held by Checks, then Test, then E2E (F3) · RED: E2E (F3), Checks failed
  3. CI Round 3 · 20m 43s · pushed 2026-10-08 18:23Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
17:3717:5018:0018:1018:2018:32

2 CI Rounds · 54m 32s to merge

  1. CI Round 1 · 12m 11s · pushed 2026-10-08 17:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 04s · pushed 2026-10-08 18:11Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
54m 32s to merge, 2 CI Rounds
2 CI Rounds · 54m 32s to merge
  1. CI Round 1 · 12m 11s · pushed 2026-10-08 17:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 04s · pushed 2026-10-08 18:11Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
16:0616:1516:3016:4517:0017:1517:3017:40

1 CI Round · 1h 34m to merge

  1. CI Round 1 · 20m 17s · pushed 2026-10-08 17:18Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 34m to merge, 1 CI Round
1 CI Round · 1h 34m to merge
  1. CI Round 1 · 20m 17s · pushed 2026-10-08 17:18Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
16:4516:5017:0017:1017:2017:3017:37

2 CI Rounds · 51m 43s to merge

  1. CI Round 1 · 4m 48s · pushed 2026-10-08 17:11Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 20m 22s · pushed 2026-10-08 17:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
51m 43s to merge, 2 CI Rounds
2 CI Rounds · 51m 43s to merge
  1. CI Round 1 · 4m 48s · pushed 2026-10-08 17:11Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 20m 22s · pushed 2026-10-08 17:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
16:3616:5017:0017:1017:2017:33

2 CI Rounds · 57m 08s to merge

  1. CI Round 1 · 7m 08s · pushed 2026-10-08 17:04Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 47s · pushed 2026-10-08 17:11Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
57m 08s to merge, 2 CI Rounds
2 CI Rounds · 57m 08s to merge
  1. CI Round 1 · 7m 08s · pushed 2026-10-08 17:04Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 20m 47s · pushed 2026-10-08 17:11Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
14:1714:3015:0015:3016:0016:35

1 CI Round · 2h 17m to merge

  1. CI Round 1 · 21m 40s · pushed 2026-10-08 16:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
2h 17m to merge, 1 CI Round
1 CI Round · 2h 17m to merge
  1. CI Round 1 · 21m 40s · pushed 2026-10-08 16:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:0713:0014:0015:0016:14

2 CI Rounds, 1 red · 4h 07m to merge

  1. CI Round 1 · 18m 20s · pushed 2026-10-08 15:21Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3) · RED: Contract tests failed
  2. CI Round 2 · 21m 49s · pushed 2026-10-08 15:52Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3)
4h 07m to merge, 2 CI Rounds

Clipped: 4h 07m on the scale in all (time away is not counted), the first 4h 00m shown. The strip ends at the edge of the scale, not at the merge. Click it to see all of it.

2 CI Rounds, 1 red · 4h 07m to merge
  1. CI Round 1 · 18m 20s · pushed 2026-10-08 15:21Z · held by Contract tests, then Checks, then Test, then Test Explorer, then E2E (F3) · RED: Contract tests failed
  2. CI Round 2 · 21m 49s · pushed 2026-10-08 15:52Z · held by Checks, then Contract tests, then Test, then Test Explorer, then E2E (F3)
15:1515:2015:3015:4015:5016:0016:05

2 CI Rounds · 49m 30s to merge

  1. CI Round 1 · 4m 21s · pushed 2026-10-08 15:39Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 20m 39s · pushed 2026-10-08 15:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
49m 30s to merge, 2 CI Rounds
2 CI Rounds · 49m 30s to merge
  1. CI Round 1 · 4m 21s · pushed 2026-10-08 15:39Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 20m 39s · pushed 2026-10-08 15:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:5213:3014:0014:3015:0015:14

3 CI Rounds, 2 red · 2h 22m to merge

  1. CI Round 1 · 15m 52s · pushed 2026-10-08 13:56Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 19m 19s · pushed 2026-10-08 14:11Z · held by Checks, then Test, then E2E (F3) · RED: Test, Checks failed
  3. CI Round 3 · 21m 21s · pushed 2026-10-08 14:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
2h 22m to merge, 3 CI Rounds
3 CI Rounds, 2 red · 2h 22m to merge
  1. CI Round 1 · 15m 52s · pushed 2026-10-08 13:56Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 19m 19s · pushed 2026-10-08 14:11Z · held by Checks, then Test, then E2E (F3) · RED: Test, Checks failed
  3. CI Round 3 · 21m 21s · pushed 2026-10-08 14:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
13:0213:1013:2013:3013:4013:5014:0014:1014:16

2 CI Rounds, 1 red · 1h 14m to merge

  1. CI Round 1 · 20m 17s · pushed 2026-10-08 13:09Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 43m 04s · pushed 2026-10-08 13:32Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +26m 06s
1h 14m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 14m to merge
  1. CI Round 1 · 20m 17s · pushed 2026-10-08 13:09Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 43m 04s · pushed 2026-10-08 13:32Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +26m 06s
13:0713:1513:2013:2513:3013:3513:4013:46

3 CI Rounds · 39m 33s to merge

  1. CI Round 1 · 3m 29s · pushed 2026-10-08 13:18Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 3m 01s · pushed 2026-10-08 13:21Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  3. CI Round 3 · 21m 04s · pushed 2026-10-08 13:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
39m 33s to merge, 3 CI Rounds
3 CI Rounds · 39m 33s to merge
  1. CI Round 1 · 3m 29s · pushed 2026-10-08 13:18Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 3m 01s · pushed 2026-10-08 13:21Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  3. CI Round 3 · 21m 04s · pushed 2026-10-08 13:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:3012:4012:5013:0013:1013:2013:3013:41

1 CI Round · 1h 10m to merge

  1. CI Round 1 · 20m 29s · pushed 2026-10-08 13:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 10m to merge, 1 CI Round
1 CI Round · 1h 10m to merge
  1. CI Round 1 · 20m 29s · pushed 2026-10-08 13:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:3412:4012:4512:5012:5513:0013:07

2 CI Rounds · 33m 10s to merge

  1. CI Round 1 · 4m 38s · pushed 2026-10-08 12:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 17m 43s · pushed 2026-10-08 12:48Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
33m 10s to merge, 2 CI Rounds
2 CI Rounds · 33m 10s to merge
  1. CI Round 1 · 4m 38s · pushed 2026-10-08 12:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 17m 43s · pushed 2026-10-08 12:48Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:5112:0012:1012:2012:3012:33

2 CI Rounds · 42m 00s to merge

  1. CI Round 1 · 4m 42s · pushed 2026-10-08 12:08Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 19m 51s · pushed 2026-10-08 12:12Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
42m 00s to merge, 2 CI Rounds
2 CI Rounds · 42m 00s to merge
  1. CI Round 1 · 4m 42s · pushed 2026-10-08 12:08Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 19m 51s · pushed 2026-10-08 12:12Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:0311:1011:2011:3011:4011:5012:0012:1012:23

3 CI Rounds · 1h 19m to merge

  1. CI Round 1 · 18m 20s · pushed 2026-10-08 11:40Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 3m 57s · pushed 2026-10-08 11:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 18m 44s · pushed 2026-10-08 12:03Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 19m to merge, 3 CI Rounds
3 CI Rounds · 1h 19m to merge
  1. CI Round 1 · 18m 20s · pushed 2026-10-08 11:40Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 3m 57s · pushed 2026-10-08 11:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 18m 44s · pushed 2026-10-08 12:03Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:2411:3011:4011:5012:0012:06

1 CI Round · 42m 22s to merge

  1. CI Round 1 · 19m 47s · pushed 2026-10-08 11:45Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
42m 22s to merge, 1 CI Round
1 CI Round · 42m 22s to merge
  1. CI Round 1 · 19m 47s · pushed 2026-10-08 11:45Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
11:4011:4511:5011:5512:0012:03

1 CI Round · 23m 29s to merge

  1. CI Round 1 · 19m 44s · pushed 2026-10-08 11:42Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

No session record: the time starts at the first commit, so any coding before it and the local reviews are not recorded.

23m 29s to merge, 1 CI Round
1 CI Round · 23m 29s to merge
  1. CI Round 1 · 19m 44s · pushed 2026-10-08 11:42Z · held by Checks, then Test, then Test Explorer, then E2E (F3)

No session record: the time starts at the first commit, so any coding before it and the local reviews are not recorded.

11:0611:1011:2011:3011:4011:51

3 CI Rounds · 45m 36s to merge

  1. CI Round 1 · 5m 53s · pushed 2026-10-08 11:18Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 9m 41s · pushed 2026-10-08 11:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 16m 58s · pushed 2026-10-08 11:33Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
45m 36s to merge, 3 CI Rounds
3 CI Rounds · 45m 36s to merge
  1. CI Round 1 · 5m 53s · pushed 2026-10-08 11:18Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 9m 41s · pushed 2026-10-08 11:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 16m 58s · pushed 2026-10-08 11:33Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
10:5711:1011:2011:3011:41

1 CI Round · 44m 38s to merge

  1. CI Round 1 · 20m 54s · pushed 2026-10-08 11:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
44m 38s to merge, 1 CI Round
1 CI Round · 44m 38s to merge
  1. CI Round 1 · 20m 54s · pushed 2026-10-08 11:19Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
07:4608:3009:0009:3010:0010:3011:03

2 CI Rounds, 1 red · 3h 16m to merge

  1. CI Round 1 · 39m 57s · pushed 2026-10-08 09:00Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 50m 37s · pushed 2026-10-08 10:11Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer · FLUKE: Test failed and passed on re-run, +34m 24s
3h 16m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 3h 16m to merge
  1. CI Round 1 · 39m 57s · pushed 2026-10-08 09:00Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 50m 37s · pushed 2026-10-08 10:11Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer · FLUKE: Test failed and passed on re-run, +34m 24s
07:3607:4508:0008:1508:3008:4509:04

2 CI Rounds, 1 red · 1h 28m to merge

  1. CI Round 1 · 18m 56s · pushed 2026-10-08 07:55Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 39m 52s · pushed 2026-10-08 08:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +19m 59s
1h 28m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 28m to merge
  1. CI Round 1 · 18m 56s · pushed 2026-10-08 07:55Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 39m 52s · pushed 2026-10-08 08:24Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +19m 59s
07:4207:5008:0008:1008:2008:24

1 CI Round · 41m 58s to merge

  1. CI Round 1 · 20m 23s · pushed 2026-10-08 08:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
41m 58s to merge, 1 CI Round
1 CI Round · 41m 58s to merge
  1. CI Round 1 · 20m 23s · pushed 2026-10-08 08:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
00:1900:3000:4000:5001:0001:1001:14

3 CI Rounds · 54m 54s to merge

  1. CI Round 1 · 5m 57s · pushed 2026-10-08 00:46Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 1m 26s · pushed 2026-10-08 00:52Z · held by Checks, then Test Explorer, then E2E (F3), then Test
  3. CI Round 3 · 19m 24s · pushed 2026-10-08 00:54Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
54m 54s to merge, 3 CI Rounds
3 CI Rounds · 54m 54s to merge
  1. CI Round 1 · 5m 57s · pushed 2026-10-08 00:46Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 1m 26s · pushed 2026-10-08 00:52Z · held by Checks, then Test Explorer, then E2E (F3), then Test
  3. CI Round 3 · 19m 24s · pushed 2026-10-08 00:54Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
00:0200:1000:2000:3000:4000:5000:55

1 CI Round · 52m 35s to merge

  1. CI Round 1 · 19m 09s · pushed 2026-10-08 00:35Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
52m 35s to merge, 1 CI Round
1 CI Round · 52m 35s to merge
  1. CI Round 1 · 19m 09s · pushed 2026-10-08 00:35Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
22:0622:3023:0023:3010-08 00:0010-08 00:18

3 CI Rounds, 2 red · 2h 12m to merge

  1. CI Round 1 · 14m 20s · pushed 2026-10-07 23:19Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 18m 05s · pushed 2026-10-07 23:34Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 15m 16s · pushed 2026-10-08 00:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
2h 12m to merge, 3 CI Rounds
3 CI Rounds, 2 red · 2h 12m to merge
  1. CI Round 1 · 14m 20s · pushed 2026-10-07 23:19Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 18m 05s · pushed 2026-10-07 23:34Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 15m 16s · pushed 2026-10-08 00:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
22:2022:3022:4523:0023:1523:3023:4510-08 00:01

3 CI Rounds · 1h 41m to merge

  1. CI Round 1 · 15m 48s · pushed 2026-10-07 23:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 30s · pushed 2026-10-07 23:20Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 19m 07s · pushed 2026-10-07 23:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 41m to merge, 3 CI Rounds
3 CI Rounds · 1h 41m to merge
  1. CI Round 1 · 15m 48s · pushed 2026-10-07 23:05Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 30s · pushed 2026-10-07 23:20Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 19m 07s · pushed 2026-10-07 23:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
21:2322:0022:3023:0023:37

4 CI Rounds, 1 red · 2h 14m to merge

  1. CI Round 1 · 14m 10s · pushed 2026-10-07 22:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 9m 18s · pushed 2026-10-07 22:15Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  3. CI Round 3 · 18m 30s · pushed 2026-10-07 22:25Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  4. CI Round 4 · 38m 28s · pushed 2026-10-07 22:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +18m 59s
2h 14m to merge, 4 CI Rounds
4 CI Rounds, 1 red · 2h 14m to merge
  1. CI Round 1 · 14m 10s · pushed 2026-10-07 22:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 9m 18s · pushed 2026-10-07 22:15Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  3. CI Round 3 · 18m 30s · pushed 2026-10-07 22:25Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  4. CI Round 4 · 38m 28s · pushed 2026-10-07 22:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +18m 59s
21:3821:5022:0022:1022:2022:33

2 CI Rounds · 55m 17s to merge

  1. CI Round 1 · 12m 04s · pushed 2026-10-07 22:04Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 05s · pushed 2026-10-07 22:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
55m 17s to merge, 2 CI Rounds
2 CI Rounds · 55m 17s to merge
  1. CI Round 1 · 12m 04s · pushed 2026-10-07 22:04Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 16m 05s · pushed 2026-10-07 22:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
21:0821:2021:3021:4021:5022:0022:1022:19

3 CI Rounds · 1h 11m to merge

  1. CI Round 1 · 15m 50s · pushed 2026-10-07 21:40Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 2m 44s · pushed 2026-10-07 21:56Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  3. CI Round 3 · 19m 24s · pushed 2026-10-07 21:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 11m to merge, 3 CI Rounds
3 CI Rounds · 1h 11m to merge
  1. CI Round 1 · 15m 50s · pushed 2026-10-07 21:40Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 2m 44s · pushed 2026-10-07 21:56Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  3. CI Round 3 · 19m 24s · pushed 2026-10-07 21:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
20:4021:0021:1521:3021:4522:05

2 CI Rounds · 1h 25m to merge

  1. CI Round 1 · 15m 14s · pushed 2026-10-07 21:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 47s · pushed 2026-10-07 21:45Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 25m to merge, 2 CI Rounds
2 CI Rounds · 1h 25m to merge
  1. CI Round 1 · 15m 14s · pushed 2026-10-07 21:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 47s · pushed 2026-10-07 21:45Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
19:4820:0020:1520:3020:4521:0021:1521:37

4 CI Rounds, 1 red · 1h 48m to merge

  1. CI Round 1 · 6m 45s · pushed 2026-10-07 20:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 5m 47s · pushed 2026-10-07 20:23Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  3. CI Round 3 · 21m 57s · pushed 2026-10-07 20:29Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  4. CI Round 4 · 40m 50s · pushed 2026-10-07 20:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +22m 19s
1h 48m to merge, 4 CI Rounds
4 CI Rounds, 1 red · 1h 48m to merge
  1. CI Round 1 · 6m 45s · pushed 2026-10-07 20:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 5m 47s · pushed 2026-10-07 20:23Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  3. CI Round 3 · 21m 57s · pushed 2026-10-07 20:29Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  4. CI Round 4 · 40m 50s · pushed 2026-10-07 20:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +22m 19s
20:0920:2020:3020:4020:5021:0021:1021:22

2 CI Rounds · 1h 12m to merge

  1. CI Round 1 · 18m 00s · pushed 2026-10-07 20:42Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 32s · pushed 2026-10-07 21:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 12m to merge, 2 CI Rounds
2 CI Rounds · 1h 12m to merge
  1. CI Round 1 · 18m 00s · pushed 2026-10-07 20:42Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 32s · pushed 2026-10-07 21:02Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
20:2420:3020:4020:5021:0021:07

1 CI Round · 42m 58s to merge

  1. CI Round 1 · 33m 03s · pushed 2026-10-07 20:33Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer · FLUKE: Test failed and passed on re-run, +19m 25s
42m 58s to merge, 1 CI Round
1 CI Round · 42m 58s to merge
  1. CI Round 1 · 33m 03s · pushed 2026-10-07 20:33Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer · FLUKE: Test failed and passed on re-run, +19m 25s
19:5420:0020:0520:1020:1520:2020:2520:3020:32

1 CI Round · 38m 17s to merge

  1. CI Round 1 · 18m 38s · pushed 2026-10-07 20:12Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
38m 17s to merge, 1 CI Round
1 CI Round · 38m 17s to merge
  1. CI Round 1 · 18m 38s · pushed 2026-10-07 20:12Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
19:5920:0520:1020:1520:2020:2520:31

1 CI Round · 32m 05s to merge

  1. CI Round 1 · 19m 00s · pushed 2026-10-07 20:10Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
32m 05s to merge, 1 CI Round
1 CI Round · 32m 05s to merge
  1. CI Round 1 · 19m 00s · pushed 2026-10-07 20:10Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
19:4019:4519:5019:5520:0020:0520:1020:17

2 CI Rounds · 36m 47s to merge

  1. CI Round 1 · 4m 43s · pushed 2026-10-07 19:53Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 21s · pushed 2026-10-07 19:57Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
36m 47s to merge, 2 CI Rounds
2 CI Rounds · 36m 47s to merge
  1. CI Round 1 · 4m 43s · pushed 2026-10-07 19:53Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 21s · pushed 2026-10-07 19:57Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
19:0119:1019:2019:3019:4019:5020:0020:09

2 CI Rounds, 1 red · 1h 07m to merge

  1. CI Round 1 · 12m 14s · pushed 2026-10-07 19:36Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 19m 08s · pushed 2026-10-07 19:48Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 07m to merge, 2 CI Rounds
2 CI Rounds, 1 red · 1h 07m to merge
  1. CI Round 1 · 12m 14s · pushed 2026-10-07 19:36Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 19m 08s · pushed 2026-10-07 19:48Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
#832 Remove the temporary session-title POC hook
merged 2026-10-07 19:50Z not recorded
19:4019:4219:4419:4619:4819:50

1 CI Round · 10m 02s to merge

  1. CI Round 1 · 30s · pushed 2026-10-07 19:40Z · held by Checks

No session record: the time starts at the first commit, so any coding before it and the local reviews are not recorded.

10m 02s to merge, 1 CI Round
1 CI Round · 10m 02s to merge
  1. CI Round 1 · 30s · pushed 2026-10-07 19:40Z · held by Checks

No session record: the time starts at the first commit, so any coding before it and the local reviews are not recorded.

13:4813:5013:5514:0014:0514:1014:12

1 CI Round · 24m 21s to merge

  1. CI Round 1 · 15m 15s · pushed 2026-10-07 13:56Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
24m 21s to merge, 1 CI Round
1 CI Round · 24m 21s to merge
  1. CI Round 1 · 15m 15s · pushed 2026-10-07 13:56Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:5713:1013:2013:3013:4013:47

2 CI Rounds · 49m 55s to merge

  1. CI Round 1 · 7m 01s · pushed 2026-10-07 13:21Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 45s · pushed 2026-10-07 13:28Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
49m 55s to merge, 2 CI Rounds
2 CI Rounds · 49m 55s to merge
  1. CI Round 1 · 7m 01s · pushed 2026-10-07 13:21Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 45s · pushed 2026-10-07 13:28Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
12:1612:2012:3012:4012:5012:57

2 CI Rounds · 41m 11s to merge

  1. CI Round 1 · 7m 06s · pushed 2026-10-07 12:31Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 06s · pushed 2026-10-07 12:38Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
41m 11s to merge, 2 CI Rounds
2 CI Rounds · 41m 11s to merge
  1. CI Round 1 · 7m 06s · pushed 2026-10-07 12:31Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 06s · pushed 2026-10-07 12:38Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
#817 Open a Dashboard's filter bar with F (#811)
merged 2026-10-07 11:35Z 2 red
10:4110:5011:0011:1011:2011:3011:35

4 CI Rounds, 2 red · 54m 03s to merge

  1. CI Round 1 · 4m 33s · pushed 2026-10-07 10:50Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 1m 49s · pushed 2026-10-07 10:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 18m 27s · pushed 2026-10-07 10:57Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  4. CI Round 4 · 18m 34s · pushed 2026-10-07 11:15Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
54m 03s to merge, 4 CI Rounds
4 CI Rounds, 2 red · 54m 03s to merge
  1. CI Round 1 · 4m 33s · pushed 2026-10-07 10:50Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 1m 49s · pushed 2026-10-07 10:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 18m 27s · pushed 2026-10-07 10:57Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  4. CI Round 4 · 18m 34s · pushed 2026-10-07 11:15Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
10:1110:1510:2010:2510:3010:3510:41

2 CI Rounds · 29m 29s to merge

  1. CI Round 1 · 2m 58s · pushed 2026-10-07 10:18Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 17s · pushed 2026-10-07 10:21Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
29m 29s to merge, 2 CI Rounds
2 CI Rounds · 29m 29s to merge
  1. CI Round 1 · 2m 58s · pushed 2026-10-07 10:18Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 18m 17s · pushed 2026-10-07 10:21Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
08:3208:4008:4508:5008:5509:0009:0509:10

1 CI Round · 38m 13s to merge

  1. CI Round 1 · 18m 29s · pushed 2026-10-07 08:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
38m 13s to merge, 1 CI Round
1 CI Round · 38m 13s to merge
  1. CI Round 1 · 18m 29s · pushed 2026-10-07 08:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
21:2321:3021:4021:5022:0022:1022:2022:3022:37

3 CI Rounds, 2 red · 1h 14m to merge

  1. CI Round 1 · 6m 31s · pushed 2026-10-06 21:50Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 14m 46s · pushed 2026-10-06 21:56Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 19m 23s · pushed 2026-10-06 22:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 14m to merge, 3 CI Rounds
3 CI Rounds, 2 red · 1h 14m to merge
  1. CI Round 1 · 6m 31s · pushed 2026-10-06 21:50Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  2. CI Round 2 · 14m 46s · pushed 2026-10-06 21:56Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 19m 23s · pushed 2026-10-06 22:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
20:0020:1520:3020:4521:0021:1521:22

4 CI Rounds, 1 red · 1h 22m to merge

  1. CI Round 1 · 18m 11s · pushed 2026-10-06 20:21Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 4m 32s · pushed 2026-10-06 20:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 16m 05s · pushed 2026-10-06 20:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  4. CI Round 4 · 14m 52s · pushed 2026-10-06 21:06Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 22m to merge, 4 CI Rounds
4 CI Rounds, 1 red · 1h 22m to merge
  1. CI Round 1 · 18m 11s · pushed 2026-10-06 20:21Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 4m 32s · pushed 2026-10-06 20:39Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 16m 05s · pushed 2026-10-06 20:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  4. CI Round 4 · 14m 52s · pushed 2026-10-06 21:06Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
20:1420:2020:3020:4020:5021:0021:1021:22

1 CI Round · 1h 07m to merge

  1. CI Round 1 · 18m 07s · pushed 2026-10-06 21:03Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 07m to merge, 1 CI Round
1 CI Round · 1h 07m to merge
  1. CI Round 1 · 18m 07s · pushed 2026-10-06 21:03Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
09:2610:0010:3011:0011:3012:0012:32

6 CI Rounds, 4 red · 3h 05m to merge

  1. CI Round 1 · 8m 17s · pushed 2026-10-06 10:53Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: Checks failed
  2. CI Round 2 · 17m 08s · pushed 2026-10-06 11:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  3. CI Round 3 · 17m 01s · pushed 2026-10-06 11:22Z · held by Checks, then Test, then E2E (F3) · RED: E2E (F3), Checks failed
  4. CI Round 4 · 9m 39s · pushed 2026-10-06 11:42Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  5. CI Round 5 · 18m 08s · pushed 2026-10-06 11:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  6. CI Round 6 · 17m 33s · pushed 2026-10-06 12:14Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
3h 05m to merge, 6 CI Rounds
6 CI Rounds, 4 red · 3h 05m to merge
  1. CI Round 1 · 8m 17s · pushed 2026-10-06 10:53Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: Checks failed
  2. CI Round 2 · 17m 08s · pushed 2026-10-06 11:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  3. CI Round 3 · 17m 01s · pushed 2026-10-06 11:22Z · held by Checks, then Test, then E2E (F3) · RED: E2E (F3), Checks failed
  4. CI Round 4 · 9m 39s · pushed 2026-10-06 11:42Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  5. CI Round 5 · 18m 08s · pushed 2026-10-06 11:51Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  6. CI Round 6 · 17m 33s · pushed 2026-10-06 12:14Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
10:4411:0011:1011:2011:3011:4011:5012:01

4 CI Rounds, 2 red · 1h 16m to merge

  1. CI Round 1 · 17m 35s · pushed 2026-10-06 11:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 2m 56s · pushed 2026-10-06 11:40Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 3m 11s · pushed 2026-10-06 11:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  4. CI Round 4 · 13m 58s · pushed 2026-10-06 11:46Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 16m to merge, 4 CI Rounds
4 CI Rounds, 2 red · 1h 16m to merge
  1. CI Round 1 · 17m 35s · pushed 2026-10-06 11:17Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 2m 56s · pushed 2026-10-06 11:40Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 3m 11s · pushed 2026-10-06 11:43Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: Checks failed
  4. CI Round 4 · 13m 58s · pushed 2026-10-06 11:46Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
10:0710:1510:3010:4511:0011:1511:34

3 CI Rounds, 2 red · 1h 26m to merge

  1. CI Round 1 · 2m 50s · pushed 2026-10-06 10:37Z · held by Checks, then E2E (F3), then Test · RED: E2E (F3), Checks failed
  2. CI Round 2 · 16m 56s · pushed 2026-10-06 10:54Z · held by Checks, then Test, then E2E (F3) · RED: E2E (F3), Checks failed
  3. CI Round 3 · 14m 57s · pushed 2026-10-06 11:18Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 26m to merge, 3 CI Rounds
3 CI Rounds, 2 red · 1h 26m to merge
  1. CI Round 1 · 2m 50s · pushed 2026-10-06 10:37Z · held by Checks, then E2E (F3), then Test · RED: E2E (F3), Checks failed
  2. CI Round 2 · 16m 56s · pushed 2026-10-06 10:54Z · held by Checks, then Test, then E2E (F3) · RED: E2E (F3), Checks failed
  3. CI Round 3 · 14m 57s · pushed 2026-10-06 11:18Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
09:2009:3009:4510:0010:1510:3010:4511:0011:16

4 CI Rounds, 1 red · 1h 56m to merge

  1. CI Round 1 · 18m 16s · pushed 2026-10-06 10:04Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 5m 33s · pushed 2026-10-06 10:30Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 17m 34s · pushed 2026-10-06 10:36Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  4. CI Round 4 · 17m 36s · pushed 2026-10-06 10:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 56m to merge, 4 CI Rounds
4 CI Rounds, 1 red · 1h 56m to merge
  1. CI Round 1 · 18m 16s · pushed 2026-10-06 10:04Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 5m 33s · pushed 2026-10-06 10:30Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 17m 34s · pushed 2026-10-06 10:36Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  4. CI Round 4 · 17m 36s · pushed 2026-10-06 10:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
09:1109:3009:4510:0010:1510:3010:44

3 CI Rounds, 2 red · 1h 33m to merge

  1. CI Round 1 · 18m 38s · pushed 2026-10-06 09:45Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 5m 21s · pushed 2026-10-06 10:22Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 16m 58s · pushed 2026-10-06 10:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 33m to merge, 3 CI Rounds
3 CI Rounds, 2 red · 1h 33m to merge
  1. CI Round 1 · 18m 38s · pushed 2026-10-06 09:45Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · RED: E2E (F3) failed
  2. CI Round 2 · 5m 21s · pushed 2026-10-06 10:22Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 16m 58s · pushed 2026-10-06 10:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
09:0909:2009:3009:4009:5010:0010:11

1 CI Round · 1h 02m to merge

  1. CI Round 1 · 16m 07s · pushed 2026-10-06 09:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 02m to merge, 1 CI Round
1 CI Round · 1h 02m to merge
  1. CI Round 1 · 16m 07s · pushed 2026-10-06 09:55Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
09:3009:3509:4009:4509:5009:5510:0010:07

2 CI Rounds · 37m 29s to merge

  1. CI Round 1 · 8m 07s · pushed 2026-10-06 09:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 17m 49s · pushed 2026-10-06 09:49Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
37m 29s to merge, 2 CI Rounds
2 CI Rounds · 37m 29s to merge
  1. CI Round 1 · 8m 07s · pushed 2026-10-06 09:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 17m 49s · pushed 2026-10-06 09:49Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
08:3108:4008:5009:0009:1009:16

1 CI Round · 45m 10s to merge

  1. CI Round 1 · 17m 00s · pushed 2026-10-06 08:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
45m 10s to merge, 1 CI Round
1 CI Round · 45m 10s to merge
  1. CI Round 1 · 17m 00s · pushed 2026-10-06 08:59Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
21:2521:3021:4021:5022:0022:1022:2022:29

2 CI Rounds · 1h 03m to merge

  1. CI Round 1 · 10m 50s · pushed 2026-10-05 21:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 33m 29s · pushed 2026-10-05 21:54Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +15m 40s
1h 03m to merge, 2 CI Rounds
2 CI Rounds · 1h 03m to merge
  1. CI Round 1 · 10m 50s · pushed 2026-10-05 21:44Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 33m 29s · pushed 2026-10-05 21:54Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +15m 40s
19:4220:0020:3021:0021:3022:00

1 CI Round · 2h 18m to merge

  1. CI Round 1 · 1h 29m · pushed 2026-10-05 20:30Z · held by Checks, then Test, then E2E (F3), then Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +30m 19s
2h 18m to merge, 1 CI Round
1 CI Round · 2h 18m to merge
  1. CI Round 1 · 1h 29m · pushed 2026-10-05 20:30Z · held by Checks, then Test, then E2E (F3), then Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +30m 19s
19:3319:4520:0020:1520:3020:4521:0021:1521:24

3 CI Rounds, 1 red · 1h 51m to merge

  1. CI Round 1 · 23m 22s · pushed 2026-10-05 19:55Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 19m 31s · pushed 2026-10-05 20:19Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 40m 16s · pushed 2026-10-05 20:44Z · held by Checks, then Test, then E2E (F3), then Test Explorer
1h 51m to merge, 3 CI Rounds
3 CI Rounds, 1 red · 1h 51m to merge
  1. CI Round 1 · 23m 22s · pushed 2026-10-05 19:55Z · held by Checks, then Test, then E2E (F3), then Test Explorer
  2. CI Round 2 · 19m 31s · pushed 2026-10-05 20:19Z · held by Checks, then Test, then E2E (F3) · RED: Checks failed
  3. CI Round 3 · 40m 16s · pushed 2026-10-05 20:44Z · held by Checks, then Test, then E2E (F3), then Test Explorer
17:3918:0018:3019:0019:3019:41

2 CI Rounds · 2h 01m to merge

  1. CI Round 1 · 17m 13s · pushed 2026-10-05 18:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 14m 54s · pushed 2026-10-05 19:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
2h 01m to merge, 2 CI Rounds
2 CI Rounds · 2h 01m to merge
  1. CI Round 1 · 17m 13s · pushed 2026-10-05 18:41Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 14m 54s · pushed 2026-10-05 19:25Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
18:4518:5019:0019:1019:2019:32

1 CI Round · 47m 04s to merge

  1. CI Round 1 · 17m 51s · pushed 2026-10-05 19:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
47m 04s to merge, 1 CI Round
1 CI Round · 47m 04s to merge
  1. CI Round 1 · 17m 51s · pushed 2026-10-05 19:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
18:0218:1018:2018:3018:4018:44

1 CI Round · 42m 44s to merge

  1. CI Round 1 · 16m 34s · pushed 2026-10-05 18:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
42m 44s to merge, 1 CI Round
1 CI Round · 42m 44s to merge
  1. CI Round 1 · 16m 34s · pushed 2026-10-05 18:27Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
17:1617:2017:2517:3017:3517:4017:46

1 CI Round · 30m 14s to merge

  1. CI Round 1 · 14m 01s · pushed 2026-10-05 17:32Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
30m 14s to merge, 1 CI Round
1 CI Round · 30m 14s to merge
  1. CI Round 1 · 14m 01s · pushed 2026-10-05 17:32Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
16:3216:4016:5017:0017:1017:2017:3017:34

3 CI Rounds · 1h 02m to merge

  1. CI Round 1 · 15m 54s · pushed 2026-10-05 16:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 2m 45s · pushed 2026-10-05 17:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 17m 28s · pushed 2026-10-05 17:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 02m to merge, 3 CI Rounds
3 CI Rounds · 1h 02m to merge
  1. CI Round 1 · 15m 54s · pushed 2026-10-05 16:58Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  2. CI Round 2 · 2m 45s · pushed 2026-10-05 17:13Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
  3. CI Round 3 · 17m 28s · pushed 2026-10-05 17:16Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
#765 Make Capture's chips compact and its note box resizable
merged 2026-10-05 16:31Z 1 red1 fluke
15:4716:0016:1016:2016:31

3 CI Rounds, 1 red · 44m 20s to merge

  1. CI Round 1 · 2m 18s · pushed 2026-10-05 15:54Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 3m 09s · pushed 2026-10-05 15:56Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: E2E (F3) failed
  3. CI Round 3 · 29m 48s · pushed 2026-10-05 16:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +15m 56s
44m 20s to merge, 3 CI Rounds
3 CI Rounds, 1 red · 44m 20s to merge
  1. CI Round 1 · 2m 18s · pushed 2026-10-05 15:54Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 3m 09s · pushed 2026-10-05 15:56Z · held by Checks, then E2E (F3), then Test, then Test Explorer · RED: E2E (F3) failed
  3. CI Round 3 · 29m 48s · pushed 2026-10-05 16:01Z · held by Checks, then Test, then Test Explorer, then E2E (F3) · FLUKE: E2E (F3) failed and passed on re-run, +15m 56s
14:5715:1015:2015:3015:4015:46

2 CI Rounds · 49m 36s to merge

  1. CI Round 1 · 8m 15s · pushed 2026-10-05 15:09Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 28m 32s · pushed 2026-10-05 15:17Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer · FLUKE: Test failed and passed on re-run, +16m 30s
49m 36s to merge, 2 CI Rounds
2 CI Rounds · 49m 36s to merge
  1. CI Round 1 · 8m 15s · pushed 2026-10-05 15:09Z · held by Checks, then E2E (F3), then Test, then Test Explorer
  2. CI Round 2 · 28m 32s · pushed 2026-10-05 15:17Z · held by Checks, then Test, then E2E (F3), then Test, then Test Explorer · FLUKE: Test failed and passed on re-run, +16m 30s
14:0114:1014:2014:3014:4014:5015:0015:09

1 CI Round · 1h 07m to merge

  1. CI Round 1 · 16m 22s · pushed 2026-10-05 14:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)
1h 07m to merge, 1 CI Round
1 CI Round · 1h 07m to merge
  1. CI Round 1 · 16m 22s · pushed 2026-10-05 14:52Z · held by Checks, then Test, then Test Explorer, then E2E (F3)