Repository navigation
ThreadChatView fails to load a chat thread whose hub recycled through four owner activations without settling #6713
Description
Observed
The portal chat view ThreadChatView failed to load a chat thread: the view's synchronization stream JM0MLo7Q7kKDuzO1tj1PBw raised SyncStreamOwnerRefusedException through the view's load path (Loading '/data/"thread"' in area 'Thread/1'), giving up on its owner — the thread hub at PartnerRe/Esl/_Thread/can-we-record-a-couple-of-contacts-in-th-b8c357654b3e5687b21a — after 4 DISTINCT owner activations refused the stream against a budget of 3. The exception states the owner address was recycling in a loop, each successor activation dying before it could answer the stream handoff, and that the stream was ended deliberately so its readers can re-read.
The owner thread node itself is healthy as of reading: the node at PartnerRe/Esl/_Thread/can-we-record-a-couple-of-contacts-in-th-b8c357654b3e5687b21a is Active (version 910, created 2026-10-12 by sglauser, 46 messages). The failure is in the hub-activation/handoff cycle serving the thread, not in the persisted content.
Where and when
Single occurrence, single pod (memex-portal-deployment-679d7b6984-tzd87), one namespace (memex), at 17:17:41Z on 2026-10-13 — about 1h 42m after the thread's last recorded activity (15:35:35Z). The burst therefore hit while the thread was quiet, consistent with a user re-opening the chat view rather than with an in-flight agent round.
The same "giving up on owner … recycling in a LOOP" shape has appeared in the ops log before, in bursts on other owners: ~2026-10-07 10:36 (dozens of owners — Hosting/Triage/_Thread/*, Essentials/*, RFPProcessor, Manufacturing/ProductionEvent, …) and ~2026-10-10 08:22 (Admin/_LogIncident/* owners, captured by Ops/Actions/logs-memex-20261010-0821-route-5271). This is the first fingerprint of the shape on a user chat thread. The wording also differs from the 2026-10-10 lines ("Readers of this stream will now time out" vs. here "The stream now ENDS with this error so its readers can re-read") — the containment behavior at this site has changed between the two captures.
Impact
One user-visible failure to load one chat thread, once, for whoever had that view open. The stream is designed to end so the reader can re-read; whether the reload succeeded is not established. No data loss is evidenced — the thread node and its messages are intact. Judged sev:M from the numbers: one occurrence, one pod, one thread, with designed end-and-re-read containment. The earlier fleet-wide bursts of the same shape mean a recurrence across owners would re-rule this upward.
Not established
- What requested the four (or more) recycles of the thread hub. The exception attributes the defect to "whatever is requesting the recycles", but this incident carries no QUIESCE reason, no dispose attribution, and no per-activation fault.
- Why each successor activation died before answering — no exception from the activations themselves is on this incident.
- Whether the view recovered on re-read, and whether other threads on this pod showed the same in the same window (only one sample was captured).
- Whether the 2026-10-07 / 2026-10-10 fleet-wide bursts of the same shape share a cause with this instance.
Candidate causes and the reading that separates them
- Supervisor/execution relaunch loop on this thread. This is an agent thread (
Agent/Assistant, modelmistralai/codestral-2508viaProvider/OpenRouterEU) with an active supervision episode (c22400d305cf46ebaf0ae4337537b347), and its last recorded round ended with an upstream provider error. If each relaunch tears down and re-activates the thread hub, the sync-stream owner dies before it can answer — exactly matching "each successor dies before it can answer". Predicts[ThreadSupervisor] giving up on … after {n} relaunch(es)lines for this thread path in the 17:1x window (that log site has its own incident fingerprints). Reading: the ThreadSupervisor log forPartnerRe/Esl/_Thread/can-we-record-…in that window rules this in or out. - Poison hub activation — the thread hub faults during initialization, the address recycles, and each successor hits the same fault. Predicts an identical error at hub activation for this path, once per activation. Reading: any activation-fault log for this thread path in that window.
- A recycle wave reaching the thread repeatedly. The 2026-09-18 change made one recycle on a node type reach every node of that type as a single wave that does not fan out; a wave explains one recycle, not a loop of four. Predicts QUIESCE reasons citing the same NodeType-recycle origin and the same loop on other threads at the same instant — which the single sample does not show, though one captured sample cannot exclude it. Reading: the QUIESCE reasons of the four activations.
The single reading that separates all three: the [QUIESCE-START] log lines for the four activations of PartnerRe/Esl/_Thread/can-we-record-… around 17:17:41Z — each carries who requested the teardown and why (see Reading a Disposal Stall Verdict).
Where to look
MeshWeaver.Blazor.Chat.ThreadChatView— the view load path that surfaced the exception (this incident's category).MeshWeaver.Data.Serialization— the sync-stream owner handoff that raisesSyncStreamOwnerRefusedException(budget 3, DISTINCT owner activations counted); the exception's own text points at the recycler, not the stream.- The thread hub at PartnerRe/Esl/_Thread/can-we-record-a-couple-of-contacts-in-th-b8c357654b3e5687b21a — the owner address that recycled; node intact.
- Reading a Disposal Stall Verdict and Recycling an address through a governed instance action — the teardown-attribution and recycle-request surfaces.
- Prior same-shape bursts in
Ops/Logs(2026-10-07 ~10:36; 2026-10-10 ~08:22, actionOps/Actions/logs-memex-20261010-0821-route-5271) for comparison of wording and scope.
Evidence
| Fingerprint | d2f23d6b0444e043 |
| Category | MeshWeaver.Blazor.Chat.ThreadChatView |
| Severity | Error |
| Exception | MeshWeaver.Data.Serialization.SyncStreamOwnerRefusedException |
| Namespace | memex |
| Pods | memex-portal-deployment-679d7b6984-tzd87 |
| Occurrences | 1 |
| First seen | 2026-10-13 17:17:41Z |
| Last seen | 2026-10-13 17:17:41Z |
| Routing | not determined — no configured route matches the category MeshWeaver.Blazor.Chat.ThreadChatView. This repository is the configured fallback, not a finding about who owns the fault; the category names the LOGGER, which may not be the subject. |
Recent log lines
2026-10-13 17:17:41Z memex-portal-deployment-679d7b6984-tzd87 fail: MeshWeaver.Blazor.Chat.ThreadChatView[0]
Loading '/data/"thread"' in area 'Thread/1' in Area Thread/1
MeshWeaver.Data.Serialization.SyncStreamOwnerRefusedException: Stream JM0MLo7Q7kKDuzO1tj1PBw: giving up on owner PartnerRe/Esl/_Thread/can-we-record-a-couple-of-contacts-in-th-b8c357654b3e5687b21a — 4 DISTINCT owner activations have refused this stream (budget 3). The address is recycling in a LOOP, not settling: each successor dies before it can answer. The stream now ENDS with this error so its readers can re-read; the fix is at whatever is requesting the recycles, not here.
Opened automatically from Admin/_LogIncident/d2f23d6b0444e043. Recurrences are folded into this issue rather than opening new ones.
It also stands for the whole log site 0b17bab61a7b3664: other fingerprints of this site fold in here as comments rather than opening tickets of their own.
Activity
systemorph-com commentedon Oct 13, 2026
Folded in — a DIFFERENT fingerprint from the same log site.
This issue tracks the log site
0b17bab61a7b3664(MeshWeaver.Blazor.Chat.ThreadChatView), and these occurrences belong to it. They carry their own fingerprint — the masking split one site across several — so before this they would have opened a SEPARATE ticket. One log site fanned out into 46 of those, which is why they fold here instead. Nothing is discarded: the distinguishing evidence is below, and splitting this back out is a person's call.c267704c6a4344970b17bab61a7b3664MeshWeaver.Blazor.Chat.ThreadChatViewMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedExceptionStream {n}xHXO_1R3U2WsOY5CmkfQw: giving up on owner {path} — {n} DISTINCT owner activations have refused this stream (budget {n}). The address is recycling in a LOOP, not settling: each successor dies before it can answer. The stream now ENDS with this error so its readers can re-read; the fix is at whatever is requesting the recycles, not here.memex-cloudmemex-portal-deployment-54856649cb-54lxbAdmin/_LogIncident/c267704c6a434497What triage wrote about this fingerprint
Observed
MeshWeaver.Blazor.Chat.ThreadChatViewfailed to load the chat thread view for areaThread/1(path/data/"thread"): the underlying data stream (id4xHXO_1R3U2WsOY5CmkfQw) terminated withMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedException, naming the owner addressphuong/_Thread/where-do-i-add-materials-to-build-our-di-e79aaebbd6b6366796a0. By the exception's own account, 4 DISTINCT owner activations of that address refused the stream against the protocol's budget of 3: the address was recycling in a loop rather than settling, each successor activation dying before it could answer the stream. The stream ends with this error so its readers can re-read; the exception states plainly that the defect is at whatever is requesting the recycles, not at the stream.ThreadChatView is the log site that observed the failure while catching the load — the refusal itself is the serialization/stream layer's terminal answer once the owner-activation budget is spent.
Where and when
One occurrence, one pod, on the
memex-cloudnamespace. The refused owner is a personal thread of userphuong— a single owner address, not a fan-out across many nodes.The same exception shape (4 distinct activations, budget 3) appears in the ops log store in earlier fleet-wide bursts — dozens of different owners at once (
Chat,Analysis,MyAi/_Policy,Edu/Lesson,Video/_Activity,rbuergi, …) around 2026-09-26 06:17–06:19Z, and again around 2026-10-07 10:36Z, on other pods. This incident is not one of those bursts: one stream, one owner, no neighbours. Whether the single-owner case shares a cause with the fleet bursts is not established; they are named here because whoever picks this up will find them in the log store and should know they were seen.Impact
One user-visible failure to load one user's thread chat view at that instant. The stream is designed to end with this error so a re-read retries the load, so the impact to the reader is transient if the recycle loop stopped. Whether the thread still loads is not observed.
Not established
Candidate causes and the reading that separates them
DisposeRequests tophuong/_Thread/…(a retype, an overlay self-heal, a NodeType recycle cascade that includes the thread, a governedHosting/InstanceActionRecycle). Each fresh successor is torn down before it can serve the stream. Predicts:[QUIESCE-START]and/or[RecycleCascade]lines naming that thread's address on the same pod in the seconds before the sample. A Logs query for the address settles it in one read — the[QUIESCE-START]line carries the requester and reason (seeHosting/RecycleAction).PodHubNotHereExceptionrefusals naming the address in the same window, and the same stream attaching cleanly once placement settles.The first reading to take is the pod's log around the sample instant, filtered on the owner address: it separates all three at once.
Where to look
MeshWeaver.Blazor.Chat.ThreadChatView— the load-failure catch that logged this.MeshWeaver.Data.Serialization—SyncStreamOwnerRefusedExceptionand the owner-refusal budget that raises it (the distinct-activation accounting against budget 3).phuong/_Thread/where-do-i-add-materials-to-build-our-di-e79aaebbd6b6366796a0— its hub lifecycle in the window.Doc/Architecture/StaleStateUntilRecycle(a hub serves until aDisposeRequestreaches it) andHosting/RecycleAction(what a governed recycle records, and what[QUIESCE-START]carries).Severity note: filed
sev:Mon the numbers — one occurrence, one pod, one owner, and a load that is designed to retry on re-read. The failure class is user-visible and the underlying recycle loop is unexplained; if the address still recycles or the pattern repeats, a human should re-rule it.Still occurring: 1 more since the last update (1 total).
memex-portal-deployment-54856649cb-54lxbRecent log lines
rbuergi commentedon Oct 14, 2026
This is a duplicate of #6729, which is the anchor for the whole
SyncStreamOwnerRefusedExceptionfamily. The fix is in #6756.The root cause was the subscriber's own host stopping, not an owner recycle loop. The pod logged
Application is shutting down...in the same second as this burst. Its router answered each re-ask with an untaggedShuttingDownrefusal (Host is shutting down, cannot route to …), and the sync stream counted each of those as a "distinct owner activation". The fix rides out such routing-layer refusals on the paced time axis, and their give-up names the route instead of an owner.Closing as a duplicate. Verification follows on #6729.
systemorph-com commentedon Oct 14, 2026
Folded in — a DIFFERENT fingerprint from the same log site.
This issue tracks the log site
0b17bab61a7b3664(MeshWeaver.Blazor.Chat.ThreadChatView), and these occurrences belong to it. They carry their own fingerprint — the masking split one site across several — so before this they would have opened a SEPARATE ticket. One log site fanned out into 46 of those, which is why they fold here instead. Nothing is discarded: the distinguishing evidence is below, and splitting this back out is a person's call.0cf50d9d7d625b310b17bab61a7b3664MeshWeaver.Blazor.Chat.ThreadChatViewMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedExceptionStream Qlv5xA9kB0WbKiLVHT_zDA: giving up on owner sglauser — {n} DISTINCT owner activations have refused this stream (budget {n}). The address is recycling in a LOOP, not settling: each successor dies before it can answer. The stream now ENDS with this error so its readers can re-read; the fix is at whatever is requesting the recycles, not here.memex-cloudmemex-portal-deployment-6bd97645d4-fwns9Admin/_LogIncident/0cf50d9d7d625b31What triage wrote about this fingerprint
Observed
The composer's context-resolution step in
ThreadChatView(log siteMeshWeaver.Blazor.Chat.ThreadChatView, messageResolving the composer's context in Area Composer) failed withMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedException: its backing sync streamQlv5xA9kB0WbKiLVHT_zDA, owned by the hub at addresssglauser, terminated after 4 DISTINCT owner activations refused the stream (budget 3). The exception's own text states the address "is recycling in a LOOP, not settling: each successor dies before it can answer", that the stream is deliberately ended so its readers can re-read, and that the mechanism at issue is whatever requests the recycles — not the stream layer and not this view.This is the third distinct exception flavor to surface at this exact log-site family through the same gap that the #5372 fix round already recorded as its residual:
ComposerAccess.ObserveContextChip(added by MeshWeaver.Plugins#2676) has no error arm, so anything but a clean permission answer reachesSurfaceError— thereUnauthorizedAccessException(#5372, and the deleted-contextDeliveryFailureException, #6081), hereSyncStreamOwnerRefusedException. Not a duplicate of either: the refusal of the owner activation loop is a different mechanism, and those tickets' not-found verdicts are not what this sample carries.Where and when
One occurrence, one pod of the memex-cloud portal, at 2026-10-14T07:26:58Z. It carries more weight than its count of 1: it sits inside a same-second multi-owner burst on the same pod — in the ~60 ms around 07:26:58, at least three other sync streams ended with the identical shape "4 DISTINCT owner activations refused this stream (budget 3)":
IGyFG7mKpU6xDUJA2KdWdg— ownerStore/Payments/_Rejected/973c8980476a49cba8b8059e8e91bf4b(DispatchView, filed as Sync stream of PartnerRe/Esl thread node ended after 4 owner activations refused it — the owner address recycled in a loop #6712)nZAlMSigYEeetBkkgrZ0rAandce8cYSIhL0iIw9VdsrhEXA— ownerAdmin/Subscriptions/sglauser(HtmlView and Label, filed as Sync-stream owner at Store/Payments/_Rejected/973c8980476a49cba8b8059e8e91bf4b recycles in a loop and refuses the stream, failing HtmlView metaHtml render #6723 and Sync stream to a thread hub ends after its owner address recycles four times without settling #6708)Several unrelated owner addresses exhausting the same activation budget in the same instant is not the signature of four coincident per-address faults. A larger multi-owner burst of the same shape occurred the previous evening (2026-10-13 ~19:54–20:27 on
memex, plus theAdmin-owner give-up at 20:45Z filed as #6735), so the mechanism predates today and is not confined to this pod or these owners.Impact
For the affected window the composer's context chip failed for the
sglausersession — an intermittent user-visible failure that the stream layer's design bounds (the stream ends so readers re-read on the next render). No data loss indicated. The concern that would re-rule this: while the owner loop ran, thesglauseraddress was effectively unavailable to anything reading or writing it, and the same systemic trigger hit at least three other owner addresses on the same pod in the same second.Not established
sglauserhub. The incident carries no stack beyond the log site and no recycle/quiesce log line; nothing read here names a requester, aDisposeRequestreason, an install, a roll or a restart coinciding with 07:26:58Z.Candidate causes and the reading that separates them
[QUIESCE-START]/recycle log lines naming several of the burst's owner addresses (sglauser,Admin/Subscriptions/sglauser,Store/Payments/_Rejected/973c…) at ~07:26:58Z, plus a deployment or pod event in that window. Reading: the pod's logs for that second and the deployment events formemex-portal-deployment-6bd97645d4-fwns9.sglauserhub during activation. Predicts error-level activation/init lines for exactly thesglauseraddress immediately before each refusal, and no recycle lines for the sibling owners unless unrelated. Reading: the pod's hub-init logs forsglauserbefore 07:26:58Z.The one reading that separates the first two is the
[QUIESCE-START]reason at thesglauseraddress: the same reason repeated four times names the loop's driver; four different reasons, or none, points elsewhere.Related, not duplicates
Store/Payments/_Rejected/973c…), Sync-stream owner at Store/Payments/_Rejected/973c8980476a49cba8b8059e8e91bf4b recycles in a loop and refuses the stream, failing HtmlView metaHtml render #6723 and Sync stream to a thread hub ends after its owner address recycles four times without settling #6708 (HtmlView/Label, ownerAdmin/Subscriptions/sglauser). This ticket is the ThreadChatView site with ownersglauser; a human may want to consolidate the burst's systemic cause under one of them.Where to look
ThreadChatViewthat logsResolving the composer's context in {area}—src/MeshWeaver.Blazor.Chat/ThreadChatView.razor.csin Systemorph/MeshWeaver.Plugins (the path the ThreadChatView fails to load the composer for Anonymous visitors: no Read permission on Anonymous/_Thread/ThreadComposer #5372 code search located), andComposerAccess.ObserveContextChip(MeshWeaver.Plugins#2676).MeshWeaver.Data.Serialization—SyncStreamOwnerRefusedException, streamQlv5xA9kB0WbKiLVHT_zDA, per-stream refusal budget 3.sglauser: its activation/quiesce logs on podmemex-portal-deployment-6bd97645d4-fwns9around 2026-10-14T07:26:58Z.DisposeRequests carry a reason: Stale State Until a Recycle, Retiring an Activation, Hub Disposal Model.Left closed — this ticket was closed as NOT PLANNED, which is a decision rather than a claim that the fault stopped. The occurrences below are recorded here; if the decision should change, that is a person's call and not a recurrence's.
Still occurring: 1 more since the last update (1 total).
memex-portal-deployment-6bd97645d4-fwns9Recent log lines
systemorph-com commentedon Oct 14, 2026
Folded in — a DIFFERENT fingerprint from the same log site.
This issue tracks the log site
0b17bab61a7b3664(MeshWeaver.Blazor.Chat.ThreadChatView), and these occurrences belong to it. They carry their own fingerprint — the masking split one site across several — so before this they would have opened a SEPARATE ticket. One log site fanned out into 46 of those, which is why they fold here instead. Nothing is discarded: the distinguishing evidence is below, and splitting this back out is a person's call.eb1c8d79bc3ac0070b17bab61a7b3664MeshWeaver.Blazor.Chat.ThreadChatViewMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedExceptionStream cGZD9z_L5k6A_x-SD8AvaQ: giving up on owner {path} — {n} DISTINCT owner activations have refused this stream (budget {n}). The address is recycling in a LOOP, not settling: each successor dies before it can answer. The stream now ENDS with this error so its readers can re-read; the fix is at whatever is requesting the recycles, not here.memexmemex-portal-deployment-567896cdc8-84nqzAdmin/_LogIncident/eb1c8d79bc3ac007What triage wrote about this fingerprint
Observed
ThreadChatView(MeshWeaver.Blazor.Chat) failed while loading the thread chat area formkleiner/_Thread/wo-ist-jetzt-der-businessplan-fd1de4a8cc8b305e8df8("Wo ist jetzt der Businessplan?"): the view's synchronization streamcGZD9z_L5k6A_x-SD8AvaQended withMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedException— four distinct activations of the stream's owner (that thread's hub address) refused the stream within a budget of three, i.e. the owner address recycled in a loop and each successor died before it could answer. The exception's own text states the stream now ends so its readers can re-read, and that the defect is at whatever requests the recycles — the log site is the reporter, not the fault.Where and when
One pod of the memex portal deployment, one occurrence, one owner. The owner is a live, actively-used user thread (an
ExecutiveAssistantharness onProvider/OpenRouterEU/z-ai/glm-5.3) whose last activity precedes the failure by about a minute, mid-conversation (a round that had just created and displayed a new page). So the recycles happened while the thread was being written, not after it had gone idle.This fingerprint sits in a larger family: the same exception has been ticketed repeatedly at sibling view sites over the past weeks, in bursts that cover many views and many owners in one window (visible in
Ops/Logs, e.g. 2026-09-26 and 2026-10-07, and siblingLogIncidents at other view sites within minutes of this one). Those bursts share the "N distinct owner activations, recycling in a loop" shape. Whether this occurrence and that family share one root cause is not established.Impact
The reader of that thread's chat area is handed an error for the stream; the component's design intends readers to re-read, so the failure is intermittent/self-recovering rather than a dead area. In this instance one user's thread view was affected; judged on this incident alone the impact is small, but the family's recurrence across many areas suggests the underlying recycle loop is not rare.
Not established
Candidate causes and the reading that separates them
supervisionEpisode(dd411faed51744738e8fc2ffa3b2ed2d); the fleet has an open family of owner threads wedging and being relaunched repeatedly (e.g. Systemorph/MeshWeaver.Plugins#2912, feat(build-project): the module-libraries shelf — additional libraries ride with a recorded closure #2914, fix(module-pack): the inspect step needs PROJECT in its env #2919, A stale MainNode from a plugin's .md Skill survives install: the ?? in ParseCanonical is dead code, and the 1b' guard misses the shape #2939, An Editor can now delete the satellite it was allowed to publish — one rule, one answer (#2913) #2945). Predicts: relaunch records under that supervision episode and repeated[QUIESCE-START]/teardown lines naming the thread's hub address in the pod log in the minutes before the failure. Reading: the supervision episode's records and the pod log tail for that thread address.[QUIESCE-START]lines with one shared reason across several addresses on the same pod in the same window, not just the thread's. Reading: pod log quiesce lines for the window, grouped by reason.Duplicate check
No existing issue found for
SyncStreamOwnerRefusedException. Related but distinct: #6047 (a held read freezing on owner hand-off — a different failure at the same owner/reader boundary) and the wedged-owner-thread family above (cause, not symptom). A human may judge this a duplicate of whatever issue collects the sibling family.Where to look
MeshWeaver.Data.Serialization.SyncStreamOwnerRefusedException(MeshWeaver.Data) — the owner-activation budget and the give-up that raised this.ThreadChatView(MeshWeaver.Blazor.Chat) — the log site; it reports, it does not cause.mkleiner/_Thread/wo-ist-jetzt-der-businessplan-fd1de4a8cc8b305e8df8./Doc/Architecture/StreamLivenessAndTheHubReferenceand/Doc/Architecture/SyncHubPopulationfor the sync-hub ownership model, and/Doc/Architecture/StaleStateUntilRecyclefor the recycle path.Left closed — this ticket was closed as NOT PLANNED, which is a decision rather than a claim that the fault stopped. The occurrences below are recorded here; if the decision should change, that is a person's call and not a recurrence's.
Still occurring: 1 more since the last update (1 total).
memex-portal-deployment-567896cdc8-84nqzRecent log lines
systemorph-com commentedon Oct 14, 2026
Folded in — a DIFFERENT fingerprint from the same log site.
This issue tracks the log site
0b17bab61a7b3664(MeshWeaver.Blazor.Chat.ThreadChatView), and these occurrences belong to it. They carry their own fingerprint — the masking split one site across several — so before this they would have opened a SEPARATE ticket. One log site fanned out into 46 of those, which is why they fold here instead. Nothing is discarded: the distinguishing evidence is below, and splitting this back out is a person's call.75f1971ec1b1cfed0b17bab61a7b3664MeshWeaver.Blazor.Chat.ThreadChatViewMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedExceptionStream v4a2Hkx_EES8{n}zT1dGLhQ: giving up on owner BusinessPlan2{n} — {n} DISTINCT owner activations have refused this stream (budget {n}). The address is recycling in a LOOP, not settling: each successor dies before it can answer. The stream now ENDS with this error so its readers can re-read; the fix is at whatever is requesting the recycles, not here.memexmemex-portal-deployment-567896cdc8-84nqzAdmin/_LogIncident/75f1971ec1b1cfedWhat triage wrote about this fingerprint
Observed
The log site is
MeshWeaver.Blazor.Chat.ThreadChatView, resolving the composer's context in areaThread/1on the memex portal. The resolution faulted withMeshWeaver.Data.Serialization.SyncStreamOwnerRefusedException: sync streamv4a2Hkx_EES808zT1dGLhQended after 4 DISTINCT owner activations of the SpaceBusinessPlan2026refused it, against the recycle re-arm budget of 3 (JsonSynchronizationStream.MaxRecycleReArms, MeshWeaver.Data). Per the give-up contract (#6602) this is one give-up event that ends the stream so its readers can re-read;ThreadChatViewis the reporting site, not the defect site. The exception's own diagnostic names the shape: the address is recycling in a loop rather than settling, and the defect is at whatever requests the recycles.Distinctive about this burst against the
SyncStreamOwnerRefusedExceptionfamily: the refusing owner is a Space created this morning (BusinessPlan2026, created 2026-10-14 07:51Z by mkleiner, version 2) — a young node under active construction, not the long-lived subscription/payment/store owners that dominated yesterday's bursts, and this incident sits on the memex instance rather than the memex-cloud pods that carried most of the family. Chat threads referencing the plan were active in the minutes around the event (mkleiner/BusinessPlan2026/_Thread/…at 07:32–07:53;mkleiner/_Thread/wo-ist-jetzt-der-businessplan-…10:10–10:24, asking where the business plan now lives).Where and when
One pod, one instant, one owner, one stream — a single give-up, not a storm: no second owner refused at the same instant on this instance in the evidence I can read, unlike the two-owner bursts of 2026-10-14 07:26Z on memex-cloud. The owner Space exists and is readable now (I read it), so the address is not a deleted node; whether its hub settled after the give-up was not verified.
Impact
One user's chat composer context resolution failed once. By design the stream ends loudly and the reader classifies the fault transient and re-subscribes, so the failure is bounded; whether this view actually recovered was not verified. Judged
sev:Mfrom the numbers (single occurrence, one pod, one view), not from the family's urgency — if the family's storm correlation holds, a human re-rules the family upward rather than this ticket alone.Not established
BusinessPlan2026— this incident carries no[QUIESCE-START]line, no dispose attribution and no per-activation fault; I found no quiesce/recycle log line naming this address in the window in the readable log store.Thread/1.Candidate causes and the reading that separates them
[QUIESCE-START]/recycle lines namingBusinessPlan2026in the seconds before 10:25:48Z, each with its requester and reason, and possibly a per-activation fault. Reading: this pod's quiesce/recycle lines filtered to this address, and the Space's hub activation history.ShutdownNack, MeshWeaver.Messaging.Contract) on the refusals for streamv4a2Hkx_EES808zT1dGLhQ.The
[QUIESCE-START]reading separates all three directly: it names who asked for each teardown and why.Where to look
JsonSynchronizationStream's recycle re-arm latch (MeshWeaver.Data) — the give-up path and its two budgets (MaxRecycleReArms = 3,MaxSameActivationReAsks = 16); the ride-out contract, the two recycling shapes and the activation-tag rules are documented in Riding Out a ShuttingDown Address.BusinessPlan2026— its hub's activation history and what was recycling it in the window; note its content was still being assembled that morning.SyncStreamOwnerRefusedExceptionincidents bursting since 2026-10-13 across memex and memex-cloud (yesterday's already filed as Sync stream refuses after a Thread hub's owner activations die in a loop — LayoutStackView header load fails on one memex thread #6711, Thread hub recycles through 4 owner activations without ever answering its portal view stream (SyncStreamOwnerRefusedException) #6706, Sync stream of PartnerRe/Esl thread node ended after 4 owner activations refused it — the owner address recycled in a loop #6712), the fleet-wide give-up investigation Fleet watch stops observing the fleet, freezing every Ops/Status reading as silently stale history #5011, the give-up contract Sync stream give-up leaves the reader on a frozen last value; one owner teardown is counted as several activations #6602 and the activation-tag drift Name WHICH recycling failure a ShuttingDown read hit (#2025) #2376.Left closed — this ticket was closed as NOT PLANNED, which is a decision rather than a claim that the fault stopped. The occurrences below are recorded here; if the decision should change, that is a person's call and not a recurrence's.
Still occurring: 1 more since the last update (1 total).
memex-portal-deployment-567896cdc8-84nqzRecent log lines