refactor(web): extract messaging-platform catalog into web_routers/messaging - #79128
refactor(web): extract messaging-platform catalog into web_routers/messaging#79128andrexibiza wants to merge 1 commit into
Conversation
|
This was generated by AI during triage. CI slices 5/8 and 8/8 fail on this branch: Problems:
Suggested changes:
Checked against |
|
🔒 This shard is part of the web_server.py KILL LOCK — the permanent record of the 17,700-line whole, the mess it caused (#58576 event-loop stalls, #60800 cold-start stalls, #53972 token persistence, #71778 analytics), every shard in the wave, and every open fixer PR still fighting the surface (#50188 #71802 #54034 #76764 #71150 #67365 #65434 #65424 #78411 #75845 #68022 #62654 #76757 #68251 #51070 #73605 #73849 #73393 #71752 #77808 #46956 #74297 #77853). Lock: posted on #78628 · Indexed by the Kill All Gods meta-issue #78647. |
…in (NousResearch#79128) Restores the seams the original NousResearch#79128 slice broke and re-extracts the messaging-platform catalog/routes from current main: - Re-export the legacy _build_catalog_entry symbol from hermes_cli.web_server so existing test/consumer imports keep resolving. - Late-bind read_runtime_status, resolve_gateway_liveness, get_running_pid_cached and get_runtime_status_running_pid through hermes_cli.web_deps.late(), preserving web_server monkeypatch authority after the router extraction. - Read _GATEWAY_HEALTH_URL via late_attr() instead of freezing server state at import time. - Retain all three current-main asyncio.to_thread offloads in the extracted routes. Catalog and route bodies match current main except the intended late-bound health-state edit and APIRouter decorator ownership.
|
Implementation verification for the repair on #79128 (web_server.py god-file slice R4-C2C5). Verified the repair packet against a live checkout at the pinned base Apply / identity
Extraction equivalence
Seam identity / monkeypatch authority
Canonical suites (the ones the authoring container could not run)
Static checks
Two documentation-level notes (no code impact)
Behavior-preserving modulo the two declared seam edits; offloads retained; previously-unrunnable suites all green. Part of #78647 / #78628. |
c0d75d6 to
f64b41b
Compare
|
Exact-head completion receipt for
The fresh close→reopen dispatch supersedes the earlier cancelled CI run. The legacy Contributor-side implementation and CI residue are closed. Maintainer review/merge remains. |
Current disposition
Exact head:
f64b41b46e17cd0bd253998ae23c490f6b62571b.Contributor-side verification is complete on this exact head. GitHub reports the PR mergeable; the fresh current-base CI, Docker, and Nix runs are all green; there are no unresolved inline review threads.
Fresh receipts triggered from the unchanged exact head after the prior cancelled run:
32284415567: success;32284414599: success;32284414641: success.The complete legacy symbol/profile-startup contract is preserved:
hermes_cli.web_serverre-exports the legacy messaging symbols used by existing callers and tests;web_serverhelpers, preserving monkeypatch ownership;startup_failedis projected from that requested profile’s runtime state rather than ambient/default state;asyncio.to_threadoffloads;Part of #78647/Part of #78628, never an epic-closing keyword.The earlier cancelled CI run
32142622233is superseded by the successful fresh matrix above. Maintainer review/merge is the remaining repository action; no implementation or CI residue remains on the contributor side.Summary
Web-server god-file slice R4-C2C5: extract the messaging-platform catalog and Channels management from
hermes_cli/web_server.pyintohermes_cli/web_routers/messaging.pyusing anAPIRouter, while preserving the legacy import/patch surface.What changed
web_server.py;web_deps.late()/late_attr()so the original module remains the monkeypatch authority;Structural verification
git diff --check, OS-specific tests, e2e, and all repository-required fresh checks pass;Axl Ibiza, MBA <andrexibiza@gmail.com>in the actual repair commit.Coordination
web_server.pydecomposition/KILL LOCK.