window: subtract window from santi and take the web offline #48

Merged
PerishFire merged 1 commit from subtract-window into main 2026-07-21 09:50:16 +00:00
Owner

Window was never a santi module -- it's a web IM client (a send is im_send with participant window:; the transcript is that IM strand's messages). window_messages was ingest/drain spine metadata, not window-owned. So santi sheds window entirely and becomes window-agnostic (ingest/drain get simpler). Removed: /window endpoints + Window* wire types, service/window.rs, store/window.rs, the santi-window crate, the admission reservation branch + Reservation, the drain window coupling, the window_messages table. OpenAPI digest regenerated + wire-schema synced (operator-directed decommissioning). Per '直接下线 web, 全部清零': the entire current web is deleted (it WAS the window panel), unwinding the web build/guard integration -- build.rs embed, rust-embed glass SPA, guard web legs, wire-seat gate, release web-audit, .runseal/lib/web, and web/ all gone; negentropy.toml sheds its web config. Fixed a stray '||' in WIRE_PATH (had made every path match -> core always 0; gate tests catch it). No data migration. Baseline refreshed to the web-less tree. 43 cargo + 32 deno tests green.

Window was never a santi module -- it's a web IM client (a send is im_send with participant window:<hash>; the transcript is that IM strand's messages). window_messages was ingest/drain spine metadata, not window-owned. So santi sheds window entirely and becomes window-agnostic (ingest/drain get simpler). Removed: /window endpoints + Window* wire types, service/window.rs, store/window.rs, the santi-window crate, the admission reservation branch + Reservation, the drain window coupling, the window_messages table. OpenAPI digest regenerated + wire-schema synced (operator-directed decommissioning). Per '直接下线 web, 全部清零': the entire current web is deleted (it WAS the window panel), unwinding the web build/guard integration -- build.rs embed, rust-embed glass SPA, guard web legs, wire-seat gate, release web-audit, .runseal/lib/web, and web/ all gone; negentropy.toml sheds its web config. Fixed a stray '||' in WIRE_PATH (had made every path match -> core always 0; gate tests catch it). No data migration. Baseline refreshed to the web-less tree. 43 cargo + 32 deno tests green.
window: subtract window from santi and take the web offline
Some checks failed
guard / guard (pull_request) Failing after -25s
135a9a53ad
Window was never a santi module -- it is a web IM client (a send is an
im_send with participant window:<hash>; the transcript is that IM strand's
messages). Its only table, window_messages, was ingest/drain spine metadata
(written in admission, its message_id reused and cursor updated during drain),
not window-owned state. So santi sheds window entirely and becomes
window-agnostic; ingest and drain get simpler.

Removed from santi: the /window/im/send and /window/im/transcript endpoints
and their Window* wire types; service/window.rs (send, transcript, rate limit,
participant hashing); store/window.rs; the santi-window crate; the admission
window reservation branch and the Reservation type; the drain's window
coupling (message_id reuse + cursor write, now a plain generate); and the
window_messages table. The OpenAPI contract digest is regenerated and the
wire-schema synced (an operator-directed decommissioning, not a Liberte round).

Per "直接下线 web, 全部清零": the entire current web is deleted (it WAS the
window panel -- only view Window.tsx, wire.ts 100% window types). That unwinds
the whole web build/guard integration: santi-api's build.rs embed check and
the rust-embed glass SPA server are gone; the guard drops its web legs (pnpm
install/biome/tsc/vitest/build, web tokens, dist.manifest) and the wire-seat
gate; the release forge()/web-audit step is removed; .runseal/lib/web, the
wire seat, and the web/ tree are deleted; negentropy.toml sheds its web scan
roots, grants, and boundaries. A stray `||` left in the WIRE_PATH regex while
removing santi-window (which had silently made every path match -> core always
0) is fixed; the gate regression tests catch it and pass.

No cross-db/data migration (im/window data is disposable at this stage). Word
debt baseline refreshed to the web-less tree (wire 1035, test 485, internal
559, total 2079; core 0). 43 cargo groups + 32 deno tests green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
PerishFire force-pushed subtract-window from 135a9a53ad
Some checks failed
guard / guard (pull_request) Failing after -25s
to 6f804778a8
All checks were successful
guard / guard (pull_request) Successful in 1m36s
2026-07-21 09:48:04 +00:00
Compare
PerishFire deleted branch subtract-window 2026-07-21 09:50:16 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
PerishFire/santi!48
No description provided.