← Priority list
In progress

Land the TinySite large-file fixes (TinySiteWui PR 7, FiledropEmbedded PR 22, FiledropApi PR 6), deploy them, and prove a 35 MB file serves whole

Remaining: re-review and land https://github.com/CodexCoder21Organization/TinySiteWui/pull/7 (head 1c8aefd: serve files in single-round-trip ranges so a >16 MiB file is no longer cut off at 16 MiB under HTTP 200), finish the review round on https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/22 (head f747fd0: small-file download 7 -> 3 storage calls; needs the F1 replacement test + full suite), fold the doc fixes into https://github.com/CodexCoder21Organization/FiledropApi/pull/6 (head 4ebec2f: publishes the 524,286-byte one-round-trip limit), then publish FiledropApi 0.0.7 and filedrop-embedded (which also carries the merged-but-unpublished PR 18), bump FiledropServiceServer (branch download-range-uses-api-limit), redeploy filedrop-server and tinysite-wui, and verify a >16 MiB file uploads and serves byte-for-byte. Owner pre-approved merge+deploy after clean independent reviews. Nothing from this effort is deployed or published; all branches are pushed. kotlin.build (remote) checks wait ~2-2.5 h in a saturated buildtest queue. Also pending: owner approval of the Content Decryption capture (branch wip/content-decryption-zerotrillion, review copy https://tinysite.wasmserver.com/s/f185e67226/).

Claimed by fable-code-2026-10-17

Handoff document

Markdown

Land the TinySite large-file fixes, deploy them, and prove a 35 MB file serves whole

Written 2026-10-17 ~02:45 UTC. RE-VERIFY before acting. Every PR state, CI result, published version and deployed build below is a write-time snapshot. Re-check:

  • PRs: gh pr view <n> --repo CodexCoder21Organization/<repo> --json state,mergeStateStatus,statusCheckRollup,mergedAt
  • Published artifacts: curl -sI https://kotlin.directory/<group-path>/<artifact>/<v>/<artifact>-<v>.pom
  • Deployed builds: ssh -p 23 root@198.199.106.165 'ls -la /root/ContainerNursery/apps/tinysite-wui.jar /root/ContainerNursery-uploads/jars/ | grep -i filedrop', or the ContainerNursery CLI routes --json.

All delegated work was stopped at the owner's request; nothing is running.

Mission

The owner asked (2026-10-16): "investigate the tinysite issues, fix them, merge the changes, deploy, and upload the site." The original trigger was publishing a design capture of zerotrillion.com ("Content Decryption") to https://tinysite.wasmserver.com for review.

The owner pre-approved merging and deploying for this effort. Per their earlier authorization (memory tinysite_outage_fix_authorization_2026_10_08), merge each PR only after independent reviews are clean, and always git pull latest main before building a deploy.

Remaining:

  1. Land the three open PRs: TinySiteWui 7, FiledropEmbedded 22, FiledropApi 6.
  2. Publish FiledropEmbedded and FiledropApi.
  3. Bump FiledropServiceServer and redeploy filedrop-server and tinysite-wui.
  4. Verify that a file over 16 MiB (ideally the 35,125,250-byte one) uploads and serves byte-for-byte.
  5. Ask the owner to approve the Content Decryption capture, then open the Good-UI-Designs PR.

What was found (the chain)

TinySite (tinysite-wui, repo TinySiteWui) stores each site as a "drop" in Filedrop (url://filedrop/, the filedrop-server built from FiledropServiceServer, which embeds FiledropEmbedded). Filedrop stores files in SimpleFileSystem vNext (url://simple-filesystem-vnext/). Every url:// hop goes through ContainerNursery on 198.199.106.165.

Three distinct problems were observed on 2026-10-16:

1. A large file was served truncated at exactly 16 MiB under HTTP 200

  • Observation: a site whose index.html is 35,125,250 bytes (site 4e7968caad, since expired or orphaned) returned exactly 16,777,216 bytes. The response carried the full Content-Length, then the connection closed early. A client reading to EOF sees "200 + 16 MiB". /index.html directly returned 503.
  • Mechanism (verified, reproduced): TinySite served files in 4 MiB downloadFileChunk calls (DOWNLOAD_RANGE_SIZE_BYTES). The FiledropApi contract permits 4 MiB, but FiledropServiceServer's sandboxed client (FiledropClientImpl) carries anything over MAX_RPC_READ_BYTES = 524,286 bytes as several serial round trips inside ONE call, and UrlResolver abandons any single call after 30 s. At the measured ~3 s per round trip, 8 round trips exceeded 30 s. The fifth 4 MiB range failed and the response stopped at 16 MiB.
  • Why one round trip is capped (verified in UrlProtocol): Libp2pHostFactory.kt:401-411 allows a 4 MiB per-connection / 8 MiB per-process response outbox and answers OUTBOX_FULL immediately (no waiting). So a 4 MiB range (5.59 M base64 characters) can never travel in one response. 524,286 is the largest multiple of 3 at or below 512 KiB (699,048 base64 characters), which leaves headroom for about 6 concurrent full reads per connection.
  • Reproducer: TinySiteWui tests/testLargeFileIsServedWholeWhenEachStorageCallIsSlow.kts on main fails with Expected <20971520>, actual <16777216> plus SJVM virtual method invocation timed out after 30s: ...FiledropClientImpl.downloadFileChunk, the exact production signature.

2. Committing a ~4 MB file exceeded the 30 s call limit

  • Three upload attempts each failed committing a different 4.1-4.6 MB image: HTTP 502 ... SJVM virtual method invocation timed out after 30s: ...commitFileUpload.
  • Mechanism: each commit made ~29 sequential storage calls, each costing several RPCs (~100 round trips). That came to ~13 s on a quiet host and >30 s at busy moments. File size was irrelevant: 2 KB to 500 KB files also hit it that day.
  • Ruled out: re-reading chunks for the SHA-256 (the trusted digest prefix is used), scanning all drops (upload ids carry the drop id), lock contention (0 BLOCKED threads).
  • Largely fixed already by a parallel session's https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/18 (merged 2026-10-17 01:40 UTC). On current main a 3-chunk commit costs 25 storage calls (about 1.6 s at ~65 ms per call). This session's PR 23 would only have made it 23, so it was closed as superseded.

3. Every TinySite to Filedrop call cost ~3 s even for 100 bytes

  • Mechanism: each TinySite GET is one downloadFileChunk. On the old main that call read the drop's metadata.json 8 times plus the payload, and each read cost ~6 round trips: 48 isolated GETs, median 3.9 s, of which 3.6 s was 53-54 sequential storage calls at ~65 ms. Only 0.25 s was spent before filedrop's first storage call.
  • Ruled out: SJVM sandbox, relay routing and peer discovery.
  • PR 18 made the reads ranged (7 calls per download on current main). https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/22 reduces that to 3 for manifests ≤ 64 KiB.

Also found (not TinySite code)

  • url://buildtest/ (the service behind the required kotlin.build (remote) check) had two phases. Recorded at https://github.com/CodexCoder21Organization/PlanRepository/blob/main/challenges/2026-10-17-0211-url-buildtest-stalled-2026-10-16-17-29-23-32z-on-phantom.md, with evidence on the host at /root/forensics/b1-buildtest-20261017/.
    • 2026-10-16 17:29-23:32 UTC: stalled. Granted-but-dropletless runs blocked admission, while createDropletAsync/getDropletCreationStatus calls timed out after 30 s. A redeploy by another session cleared it.
    • Since then: not stuck but saturated at its 200-droplet limit (191 real droplets, ~40 completions/hour). PR checks wait ~2-2.5 h before admission. A restart is not recommended.
    • Raising the droplet limit costs money and is the owner's call.
  • The zerotrillion capture was 35 MB only because of how it was built. The photos were base64-embedded to make file:// work, and the site serves 1280-8192 px originals (22.7 MB). The capture now keeps 1000 px images as files (648 KB, whole capture 2.8 MB).

Relevant PRs / refs (live-checked at write time)

Repo PR Head State at write time What it does / what is left
TinySiteWui https://github.com/CodexCoder21Organization/TinySiteWui/pull/7 1c8aefdf3836fcb28d43da6c727979abe45ce90f OPEN; bld-build SUCCESS; kotlin.build (remote) queued in buildtest Serves each file in single-round-trip ranges (524,286 bytes). Round-1 adversarial review: no blockers. Round-1 test review's gaps M1-M6 were addressed at this head (30/30 local). The round-2 re-reviews were stopped mid-run and must be redone on this head.
FiledropEmbedded https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/22 f747fd0986bfe840489d13e9f6cc7b476367bbb5 OPEN; bld-build SUCCESS at fc678b4, checks re-running at f747fd0 Reads the whole manifest in one ranged read when it is ≤ 64 KiB: 3 calls per download instead of 7. Review at fc678b4: no correctness bug, but F1 (a test for a manifest growing between the pointer read and the whole read) and F2 (README/CHANGELOG stale) must be fixed. f747fd0 contains part of that round (the fallback continues from the replacement's pointer, plus docs). It has not had a full local suite run or re-review. Confirm F1's test exists and fails when the length guard at FiledropEmbedded.kt (~3168) is removed. Version should be 0.1.22.
FiledropApi https://github.com/CodexCoder21Organization/FiledropApi/pull/6 4ebec2f6a67eb8afdf96ee1fda08843c90b57090 OPEN; kotlin.build (remote) queued Additive: publishes FiledropChunkLimits.MAX_DOWNLOAD_RANGE_BYTES = 524,286 (plus related constants) as API 0.0.7. Review: no blockers. Low-severity doc fixes L1-L5/N3 (name the real 4 MiB / 8 MiB outbox limit, concurrency headroom, legacy-allowance failure mode, durable migration plan) are on the WIP branch below, unverified. The constants are compile-time and get inlined into consumers, so fix the docs before publishing.
FiledropEmbedded https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/23 14d4fa6408d3ab41779213c082f3ff5745f9048e CLOSED (superseded by PR 18) Commit-path call reduction. After PR 18 it saved only 2 calls (25 to 23).
FiledropEmbedded https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/18 a6571aa MERGED 2026-10-17 01:40 UTC (by a parallel session; its kotlin.build checks show CANCELLED) Bounded storage reads per Filedrop call (0.1.21). Not published (0.1.21 POM returns 404), so not deployed.

Branches (all pushed; remote SHAs verified with git ls-remote)

Repo Branch Remote head PR What is on it State
TinySiteWui t1/serve-large-files-in-single-round-trip-ranges 1c8aefdf3836fcb28d43da6c727979abe45ce90f PR 7 Fix plus tests Builds; 30/30 local; awaiting re-review and remote CI
FiledropEmbedded t3/download-reads-manifest-once f747fd0986bfe840489d13e9f6cc7b476367bbb5 PR 22 Single-read small-manifest lookup plus partial review fixes 171/171 local at the parent fc678b4; f747fd0 itself not suite-verified
FiledropApi download-range-one-round-trip 4ebec2f6a67eb8afdf96ee1fda08843c90b57090 PR 6 API constant Builds locally; awaiting remote CI
FiledropApi wip/t4-pr6-review-doc-fixes 72be28b32e1eda3c5e3652e57bbc7f26b84ec8c9 no PR (fold into PR 6) Review doc fixes L1-L4/N3 Uncommitted WIP captured at stop; never built or reviewed
FiledropServiceServer download-range-uses-api-limit c355de20cb40ba188b1eb8b546d1144f40fc51d5 no PR yet Test testE2eSjvmDownloadRangeAtApiMaximumIsOneRoundTrip.kts, fail-first form At 4,194,304 it fails deterministically ("Expected <1>, actual <9>" round trips); at 524,286 it passes. Needs FiledropApi 0.0.7 published, then the client switched to the constant.
FiledropServiceServer wip/t4-fss-concurrent-range-test eb08d168fec52f3249fa6c38d400a82baa5b8b72 no PR Review item T1: a concurrent full-size reads test (pins the headroom); drops a slow step that could never fail Never confirmed to fail/pass as intended
FiledropEmbedded fewer-storage-calls-per-commit 14d4fa6408d3ab41779213c082f3ff5745f9048e PR 23 (closed) Commit read-once on top of PR 18 Superseded; safe to delete
FiledropEmbedded wip/t2-pr23-before-pr18-36fc5fc 36fc5fc032960c6d05a62bee211cc0234ccdbc9a none PR 23 before the PR 18 rebase Superseded; reference only
FiledropEmbedded wip/t3-pinned-read-pre-pr18-9f2fd34 9f2fd344915c7420b7d9502f5f2c28610e4e2583 none PR 22 before the PR 18 rebase Superseded; reference only
Good-UI-Designs wip/content-decryption-zerotrillion 346e4b34f043ed04c833a8fca5921f0a40d1df25 no PR (awaits owner approval) The "Content Decryption" capture (zerotrillion.com minus hero, video and full-page footer; nav header with its decryption effect kept) Verified locally and on TinySite. The root README entry has not been added yet.
PlanRepository wip/tinysite-outage-2026-10-08 d7e56493c90e380bc3c58e30aebcbdaa45cb748b none wip/tinysite-2026-10-16/: every lane brief, findings file and review report from this effort (t1-t4, b1, rev-*); wip/tinysite-outage-2026-10-08/: the earlier outage evidence Reference

Deployed or published but not merged

  • Nothing from this effort is deployed or published.
  • Live at write time:
    • tinysite-wui.jar dated 2026-10-16 14:13 UTC, built from TinySiteWui main after PR 3. It does not contain PR 7.
    • filedrop-server filedrop-server-74bcdcdd-20261014T1319Z.jar, replaced in place 2026-10-16 09:19 UTC by another session. It predates PR 18 and PR 22.
    • simple-filesystem-vnext-a3501bb7-20261015T0532Z.jar, replaced in place 2026-10-16 20:48 UTC by another session.
  • Published: filedrop-api 0.0.6 is the latest (0.0.7 returns 404). filedrop-embedded 0.1.21 and 0.1.22 both return 404, so PR 18 is merged but not published.

Next steps

  1. TinySiteWui PR 7: run fresh independent reviews (adversarial and test-comprehensiveness) on 1c8aefd. Previous reports: rev-t1-adv.md and rev-t1-tests.md in the PlanRepository folder above. Fix any findings, wait for kotlin.build (remote) (buildtest queue), merge.
  2. FiledropEmbedded PR 22: finish the review round on f747fd0.
    • F1: add shorter / longer / equal-length replacement tests between the pointer read and the whole read, with exact read counts, and confirm they fail when the length guard is removed. A ready-made probe is in the PlanRepository folder report rev-t3c.md.
    • Confirm F2's README/CHANGELOG rewrite.
    • Set the version to 0.1.22, run the full local suite, get a re-review and green CI, merge.
  3. FiledropApi PR 6: fold wip/t4-pr6-review-doc-fixes into the PR branch, build, re-review, green CI, merge, and publish 0.0.7. SHA-256-verify the published jar (memory: maven coordinate collisions).
  4. Publish filedrop-embedded from main once PR 22 lands. This will include PR 18. Check which version is free first (0.1.21 is unpublished, but main's build.kts may already claim it). Byte-verify the published artifact.
  5. FiledropServiceServer: open a PR from download-range-uses-api-limit. Switch FiledropClientImpl and its tests to FiledropChunkLimits (API 0.0.7), fold in the T1 concurrent test from wip/t4-fss-concurrent-range-test, and bump filedrop-embedded to the new version. Review, merge, build the fat jar from fresh main.
  6. Deploy: redeploy filedrop-server (from the new FiledropServiceServer main) and tinysite-wui (from TinySiteWui main with PR 7). Use the container-nursery-deploy skill. Never (re)start long-lived services via HardwareControlFabric launch (memory never_launch_cn_via_hcf_launch_cgroup_512m).
  7. Verify in production: upload a site with a file over 16 MiB through ~/.claude/skills/good-ui-designs/scripts/tinysite-deploy.sh and confirm it serves byte-for-byte (curl ... | cmp - file). Also measure a small-file GET and a commit against the earlier numbers (GET median 3.9 s; commit 13 s+).
  8. Content Decryption:
    • Ask the owner whether https://tinysite.wasmserver.com/s/f185e67226/ (expires 2026-10-23) looks right. If it has expired, redeploy from the Good-UI-Designs branch above.
    • Pending owner choice: the hero is currently removed entirely. The owner once mentioned "replace the video with a black box/placeholder"; that was answered by explaining the hero was already removed, and it stays removed unless they say otherwise.
    • On approval, add the root README entry and open the PR (Good-UI-Designs has its own review flow; see the good-ui-designs skill).
  9. Follow-ups worth separate handoffs (not required for this mission):
    • FiledropWui (Main.kt:45 / RawContentServlet.kt:182) and FiledropCli (Transfer.kt:23) still request 4 MiB ranges. Switch them to the API constant.
    • UrlResolver: one timed-out sandboxed call invalidates the shared connection for every caller. This was seen in buildtest's droplet client and in the 2026-10-08 TinySite outage.
    • BuildTestEmbedded: OUTPACED runs can keep their droplets ~18 min (teardown in cancelBuildRunAfterUploadFinalizationStopRequested is skipped if a later step throws), and outpace deadlines count queue wait.
    • SimpleFileSystem vNext: the read-session size is not taken from the pinned generation (F4 in rev-t3.md).

Reusable / operational knowledge

  • Host access: production is ssh -o BatchMode=yes -p 23 root@198.199.106.165 (read-only diagnostics). The ContainerNursery CLI is cs launch containernurserycli:container-nursery-cli:0.0.20 -r https://kotlin.directory -- --url https://api.nursery.wasmserver.com. A working cs is at ~/bin/cs; /usr/local/bin/coursier on the /code box is a wrong-architecture binary.
  • Headless Chromium on the /code box: the dependencies get wiped. Restore them from the Debian bookworm arm64 Packages.gz (see memory env_chromium_headless_ld_library_path) and install chromium-headless-shell via npx playwright-core install.
  • Git on the /code box: git identity and credentials may be unset. Run git config --global user.name codexcoder21; git config --global user.email codexcoder21@gmail.com; gh auth setup-git.
  • buildtest: kotlin.build (remote) for small PRs currently waits ~2-2.5 h behind agents' full-suite --remote runs. Run suites locally (scripts/test.bash --local) and don't add to the queue.
  • Overlap: a parallel session is also working on TinySite/Filedrop slowness (it authored PR 18). Check recent merges in FiledropEmbedded, FiledropServiceServer and TinySiteWui before starting, and rebase rather than duplicate.

Latest status report

20 reports
Running fable-code-2026-10-17 59325ee8 1 minute ago

Status report: 2026-10-17 14:16 UTC

Original request: speed up TinySite page loads (with parallel prefetch), let TinySite take about 8 uploads at once, add the two management-page lists (unused files and recent 404s, with three-part timestamps), race GitHub-runner builds against the remote build service so slow remote builds cannot block merging, fold in the TinySite large-file effort (land its three pull requests, deploy them, prove a 35 MB file serves whole), and end by proving filedrop is working, since filedrop was touched throughout. Added 08:40: the owner delegated the five open decisions to me (constraint: never raise a container's keep-warm period beyond 5 minutes). Added 10:25: the owner reported https://tinysite.wasmserver.com/ showing an error. Added 13:09: the owner asked that merged changes be deployed as appropriate after each merge.

🟡 Status: RUNNING. Every remaining step is mine; no question is open.

Progress since the last report (14:07 UTC)

  • All six lanes launched at 14:05 are alive and writing (every output file touched within the last minute). Early results from their findings:
    • Filedrop pin-bump review (https://github.com/CodexCoder21Organization/FiledropServiceServer/pull/34) has one medium finding so far: the eight-upload test's bound on shared bookkeeping writes is unsound, because the fake storage only counts the commit call and not the payload writes, so a request can be waiting on a healthy payload write while the test reads it as "queued its manifest update". It observed 8 manifest and 16 listing writes for eight uploads through the real RPC path, against the author's claim of at most 2 and 6. The verdict is pending; the PR's own checks are all green (only the informational remote-build check is still running).
    • Externalbrain round 3 did not fix the remote failures. The required remote check on https://github.com/CodexCoder21Organization/ExternalBrainWui/pull/58 at 0024696 fails the same two tests as before: the recovery scenario's HTTP read times out on the shared build service, and the permanent-failure scenario sees a null where it expects the second attempt. Locally both pass in about 40 s (the round-3 reviewer just ran them). So the remote failure is not the real-time deadline the author converted; the mechanism is still open. I saved the remote outputs and will brief the next author round with them, together with my own finding (the request router constructs a fresh document-page servlet per request, which re-reads the page template every time) and the reviewer's verdict when it lands. The reviewer has already pushed one passing edge test (immediate failure with concurrent requests) and is writing a combined shutdown case.
    • Read-idle regression fix is pushed (https://github.com/CodexCoder21Organization/UrlProtocol/pull/721 now at d1e8af9): the lane confirmed both reviewer tests fail 3/3 on the old head first; branch checks are running on the new head.
    • kompile-cli upstream fix has its mechanism written before any code: the manager library's close owner inspects the completed stop failure synchronously twice (for terminal cancellation, then while building its warning), and a lease-renewal error is formatted while renewal is still marked in progress; tests will inject failures whose message and cause getters block on a test-controlled future at each boundary. The upstream clone (about 572 MB) is still transferring.
    • kompile-cli CI diagnosis has the retry-fixture test passing repeatedly on main in a separate worktree and is now running the new SIGTERM stress fixture there, up to ten times, to establish whether the two exit timeouts are pre-existing.
    • Buildtest consumer validation refuted its first hypothesis: the two startup-cleanup scenarios pass on clean main with the published journal 0.0.13, so they are not pre-existing; the candidate changes documented startup-observation contracts that those tests still assert in the old form. It is now reproducing the mid-page compaction failure.
  • The consumer PR's CI is worse than my last report said: https://github.com/CodexCoder21Organization/BuildTestEmbedded/pull/1490 has eight failing tests across six of the sixteen shards (the four I briefed plus an undrained-restart admission test, a 120-second timeout in a paged legacy-journal test, and two more classification-file startup tests), and bld-build is red only as the aggregate of those shards. The running lane was briefed with four; the full list is saved for its follow-up round if its fix does not cover the rest.
  • UrlProtocol coordinate bump https://github.com/CodexCoder21Organization/UrlProtocol/pull/720 is still first in its merge queue; the queue's full-suite run has been in progress since 13:31 (the previous queue run in this repository took 41 minutes).
  • TinySite was not re-probed this cycle; its first visit after idle still depends on the filedrop redeploy.

Pull requests

✅ Merged this effort: https://github.com/CodexCoder21Organization/TinySiteWui/pull/7 (12:16 UTC), https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/25 (12:12), https://github.com/CodexCoder21Organization/UrlProtocol/pull/718 (12:00), https://github.com/CodexCoder21Organization/FiledropServiceServer/pull/33 (11:58), https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/19 (10:41), https://github.com/CodexCoder21Organization/TinySiteWui/pull/6 (09:59), https://github.com/CodexCoder21Organization/SimpleFileSystemServiceEmbedded/pull/38 (08:53), https://github.com/CodexCoder21Organization/FiledropApi/pull/6 (08:48), https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/22 (06:18), https://github.com/CodexCoder21Organization/TinySiteWui/pull/5 (05:58), https://github.com/CodexCoder21Organization/HandoffServiceServer/pull/33, https://github.com/CodexCoder21Organization/HandoffEmbedded/pull/28, https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/18, https://github.com/CodexCoder21Organization/FiledropEmbedded/pull/20, https://github.com/CodexCoder21Organization/HandoffServiceServer/pull/32, https://github.com/CodexCoder21Organization/HandoffEmbedded/pull/29, https://github.com/CodexCoder21Organization/BuildTestProjectionJournal/pull/12, and four challenge records (https://github.com/CodexCoder21Organization/PlanRepository/pull/11034, https://github.com/CodexCoder21Organization/PlanRepository/pull/11033, https://github.com/CodexCoder21Organization/PlanRepository/pull/11036, https://github.com/CodexCoder21Organization/PlanRepository/pull/11040). Published: filedrop-embedded 0.1.27, filedrop-api 0.0.7, simplefilesystemservice-embedded 0.0.32, projection-journal candidates rc4 and rc5. Deployed: TinySite bbce49a (13:14 UTC); handoff service 0.0.30.

⏳ Pending (live at 14:13 UTC):

Pull request Head State
https://github.com/CodexCoder21Organization/UrlProtocol/pull/720 a5c13c1 All checks SUCCESS; merge queue position 1, queue suite running since 13:31; publish after merge
https://github.com/CodexCoder21Organization/FiledropServiceServer/pull/34 2f8ff4b bld-build and remote SUCCESS; review running with one medium finding so far; my production-diff review clean; enqueue on CLEAN, then deploy filedrop
https://github.com/CodexCoder21Organization/ExternalBrainWui/pull/58 0024696 Required remote check FAILURE (same two tests); review running; next author round to be briefed
https://github.com/CodexCoder21Organization/UrlProtocol/pull/721 d1e8af9 Draft; regression fix pushed; all checks pending
https://github.com/CodexCoder21Organization/kompile-cli/pull/192 b40845c bld-all-tests FAILURE (3 of 327) under diagnosis; round-11 finding being fixed upstream
https://github.com/CodexCoder21Organization/BuildTestProjectionJournal/pull/8 88bf3db CI green, 109/109; rc5 published; waits on consumer validation
https://github.com/CodexCoder21Organization/BuildTestEmbedded/pull/1490 5b24edb Draft; 8 tests failing over 6 shards; repair running
https://github.com/CodexCoder21Organization/ContainerNursery/pull/661 1069341 Draft diagnostic; parked
https://github.com/CodexCoder21Organization/SimpleFileSystemServiceServer/pull/31 62aa364 Waits on the UrlProtocol publication; pin-bump brief ready; then deploy storage
https://github.com/CodexCoder21Organization/claude-code-skills/pull/160 42a35ff CLEAN; merges after a verified 8-file parallel publish

Delegated work at a glance

⏳ Running - GPT 6.1-sol high - 8 minutes total time - under 1 minute since last update - Independent review of the filedrop server pin bump https://github.com/CodexCoder21Organization/FiledropServiceServer/pull/34 at 2f8ff4b. So far: one medium finding that the eight-upload test's write-batching bound is unsound (the fake storage counts only commits, not payload writes) and an observation of 8 manifest and 16 listing writes through the real RPC path. Next expected checkpoint: the remaining rows (legacy-read proofs, rewritten fixtures, the connection-library coordinate side question) and the verdict.

⏳ Running - GPT 6.1-sol high - 8 minutes total time - under 1 minute since last update - Round-3 review of https://github.com/CodexCoder21Organization/ExternalBrainWui/pull/58 at 0024696: pushed a passing immediate-failure-with-concurrent-requests edge test to its review branch, ran the converted recovery scenarios locally (passing, about 40 s each), and is writing a combined shutdown-during-attempt test. Next expected checkpoint: its verdict.

⏳ Running - GPT 6.1-sol high - 8 minutes total time - 1 minute since last update - Fixing the regression in https://github.com/CodexCoder21Organization/UrlProtocol/pull/721: confirmed both reviewer tests fail 3/3 on the old head, pushed the fix as d1e8af9; branch checks running. Next expected checkpoint: the 73-file selection green, PR description updated and marked ready.

⏳ Running - GPT 6.1-sol high - 7 minutes total time - 1 minute since last update - Closing the round-11 finding on https://github.com/CodexCoder21Organization/kompile-cli/pull/192: mechanism written (two synchronous inspections of the stop failure by the close owner, plus a lease-renewal error formatted mid-renewal); reviewer reproducer running in forked children against manager 0.0.207; upstream clone transferring. Next expected checkpoint: upstream fail-first tests committed.

⏳ Running - GPT 6.1-sol high - 7 minutes total time - under 1 minute since last update - Diagnosing the three bld-all-tests failures on https://github.com/CodexCoder21Organization/kompile-cli/pull/192: the retry-fixture test passes repeatedly on a main worktree; now running the new SIGTERM stress fixture there up to ten times with a bounded controller. Next expected checkpoint: pre-existing-or-introduced classification for each failure.

⏳ Running - GPT 6.1-sol high - 7 minutes total time - under 1 minute since last update - Consumer validation of https://github.com/CodexCoder21Organization/BuildTestEmbedded/pull/1490: refuted "pre-existing on main" for the cleanup scenarios (2/2 green on clean main with journal 0.0.13), identified that the candidate's documented startup-observation contract changed under tests still asserting the old callbacks; reproducing the mid-page compaction baseline failure now. Next expected checkpoint: classification of each of its four failures.

⚪ Not running (finished/dead) - GPT 6.1-sol high - 2 minutes total time - 41 minutes since last update - TinySite route configuration: refuted the premise with source evidence (the site cache deletes its run directory on stop and clears abandoned ones at start) and made no production change. Nothing further is expected from it.

⚪ Not running (finished/dead) - GPT 6.1-sol high - 1 hour 35 minutes total time - 36 minutes since last update - Buildtest round 4: published rc5 (byte-verified), journal PR 109/109; consumer full run reached its cap without a result. Replaced by the consumer-validation lane above. Nothing further is expected from it.

How the fixes work

  • TinySite management lists, prefetch cache and large-file streaming (merged, deployed 13:14): every request updates an in-memory record written off the request path with per-entry generations; a bounded on-disk cache is filled in parallel by owned storage calls that stop interrupts and drains, one version per answer; files are served in 524,286-byte ranges from the published API constant, and the uncached path confirms size and upload time after every range.
  • Filedrop old-drop read, manifest read and group commit (merged, published; server pin bump in review): a serving read returns the drop's original complete metadata in two storage calls regardless of file count; one ranged read of the whole manifest; uploads touching the same bookkeeping document are batched so one leader does one read and one write per batch with no lock held during I/O.
  • Filedrop API constants (merged, published) and the server-side fix (merged): the download range and legacy limits are compile-time constants; the served client validates the caller's whole range before splitting and treats a padded part as terminal.
  • Storage library (merged, published): the manager's close interrupts and joins its trash-reclaim workers before releasing the root and refuses to join from inside a callback that holds a manager lock.
  • Connection library (merged, coordinate bump in the queue) and its read-idle follow-up (fix pushed): a completed answer that does not fit the response queue waits instead of being dropped; each paused answer has one owner-tracked deadline retired exactly once; separately, pending handlers count as activity so the idle check cannot close a stream under them, and bookkeeping for a permit released after the loop stopped runs inline or not at all.
  • kompile-cli (upstream fix in progress): the race's remote run is stopped on wait expiry or exit with a one-time fallback; every exit passes through one completion boundary that cannot itself fail; no code on the shutdown path, local or in the manager library's close, reads a failure's message before the outcome is published.
  • Buildtest CPU (consumer validation in progress): journal compaction does per-row bounded work and streams its staging delta; the startup row cache is bounded by the decoded footprint it retains.
  • Handoff service (deployed): report bodies are archived out of the live state file so the heap no longer grows per report.
  • ExternalBrainWui startup (round 3 in review; remote still red): the HTTP server binds before any dependency is contacted; dependencies open lazily with at most three attempts, each cut at 30 seconds on the injected clock; each route is gated only on the dependency it uses.

Blockers

🟡 None; every item has a lane running or a brief ready for the next slot.

Landing parallelization sweep: all landing gates are running in parallel: the filedrop pin bump has CI green, its review running and my final review done, so it enqueues the moment the review returns CLEAN; the externalbrain PR's review runs alongside its (red) remote check and the next author brief is pre-staged with the remote outputs; the read-idle fix's CI started on push. Nothing dispatchable is idle; the six-lane cap is full.

Plan changes: the externalbrain remote failure is reopened as an unexplained mechanism (the real-time-deadline theory is refuted by the run at 0024696) and goes into the next author round with my servlet finding; the buildtest consumer repair will need a follow-up round for the four failures outside the current brief unless its fix covers them.

Next steps: land the filedrop pin bump and redeploy filedrop, merge and publish the UrlProtocol bump then bump and redeploy the storage server, fix and land the read-idle, kompile-cli, externalbrain and buildtest PRs as their rounds come back clean and deploy what applies, make the TinySite cache survive restarts, then prove an 8-file parallel publish, old and new sites loading cold, faster page loads and a working filedrop.

Handoff

url://handoff/handoffs/hf-2026-10-17-land-the-tinysite-speed-and-parallel-upload-fixes-finish-the-ci-capacity-fixes-and-redeploy-tinysite-filedrop-and-storage, viewable at https://www.handoff.wasmserver.com/handoffs/hf-2026-10-17-land-the-tinysite-speed-and-parallel-upload-fixes-finish-the-ci-capacity-fixes-and-redeploy-tinysite-filedrop-and-storage; this report also reached the folded-in large-file handoff, whose remaining item is the filedrop server redeploy. Lane artifacts: https://github.com/CodexCoder21Organization/PlanRepository/tree/wip/tinysite-ci-handoff-artifacts-2026-10-17.

Top lessons

  1. A fix for a remote-only failure is unproven until the remote run on the fixed head is read. The externalbrain deadline conversion was a sound theory (real 30-second waits on a slow shared host), passed locally, and still failed the same two tests remotely, so the theory was wrong or incomplete. Treat "passes locally" as necessary, not sufficient, for a failure that only shows on another host, and read that host's output for the fixed head before briefing the next step on the old theory.
  2. Read the lifecycle code before treating a persistent path as persistent data. A configuration-only "make the cache survive restarts" task was refuted in minutes once the delegate read the cache's start and stop methods: the application deletes its own cache directory on stop by design. Before proposing an environment or path change to preserve state, confirm from the owning code and its tests that the state is meant to outlive the process.
  3. When a review names a defect in a dependency, fix it there and pin the result, even mid-round. The kompile-cli exit blocker survived ten local rounds because its last instance lives in the pinned manager library's close path; patching around it locally would have hidden it from every other consumer. Route the fix to the owning repository with a fail-first test, publish a candidate, and bump the pin.

Earlier reports

Running fable-code-2026-10-17 59325ee8 7 minutes ago
Running fable-code-2026-10-17 59325ee8 43 minutes ago
Running fable-code-2026-10-17 59325ee8 1 hour ago
Running fable-code-2026-10-17 59325ee8 1 hour ago
Running fable-code-2026-10-17 59325ee8 1 hour ago
Running fable-code-2026-10-17 59325ee8 1 hour ago
Running fable-code-2026-10-17 59325ee8 1 hour ago
Running fable-code-2026-10-17 59325ee8 2 hours ago
Running fable-code-2026-10-17 59325ee8 2 hours ago
Running fable-code-2026-10-17 59325ee8 2 hours ago
Running fable-code-2026-10-17 59325ee8 2 hours ago
Running fable-code-2026-10-17 59325ee8 2 hours ago
Running fable-code-2026-10-17 59325ee8 3 hours ago
Running fable-code-2026-10-17 59325ee8 3 hours ago
Running fable-code-2026-10-17 59325ee8 3 hours ago
Running fable-code-2026-10-17 59325ee8 4 hours ago
Running fable-code-2026-10-17 59325ee8 4 hours ago
Running fable-code-2026-10-17 59325ee8 5 hours ago
Running fable-code-2026-10-17 59325ee8 5 hours ago
Show fewer

Add dependency

Complete this handoff

Moves it out of every priority list and into ArchiveArea.