Repository navigation
Description
v1.3 release topology — 2026-10-11
Parent: #48 (native sub-issue relationship verified). Project #10; target milestone v1.3. Preserve the existing implementation/qualification scope, claims, accepted evidence and runtime authorization. Native parentage is coordination, not an additional execution blocker.
Parent: #48. Follows merged #1067 / closed #1061. Related Provider qualification and #1021 QA coordination; not part of #1034 group management.
Observable behavior
A freshly received, already authorized native Lark/Feishu message shows the native sender display name above the shared Channel bubble and native named @ references inside it. Name metadata preserves original message text and stable native IDs. Missing or unavailable names retain the explicit ID fallback.
Confirmed boundary
#1067 already implements platform-neutral name/mention projection and Channel rendering, with Feishu fixture coverage. The inspected Lark receiver normalizes actor.name only when the incoming event has sender.sender_name. Its ordinary checked intake has no sender-name enrichment; history reads independently request with_sender_name=true. The inspected enrichment method handles attachments only. This is a live Provider metadata gap, not another Channel renderer.
The existing dedicated Lark QA app is currently attached to the #1021 media task; do not create a competing receiver, copy its credential, stop its Profile or broaden scopes to perform this slice. Coordinate a free QA window through the Human-authorized workflow. No fresh external Lark name result is claimed by #1067 or this ticket.
Narrow delivery
- Inspect the exact qualified Provider baseline and official message-get contract. Resolve sender metadata from the exact authenticated source with with_sender_name=true and existing message-read authority, without requesting contact-directory scopes.
- Bind any returned name to the verified account/message/conversation/native actor and route; never trust a name as identity, membership, mention or wake authority.
- Preserve canonical event IDs, native text, mention keys and all routing. Refusal, timeout, missing name and connection replacement must not invent a name or change source authority. Determine bounded fallback behavior explicitly so display enrichment does not break intake.
- Keep the Provider candidate isolated. Product pin promotion and deployment are separate authorization boundaries.
- Reuse fix: show native sender names and mention chips in shared Channels #1067 projection and rendering; avoid a provider-specific Client fork.
Acceptance
- A focused regression fails on unnamed real-shaped receive events and passes when the exact checked native source returns a name.
- Wrong source/account/actor/route, missing permission/name, cancellation and replacement have observable safe fallback/refusal behavior; no duplicate admission or reply.
- Authorized real Lark text with repeated native @ references produces one canonical Source, the expected Channel placement and correct sender/chips; original body remains exact.
- Native IDs remain available in source details/hover; known names render escaped, unknown mentions stay literal.
- Matched light/dark and restart screenshots from the actual isolated runtime, with bounded native evidence and restored receiver/authority.
- Exact-head Provider/BotHarness checks, bilingual qualification/release text and runnable acceptance path. Agent-operated acceptance; no manual QA gate is added.
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsTodo
- StatusShow more project fieldsTodo
Activity
DoodleBears commentedon Oct 6, 2026
Agent work claim
codex/local/01a10b17-384f-7aa1-8004-337190b6d053(not a DSH Session)codex/1070-lark-sender-namesHuman requested this Lark slice before returning to the existing Discord goal. Independent Provider baseline:
ca9d37820c061841a9181f295900891ae370c812. Existing #1021 Profile, credentials and receiver are untouched; coordination authorization has been requested while implementation proceeds. No product pin promotion, release or deployment is implied.DoodleBears commentedon Oct 6, 2026
Agent progress — independent Provider candidate
codex/local/01a10b17-384f-7aa1-8004-337190b6d053; state active.81366dffrom fixed baselineca9d37820c061841a9181f295900891ae370c812.actor.name; 1.5-second bounded lookup, unchanged intake/ID fallback for unavailable metadata, cancellation and connection replacement refuse stale delivery. Text-only consumers use this path independently of file negotiation.DoodleBears commentedon Oct 6, 2026
Agent checkpoint — authorized coordination, real QA window unavailable
Human explicitly authorized contacting the existing media task on 2026-10-07. Coordination has been sent to the owner of the shared original Lark QA app; there is no pending authorization question from this task.
The owner reports that the #1021 native image operation is incomplete and has not released the QA receiver/Profile/window. This task has not sent the unverified draft, started a competing receiver, copied a credential, modified the shared Profile or interrupted its process.
Name candidate Provider draft #12, head
81366df6ccd77625f39ec16d1dda417ff37890d5: 93 focused and 3,634 full Provider tests passed; build and package verification passed. No hosted CI run or fresh external result is claimed.Independent compatibility preparation is complete: corrected media Provider plus names
6cd149db57fef3e0ca48be682675c7e1f2e853c5passed 3,615 tests/build/package verification; media Host plus merged #1067 sender/chip projection passed type checking, 138 focused tests and build. These candidates have not been installed into the shared QA Profile.Remaining: mutually exclusive owner handoff, fresh native text with repeated @ references, canonical Source/admission and exact-body checks, matched light/dark/restart screenshots, exact receiver/authority restoration. The issue remains open and the PR remains Draft. After this Lark slice, return to the existing Discord goal as requested.
Agent-Task: codex/local/01a10b17-384f-7aa1-8004-337190b6d053
DoodleBears commentedon Oct 6, 2026
Agent checkpoint — real runtime attempt and exact restoration
An exclusive QA window was released and used for the #1070 candidate. The same authorized native account reported connected; authenticated
channelTimelineandmessagingSnapshotreturned 200/ok. All three actual timeline entries parsed through the candidate Client. Local source/digest/packaging qualification passed (33 focused qualification tests; product packing passed).Fresh native name acceptance was not completed: the browser Channel remained in Loading messages, then navigation timed out. The original qualified Host reproduced the loading state after restoration; exiting and re-entering Bot mode restored messages on this task's page. The cause is not yet established, and the media owner's recovery is still in progress. No fresh #1070 native text, duplicate admission/reply result, or positive name screenshot is claimed.
The original Host/Provider were restored with the supplied verified helper, one listener, exact qualified runtime digest and identical Profile manifest. Account credentials remained in place; grants, bindings, Bot memory, existing Source Events and files were not changed by this task. All task-owned QA browser pages are closed. The media owner holds the current lifecycle window; a second safe insertion was requested and remains unreleased.
Provider draft PR #12 now records this evidence and limitation. The issue remains open; next acceptance is one real native pure-text message with repeated named @ references, source/body/ID verification, actual light/dark/restart capture and exact restoration. Then return to the existing Discord goal as requested.
Agent-Task: codex/local/01a10b17-384f-7aa1-8004-337190b6d053
Merge pull request #12 from DoodleBears/codex/1070-lark-sender-names
DoodleBears commentedon Oct 6, 2026
Agent work outcome
codex/local/01a10b17-384f-7aa1-8004-337190b6d05343604c1f90d37793db21e98da0237ccefa9ee17e, containing reviewed head81366df6ccd77625f39ec16d1dda417ff37890d5. Main and the merge commit were verified; its file tree exactly matches the tested candidate.agent:activeis removed at this handoff rather than treating the merged source as completed qualification.Agent-Claim: #1070 (comment)
DoodleBears commentedon Oct 6, 2026
Agent work claim — qualification resumed
codex/local/01a10b17-384f-7aa1-8004-337190b6d053(not a DSH Session)codex/1070-lark-names-qaHuman explicitly requested continuing #1070. The previously released shared window has a changed runtime checkpoint; this task is coordinating its current owner before any receiver switch or native send. No other active #1070 claim was found.
DoodleBears commentedon Oct 6, 2026
Agent work outcome — qualification handoff
codex/local/01a10b17-384f-7aa1-8004-337190b6d053; resumed claim.DoodleBears commentedon Oct 6, 2026
跨电脑交接 — 2026-10-07 JST
Human 要求将当前进度同步到 GitHub,换电脑继续。Task
codex/local/01a10b17-384f-7aa1-8004-337190b6d053的状态为 handed-off。按已确认分工,本任务回到 Discord;Lark 由媒体/Lark 任务继续协调。接收任务尚未在 #1070 留下新 claim。acb6bfba7a1205f223ae266e1cfb7f16dbe0e06e;BotHarness 交接分支,提交7adf966458d2af6d2e81da5ae9682e5917dd9bae。两个远端 SHA 已读回确认。在另一台电脑获取 Host 候选:
下一任务先阅读本 issue 既有验收范围、此前 handoff、#1022 最新交接及
AGENTS.md,刷新依赖/claim 后记录接手。真实验收和产品 pin promotion 仍是后续工作。凭证、浏览器登录、旧 DSH Profile/数据库没有放进 GitHub;新电脑需通过正常授权配置恢复环境。不要同时在两台电脑为同一应用启动 receiver。
Original claim: #1070 (comment)