WattShift retained all 193 unique test identities while removing one duplicate CI job. In one paired run, included runner busy time fell from 108.07s to 87.95s, while wall time increased from 97.73s to 105.66s. No energy, carbon or billed saving was measured. WattShift compares JUnit identities, configuration, source and timings before proposing a narrow deletion. A separate observer verified the candidate after the authoring wait timed out, and the owner accepted the result.
WattShift starts with a successful GitLab pipeline and a narrow question: are two jobs doing the same verified work? It collects job-specific JUnit reports, configuration, source identity, runner metadata and timings. Its bounded optimizer can remove only unit_duplicate; source, tests, lockfile, policy, primary tests and security checks must stay intact. Missing evidence, unsupported CI semantics or ambiguous retries block the comparison. Matching test counts alone is insufficient: the individual test identities must match.
GitLab Duo Agent Platform performs the native authoring and verification. Author session 9823214 published candidate 5daef528 in draft MR !22, deleting exactly ten CI lines. Its command timed out while waiting for CI, and that session remains INPUT_REQUIRED. A separate read-only observer, 9827914, checked the original pipeline pair and published the outcome. The owner genuinely accepted that final outcome in GitLab; the retained evidence combines the owner's direct confirmation with the resumed executor and saved FINISHED state. This is a two-session Supervised outcome chain, with one final human decision. MR !22 remains unmerged.
The baseline 2972350518 and candidate 2972370254 passed all 16 comparison checks. Included busy seconds changed from 108.074354 to 87.946448; wall time increased from 97.726 to 105.659 seconds. The report excludes qa_evidence consistently and discloses its increased overhead separately. These are observations from one pair, without benchmark retries. They establish neither production-wide savings nor measured energy, carbon or billed-minute reductions. An optional SCI model exists, with explicit hardware and other assumptions; no SCI result was produced for this native pair. The public outcome note exposes the calculation and gates.
The React and TypeScript workbench makes those distinctions inspectable through pipeline analysis, job details, test coverage and optional scenarios. Its default data is visibly synthetic; imported reports remain unverified inputs and their verdicts are recomputed. The browser never asks for a GitLab credential. The latest workbench redesign is local and has not been publicly deployed. Judges can inspect the public source and run the console locally, while using the linked native artifacts for the measured result.
The execution boundary is deliberately disclosed. Strict mode remains the default. This run used explicit disclosed mode for DEVELOPERS_CAN_PUSH_MAIN and DEVELOPERS_CAN_MERGE_MAIN: ordinary Developer access level 30 remained under main rule 338115063, push grant 397981279 and merge grant 367097524. Consequently, strict_isolation_verified=false; repository checks are not independent enforcement. Exact-source, identity, CI and force-push checks remained required. The flow has no merge or production-deployment operation.
The useful result is less duplicated test work with all 193 test identities retained—and the wall-time increase shown alongside it. Duo performed the linked native workflow; Codex assisted engineering and evidence assembly, with read-only review from Claude. Edited retained evidence is narrated by Deepgram. This single paired observation does not establish billed, energy or carbon savings.
Lifecycle stages demonstrated: verify, package, govern. This is a narrow, deep entry.
Built With
- gitlab-ci/cd
- gitlab-duo-agent-platform
- junit-xml
- node.js
- react
- typescript
- vite
- vitest
- zod
Log in or sign up for Devpost to join the conversation.