FeedbackHandover retries a refused Inbox relocation for legacy $type:"Feedback" submissions — the move's target write is rejected
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 42/100
Direzione di ricerca
Start with Feedback/Feedback/Source/FeedbackHandover, focusing on HandOverOnActivation, MoveToInbox, ReadSubmission, and UnreadableSubmission, then compare FeedbackContent in Feedback/Feedback/Source/FeedbackContent with the four rbuergi/Feedback/20260922-* records. Reproduce or trace the ContentAs<FeedbackContent> read and MoveNodeRequest destination write, including the write-side check around MeshOperations.Create; verify whether the deployed plugin matches the mesh source. The issue is done when legacy $type: "Feedback" submissions are either safely handled or explicitly identified as dead letters without repeatedly retrying, with tests covering the read/write behavior and retry path.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Observed
The Feedback plugin's hand-over watcher (HandOverOnActivation in Feedback/Feedback/Source/FeedbackHandover) started the relocation of four Feedback/Feedback records into the shared Inbox, and the move failed: the write of the Inbox copy at Feedback/_Submissions/fb-… was refused with System.InvalidOperationException — the content names its type as "Feedback", a type that does not exist, while the content type of NodeType Feedback/Feedback is FeedbackContent. The fb- targets are exactly InboxPathFor() of the four source paths, which ties the refused write to the move's destination copy. In the watcher, that failure clears the in-flight flag, so the record's next activation starts the same move again.
The four sources are legacy submissions created 2026-09-22 by rbuergi, each in the pre-FeedbackContent shape {"$type":"Feedback", "title":…, "message":…} with no status/submittedBy (verified by reading the first): rbuergi/Feedback/20260922-white-home-page-hub-scoped-inject-and-the-local-monolith-cannot-start, …public-host-redirect-not-running-on-memex-cloud-since-ci-9178, …ratify-severity-closes-on-verification-policy, …logincident-namespace-is-one-value-over-a-multi-deployment-pod-set.
Two readings constrain the mechanism:
- For the watcher to reach the move at all,
ReadSubmissionmust have returned readable content — the current mesh source returns beforeNeedsInboxMovewhenUnreadableSubmissionflags a record. So on the read pathContentAs<FeedbackContent>appears to bind a payload whose$typenames a nonexistent type (picking upmessage, defaultingStatustoNew), while the write path refuses that same content. That read/write asymmetry is inference, not something the log states. - The first source node now sits at version 2, last modified by system-security ~150 ms before the first logged failure. What wrote it is not on the log.
Where and when
Both replicas of the one memex-portal-deployment on namespace memex. A single wake pass failing all four records within the same second on one replica, then two of them failing again on the sibling replica ~35 minutes later — i.e. each re-wake retries the same refused move. First occurrence sits ~1 hour after this portal's Feedback plugin install to 1.7.3 (registry install record on Plugins/Feedback); whether that install, a pod roll, or core's newer write-side check started the failures is not established, and no earlier log history was read.
Impact
Four legacy bug reports from one user's partition never reach the triage Inbox, and every wake of their hubs retries the refused move and logs an Error. The records themselves are intact and readable at their source paths, and no other submission or part of the hand-over pipeline is affected. The loop does not self-heal.
Not established
- Which leg of
MoveToInboxthe refusal came from — theMoveNodeRequest's target write or a later leg; the log carries only the rethrown message. - Whether these records failed before today.
- Whether the plugin version running on these pods matches the mesh source (the
UnreadableSubmissiondead-letter guard ships in the 1.7.x line); not verified against the deployment. - Whether other
Feedback/Feedbackrecords in other partitions carry the same old shape and will fail the same way when next woken. - Who or what wrote version 2 of the first source node immediately before the failure.
Candidate causes and the reading that separates them
- Read/write asymmetry on the old shape. The read path tolerates the unknown
$type: "Feedback", so the watcher sees a normal submitted record and moves it; the move's write — core's post-#3042 check refusing a content that names a nonexistent type — rejects the destination copy. Predicts these four records can never be relocated and fail identically on every activation. Separating reading: callContentAs<FeedbackContent>on one of the four nodes directly, and compare with the Inbox watcher's dead-letter log (FeedbackBacklog.DeadLetters) — if the backlog names them dead letters while the hand-over watcher still moves them, the two read paths disagree and that disagreement is the defect. - The deployed watcher predates the dead-letter guard. If the pods run a plugin without
UnreadableSubmission, the records were always move candidates and only core's new write refusal made it visible. Separating reading: the plugin assembly version on the pods vs the mesh source. - The records were created in the wrong shape (2026-09-22, the pre-
FeedbackContentera — the same record class as #3042's dead letters). This explains why the write is refused, but not by itself the retry loop. Separating reading: the version history of one of the four nodes shows what created it.
Where to look
Feedback/Feedback/Source/FeedbackHandover—HandOverOnActivation(the log site is the error handler of theWhenDurable → MoveToInboxchain),MoveToInbox,ReadSubmission/UnreadableSubmission.Feedback/Feedback/Source/FeedbackBacklog— the Inbox watcher that re-nominates the records on every pass (PendingQuery,Settle).Feedback/Feedback/Source/FeedbackContent— the declared shape the write demands.- The four source records under
rbuergi/Feedback/20260922-*. - Core's write-side content-type check named in the refusal message; Systemorph/MeshWeaver.Plugins#3042 records that check's introduction and names core's
MeshOperations.Createas the Create-path owner — the core side of this likely warrants its own reading.
Related, not a duplicate
- Systemorph/MeshWeaver.Plugins#3042 (triage item
Hosting/Triage/issue/systemorph-meshweaver-plugins-3042): the silent direction of the same old shape —$type: "Feedback"records were never handed over with no sign. This incident is the opposite face after that fix: the same class of record is now a move candidate and fails loudly, on every wake. - The
As<FeedbackContent>conversion-error family (#6003/#6232, swept 2026-10-09 inOps/Actions/logs-20261009-sevm-ai-asthread): same node family, different log site and symptom.
Severity judgement: a secondary path (the hand-over of four legacy records) is broken; the defect is clear and the blast radius is bounded to records in the obsolete shape. The submissions stand and the rest of the pipeline is unaffected.
Evidence
| Fingerprint | 42547ac9cc3796dd |
| Category | FeedbackHandover |
| Severity | Error |
| Exception | System.InvalidOperationException |
| Namespace | memex |
| Pods | memex-portal-deployment-6465785d4d-5crgx, memex-portal-deployment-5b9996d768-22ght, memex-portal-deployment-5c6db59b64-nknln, memex-portal-deployment-5c6db59b64-dxvhx, memex-portal-deployment-5c6db59b64-cnv4s, memex-portal-deployment-6cc54b7cd8-l8wwl, memex-portal-deployment-6cc54b7cd8-clcfk, memex-portal-deployment-7475bdcffd-qh8bq, memex-portal-deployment-5b786c4466-4fs6c, memex-portal-deployment-5b786c4466-dxwlb, memex-portal-deployment-576cdb4fbd-wdsqd, memex-portal-deployment-679d7b6984-tzd87, memex-portal-deployment-679d7b6984-cqqp2, memex-portal-deployment-679d7b6984-rgr95, memex-portal-deployment-7bc8cb4d47-npczw |
| Occurrences | 79 |
| First seen | 2026-10-12 18:17:08Z |
| Last seen | 2026-10-18 07:56:19Z |
| Routing | not determined — no configured route matches the category FeedbackHandover. 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 00:38:20Z memex-portal-deployment-679d7b6984-tzd87 fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-public-host-redirect-not-running-on-memex-cloud-since-ci-9178 failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-a3e67b570724e691f35f01443f428e31': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-13 15:04:25Z memex-portal-deployment-679d7b6984-tzd87 fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-ratify-severity-closes-on-verification-policy failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-119c44266b8191d39d9a3be71a7bbccf': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-13 15:04:52Z memex-portal-deployment-679d7b6984-cqqp2 fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-logincident-namespace-is-one-value-over-a-multi-deployment-pod-set failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-08c293baf5b6b5c60ae1f1439413f124': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-13 15:05:28Z memex-portal-deployment-679d7b6984-rgr95 fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-white-home-page-hub-scoped-inject-and-the-local-monolith-cannot-start failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-bce3a339096ef56cfe358accb890ecf0': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-13 15:05:42Z memex-portal-deployment-679d7b6984-tzd87 fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-public-host-redirect-not-running-on-memex-cloud-since-ci-9178 failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-a3e67b570724e691f35f01443f428e31': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-18 07:56:18Z memex-portal-deployment-7bc8cb4d47-npczw fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-0320-a-rejected-provider-credential-401-is-classified-by-nothing-and-pastes-the-raw-sdk-banner failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-623c87ce9112918a7928a50aad10258e': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issue', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-18 07:56:18Z memex-portal-deployment-7bc8cb4d47-npczw fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-0305-incident-bot-opened-one-fingerprint-twice-and-the-duplicate-carries-the-sev-h failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-9b299174d88de8345e62b7c546dc5f2f': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issue', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-18 07:56:19Z memex-portal-deployment-7bc8cb4d47-npczw fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-0315-a-fix-that-keeps-its-log-line-can-never-go-quiet-so-the-incident-count-reopens-it-forever failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-3519e045c21ee25129eea7b232a1de03': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issue', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-18 07:56:19Z memex-portal-deployment-7bc8cb4d47-npczw fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-plugin-registry-index-per-request-cost failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-0f8b71217ac13ad422c90ba7b459e72b': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issue', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
2026-10-18 07:56:19Z memex-portal-deployment-7bc8cb4d47-npczw fail: FeedbackHandover[0]
[Feedback] relocation or destination wake of rbuergi/Feedback/20260922-logs-instanceaction-budget-and-bus-write failed; hand-over is not verified
System.InvalidOperationException: Cannot write 'Feedback/_Submissions/fb-704741a97a39f2cb04ad857bfdc83a32': the content names its type as 'Feedback' ("$type"), but no such type exists — the content type of NodeType 'Feedback/Feedback' is 'FeedbackContent'. The content would be stored exactly as sent and then read as an empty node by every consumer, and anything that reacts to this NodeType would skip it without a word. Send the content as 'FeedbackContent' with its declared members: 'category', 'extraContext', 'handedOverAt', 'issue', 'issueUrl', 'mainNodeGist', 'mainNodePath', 'mainNodeTitle', 'message', 'sidePanel', 'status', 'submittedBy', 'submittedByName', 'timestamp'.
This log site's previous ticket, https://github.com/Systemorph/MeshWeaver/issues/5857, was closed about a different fingerprint, and this fault fired after that close. It is left closed: an occurrence of this fingerprint is no evidence that the fault it was closed for came back. This issue now tracks the log site, and later fingerprints of it fold in here.
Opened automatically from Admin/_LogIncident/42547ac9cc3796dd. Recurrences are folded into this issue rather than opening new ones.
It also stands for the whole log site 3106c4879df9efc2: other fingerprints of this site fold in here as comments rather than opening tickets of their own.
- Lingua principale
- C#
- Stelle
- 12
- Fork
- 5
- Merge medio
- 6h 29m
- PR unite (30g)
- 914
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Systemorph/MeshWeaver
-
bug sev:M
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
Systemorph/MeshWeaver#7082 · 13 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
bug sev:M
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
Systemorph/MeshWeaver#7081 ·
I maintainer di solito rispondono entro 1 giorno
-
bug sev:M
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Systemorph/MeshWeaver#7080 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug sev:M
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Systemorph/MeshWeaver#7078 ·
I maintainer di solito rispondono entro 1 giorno
-
bug sev:M
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Systemorph/MeshWeaver#7077 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di Systemorph/MeshWeaver
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
Nimblesite/SharpLsp#468 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
elastic/ecs-dotnet#575 ·
-
alerts bug effort:S P2
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
nightscout/nocturne#2511 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 2 giorni
-
Crash in v3.00Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
arkane-systems/mousejiggler#140 ·