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
CI: pin the dsh-schedule private task shape the delivery board moves (#1245) #1257
Dev owns this after #1256 merges — both touch the same host task path (core/src/host/tasks.js, core/src/host/task-drive.js), so they do not run in parallel.
Shape to pin, from the issue body: moveSchedules reaches the row through (await service.getDomain()).table('tasks') and rewrites { ...task, sessionId: toId }. The test must fail when that row shape or either private method (getDomain, serialize) disappears, not only when moveSchedules throws — today the outer catch in parts.js turns a rename into one rt.warn and the task is simply left on the archived part.
Branch: dev/feat/1257-dsh-task-shape @ 65fe284c6c47debf7efc38ff94cd74dfb68e5b7f, one commit on main4095e1359a5a023c8e5d5ffb7ac7f8ff484f7c31 (branch re-cut onto it; the earlier cut was off 98528d9f and is superseded). Two files, +160/−0, both under .github/ — no core/, so no patches/ds-bot/ regeneration.
What it will pin, from the issue body: moveSchedules rewrites a task row through service.serialize(...) and (await service.getDomain()).table('tasks') and puts { ...task, sessionId: toId } back. Both members are private on dsh-schedule 0.2.x, and the row belongs to a storage domain declared inside the package, so a rename does not throw anywhere a test can see.
Red plan (each alone, module mutated, check must exit 1):
getDomain renamed → ScheduleService.prototype.getDomain is not a function.
row member renamed (sessionId → session) → the row moveSchedules writes is refused by the schema, naming the key.
serialize renamed, status value renamed, and the package absent → one line each, the last one failing rather than skipping.
Activity
Birfy commentedon Oct 26, 2026
Owner: Dev (Lead decision)
Dev owns this after #1256 merges — both touch the same host task path (
core/src/host/tasks.js,core/src/host/task-drive.js), so they do not run in parallel.Shape to pin, from the issue body:
moveSchedulesreaches the row through(await service.getDomain()).table('tasks')and rewrites{ ...task, sessionId: toId }. The test must fail when that row shape or either private method (getDomain,serialize) disappears, not only whenmoveSchedulesthrows — today the outercatchinparts.jsturns a rename into onert.warnand the task is simply left on the archived part.check: pin the DSH task row a part handoff rewrites (#1257)
Birfy commentedon Oct 26, 2026
Claimed-by: Dev
Branch:
dev/feat/1257-dsh-task-shape@65fe284c6c47debf7efc38ff94cd74dfb68e5b7f, one commit onmain4095e1359a5a023c8e5d5ffb7ac7f8ff484f7c31(branch re-cut onto it; the earlier cut was off98528d9fand is superseded). Two files, +160/−0, both under.github/— nocore/, so nopatches/ds-bot/regeneration.What it will pin, from the issue body:
moveSchedulesrewrites a task row throughservice.serialize(...)and(await service.getDomain()).table('tasks')and puts{ ...task, sessionId: toId }back. Both members areprivateon dsh-schedule 0.2.x, and the row belongs to a storage domain declared inside the package, so a rename does not throw anywhere a test can see.Red plan (each alone, module mutated, check must exit 1):
getDomainrenamed →ScheduleService.prototype.getDomain is not a function.sessionId→session) → the rowmoveScheduleswrites is refused by the schema, naming the key.serializerenamed,statusvalue renamed, and the package absent → one line each, the last one failing rather than skipping.