workday-daemon 0.9.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +3 -1
  2. package/dist/cli.js +63 -2
  3. package/dist/cli.js.map +1 -1
  4. package/dist/collectors/git-tracker.d.ts +6 -7
  5. package/dist/collectors/git-tracker.js +28 -39
  6. package/dist/collectors/git-tracker.js.map +1 -1
  7. package/dist/core/config.js +10 -1
  8. package/dist/core/config.js.map +1 -1
  9. package/dist/core/constants.d.ts +4 -1
  10. package/dist/core/constants.js +10 -2
  11. package/dist/core/constants.js.map +1 -1
  12. package/dist/core/daily-log.d.ts +16 -0
  13. package/dist/core/daily-log.js +37 -0
  14. package/dist/core/daily-log.js.map +1 -1
  15. package/dist/core/day-lifecycle.d.ts +10 -0
  16. package/dist/core/day-lifecycle.js +14 -0
  17. package/dist/core/day-lifecycle.js.map +1 -0
  18. package/dist/core/gap-detector.d.ts +20 -0
  19. package/dist/core/gap-detector.js +20 -0
  20. package/dist/core/gap-detector.js.map +1 -0
  21. package/dist/core/janitor.d.ts +32 -0
  22. package/dist/core/janitor.js +113 -0
  23. package/dist/core/janitor.js.map +1 -0
  24. package/dist/core/session-tracker.d.ts +76 -12
  25. package/dist/core/session-tracker.js +231 -53
  26. package/dist/core/session-tracker.js.map +1 -1
  27. package/dist/core/status-renderer.js +5 -3
  28. package/dist/core/status-renderer.js.map +1 -1
  29. package/dist/core/stop-marker.d.ts +3 -0
  30. package/dist/core/stop-marker.js +32 -0
  31. package/dist/core/stop-marker.js.map +1 -0
  32. package/dist/core/types.d.ts +17 -7
  33. package/dist/core/types.js +1 -7
  34. package/dist/core/types.js.map +1 -1
  35. package/dist/daemon.d.ts +21 -3
  36. package/dist/daemon.js +79 -38
  37. package/dist/daemon.js.map +1 -1
  38. package/dist/http-server.d.ts +11 -1
  39. package/dist/http-server.js +94 -4
  40. package/dist/http-server.js.map +1 -1
  41. package/dist/push/report-builder.js +21 -2
  42. package/dist/push/report-builder.js.map +1 -1
  43. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"status-renderer.js","sourceRoot":"","sources":["../../src/core/status-renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status-renderer.js","sourceRoot":"","sources":["../../src/core/status-renderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function writeStopMarker(): void;
2
+ export declare function clearStopMarker(): void;
3
+ export declare function hasStopMarker(): boolean;
@@ -0,0 +1,32 @@
1
+ import { existsSync, writeFileSync, unlinkSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ import { getWorkdayHome } from './config.js';
4
+ import { STOP_MARKER_FILE_NAME } from './constants.js';
5
+ /**
6
+ * Manual-stop marker: written on an explicit daemon stop (CLI `workday stop`,
7
+ * tray Stop button — both land in Daemon.stop()), cleared on daemon start.
8
+ * The tray watchdog respects it: a manually stopped daemon is NOT respawned
9
+ * until the user starts it again or logs in anew (the tray clears the marker
10
+ * on an autostart launch — a fresh login always starts tracking).
11
+ * Self-update restarts skip the marker — the daemon is coming right back.
12
+ */
13
+ function markerPath() {
14
+ return join(getWorkdayHome(), STOP_MARKER_FILE_NAME);
15
+ }
16
+ export function writeStopMarker() {
17
+ try {
18
+ writeFileSync(markerPath(), new Date().toISOString(), 'utf-8');
19
+ }
20
+ catch { /* best effort — a missing marker only means the watchdog restarts sooner */ }
21
+ }
22
+ export function clearStopMarker() {
23
+ try {
24
+ if (existsSync(markerPath()))
25
+ unlinkSync(markerPath());
26
+ }
27
+ catch { /* best effort */ }
28
+ }
29
+ export function hasStopMarker() {
30
+ return existsSync(markerPath());
31
+ }
32
+ //# sourceMappingURL=stop-marker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stop-marker.js","sourceRoot":"","sources":["../../src/core/stop-marker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD;;;;;;;GAOG;AAEH,SAAS,UAAU;IACjB,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,qBAAqB,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC;QACH,aAAa,CAAC,UAAU,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC,CAAC,4EAA4E,CAAC,CAAC;AAC1F,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;YAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;AAClC,CAAC"}
@@ -32,6 +32,7 @@ export interface SessionConfig {
32
32
  readonly signalDeduplicationSeconds: number;
33
33
  readonly dayBoundaryCheckSeconds: number;
34
34
  readonly reflogCount: number;
35
+ readonly idleCloseHours: number;
35
36
  }
36
37
  export interface ReportConfig {
37
38
  readonly roundingMinutes: number;
@@ -63,6 +64,7 @@ export declare enum ClosedBy {
63
64
  DaemonStop = "daemon_stop",
64
65
  DaemonCrash = "daemon_crash",
65
66
  ManualStop = "manual_stop",
67
+ IdleTimeout = "idle_timeout",
66
68
  BudgetExhausted = "budget_exhausted"
67
69
  }
68
70
  export interface ManualAdjustment {
@@ -285,20 +287,20 @@ export interface PollResult {
285
287
  readonly evidenceSnapshot: EvidenceSnapshot | null;
286
288
  readonly evidenceBasis: EvidenceBasis | null;
287
289
  readonly mergeBaseSha: string | null;
290
+ readonly prevEvidenceSnapshot: EvidenceSnapshot | null;
288
291
  readonly ledgerUpdate: LedgerUpdate | null;
289
292
  }
290
- export declare enum RepoState {
291
- Idle = "idle",
292
- Pending = "pending",
293
- Active = "active"
294
- }
295
293
  export interface RepoTracker {
296
- state: RepoState;
297
294
  currentBranch: string | null;
298
295
  currentTask: string | null;
299
- activeSessionId: string | null;
300
296
  previousSnapshot: GitSnapshot | null;
301
297
  lastReflogTs: number;
298
+ prevEvidenceSnapshot: EvidenceSnapshot | null;
299
+ }
300
+ export interface WatchingRepo {
301
+ readonly repoName: string;
302
+ readonly branch: string;
303
+ readonly task: string;
302
304
  }
303
305
  export interface ApiResponse<T = unknown> {
304
306
  readonly ok: boolean;
@@ -388,6 +390,14 @@ export interface AdjustResponse {
388
390
  readonly addedMinutes: number;
389
391
  readonly totalManualMinutes: number;
390
392
  }
393
+ export interface SessionDeleteResponse {
394
+ readonly id: string;
395
+ readonly repo: string;
396
+ readonly task: string | null;
397
+ readonly effectiveDurationMs: number;
398
+ readonly dayFileDeleted: boolean;
399
+ readonly dayWasPushed: boolean;
400
+ }
391
401
  export interface ManualEntryResponse {
392
402
  readonly id: string;
393
403
  readonly task: string;
@@ -27,6 +27,7 @@ export var ClosedBy;
27
27
  ClosedBy["DaemonStop"] = "daemon_stop";
28
28
  ClosedBy["DaemonCrash"] = "daemon_crash";
29
29
  ClosedBy["ManualStop"] = "manual_stop";
30
+ ClosedBy["IdleTimeout"] = "idle_timeout";
30
31
  // Legacy — never produced since budget v2; kept so old day files still read.
31
32
  ClosedBy["BudgetExhausted"] = "budget_exhausted";
32
33
  })(ClosedBy || (ClosedBy = {}));
@@ -51,11 +52,4 @@ export var DayType;
51
52
  DayType["Holiday"] = "holiday";
52
53
  DayType["Overtime"] = "overtime";
53
54
  })(DayType || (DayType = {}));
54
- // ─── Daemon runtime state (per repo, not persisted) ─────────────────────
55
- export var RepoState;
56
- (function (RepoState) {
57
- RepoState["Idle"] = "idle";
58
- RepoState["Pending"] = "pending";
59
- RepoState["Active"] = "active";
60
- })(RepoState || (RepoState = {}));
61
55
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AA8B5E,2EAA2E;AAE3E,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;IACnB,0CAAsB,CAAA;AACxB,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B;AA0BD,2EAA2E;AAE3E,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,2CAA4B,CAAA;IAC5B,wCAAyB,CAAA;AAC3B,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAQD,4EAA4E;AAE5E,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;AACnB,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB;AAED,MAAM,CAAN,IAAY,QAQX;AARD,WAAY,QAAQ;IAClB,qDAAyC,CAAA;IACzC,wCAA4B,CAAA;IAC5B,sCAA0B,CAAA;IAC1B,wCAA4B,CAAA;IAC5B,sCAA0B,CAAA;IAC1B,6EAA6E;IAC7E,gDAAoC,CAAA;AACtC,CAAC,EARW,QAAQ,KAAR,QAAQ,QAQnB;AAiFD,4EAA4E;AAE5E,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,4CAA8B,CAAA;IAC9B,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;AACvB,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAyBD,4EAA4E;AAE5E,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,4BAAe,CAAA;IACf,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;AACnB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAED,MAAM,CAAN,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,gCAAqB,CAAA;AACvB,CAAC,EALW,OAAO,KAAP,OAAO,QAKlB;AAwMD,2EAA2E;AAE3E,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,0BAAa,CAAA;IACb,gCAAmB,CAAA;IACnB,8BAAiB,CAAA;AACnB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,4EAA4E;AA8B5E,2EAA2E;AAE3E,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;IACnB,0CAAsB,CAAA;AACxB,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B;AA6BD,2EAA2E;AAE3E,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,2CAA4B,CAAA;IAC5B,wCAAyB,CAAA;AAC3B,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB;AAQD,4EAA4E;AAE5E,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,mCAAmB,CAAA;IACnB,iCAAiB,CAAA;AACnB,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB;AAED,MAAM,CAAN,IAAY,QASX;AATD,WAAY,QAAQ;IAClB,qDAAyC,CAAA;IACzC,wCAA4B,CAAA;IAC5B,sCAA0B,CAAA;IAC1B,wCAA4B,CAAA;IAC5B,sCAA0B,CAAA;IAC1B,wCAA4B,CAAA;IAC5B,6EAA6E;IAC7E,gDAAoC,CAAA;AACtC,CAAC,EATW,QAAQ,KAAR,QAAQ,QASnB;AAiFD,4EAA4E;AAE5E,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,4CAA8B,CAAA;IAC9B,+BAAiB,CAAA;IACjB,mCAAqB,CAAA;AACvB,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAyBD,4EAA4E;AAE5E,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,4BAAe,CAAA;IACf,oCAAuB,CAAA;IACvB,8BAAiB,CAAA;AACnB,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAED,MAAM,CAAN,IAAY,OAKX;AALD,WAAY,OAAO;IACjB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,8BAAmB,CAAA;IACnB,gCAAqB,CAAA;AACvB,CAAC,EALW,OAAO,KAAP,OAAO,QAKlB"}
package/dist/daemon.d.ts CHANGED
@@ -17,6 +17,7 @@ export declare class Daemon {
17
17
  private running;
18
18
  private foreground;
19
19
  private startedAt;
20
+ private lastAliveAt;
20
21
  private tickQueue;
21
22
  start(options?: {
22
23
  foreground?: boolean;
@@ -36,7 +37,13 @@ export declare class Daemon {
36
37
  ok: boolean;
37
38
  error?: string;
38
39
  }>;
39
- stop(): Promise<void>;
40
+ /**
41
+ * Graceful stop. `manual` marks a user-initiated stop (CLI `workday stop`,
42
+ * tray Stop, Ctrl+C) — it writes the stop marker so the tray watchdog does
43
+ * not respawn the daemon. Self-update restarts pass false: the daemon is
44
+ * coming right back and must stay under the watchdog's guard.
45
+ */
46
+ stop(manual?: boolean): Promise<void>;
40
47
  private stopAndExit;
41
48
  /**
42
49
  * Run one tick. Serializes with any currently-running tick via tickQueue
@@ -44,6 +51,19 @@ export declare class Daemon {
44
51
  */
45
52
  pollTick(): Promise<void>;
46
53
  private runTickBody;
54
+ /**
55
+ * Timers don't fire while the machine sleeps: the evaluator never decays
56
+ * and lastSeenAt never advances, so the first tick after wake-up would
57
+ * credit the whole gap as work. On a gap: every open unpaused session
58
+ * gets a retroactive idle pause at its pre-gap lastSeenAt; candidates and
59
+ * evaluator state are stale and dropped (real activity re-earns both);
60
+ * idle auto-close then immediately closes sessions whose gap already
61
+ * exceeds idleCloseHours — honest end at the last pre-sleep activity.
62
+ * A short gap stays a mid-session pause, auto-resumed by activity.
63
+ * Runs from both the poll tick and the day-boundary timer — whichever
64
+ * fires first after wake-up, and before rollover closes sessions.
65
+ */
66
+ private handleObservationGap;
47
67
  private restarting;
48
68
  /** First check ~1h after start, then every UPDATE_CHECK_INTERVAL_HOURS. */
49
69
  private scheduleUpdateCheck;
@@ -66,8 +86,6 @@ export declare class Daemon {
66
86
  * its content with the new version — and exit.
67
87
  */
68
88
  private selfRestart;
69
- /** Scan recent daily logs for orphaned sessions (cross-day crash) */
70
- private recoverOrphanedLogs;
71
89
  private checkDayBoundary;
72
90
  private getPidFilePath;
73
91
  private ensureSingleInstance;
package/dist/daemon.js CHANGED
@@ -3,15 +3,18 @@ import { spawn } from 'node:child_process';
3
3
  import { join, resolve, basename } from 'node:path';
4
4
  import { fileURLToPath } from 'node:url';
5
5
  import { loadConfig, loadSecrets, getDataDir, computeWorkingDate, writeConfig } from './core/config.js';
6
- import { readDailyLog, writeDailyLog, getOpenPause } from './core/daily-log.js';
6
+ import { readDailyLog, writeDailyLog } from './core/daily-log.js';
7
+ import { runStartupJanitor } from './core/janitor.js';
8
+ import { writeStopMarker, clearStopMarker } from './core/stop-marker.js';
7
9
  import { GitTracker } from './collectors/git-tracker.js';
8
10
  import { SessionTracker } from './core/session-tracker.js';
9
11
  import { ActivityEvaluator } from './core/activity-evaluator.js';
12
+ import { checkGap } from './core/gap-detector.js';
10
13
  import { UpdateManager } from './core/update-manager.js';
11
14
  import { HttpServer } from './http-server.js';
12
15
  import { StatusRenderer } from './core/status-renderer.js';
13
16
  import { ClosedBy } from './core/types.js';
14
- import { PID_FILE_NAME, CRASH_RECOVERY_LOOKBACK_DAYS, UPDATE_CHECK_INTERVAL_HOURS, UPDATE_CHECK_JITTER_MINUTES, } from './core/constants.js';
17
+ import { PID_FILE_NAME, UPDATE_CHECK_INTERVAL_HOURS, UPDATE_CHECK_JITTER_MINUTES, } from './core/constants.js';
15
18
  export class Daemon {
16
19
  config;
17
20
  secrets;
@@ -31,6 +34,9 @@ export class Daemon {
31
34
  running = false;
32
35
  foreground = false;
33
36
  startedAt = 0;
37
+ // Last moment the process was known to be alive (any timer fired).
38
+ // Used to detect observation gaps: PC sleep / hibernate / suspend.
39
+ lastAliveAt = 0;
34
40
  // Serializes scheduled and forced ticks so parallel calls do not race
35
41
  // over git polling, in-memory state or flush writes.
36
42
  tickQueue = Promise.resolve();
@@ -41,13 +47,15 @@ export class Daemon {
41
47
  await this.ensureSingleInstance();
42
48
  this.currentDate = computeWorkingDate(Date.now(), this.config.schedule.end, this.config.timezone);
43
49
  this.gitTracker = new GitTracker(this.config, this.secrets);
44
- // Crash recovery: close orphaned sessions from previous days
45
- this.recoverOrphanedLogs();
50
+ // Janitor: close orphaned sessions in past files (crash recovery),
51
+ // prune never-activated noise, delete factless day files.
52
+ const janitor = runStartupJanitor(this.currentDate);
53
+ if (janitor.recoveredSessions > 0 || janitor.prunedSessions > 0 || janitor.deletedFiles.length > 0) {
54
+ console.log(` Janitor: closed ${janitor.recoveredSessions} orphan(s), pruned ${janitor.prunedSessions} never-activated, deleted ${janitor.deletedFiles.length} empty file(s)`);
55
+ }
46
56
  // Load today's log and close any orphaned sessions
47
57
  const existingLog = readDailyLog(this.currentDate) ?? undefined;
48
58
  this.sessionTracker = new SessionTracker(this.config, existingLog);
49
- // Set dayStartedAt if not already set (first daemon start of the day)
50
- this.sessionTracker.setDayStartedAt(new Date().toISOString());
51
59
  const crashedCount = this.sessionTracker.closeCrashedSessions();
52
60
  if (crashedCount > 0) {
53
61
  this.sessionTracker.flush();
@@ -57,6 +65,9 @@ export class Daemon {
57
65
  this.activityEvaluator = new ActivityEvaluator(this.config.session.diffPollSeconds);
58
66
  this.sessionTracker.onSessionClosed = (sessionId) => this.activityEvaluator.removeSession(sessionId);
59
67
  this.writePidFile();
68
+ // A starting daemon voids any manual-stop intent — the tray watchdog
69
+ // may resume guarding it.
70
+ clearStopMarker();
60
71
  this.registerShutdownHandlers();
61
72
  // HTTP API server
62
73
  this.startedAt = Date.now();
@@ -73,6 +84,7 @@ export class Daemon {
73
84
  getVersion: () => this.updateManager.getCurrentVersion(),
74
85
  checkUpdate: () => this.updateManager.checkForUpdate(),
75
86
  applyUpdate: () => this.applyUpdateNow(),
87
+ getWatchingRepos: () => this.gitTracker.getWatchingRepos(),
76
88
  };
77
89
  this.httpServer = new HttpServer(this.config.apiPort, deps);
78
90
  await this.httpServer.start();
@@ -89,6 +101,7 @@ export class Daemon {
89
101
  });
90
102
  }
91
103
  // First poll immediately, then on interval
104
+ this.lastAliveAt = Date.now();
92
105
  await this.pollTick();
93
106
  const pollMs = this.config.session.diffPollSeconds * 1000;
94
107
  this.pollTimer = setInterval(() => void this.pollTick(), pollMs);
@@ -170,7 +183,13 @@ export class Daemon {
170
183
  writeConfig(this.config);
171
184
  return { ok: true };
172
185
  }
173
- async stop() {
186
+ /**
187
+ * Graceful stop. `manual` marks a user-initiated stop (CLI `workday stop`,
188
+ * tray Stop, Ctrl+C) — it writes the stop marker so the tray watchdog does
189
+ * not respawn the daemon. Self-update restarts pass false: the daemon is
190
+ * coming right back and must stay under the watchdog's guard.
191
+ */
192
+ async stop(manual = true) {
174
193
  if (!this.running)
175
194
  return;
176
195
  if (this.pollTimer)
@@ -188,6 +207,8 @@ export class Daemon {
188
207
  this.sessionTracker.flush();
189
208
  this.activityEvaluator.clear();
190
209
  this.removePidFile();
210
+ if (manual)
211
+ writeStopMarker();
191
212
  console.log('Daemon stopped.');
192
213
  }
193
214
  async stopAndExit() {
@@ -207,6 +228,13 @@ export class Daemon {
207
228
  if (!this.running)
208
229
  return;
209
230
  try {
231
+ // 0a. Observation gap (PC sleep) — retro-pause everything at pre-gap
232
+ // lastSeenAt before any new activity is processed.
233
+ this.handleObservationGap(Date.now());
234
+ // 0b. Idle auto-close (honest end) — before processing new activity, so
235
+ // a long-idle session closes at its trimmed end and fresh activity
236
+ // births a new session instead of resuming a stale pause.
237
+ this.sessionTracker.closeIdleSessions(Date.now());
210
238
  const baseShas = this.sessionTracker.getBaseShasPerRepoPath(this.config.repos);
211
239
  const ledgerQueries = this.sessionTracker.getLedgerQueries(this.config.repos);
212
240
  const results = await this.gitTracker.pollAll(baseShas, ledgerQueries);
@@ -218,7 +246,8 @@ export class Daemon {
218
246
  const tickInputs = this.sessionTracker.buildTickInputs(results);
219
247
  // 3. Evaluate activity scores and leadership
220
248
  const evaluatorResult = this.activityEvaluator.processAllTicks(tickInputs);
221
- // 4. Apply evaluator decisions (auto-pause/resume, promotion)
249
+ // 4. Apply evaluator decisions (auto-pause/resume, candidate
250
+ // promotion / drained-candidate evaporation)
222
251
  this.sessionTracker.applyEvaluatorResult(evaluatorResult);
223
252
  this.sessionTracker.flush();
224
253
  if (this.statusRenderer) {
@@ -235,6 +264,37 @@ export class Daemon {
235
264
  }
236
265
  }
237
266
  }
267
+ // ─── Observation gap (sleep / hibernate) ──────────────────────────────
268
+ /**
269
+ * Timers don't fire while the machine sleeps: the evaluator never decays
270
+ * and lastSeenAt never advances, so the first tick after wake-up would
271
+ * credit the whole gap as work. On a gap: every open unpaused session
272
+ * gets a retroactive idle pause at its pre-gap lastSeenAt; candidates and
273
+ * evaluator state are stale and dropped (real activity re-earns both);
274
+ * idle auto-close then immediately closes sessions whose gap already
275
+ * exceeds idleCloseHours — honest end at the last pre-sleep activity.
276
+ * A short gap stays a mid-session pause, auto-resumed by activity.
277
+ * Runs from both the poll tick and the day-boundary timer — whichever
278
+ * fires first after wake-up, and before rollover closes sessions.
279
+ */
280
+ handleObservationGap(now) {
281
+ const check = checkGap(now, this.lastAliveAt, this.config.session.diffPollSeconds);
282
+ this.lastAliveAt = now;
283
+ if (check.kind === 'none')
284
+ return;
285
+ if (check.kind === 'clock_jump_back') {
286
+ console.warn(`[gap] clock jumped back ${Math.round(-check.gapMs / 1000)}s — re-anchored, no action`);
287
+ return;
288
+ }
289
+ const paused = this.sessionTracker.applyGapPauses();
290
+ this.sessionTracker.dropAllCandidates();
291
+ this.activityEvaluator.clear();
292
+ this.sessionTracker.closeIdleSessions(now);
293
+ this.sessionTracker.flush();
294
+ if (!this.statusRenderer) {
295
+ console.log(`[gap] ${Math.round(check.gapMs / 60_000)}min observation gap — ${paused} session(s) retro-paused`);
296
+ }
297
+ }
238
298
  // ─── Self-update ───────────────────────────────────────────────────────
239
299
  //
240
300
  // Order is sacred: install new version → verify on disk → only then
@@ -329,7 +389,7 @@ export class Daemon {
329
389
  return;
330
390
  this.restarting = true;
331
391
  console.log(`[update] restarting into v${targetVersion}...`);
332
- await this.stop();
392
+ await this.stop(false);
333
393
  const script = fileURLToPath(import.meta.url);
334
394
  const child = spawn(process.execPath, [...process.execArgv, script], {
335
395
  detached: true,
@@ -338,49 +398,30 @@ export class Daemon {
338
398
  child.unref();
339
399
  process.exit(0);
340
400
  }
341
- // ─── Crash recovery ────────────────────────────────────────────────────
342
- /** Scan recent daily logs for orphaned sessions (cross-day crash) */
343
- recoverOrphanedLogs() {
344
- const lookbackDays = CRASH_RECOVERY_LOOKBACK_DAYS;
345
- for (let i = 1; i <= lookbackDays; i++) {
346
- const d = new Date(this.currentDate + 'T12:00:00Z');
347
- d.setUTCDate(d.getUTCDate() - i);
348
- const dateStr = `${d.getUTCFullYear()}-${String(d.getUTCMonth() + 1).padStart(2, '0')}-${String(d.getUTCDate()).padStart(2, '0')}`;
349
- const log = readDailyLog(dateStr);
350
- if (!log)
351
- continue;
352
- const openSessions = log.sessions.filter(s => !s.closedBy);
353
- if (openSessions.length === 0)
354
- continue;
355
- for (const session of openSessions) {
356
- const pause = getOpenPause(session);
357
- if (pause)
358
- pause.to = session.lastSeenAt;
359
- session.closedBy = ClosedBy.DaemonCrash;
360
- }
361
- writeDailyLog(log);
362
- console.log(` Crash recovery: closed ${openSessions.length} orphaned session(s) from ${dateStr}`);
363
- }
364
- }
365
401
  // ─── Day boundary ─────────────────────────────────────────────────────
366
402
  checkDayBoundary() {
403
+ // Gap check first: after a sleep across the boundary the sessions must
404
+ // be retro-paused/closed at their honest ends BEFORE rollover closes
405
+ // them at the wake-up moment.
406
+ this.handleObservationGap(Date.now());
367
407
  // Piggyback on the 60s boundary timer: pending updates wait here for a
368
408
  // quiet window instead of having their own restart poller.
369
409
  this.maybeRestartIntoUpdate();
370
410
  const newDate = computeWorkingDate(Date.now(), this.config.schedule.end, this.config.timezone);
371
411
  if (newDate === this.currentDate)
372
412
  return;
373
- const oldLog = this.sessionTracker.handleDayBoundary();
374
- writeDailyLog(oldLog);
413
+ // Lazy rollover: an empty day writes nothing and says nothing.
414
+ const { oldLog, materialized } = this.sessionTracker.handleDayBoundary();
415
+ if (materialized)
416
+ writeDailyLog(oldLog);
375
417
  this.activityEvaluator.clear();
376
- const sessionCount = oldLog.sessions.length;
377
418
  this.currentDate = newDate;
378
419
  if (this.statusRenderer) {
379
420
  this.statusRenderer.updateDate(newDate);
380
421
  this.statusRenderer.render();
381
422
  }
382
- else {
383
- console.log(`[day] ${oldLog.date} closed (${sessionCount} sessions) → ${newDate}`);
423
+ else if (materialized) {
424
+ console.log(`[day] ${oldLog.date} closed (${oldLog.sessions.length} sessions) → ${newDate}`);
384
425
  }
385
426
  }
386
427
  // ─── PID file ──────────────────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { SessionTracker } from './core/session-tracker.js';
2
- import type { AppConfig, UpdateCheckResponse, UpdateApplyResponse } from './core/types.js';
2
+ import type { AppConfig, SessionDetail, UpdateCheckResponse, UpdateApplyResponse, WatchingRepo } from './core/types.js';
3
+ import { SensitivityLevel } from './core/types.js';
3
4
  export interface HttpServerDeps {
4
5
  readonly sessionTracker: SessionTracker;
5
6
  readonly config: AppConfig;
@@ -30,7 +31,13 @@ export interface HttpServerDeps {
30
31
  readonly checkUpdate: () => Promise<UpdateCheckResponse>;
31
32
  /** Install latest + graceful self-restart (skips the quiet window). */
32
33
  readonly applyUpdate: () => Promise<UpdateApplyResponse>;
34
+ /** Repos on a task branch as of the last poll — watching-card synthesis. */
35
+ readonly getWatchingRepos: () => readonly WatchingRepo[];
33
36
  }
37
+ /** Watching repos that still need a synthetic card (no session, no candidate). */
38
+ export declare function selectWatchingRepos(watching: readonly WatchingRepo[], occupiedRepos: ReadonlySet<string>): readonly WatchingRepo[];
39
+ /** Synthetic PENDING card for a watched repo — zeros, real sensitivity. */
40
+ export declare function buildWatchingCard(repo: WatchingRepo, sensitivity: SensitivityLevel, now: string): SessionDetail;
34
41
  export declare class HttpServer {
35
42
  private server;
36
43
  private readonly port;
@@ -46,6 +53,7 @@ export declare class HttpServer {
46
53
  private handleSensitivity;
47
54
  private handleResume;
48
55
  private handleAdjust;
56
+ private handleSessionDelete;
49
57
  private handleAddManualEntry;
50
58
  private handleUpdateManualEntry;
51
59
  private handleActivityTypes;
@@ -55,6 +63,8 @@ export declare class HttpServer {
55
63
  private handleRemoveRepo;
56
64
  private handleDay;
57
65
  private handleDays;
66
+ /** Candidates + watching repos that need synthetic cards (A-6). */
67
+ private collectLiveExtras;
58
68
  private toSessionSummary;
59
69
  private sendJson;
60
70
  private readBody;