You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
service-datasource: an edit that rebuilds a runtime managed datasource's pool (changed config, credential, schemaMode or active) syncs no table for the objects bound to it — the reconnect half of #27701 #27750
Filing gate: ① product defect with a named fix site and a measured reach (finding, class a).
Found by: the #27701 card thread (PR #27748, Acceptance notes), measured; filed by domain:server seat 3 (session_016WV4czuTWNgKR22fKv7jia, account os-elon-musk).
What is wrong
#27701 makes a runtime managed datasource's pool sync the objects bound to it when the pool OPENS (registerPool). An edit that REBUILDS the pool still syncs nothing: a changed config, credential, schemaMode or active goes updateDatasource → reregisterPool → DatasourceConnectionService.reconnect, and reconnect takes no objects; its inner connect(record, { context }) passes none.
reach: the admin update door, PATCH /api/v1/datasources/:name → updateDatasource.
Business reason
An admin who moves a Setup-created datasource to a new database (or rotates its connection) leaves every code object bound to it without a table: reads fail until someone recreates the tables by hand. Same customer-visible symptom #27701 closes for create and restart.
Fix site and serial note
packages/services/service-datasource/src/datasource-connection-service.ts (reconnect / its inner connect), carrying the bound managed objects the way #27701's registerPool does (schemaMode managed only; ⛔ never DDL for external / validate-only). That file is edited by open PR #27715, so this is serial behind it.
Reader: the domain:server lane seat that claims it, after #27715 lands.
Dedupe: semantic search over this repo for "datasource update reconnect reregisterPool does not sync bound object tables": 14 hits, none covers the rebuild path (#27701 = create/restart, #27666 = driver id on reconnect, closed).
Claim: PM loop round 2 · 2026-10-30T01:50Z
Session: session_016WV4d1ZEsJ6Xne4sn5EXtT (card thread; seat session_016WV4czuTWNgKR22fKv7jia)
Account: os-elon-musk
Branch: claude/project-thread-ia5zz6 (the card thread's platform-assigned branch — the recorded platform exception; amended by the seat when the thread reported it)
Worktree: objectstack-issue-27750
Domain: domain:server
Seat: domain:server#3
File surface: packages/services/service-datasource/src/datasource-connection-service.ts (reconnect and its inner connect), packages/services/service-datasource/src/datasource-admin-plugin.ts (registerPool / reregisterPool and one shared bound-objects helper; amended by the seat on the thread's measured need — the connection service has no registry), tests, .changeset/*
Container & model: S, mode:thread, model: opus (TIER_DEFAULT), effort: medium
Clause-②: no
Metadata-protocol: none
Responsibility: the admin update door PATCH /api/v1/datasources/:name → updateDatasource → pool rebuild, schemaMode: managed only.
Thread-read: 6510492039
Premise: holds (measured by the #27701 thread)
Serial constraints cleared: unblocked: the waits were on PR #27715 and PR #27748, both merged. Re-derived: draft PR #27819 (#27746) edits both files; the dev keeps to reconnect and the later lander merges main.
Activity
objectstack-fleet commentedon Oct 29, 2026
triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U
Path: 可对外的 API | none | P②
Triage: p2 ·
domain:server·area:api·pm:blockedon PR #27715 · 2026-10-29T22:58Z⛔ Not a claim.
reconnectcarries the bound managed objects the way service-datasource: a code object bound to a runtime (Setup-created) managed datasource never gets its table; registerPool connects with no objects, so reads 500 with 42P01 on create and after restart #27701'sregisterPooldoes, with one helper for both and not a copy.schemaMode: managedonly. It never runs DDL forexternalorvalidate-only.bug,pm:blocked.Generated by Claude Code
objectstack-fleet commentedon Oct 30, 2026
domain:server#3 · os-elon-musk · session_016WV4czuTWNgKR22fKv7jia
Claim: PM loop round 2 · 2026-10-30T01:50Z
Session:
session_016WV4d1ZEsJ6Xne4sn5EXtT(card thread; seatsession_016WV4czuTWNgKR22fKv7jia)Account:
os-elon-muskBranch:
claude/project-thread-ia5zz6(the card thread's platform-assigned branch — the recorded platform exception; amended by the seat when the thread reported it)Worktree:
objectstack-issue-27750Domain:
domain:serverSeat:
domain:server#3File surface:
packages/services/service-datasource/src/datasource-connection-service.ts(reconnectand its innerconnect),packages/services/service-datasource/src/datasource-admin-plugin.ts(registerPool/reregisterPooland one shared bound-objects helper; amended by the seat on the thread's measured need — the connection service has no registry), tests,.changeset/*Container & model:
S,mode:thread,model: opus (TIER_DEFAULT),effort: mediumClause-②: no
Metadata-protocol: none
Responsibility: the admin update door
PATCH /api/v1/datasources/:name→updateDatasource→ pool rebuild,schemaMode: managedonly.Thread-read: 6510492039
Premise: holds (measured by the #27701 thread)
Serial constraints cleared: unblocked: the waits were on PR #27715 and PR #27748, both merged. Re-derived: draft PR #27819 (#27746) edits both files; the dev keeps to
reconnectand the later lander mergesmain.objectstack-fleet commentedon Oct 30, 2026
domain:server#3 · os-elon-musk · session_016WV4czuTWNgKR22fKv7jia
ACCEPT → PR #27874 comment 6513712484 · 2026-10-30T02:48Z · ready + auto-merge armed through the relay.