← Priority list
In progress

Verify and update ExternalBrainWui readiness tests

Verification RUNNING on reviewed D1: 195/196 first passes, 38/59 complete five-run files. Finish missing native records, admit the sole full local suite at the unchanged guards, then update the original open PR and watch bld-build. Source/evidence preserved; no merge or deployment.

Claimed by r123-readiness

Handoff document

Markdown

Handoff: Verify and update ExternalBrainWui readiness tests

Active progress — 2026-10-21T23:27:08.892611+00:00

Verification is RUNNING on exact reviewed source d1c722e39386362ec46d65042b08f4aa2373c809. Combined completed native records: 195 first passes / 196 final passes / 197 actual attempts, with 38 of 59 files complete at five repetitions each. repeat-coverage.json records every file and sample; recover that file and raw XML from the current evidence branch, and resume only missing repetitions. Primary labels are repeat-final-*; auxiliary labels are repeat-aux-*. Earlier resource-interrupted labels and the remote ERROR 0/0 health probe receive no credit.

The supported remote probe could not select a test because buildtest health returned STARTING: recovering local state (elapsedMs=609515) rather than OK. It emitted no XML or run ID and started no remote service run. Its isolated clone/processes are cleaned. The current local file ownership is recorded in primary-test-list.txt, aux-primary-twenty.txt, and third-test-list.txt. These are execution checkpoints, not a required future concurrency plan; recover the evidence and resume only missing records. The full local suite has not started, and host available memory remains below its 8.5 GB admission guard. The PR source/body remain at the original head, so its green bld-build is old-head evidence only.

The older observations below are historical snapshots; this active-progress section and the latest native evidence supersede their incomplete-run counts. The claim remains active.

Written 2026-10-21T21:39:08.577304+00:00.

RE-VERIFY: State below is a write-time snapshot. Check https://github.com/CodexCoder21Organization/ExternalBrainWui/pull/58 using gh pr view 58 --repo CodexCoder21Organization/ExternalBrainWui --json state,headRefOid,mergeStateStatus,statusCheckRollup,mergedAt; check source/evidence branch heads with git ls-remote; check runner disk/memory and machine-wide ps -eo pid,args -ww before running tests. The reviewed code is on a WIP branch, not on the PR source branch.

Design decisions in force — 2026-10-21

The original task is preserved verbatim in the evidence branch at verification/r123/p123.md. Key instructions:

Do NOT merge, enqueue, deploy or publish.

Do not stop to ask the user anything; decide and record your reasoning in $PWD/out/r123-findings.md.

never increase any timeout/deadline/window value, never reduce iteration counts, never weaken/delete/skip assertions, no reflection, no mocks.

Owner behavior requirement, verbatim:

Stay up, return 503 naming the backend, and keep retrying (exponential backoff) the open with the existing per-attempt limit (no new timeouts, exponenial backoff) until it succeeds, so the site heals itself once the backend is reachable.

This task changes readiness tests only; no production behavior, API, dependency, deployment, or publication was changed. Do not use --to-merged. The eventual required check must be watched with build-watchman 0.0.21 in plain --pr mode. No merge authorization is present.

Mission summary

Finish verification of the reviewed event-based readiness changes, update the existing open PR source/body once verified, watch required bld-build, and clean owned state. The previous task's sole full run at f1dd2e76e had 113/133 first-attempt passes, 133/133 final passes, and 153 attempts. This task was asked to replace PR-added wall-clock readiness assumptions, prove two mutation controls, run each touched test five times, and run one guarded full local suite from the exact head to push.

What was found and done

  1. A fresh clone was made at the explicitly requested $PWD/r123. No project AGENTS file exists. README plus the live TESTING.md and PHILOSOPHY.md were read; copies are in evidence. The PR began and remains at f1dd2e76ee3a388b07aa632f97a1acd0f861ca02. The source was rebased over origin/main a0638f7784f5f951f706e3af59e7c62aecd8582b; the source tree immediately after rebase matched the original PR tree. This replays the original PR history, so the eventual PR push requires a carefully checked force-with-lease if it still targets that history.
  2. Native baseline XML was independently parsed again: 113 first passes, 133 final passes, 153 attempts, 20 failed first attempts. Fourteen failures were PR-added paths, six existed on main. All names, classifications, and complete first stacks are in baseline-first-failures.json; original baseline native XML is retained byte-for-byte as baseline-full-local-01.xml. The baseline contains an invalid XML numeric character reference from ANSI output; native_xml.py normalizes only the analysis string and records that substitution, without altering the original. A no-frame timeout does not establish a readiness defect. One failure explicitly received503 still-starting instead of200.
  3. The audit classifies 108 changed-in-PR test paths: 69 newly added, 3 renamed existing-main scenarios, 36 other existing-main paths. readiness-inventory.json records baseline time references and causal events; changed-test-mechanisms.md lists all 59 touched tests with old/new mechanisms. Of those59,57 are new paths, one is the renamed reconciliation-failure scenario, and one is the explicitly requested existing process-budget test.
  4. Ten post-startup real protocol-error/recovery fixtures now construct the same real client and complete its first RPC synchronously before starting the application. The original operation/recovery wrappers and call assertions remain. These fixtures exercise faults after a healthy setup; startup/cancellation tests retain their original asynchronous factories. Twenty-one ordinary factory fixtures now wait on explicit completion latches using the remaining original deadline, then verify actual publication by public HTTP. Failure assertions use retry registration signals where available; remaining publication probes follow causal entry/release/retry events and pause gently.
  5. Production has no public successful markdown-publication callback or log. Factory return precedes publication; Search index reconciled: precedes publication as well. The public HTTP 200 transition is therefore still required. The tests retain their original hard deadline, and repeat requests recheck it after the pause. No production visibility was increased and no reflection or mocks were added.
  6. The process-budget test now observes the child's existing reconciliation log before the final HTTP readiness check. Repeated TCP probes are at least 100 ms apart while original 5 ms passive memory sampling continues. The 256 MiB cap, 120 s process deadline, three full-second startup gates, HTTP body checks, connection-count checks, and shutdown assertions remain.
  7. Deterministic mutation controls hold the provider's first real bytecode response for 16 seconds, longer than the old 15 s readiness window and shorter than the existing production connection-attempt limit. Old controls failed 2/2 first/final, all 6 runner attempts, with503where200wasexpected. New controls passed 2/2 first/final across 2 attempts under the identical delay. Native XML, complete stacks, exact old/new control scripts, and a red control branch are retained. The temporary controls are absent from the fixed source branch and do not add final scenarios.
  8. Dedicated test-design and independent code reviews were completed. The latter found two helper loops that could repeat GET after sleeping across a deadline; fixed in54f882f. A moved retry registration wait could otherwise consume 10 s instead of the old 5 s; d1c722e preserves the former 5 s absolute bound. Both reviewers confirmed no remaining material issue. No original assertion content, iteration count, annotation timeout, connection limit, or readiness bound was relaxed.
  9. Verification was stopped by explicit resource guards, not by a completed test verdict. The59-selector batch started before the three review-followup test edits; it was interrupted at a stricter 8 GiB disk guard, with native INTERRUPTED 0/0 and no XML. Two later per-file attempts using the exact requested8,000,000,000-byte disk guard also stopped. They credit no completed repetition. One bootstrap handshake warning appeared in the interrupted batch; no cause or test verdict is inferred from it. No full suite was started because requested free-memory admission never opened. No first/final full-suite comparison to the baseline 20 is available.
  10. Recovery examined only this task's private cache. Immutable duplicate JAR copies were consolidated, but a subsequent admission attempt still crossed the guard. All owned Java processes were confirmed gone, and the private cache was deleted. Other efforts' files, caches, processes, and checkouts were left alone. Source/evidence are all remote. Disk space recovered to about13.9GB at21:41UTC before the clone was deleted, so targeted verification resumed at21:42UTC. The private cache is being rebuilt normally. No clone cleanup occurs while tests are active; this handoff is an active execution checkpoint.
  11. The PR source and body are unchanged. A concrete append section is preserved as pr-append-draft.md, keeping the original why opening and citing113/133. Required bld-build is SUCCESS on the old f1dd2e76e PR head only. No CI verdict exists for the new WIP head, and no watcher, CI requeue, queue, merge, publish, or deploy was started. Do not describe old-head CI as new-head verification.

Relevant PRs / refs

Repo Branch Remote head SHA PR What is on it State
ExternalBrainWui https://github.com/CodexCoder21Organization/ExternalBrainWui/tree/fix/bind-before-dependencies f1dd2e76ee3a388b07aa632f97a1acd0f861ca02 https://github.com/CodexCoder21Organization/ExternalBrainWui/pull/58 Original open PR source OPEN/unmerged; bld-build SUCCESS on this head only
ExternalBrainWui https://github.com/CodexCoder21Organization/ExternalBrainWui/tree/wip/r123-readiness-events d1c722e39386362ec46d65042b08f4aa2373c809 Existing PR above is the eventual target; this branch has no PR 59 reviewed test changes, rebased on latest main at task start Mutation controls proven; five repetitions/full suite incomplete due resource guards; clean source tree
ExternalBrainWui https://github.com/CodexCoder21Organization/ExternalBrainWui/tree/wip/r123-delayed-controls 27a23d894cfe17b48af8276c7e2538a100899e66 no PR Old tests plus deterministic16s bytecode hold Reproduces0/2 first/final, 6 failed attempts; control only
ExternalBrainWui https://github.com/CodexCoder21Organization/ExternalBrainWui/tree/wip/r123-readiness-evidence bb1eac2efe1239396159a047fbadba2ccbc4b890 no PR verification/r123/ audit, docs, raw native evidence, reviews, commands, guard records and PR append draft Evidence snapshot; branch may advance with final cleanup/status records

No code was deployed or published by this effort. No service/container/runtime artifact was changed; command/evidence records contain no deployment or Maven-publication invocation.

Remaining steps

  1. Re-verify all state and the resource-admission dependency url://handoff/handoffs/hf-2026-10-21-satisfy-resource-guards-for-externalbrainwui-readiness-verification. Current observations are transient. The source branch is a reviewable checkpoint, not verified completion. Do not lower any requested guard or test bound, and do not change shared infrastructure or remove other work to make admission pass.
  2. Clone fresh at the task-requested $PWD/r123, then checkout the WIP readiness source. Read README/instructions. Recover verification/r123/ from the evidence branch into $PWD/out/r123/; read findings.md, both reviews, inventory/table, and the original p123.md before work.
  3. Complete five authoritative targeted repetitions per touched file from its final content. Read the current repeat-coverage.json and raw XML first; preserve and credit completed groups rather than repeating them. The interrupted attempts count as none. Use server/scripts/test.bash --test tests/<file>.kts --log <unique.xml> --result-file <unique.json> and parse native attempt-history, not just final PASS. Per-file runs preserve completed XML on an interruption. The saved helper run.py has a session-specific2026-10-22T03:00Z outer stop instant; replace that stale session stop instant with a fresh bounded controller deadline before reuse, without changing any test timeout/deadline/window. Fetch/rebase before builds; stop and investigate any actual nonzero test outcome rather than rerunning unchanged to get green.
  4. Once targeted results support the changes, run exactly one full local suite from the exact final head, after machine-wide ps -eo pid,args -ww proves no other full scripts/test.bash is active and the requested8.5 GB available-memory / 8 GB free-disk guards permit it. Preserve raw XML/JSON, first/final/actual-attempt counts, and all first stacks. Compare first failures to the baseline 20 without claiming every timeout has the readiness mechanism.
  5. Before the PR source push, fetch, verify it is still OPEN, and verify remote source is f1dd2e76e or carefully incorporate a descendant's changes. Rebase on current origin/main and rerun needed verification if source changes. Push normally where possible; if the history-preserving rebase requires it, use force-with-lease tied to the freshly verified expected remote head. Do not overwrite another lane's source edits.
  6. Fetch the current PR body, preserve its existing why opening and any other lane's body-only changes, append the reviewed readiness explanation and actual native counts (draft retained), then read back exact equality. gh pr edit previously hit Projects(classic) deprecation; structured REST PATCH is an available fallback once API capacity is available.
  7. Own a tracked plain watcher: /home/helena/bin/coursier launch buildwatchman:build-watchman:0.0.21 -r https://kotlin.directory -- --repo CodexCoder21Organization/ExternalBrainWui --pr 58. Never --to-merged; do not poll PR status more than once per 60 s. Stop the watcher before finishing. Report required bld-build separately from any informational suite.
  8. Record final source SHA, all old/new test mechanisms, mutation proof, five-run native counts, full native first/final/attempt counts and CI verdict. Push evidence, complete/release the handoffs appropriately, delete the owned clone/cache, and confirm no owned workers/watchers remain. Never merge/enqueue/deploy/publish.

Operational knowledge / limits

  • The existing main-branch API/operation behavior is not being changed by these tests; README and UI screenshots need no update for this follow-up.
  • Use the working ~/bin/coursier; the system binary is known to be the wrong architecture. CLI0.0.124 is pinned by this branch's test wrapper. Keep every native XML even when the runner automatically retries.
  • REST core quota was exhausted at 21:32 UTC (remaining 0/5000; reported reset 21:41:46 UTC), while Git reads/pushes and the GraphQL PR snapshot still worked. Do not assume that rate observation remains current. Live canonical handoff README fetch failed with 403; the cached canonical README from the previous task was read. Its legacy git-merge paragraph is superseded by the current create-handoff skill and this task's no-merge direction; use the central service.
  • The report-challenge CLI automatically enqueues/merges a PlanRepository PR, contrary to the brief. Friction is retained in these findings/evidence instead; no challenge automation was invoked.
  • No questions are pending with the user. The limiting artifact is resource admission, not an unanswered design decision. Tests that timed out without a frame in the baseline remain evidence to classify; the resource guards do not prove those tests' root cause.

2026-10-21T21:44:58.745804+00:00 — active resumption

The new per-file labels are repeat-final-<testName>-NN. Run all five repetitions from final source d1c722e. Disk admission recovered, and the first file is currently building/running. Full-suite available-memory admission is still closed. No new test verdict exists yet. The earlier interrupted labels are retained for diagnosis and do not count toward the required repetitions.

Model usage

Recorded agent work, including concurrent agents

No model usage has been recorded for this handoff yet.

Record work with handoff-cli usage report hf-2026-10-21-verify-and-update-externalbrainwui-readiness-tests.

Latest status report

4 reports
Running r123-readiness 410e9ebd 29 minutes ago

2026-10-21 23:46 UTC — RUNNING. The request is to replace readiness timing assumptions, prove delayed controls, run five targeted repetitions per changed file and one guarded full local suite, then update the existing PR and watch required CI.

Real-client fixtures finish setup before application startup. Factory and retry signals order the other assertions before gentle HTTP publication checks. The process-budget fixture waits for reconciliation output and spaces connections by 100 ms, retaining every original limit and assertion.

Native verification is 236 first / 237 final passes / 238 attempts, with 46 of 59 files complete at five runs each. One first attempt failed during Jetty startup with InterruptedException in testSandboxMethodLimitDoesNotStartRecovery; its automatic retry passed. That file's remaining repetition was stopped, its full stack is retained, and root is testing a specific late-watchdog ordering through the public sandbox API before choosing a fix. This supersedes the earlier all-first-pass reports. The process-budget fixture remains 5/5 first-pass, delayed controls are complete, and all completed groups are preserved remotely.

https://github.com/CodexCoder21Organization/ExternalBrainWui/pull/58 is freshly OPEN and unmerged at original f1dd2e76ee3a388b07aa632f97a1acd0f861ca02. Required bld-build is SUCCESS only on that old head. Reviewed candidate d1c722e39386362ec46d65042b08f4aa2373c809 remains off the PR; no new-head CI or full suite has started.

Delegated work at a glance: gpt-6-luna max implementation — complete; ten real-client fixtures were prepared and reviewed. gpt-6-luna max independent reviews — complete; deadline findings were corrected on D1, with no remaining findings then. gpt-6-luna max remote probe — complete and cleaned; service health prevented test selection, so it earned no test credit. gpt-6-luna max auxiliary verification — stopped on the genuine first failure after twelve complete five-run groups; that invocation now executes only the root-designed old/new resolver control, with a native old-version run active since 23:44. gpt-6-luna max third verification — its original nine-file queue completed 45/45 first and final passes; it is starting the seven remaining independent auxiliary files. Root continues its thirty-file queue and owns diagnosis. No delegate is waiting on the user.

The plan now includes resolving the observed caller interruption before full verification and PR update. A published resolver containing the upstream worker change exists, but the original fixture's exact legacy error assertion must be preserved in intent; no migration or workaround has been made. Host available memory is about 4.56 GB, below the unchanged 8.5 GB full-suite floor; free disk is about 9.68 GB. No question is pending.

No unnecessary holds. No idle landing gates. Owner direction captured: none new.

Next: finish the independent targeted groups, establish and resolve the interruption mechanism, complete final-head targeted/full verification when guards permit, update the PR, watch bld-build, and clean owned state.

Lessons: read native first attempts because a final pass can conceal a real failure; moving fixture setup between threads can change interrupt ownership and must be checked; resource-admission failures establish that a run could not start, not why a previous test failed.

Earlier reports

Running r123-readiness 410e9ebd 49 minutes ago
Running r123-readiness 410e9ebd 1 hour ago
Running r123-readiness 410e9ebd 1 hour ago

Add dependency

Complete this handoff

Moves it out of every priority list and into ArchiveArea.