Repository navigation
P954: acquire relationship people and DM status through their actual owners - #1331
Merged
Merged
Conversation
There was a problem hiding this comment.
Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota.
An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.
trissim
force-pushed
the
work/frame-baseline--P954--toad
branch
3 times, most recently
from
October 29, 2026 22:19
4c4922e to
364fb2e
Compare
trissim
force-pushed
the
work/frame-baseline--P954--toad
branch
2 times, most recently
from
October 30, 2026 00:54
b596120 to
7f711c1
Compare
trissim
force-pushed
the
work/frame-baseline--P954--toad
branch
from
October 30, 2026 01:26
7f711c1 to
95be07c
Compare
trissim
added a commit
that referenced
this pull request
Oct 30, 2026
Revert #1331 until its agent-comms pair #3607 lands
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
P954 — 3 commits, 3 files, +31/-33; nominal people and one-peer status
Paired with OpenHCSDev/agent-comms#3607. Exact source: Core
d0da7a9ef2348efd7ebd6452f53b7fc7385eaa4e; Toadb5961208ad4921b9e3a17b6b47503a1933dcb113, rebased onto mainf17010bc0. Local and explicit remote refs match; trees clean. Integrate the matched pair before rollout: this status reader uses Core's new strict incarnation operation. Core's base also includes merged #3621, the independent required-key set checker repair. Published source is not an installed speedup.1. Complete relationship people, not widget-owned absence
Before, RelationshipEntry.person was ThreadView | None; navigation, row preparation and refresh rediscovered absence. A rejected Core checkpoint created entries before their selected people existed. The subsequent show_member still converted nominal absence to None, conflating it with a real model-cache miss.
After:
The row consumes the mapping without copying or mutating it. A matching cached model is reused with existing worker cancellation; a genuine miss or mismatched incarnation keeps the real async ThreadRowModel.of fallback, original captured person and stale-entry guard. Lookup uses person.thread.name, not an older entry.target alias. Availability, tooltips, navigation and focus remain. There is one production present caller and no existing test/tool RelationshipRow.present caller found.
IDEN-3: fact=nominal person presence versus distinct model-cache absence; at=former show_member next(..., None); derive=existing presence capability; by=Core ThreadView/NoThreadView and RelationshipRow.present at thread_comms.py:114. Public wire absence stays JSON null. No widget copy of backend relationship state or second model cache.
2. DM status needs one current peer, not a catalog
Before, DmConversation.status_text built CurrentDisplayReferences for every registered/alias incarnation solely to recover one peer name. A retained real profile contains64/370 samples (17.3%) on that whole-roster chain. The first narrow version removed the roster but copied strict current-peer selection, private KeyError refusal and canonicalization beside Core's retained target.
After:
The existing strict owner requires recorded birth, resolves through snapshot.incarnation(original.name), and refuses missing/recreated peers with UnregisteredThreadError. Tolerant historical current/resolved semantics stay unchanged. Status retains asyncio.to_thread and the actual configuration answer owner. Core publication retains HumanSendRefusedError translation. No complete references catalog, fresh registry cut, worker, cache, lookup index, local identity algorithm or empty-status fallback.
IMPL-12: fact=strict original-peer selection; at=Core channel_targets.py:485 and Toad conversation_kind.py:301; derive=base-method; by=Core ThreadIncarnation.require_current at thread_identity.py:212. The latest paired continuation changes2 files,+7/-9; its Core counterpart changes3 files,+40/-5. Whole src/tests/tools search finds no CurrentDisplayReferences.from_registry caller in Toad. Dynamic bindings remain OPEN.
Evidence and outstanding qualification
Before-profile: /home/ts/.cache/agent-scratch/claude-code/perf/toad-1696798-1802-pyspy.raw, live Toad1696798,18:02,15s requested50Hz,370 retained samples,64 on the catalog chain. This is a sample fraction, NOT measured CPU share or a promised saving. After-profile UNRUN. Necessary selected-peer configuration work can still appear under the reader.
NRA source-only before/after extensions p954-strict-before.json / p954-strict-after.json:8 parsed modules,7 production modules,104 projected classes,0 parse omissions, reusing retained p954-1df7-4c49-source-map.json. Conditional/local/external/dynamic bindings remain OPEN; source evidence is not behavioral proof.
Core authored UNRUN genuine-declaration controls for strict rename/current canonical return, old captured-cut isolation, removed/recreated refusal, tolerant stale retention and birthless family refusal. Root retains38+8+1 earlier passing controls, not latest-head acceptance. Matched two-file typing had six diagnostics in unchanged older methods, not a clean pass.
No Toad tests edited: its CLAUDE.md forbids test edits/runs. Thus edit41's requested new Toad status/presentation controls were not authored. Root must qualify actual live/renamed status, stale declared refusal, nominal no-person label/detail without a model lookup, and uncached/cached real presentation. No author pytest/checker/import probe/environment/frontend/provider/profile/install ran. Exact matched typing/hosted gates, authentic saved-cut parity/payoff, installed working result,16ms frames and p99.9 remain OPEN. This does not close P954.
Overlap: existing queue-toad-fix1319/1317 queue, prompt and SelectTarget work is untouched. P918's import relocation lands last. Toad's abandoned empty index.lock had no process holder; only that owned lock was removed before a successful rebase. No source or other agent's work was removed.
Assumed: Root integrates and qualifies this exact matched pair, then measures the real configured multi-tab frontend. No live speedup claimed.