Repository navigation
ci: measure the merged EX63 workflow and warm repeat - #8070
Conversation
Add a comment noting that timing probes touch this workflow to select every CI area, and that comparisons should use actual checkout SHAs, runner resources, cache counters and complete job times. Auto-committed-on: macbook
Tiny Sweeper reviewComment-only change to the header of `.github/workflows/ci-lanes.yml`. All lanes report no findings: the two added lines change no triggers, permissions, actions, step inputs or shell commands and interpolate no untrusted contexts, so workflow behaviour and security surface are unchanged. The PR title and body match the diff, with the longer measurement narrative explicitly attributed to unpushed local work. State: Ready for maintainer review Review snapshot
Completeness: Complete Features
TestsNo supported feature-to-test mapping was produced. Test execution is not inferred. FindingsNo active actionable findings. Before mergeNone. Agent review detailscritique
security
tests
commits
description
Evidence and run details
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
tinysweeper found nothing blocking. Approving.
$0.0010 · 51,257 in / 2,703 out · 18,816 cached (37%) · ladder/vectors-oai3, deepseek-v4.1-flash · 40 embedded
critique: $0.0005 · 31,542 in / 1,016 out · 14,592 cached (46%) · deepseek-v4.1-flash
security: $0.0003 · 13,528 in / 428 out · 2,176 cached (16%) · deepseek-v4.1-flash
description: $0.0001 · 4,797 in / 658 out · 2,048 cached (43%) · deepseek-v4.1-flash
Measures the complete EX63 workflow after #8066 reached trusted main. The remote change currently identifies the timing-probe path; it changes no test selection, commands, resources or cache policy. Local follow-up fixes described below have not been pushed yet.
The first actual run, 39105976093, failed: execution 144m45s, plus 31m58s queue time. Actual checkout was
8bc78968466687e1abb6cf708dfaeba3c78d367b; trusted workflow source was47d5991159bab69726dd17bd2ede58841d8d7a76. This is diagnostic evidence, not a passing speed baseline.Main observation: test execution and compilation dominate this lane. Repeated executable hashing is a demonstrated local startup cost; coverage merging accounts for less than 1% of the lane. Full EX63 savings have not been measured.
Why core coverage took 66m50s
Of 10,101 core tests, 396 mostly passing cases above ten seconds consumed 92.9% of summed core-test process time, while 9,184 cases finished within 100ms. The same slow pattern exists in the earlier manual runs, so this is not evidence of a newly introduced storage regression. The CLI configuration took 10m19.8s; 24 serialized failing agent-harness cases accounted for 600.1s. Source confirms 60s approval-event and 120s subagent-event waits; these figures do not prove every wait has the same cause.
The lane also paid for nine sequential Cargo build invocations. CLI inventory alone built for 3m03s, followed by another 20.63s of build work before execution. Feature/fingerprint evidence is needed before calling this redundant or combining configurations; product/default coverage must remain separate. No failure-triggered retry loop was found.
Concrete startup cost and controlled local measurement
A bounded local stack sample found module admission hashing the entire ~352MB test executable through unoptimized software SHA-256. The digest cache is per process, while nextest launches each test in a fresh process. The actual CI revision has the same linked-storage source blob and TinyBus gitlink as the profiled checkout; its Cargo summaries also explicitly report the unoptimized test profile.
One controlled local macOS pair used identical source, configuration, features and checksum-verified TinyFlows 0.8.23 bytes, with module downloads forbidden inside tests. Only SHA-256 compiler optimization changed:
Both ran exactly one passing case. Observed reductions were 62.65% wall and 85.18% user CPU. Source/artifact hashes were independently recomputed; all 521 compiler-artifact records match except the two resolved SHA-256 optimization levels. Preflight verification is outside executable timing. This is one warmed local pair, not Linux coverage evidence or a full-suite projection. Earlier observations with unfrozen module inputs are superseded.
Follow-up fixes and validation
Local fixes synchronize SHA-256 dev/test optimization between root and standalone app manifests, install the omitted TinyHumans managed provider in the in-process harness fixture, and disable module downloads during cases while using authentic pre-staged release artifacts. Independent fresh checks passed the offline policy regression, actual managed inference and unchanged approval flow; seven existing hashing vectors also passed. No implementation dependency, linked/source override, skipped test, shortened deadline or digest-verification bypass was added. Release/CI profiles remain unchanged.
Whole-job Tinymold counters were 47.5% hits (2,785/5,863 cacheable compiles; 371 remote), 3,078 misses and zero cache errors; save took 22s. These counters cannot attribute core-lane cache behavior. Artifact ZIP SHA-256 was checked against GitHub metadata during safe structural collection.
The upstream storage-contract repair and TinyBox compatibility work remain prerequisites for a passing full run. The foundation PR #60 is approved and its ten build jobs passed; the review-service rerun is currently in progress following its earlier timeout. No full passing repeat has run. The next comparison must prove the same actual checkout, resources and complete test/coverage inventory, and report cache state and queue time separately.
Next measurement
The controlled local result supports the optimization for the measured fixture. It does not establish how many minutes the complete Linux lane will save or that its other failures are resolved.