Repository navigation
[Devbook drift] .devbook/domain/sessions/features.md#session-inventory #878
Description
Scheduled Devbook verify run, 2026-09-30 (devbook:verify-change, kind feature).
| Chapter | Counterpart | Resolved via | Verdict |
|---|---|---|---|
.devbook/domain/sessions/features.md#session-inventory |
SessionsPane in src/Modules/Sessions/Backlog.Modules.Sessions.UI/SessionsPane.razor; AgentSession, AgentSessionView(s), AgentSessionEnvironments in src/Modules/Sessions/Backlog.Modules.Sessions.Abstractions/Sessions.cs; SessionSyncWorker in src/Infrastructure/Backlog.Infrastructure.Sync/Sessions/SessionSyncWorker.cs |
term alias (AgentSession, AgentSessionView, SessionRow, environment_id) |
conflict |
Evidence: Sub-feature Sessions from another machine says session records sync behind "a switch of its own ... separately from anything else that syncs"; SessionSyncWorker.ShouldRun gates on SyncFeatures.Sync alone (line 273), the one key that also syncs tasks, and AppFeatures.cs folds session-sync into sync as a FormerKeys entry. Everything else matches: _view = AgentSessionView.Live reset per pane (SessionsPaneTests.Live_is_the_view_the_pane_opens_in, Reopening_the_pane_opens_on_live_again), Live = Running or Stalled (AgentSessionViews.IsLive, A_stalled_session_is_live_because_silence_is_not_an_ending), resolved repository marked and titled (RepositoryTitle, A_recorded_repository_is_shown_over_a_placed_one_and_either_scopes), PRs/tokens/entrypoint (Tokens_are_output_and_input_..., The_entrypoint_is_a_quiet_badge_beside_the_type), recorded rows + Update records (A_recorded_row_says_it_comes_from_the_saved_record_and_keeps_its_folder, Update_records_amends_everything_and_says_what_it_did), no polling (only RefreshAsync re-reads). The code also carries things the chapter does not: see below.
Detail
- The chapter (Sessions from another machine) says session records sync behind "a switch of its own, and it starts off", switched on separately from anything else that syncs.
- The code has one switch.
SessionSyncWorker.ShouldRun=>_features.IsEnabled(SyncFeatures.Sync)(src/Infrastructure/Backlog.Infrastructure.Sync/Sessions/SessionSyncWorker.cs:273).AppFeatures.cslistsFormerKeys: ["device-pairing", "task-sync", "session-sync"]onsync, so tasks and session records go together. - Side finding: the user-facing
syncdescription inAppFeatures.cssays a session's title never travels.SessionRecordMapping.cs:93does send it (Cut(session.Title, ...)), and the chapter agrees with the code. The UI string is wrong. - Code-ahead parts the chapter lacks: the Machine filter (
AgentSessionEnvironments.On;SessionsPaneTests.Choosing_an_environment_keeps_only_its_rows_and_says_how_many_of_how_many), and opening the pane on a session a task names, which widens the filters (FocusSessionId,RevealFocused;A_session_a_task_asks_for_is_shown_marked_and_focused_even_when_live_hides_it,HomeWorkspaceSurfaceTests.Opening_a_session_from_a_task_shows_the_sessions_surface_on_that_session). - Wording: the chapter says a missing repository reads "not recorded". The pane renders an em dash (
Or(),Missing = "—";What_an_agent_did_not_record_is_an_em_dash). - Question: should session-record sync be its own switch, as the chapter says, or is the single
syncswitch (see theSyncFeatures.Syncrationale) the agreed model, so the chapter should change?
Action: a person decides which side is the model: the chapter (then the code is a defect, for apply-change) or the code (then the chapter is stale, for capture-specs). The question is under Detail above.
Read-only: nothing was run or written. The chapter carries no draft or proposed status, and no open pull request or change names it.
Activity
JSdotNet commentedon Oct 5, 2026
The issue sweep (2026-10-05) opened draft #987. Read its What could not be proved section before marking it ready.