charness 3.3.2 → 3.4.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 (183) hide show
  1. package/CHANGELOG.md +612 -0
  2. package/DEVELOPMENT.md +76 -0
  3. package/README.md +5 -2
  4. package/SETUP.md +65 -19
  5. package/dist/adapters/openCodeAdapter.d.ts +11 -0
  6. package/dist/adapters/openCodeAdapter.d.ts.map +1 -1
  7. package/dist/adapters/openCodeAdapter.js +24 -9
  8. package/dist/adapters/openCodeAdapter.js.map +1 -1
  9. package/dist/agentLogin/agentLogin.d.ts +1 -0
  10. package/dist/agentLogin/agentLogin.d.ts.map +1 -1
  11. package/dist/agentLogin/agentLogin.js +5 -0
  12. package/dist/agentLogin/agentLogin.js.map +1 -1
  13. package/dist/bot.d.ts +0 -3
  14. package/dist/bot.d.ts.map +1 -1
  15. package/dist/bot.js +311 -159
  16. package/dist/bot.js.map +1 -1
  17. package/dist/changelogEntries.d.ts +25 -0
  18. package/dist/changelogEntries.d.ts.map +1 -0
  19. package/dist/changelogEntries.js +66 -0
  20. package/dist/changelogEntries.js.map +1 -0
  21. package/dist/cli/bot.d.ts +6 -2
  22. package/dist/cli/bot.d.ts.map +1 -1
  23. package/dist/cli/bot.js +34 -2
  24. package/dist/cli/bot.js.map +1 -1
  25. package/dist/cli/hot.d.ts +7 -0
  26. package/dist/cli/hot.d.ts.map +1 -1
  27. package/dist/cli/hot.js +53 -3
  28. package/dist/cli/hot.js.map +1 -1
  29. package/dist/cli.d.ts +1 -1
  30. package/dist/cli.d.ts.map +1 -1
  31. package/dist/cli.js +8 -0
  32. package/dist/cli.js.map +1 -1
  33. package/dist/connectors/telegram/bindPicker.d.ts +64 -0
  34. package/dist/connectors/telegram/bindPicker.d.ts.map +1 -0
  35. package/dist/connectors/telegram/bindPicker.js +97 -0
  36. package/dist/connectors/telegram/bindPicker.js.map +1 -0
  37. package/dist/connectors/telegram/commands/selfUpdate.d.ts +16 -0
  38. package/dist/connectors/telegram/commands/selfUpdate.d.ts.map +1 -0
  39. package/dist/connectors/telegram/commands/selfUpdate.js +210 -0
  40. package/dist/connectors/telegram/commands/selfUpdate.js.map +1 -0
  41. package/dist/connectors/telegram/commands/stt.d.ts +1 -0
  42. package/dist/connectors/telegram/commands/stt.d.ts.map +1 -1
  43. package/dist/connectors/telegram/commands/stt.js +5 -0
  44. package/dist/connectors/telegram/commands/stt.js.map +1 -1
  45. package/dist/connectors/telegram/commands/topicCommand.d.ts +75 -0
  46. package/dist/connectors/telegram/commands/topicCommand.d.ts.map +1 -0
  47. package/dist/connectors/telegram/commands/topicCommand.js +391 -0
  48. package/dist/connectors/telegram/commands/topicCommand.js.map +1 -0
  49. package/dist/i18n/de.d.ts.map +1 -1
  50. package/dist/i18n/de.js +108 -2
  51. package/dist/i18n/de.js.map +1 -1
  52. package/dist/i18n/en.d.ts.map +1 -1
  53. package/dist/i18n/en.js +108 -2
  54. package/dist/i18n/en.js.map +1 -1
  55. package/dist/i18n/es.d.ts.map +1 -1
  56. package/dist/i18n/es.js +108 -2
  57. package/dist/i18n/es.js.map +1 -1
  58. package/dist/i18n/fr.d.ts.map +1 -1
  59. package/dist/i18n/fr.js +108 -2
  60. package/dist/i18n/fr.js.map +1 -1
  61. package/dist/i18n/hi.d.ts.map +1 -1
  62. package/dist/i18n/hi.js +108 -2
  63. package/dist/i18n/hi.js.map +1 -1
  64. package/dist/i18n/ja.d.ts.map +1 -1
  65. package/dist/i18n/ja.js +108 -2
  66. package/dist/i18n/ja.js.map +1 -1
  67. package/dist/i18n/ka.d.ts.map +1 -1
  68. package/dist/i18n/ka.js +108 -2
  69. package/dist/i18n/ka.js.map +1 -1
  70. package/dist/i18n/pt.d.ts.map +1 -1
  71. package/dist/i18n/pt.js +108 -2
  72. package/dist/i18n/pt.js.map +1 -1
  73. package/dist/i18n/ru.d.ts.map +1 -1
  74. package/dist/i18n/ru.js +108 -2
  75. package/dist/i18n/ru.js.map +1 -1
  76. package/dist/i18n/uk.d.ts.map +1 -1
  77. package/dist/i18n/uk.js +108 -2
  78. package/dist/i18n/uk.js.map +1 -1
  79. package/dist/i18n/uz.d.ts.map +1 -1
  80. package/dist/i18n/uz.js +108 -2
  81. package/dist/i18n/uz.js.map +1 -1
  82. package/dist/i18n/zh.d.ts.map +1 -1
  83. package/dist/i18n/zh.js +108 -2
  84. package/dist/i18n/zh.js.map +1 -1
  85. package/dist/instanceSettings.d.ts +12 -1
  86. package/dist/instanceSettings.d.ts.map +1 -1
  87. package/dist/instanceSettings.js +40 -4
  88. package/dist/instanceSettings.js.map +1 -1
  89. package/dist/selfUpdate/bootRollback.d.ts +22 -0
  90. package/dist/selfUpdate/bootRollback.d.ts.map +1 -0
  91. package/dist/selfUpdate/bootRollback.js +79 -0
  92. package/dist/selfUpdate/bootRollback.js.map +1 -0
  93. package/dist/selfUpdate/commandRunner.d.ts +21 -0
  94. package/dist/selfUpdate/commandRunner.d.ts.map +1 -0
  95. package/dist/selfUpdate/commandRunner.js +32 -0
  96. package/dist/selfUpdate/commandRunner.js.map +1 -0
  97. package/dist/selfUpdate/constants.d.ts +26 -0
  98. package/dist/selfUpdate/constants.d.ts.map +1 -0
  99. package/dist/selfUpdate/constants.js +31 -0
  100. package/dist/selfUpdate/constants.js.map +1 -0
  101. package/dist/selfUpdate/gitSource.d.ts +58 -0
  102. package/dist/selfUpdate/gitSource.d.ts.map +1 -0
  103. package/dist/selfUpdate/gitSource.js +183 -0
  104. package/dist/selfUpdate/gitSource.js.map +1 -0
  105. package/dist/selfUpdate/hostLock.d.ts +16 -0
  106. package/dist/selfUpdate/hostLock.d.ts.map +1 -0
  107. package/dist/selfUpdate/hostLock.js +101 -0
  108. package/dist/selfUpdate/hostLock.js.map +1 -0
  109. package/dist/selfUpdate/hotSupervisor.d.ts +47 -0
  110. package/dist/selfUpdate/hotSupervisor.d.ts.map +1 -0
  111. package/dist/selfUpdate/hotSupervisor.js +125 -0
  112. package/dist/selfUpdate/hotSupervisor.js.map +1 -0
  113. package/dist/selfUpdate/installKind.d.ts +45 -0
  114. package/dist/selfUpdate/installKind.d.ts.map +1 -0
  115. package/dist/selfUpdate/installKind.js +99 -0
  116. package/dist/selfUpdate/installKind.js.map +1 -0
  117. package/dist/selfUpdate/launchEnvironment.d.ts +3 -0
  118. package/dist/selfUpdate/launchEnvironment.d.ts.map +1 -0
  119. package/dist/selfUpdate/launchEnvironment.js +16 -0
  120. package/dist/selfUpdate/launchEnvironment.js.map +1 -0
  121. package/dist/selfUpdate/npmSource.d.ts +34 -0
  122. package/dist/selfUpdate/npmSource.d.ts.map +1 -0
  123. package/dist/selfUpdate/npmSource.js +107 -0
  124. package/dist/selfUpdate/npmSource.js.map +1 -0
  125. package/dist/selfUpdate/releaseNotes.d.ts +33 -0
  126. package/dist/selfUpdate/releaseNotes.d.ts.map +1 -0
  127. package/dist/selfUpdate/releaseNotes.js +115 -0
  128. package/dist/selfUpdate/releaseNotes.js.map +1 -0
  129. package/dist/selfUpdate/restart.d.ts +33 -0
  130. package/dist/selfUpdate/restart.d.ts.map +1 -0
  131. package/dist/selfUpdate/restart.js +94 -0
  132. package/dist/selfUpdate/restart.js.map +1 -0
  133. package/dist/selfUpdate/selfCheck.d.ts +20 -0
  134. package/dist/selfUpdate/selfCheck.d.ts.map +1 -0
  135. package/dist/selfUpdate/selfCheck.js +126 -0
  136. package/dist/selfUpdate/selfCheck.js.map +1 -0
  137. package/dist/selfUpdate/semver.d.ts +24 -0
  138. package/dist/selfUpdate/semver.d.ts.map +1 -0
  139. package/dist/selfUpdate/semver.js +165 -0
  140. package/dist/selfUpdate/semver.js.map +1 -0
  141. package/dist/selfUpdate/types.d.ts +51 -0
  142. package/dist/selfUpdate/types.d.ts.map +1 -0
  143. package/dist/selfUpdate/types.js +3 -0
  144. package/dist/selfUpdate/types.js.map +1 -0
  145. package/dist/selfUpdate/updateEngine.d.ts +110 -0
  146. package/dist/selfUpdate/updateEngine.d.ts.map +1 -0
  147. package/dist/selfUpdate/updateEngine.js +727 -0
  148. package/dist/selfUpdate/updateEngine.js.map +1 -0
  149. package/dist/selfUpdate/updateMessages.d.ts +84 -0
  150. package/dist/selfUpdate/updateMessages.d.ts.map +1 -0
  151. package/dist/selfUpdate/updateMessages.js +115 -0
  152. package/dist/selfUpdate/updateMessages.js.map +1 -0
  153. package/dist/selfUpdate/updateModes.d.ts +17 -0
  154. package/dist/selfUpdate/updateModes.d.ts.map +1 -0
  155. package/dist/selfUpdate/updateModes.js +14 -0
  156. package/dist/selfUpdate/updateModes.js.map +1 -0
  157. package/dist/selfUpdate/updatePending.d.ts +76 -0
  158. package/dist/selfUpdate/updatePending.d.ts.map +1 -0
  159. package/dist/selfUpdate/updatePending.js +131 -0
  160. package/dist/selfUpdate/updatePending.js.map +1 -0
  161. package/dist/selfUpdate/updatePolicy.d.ts +115 -0
  162. package/dist/selfUpdate/updatePolicy.d.ts.map +1 -0
  163. package/dist/selfUpdate/updatePolicy.js +83 -0
  164. package/dist/selfUpdate/updatePolicy.js.map +1 -0
  165. package/dist/selfUpdate/updateRuntime.d.ts +22 -0
  166. package/dist/selfUpdate/updateRuntime.d.ts.map +1 -0
  167. package/dist/selfUpdate/updateRuntime.js +148 -0
  168. package/dist/selfUpdate/updateRuntime.js.map +1 -0
  169. package/dist/startupPromptBuffer.d.ts +2 -0
  170. package/dist/startupPromptBuffer.d.ts.map +1 -1
  171. package/dist/startupPromptBuffer.js +4 -0
  172. package/dist/startupPromptBuffer.js.map +1 -1
  173. package/dist/state.d.ts +12 -0
  174. package/dist/state.d.ts.map +1 -1
  175. package/dist/state.js +18 -0
  176. package/dist/state.js.map +1 -1
  177. package/dist/types.d.ts +4 -0
  178. package/dist/types.d.ts.map +1 -1
  179. package/dist/utils/updateScreenPlan.d.ts +38 -0
  180. package/dist/utils/updateScreenPlan.d.ts.map +1 -0
  181. package/dist/utils/updateScreenPlan.js +143 -0
  182. package/dist/utils/updateScreenPlan.js.map +1 -0
  183. package/package.json +3 -1
@@ -0,0 +1,115 @@
1
+ import type { AutoUpdateMode } from './updateModes';
2
+ import type { GitCheckStatus, GitSkipReason } from './types';
3
+ /**
4
+ * The update decisions as pure functions of what the engine observed — no clock, no filesystem, no network.
5
+ * What to do (`install`, `notify`, …) is decided here; whether the bot is idle, how the install runs and what
6
+ * is said in General belong to the engine.
7
+ */
8
+ /** What `npm view charness@latest` said. */
9
+ export interface NpmLatest {
10
+ version: string;
11
+ /** The `engines.node` range of that version, `null` when it names none. */
12
+ engines: string | null;
13
+ isDeprecated: boolean;
14
+ }
15
+ export interface NpmPolicyInput {
16
+ runningVersion: string;
17
+ runningNode: string;
18
+ latest: NpmLatest;
19
+ /** When the bot first saw `latest.version` (ms); `undefined` = just now (the engine records it). */
20
+ firstSeenAt: number | undefined;
21
+ now: number;
22
+ mode: AutoUpdateMode;
23
+ /** Targets whose install failed: skipped unless the install was asked for. */
24
+ failedTargets: readonly string[];
25
+ /** False for an install that can only notify: every `install` becomes `notify`. */
26
+ canInstall: boolean;
27
+ /** «Update now»: no hold, a major goes, a failed target is retried. */
28
+ isUserRequested: boolean;
29
+ }
30
+ export type NpmPolicyDecision = {
31
+ action: 'none';
32
+ } | {
33
+ action: 'waitHold';
34
+ until: number;
35
+ } | {
36
+ action: 'install';
37
+ } | {
38
+ action: 'notify';
39
+ } | {
40
+ action: 'offerMajor';
41
+ } | {
42
+ action: 'needsNode';
43
+ required: string;
44
+ };
45
+ /**
46
+ * @description What to do about npm's `latest`: never a downgrade or a prerelease; a deprecated version is skipped
47
+ * (silently, even when it was deprecated during the hold); a version the running Node cannot run is not installed
48
+ * (`needsNode`); the hold counts from the first time it was seen and applies to the install, the notice, a major's
49
+ * offer and the "needs Node" notice alike; after it, `on` installs a patch / minor by itself, `notify` only says so, and a major is only offered.
50
+ */
51
+ export declare function decideNpmUpdate(input: NpmPolicyInput): NpmPolicyDecision;
52
+ /** What `scripts/self-update.sh --check` said. */
53
+ export interface GitCheck {
54
+ status: GitCheckStatus;
55
+ reason: GitSkipReason | null;
56
+ from: string;
57
+ to: string;
58
+ behind: number;
59
+ /** `MIGRATION_*.md` files the incoming range ADDS. */
60
+ migrationGuides: string[];
61
+ }
62
+ export interface GitPolicyInput {
63
+ check: GitCheck;
64
+ mode: AutoUpdateMode;
65
+ failedTargets: readonly string[];
66
+ canInstall: boolean;
67
+ isUserRequested: boolean;
68
+ }
69
+ export type GitPolicyDecision = {
70
+ action: 'none';
71
+ } | {
72
+ action: 'install';
73
+ } | {
74
+ action: 'notify';
75
+ } | {
76
+ action: 'offerBreaking';
77
+ migrationGuides: string[];
78
+ } | {
79
+ action: 'skipped';
80
+ reason: GitSkipReason | null;
81
+ };
82
+ /**
83
+ * @description What to do about a checkout that is behind its upstream: no hold, the whole tracked branch; a range that
84
+ * ADDS a `MIGRATION_*.md` is the checkout's "major" (offered, not merged by itself); a target commit whose install
85
+ * failed is not retried until upstream moves; a checkout the script leaves alone is `skipped` with its reason (shown on
86
+ * `/update` only).
87
+ */
88
+ export declare function decideGitUpdate(input: GitPolicyInput): GitPolicyDecision;
89
+ /** What decides whether the bot may be restarted right now. */
90
+ export interface IdleInput {
91
+ isAnyAgentWorking: boolean;
92
+ hasUnconsumedInput: boolean;
93
+ hasBufferedStartupPrompt: boolean;
94
+ isSignInRunning: boolean;
95
+ isWizardOpen: boolean;
96
+ /** Epoch ms of the last human message, `null` when none since the start. */
97
+ lastHumanMessageAt: number | null;
98
+ now: number;
99
+ quietMs: number;
100
+ /** «Update now» skips the quiet rule, never the work / sign-in rules. */
101
+ isUserRequested: boolean;
102
+ }
103
+ export type IdleVerdict = {
104
+ isIdle: true;
105
+ } | {
106
+ isIdle: false;
107
+ reason: 'working' | 'unconsumedInput' | 'startupBuffer' | 'signIn' | 'wizard' | 'recentMessage';
108
+ };
109
+ /**
110
+ * @description May the bot restart now? Only when no agent works, no input waits to be consumed, no sign-in or
111
+ * wizard is in progress, and no human wrote for the quiet period. A sleeping or idle-but-alive agent session is fine:
112
+ * it survives the restart. «Update now» still waits for work and sign-ins, not for the quiet period.
113
+ */
114
+ export declare function getIdleVerdict(input: IdleInput): IdleVerdict;
115
+ //# sourceMappingURL=updatePolicy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updatePolicy.d.ts","sourceRoot":"","sources":["../../src/selfUpdate/updatePolicy.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7D;;;;GAIG;AAEH,4CAA4C;AAC5C,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,SAAS,CAAC;IAClB,oGAAoG;IACpG,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,cAAc,CAAC;IACrB,8EAA8E;IAC9E,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,mFAAmF;IACnF,UAAU,EAAE,OAAO,CAAC;IACpB,uEAAuE;IACvE,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GACrB;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,GACpB;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,GACxB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,iBAAiB,CAqBxE;AAED,kDAAkD;AAClD,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,eAAe,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,QAAQ,CAAC;IAChB,IAAI,EAAE,cAAc,CAAC;IACrB,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,iBAAiB,GACzB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GACrB;IAAE,MAAM,EAAE,QAAQ,CAAA;CAAE,GACpB;IAAE,MAAM,EAAE,eAAe,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAA;CAAE,GACtD;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAA;CAAE,CAAC;AAExD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,iBAAiB,CASxE;AAED,+DAA+D;AAC/D,MAAM,WAAW,SAAS;IACxB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,wBAAwB,EAAE,OAAO,CAAC;IAClC,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;IACtB,4EAA4E;IAC5E,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,MAAM,WAAW,GAAG;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,iBAAiB,GAAG,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,eAAe,CAAA;CAAE,CAAC;AAEhK;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,WAAW,CAS5D"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decideNpmUpdate = decideNpmUpdate;
4
+ exports.decideGitUpdate = decideGitUpdate;
5
+ exports.getIdleVerdict = getIdleVerdict;
6
+ const constants_1 = require("./constants");
7
+ const semver_1 = require("./semver");
8
+ /**
9
+ * @description What to do about npm's `latest`: never a downgrade or a prerelease; a deprecated version is skipped
10
+ * (silently, even when it was deprecated during the hold); a version the running Node cannot run is not installed
11
+ * (`needsNode`); the hold counts from the first time it was seen and applies to the install, the notice, a major's
12
+ * offer and the "needs Node" notice alike; after it, `on` installs a patch / minor by itself, `notify` only says so, and a major is only offered.
13
+ */
14
+ function decideNpmUpdate(input) {
15
+ const running = (0, semver_1.parseSemVer)(input.runningVersion);
16
+ const latest = (0, semver_1.parseSemVer)(input.latest.version);
17
+ if (!running || !latest || (0, semver_1.checkIsPrerelease)(latest) || (0, semver_1.compareSemVer)(latest, running) <= 0)
18
+ return { action: 'none' };
19
+ if (input.latest.isDeprecated)
20
+ return { action: 'none' };
21
+ if (input.mode === 'off' && !input.isUserRequested)
22
+ return { action: 'none' };
23
+ if (!input.isUserRequested && input.failedTargets.includes(input.latest.version))
24
+ return { action: 'none' };
25
+ if (!input.isUserRequested) {
26
+ const until = (input.firstSeenAt ?? input.now) + constants_1.npmHoldMs;
27
+ if (input.now < until)
28
+ return { action: 'waitHold', until };
29
+ }
30
+ const node = (0, semver_1.parseSemVer)(input.runningNode);
31
+ if (input.latest.engines !== null && node && (0, semver_1.checkSatisfiesRange)(node, input.latest.engines) === false) {
32
+ return { action: 'needsNode', required: input.latest.engines };
33
+ }
34
+ if (input.isUserRequested)
35
+ return input.canInstall ? { action: 'install' } : { action: 'notify' };
36
+ if (latest.major > running.major)
37
+ return { action: 'offerMajor' };
38
+ return input.mode === 'on' && input.canInstall ? { action: 'install' } : { action: 'notify' };
39
+ }
40
+ /**
41
+ * @description What to do about a checkout that is behind its upstream: no hold, the whole tracked branch; a range that
42
+ * ADDS a `MIGRATION_*.md` is the checkout's "major" (offered, not merged by itself); a target commit whose install
43
+ * failed is not retried until upstream moves; a checkout the script leaves alone is `skipped` with its reason (shown on
44
+ * `/update` only).
45
+ */
46
+ function decideGitUpdate(input) {
47
+ const { check } = input;
48
+ if (check.status === 'skip')
49
+ return { action: 'skipped', reason: check.reason };
50
+ if (check.status === 'upToDate')
51
+ return { action: 'none' };
52
+ if (input.mode === 'off' && !input.isUserRequested)
53
+ return { action: 'none' };
54
+ if (!input.isUserRequested && input.failedTargets.includes(check.to))
55
+ return { action: 'none' };
56
+ if (input.isUserRequested)
57
+ return input.canInstall ? { action: 'install' } : { action: 'notify' };
58
+ if (check.migrationGuides.length > 0)
59
+ return { action: 'offerBreaking', migrationGuides: check.migrationGuides };
60
+ return input.mode === 'on' && input.canInstall ? { action: 'install' } : { action: 'notify' };
61
+ }
62
+ /**
63
+ * @description May the bot restart now? Only when no agent works, no input waits to be consumed, no sign-in or
64
+ * wizard is in progress, and no human wrote for the quiet period. A sleeping or idle-but-alive agent session is fine:
65
+ * it survives the restart. «Update now» still waits for work and sign-ins, not for the quiet period.
66
+ */
67
+ function getIdleVerdict(input) {
68
+ if (input.isAnyAgentWorking)
69
+ return { isIdle: false, reason: 'working' };
70
+ if (input.isSignInRunning)
71
+ return { isIdle: false, reason: 'signIn' };
72
+ if (input.hasUnconsumedInput)
73
+ return { isIdle: false, reason: 'unconsumedInput' };
74
+ if (input.hasBufferedStartupPrompt)
75
+ return { isIdle: false, reason: 'startupBuffer' };
76
+ if (input.isWizardOpen)
77
+ return { isIdle: false, reason: 'wizard' };
78
+ const isQuiet = input.lastHumanMessageAt === null || input.now - input.lastHumanMessageAt >= input.quietMs;
79
+ if (!isQuiet && !input.isUserRequested)
80
+ return { isIdle: false, reason: 'recentMessage' };
81
+ return { isIdle: true };
82
+ }
83
+ //# sourceMappingURL=updatePolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updatePolicy.js","sourceRoot":"","sources":["../../src/selfUpdate/updatePolicy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { type CommandRunner } from './commandRunner';
2
+ import { type InstallKindFs } from './installKind';
3
+ import type { UpdateEngineDeps } from './updateEngine';
4
+ export type UpdateRuntime = Pick<UpdateEngineDeps, 'running' | 'runningNode' | 'installKind' | 'isHotMode' | 'npm' | 'git' | 'hostLock' | 'readInstalledVersion' | 'readInstalledChangelog' | 'countCommits' | 'runSelfCheck' | 'reexecTarget' | 'marker' | 'supervisor'>;
5
+ export interface UpdateRuntimeOptions {
6
+ dataDir: string;
7
+ /** The folder of the running install (holds `package.json` and `dist/`), symlinks resolved. */
8
+ packageRoot: string;
9
+ execPath: string;
10
+ platform: NodeJS.Platform;
11
+ nodeVersion: string;
12
+ argv: readonly string[];
13
+ isHotMode: boolean;
14
+ runCommand?: CommandRunner;
15
+ filesystem?: InstallKindFs;
16
+ }
17
+ /**
18
+ * @description Build the runtime of this process. The running version is read from `package.json` ONCE, here: an in-place
19
+ * install overwrites that file under a running process, and "what am I running" must not change with it.
20
+ */
21
+ export declare function createUpdateRuntime(options: UpdateRuntimeOptions): Promise<UpdateRuntime>;
22
+ //# sourceMappingURL=updateRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateRuntime.d.ts","sourceRoot":"","sources":["../../src/selfUpdate/updateRuntime.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkD,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrG,OAAO,EAAqB,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AAQtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAWvD,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,gBAAgB,EACd,SAAS,GACT,aAAa,GACb,aAAa,GACb,WAAW,GACX,KAAK,GACL,KAAK,GACL,UAAU,GACV,sBAAsB,GACtB,wBAAwB,GACxB,cAAc,GACd,cAAc,GACd,cAAc,GACd,QAAQ,GACR,YAAY,CACf,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,+FAA+F;IAC/F,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B;AAmCD;;;GAGG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CAyD/F"}
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.createUpdateRuntime = createUpdateRuntime;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ const installManager_1 = require("../installManager");
40
+ const commandRunner_1 = require("./commandRunner");
41
+ const constants_1 = require("./constants");
42
+ const gitSource_1 = require("./gitSource");
43
+ const hostLock_1 = require("./hostLock");
44
+ const hotSupervisor_1 = require("./hotSupervisor");
45
+ const installKind_1 = require("./installKind");
46
+ const npmSource_1 = require("./npmSource");
47
+ const restart_1 = require("./restart");
48
+ const updatePending_1 = require("./updatePending");
49
+ /**
50
+ * The real, process-bound half of the update engine's dependencies: what THIS install is, where it lives, how to ask the
51
+ * registry / the checkout, how to probe a new install. Everything that belongs to the bot itself — the settings, the state
52
+ * store, the idle verdict, Telegram, the shutdown sequence — is passed in beside it by `bot.ts`.
53
+ */
54
+ const changelogFileName = 'CHANGELOG.md';
55
+ const shortShaLength = 7;
56
+ function createDefaultFilesystem() {
57
+ return {
58
+ checkExists: (target) => fs.existsSync(target),
59
+ checkIsWritable: (directory) => {
60
+ try {
61
+ fs.accessSync(directory, fs.constants.W_OK);
62
+ return true;
63
+ }
64
+ catch {
65
+ return false;
66
+ }
67
+ },
68
+ };
69
+ }
70
+ function readTextOrNull(filePath) {
71
+ try {
72
+ return fs.readFileSync(filePath, 'utf8');
73
+ }
74
+ catch {
75
+ return null;
76
+ }
77
+ }
78
+ function readVersionOrNull(packageRoot) {
79
+ const text = readTextOrNull(path.join(packageRoot, 'package.json'));
80
+ if (text === null)
81
+ return null;
82
+ try {
83
+ const manifest = JSON.parse(text);
84
+ return typeof manifest.version === 'string' ? manifest.version : null;
85
+ }
86
+ catch {
87
+ return null;
88
+ }
89
+ }
90
+ /**
91
+ * @description Build the runtime of this process. The running version is read from `package.json` ONCE, here: an in-place
92
+ * install overwrites that file under a running process, and "what am I running" must not change with it.
93
+ */
94
+ async function createUpdateRuntime(options) {
95
+ const runCommand = options.runCommand ?? commandRunner_1.runCommand;
96
+ const installKind = (0, installKind_1.detectInstallKind)({
97
+ packageRoot: options.packageRoot,
98
+ fs: options.filesystem ?? createDefaultFilesystem(),
99
+ platform: options.platform,
100
+ hasExecve: typeof process.execve === 'function',
101
+ });
102
+ const isCheckoutLike = installKind.kind === 'checkout' || (installKind.kind === 'notifyOnly' && installKind.isCheckout);
103
+ let commit = null;
104
+ if (isCheckoutLike) {
105
+ const head = await runCommand('git', ['rev-parse', `--short=${shortShaLength}`, 'HEAD'], { cwd: options.packageRoot, timeoutMs: constants_1.queryTimeoutMs });
106
+ commit = head.ok ? head.stdout.trim() : null;
107
+ }
108
+ const packageRoot = options.packageRoot;
109
+ const distDirectory = path.join(packageRoot, 'dist');
110
+ const cliPath = path.join(distDirectory, 'cli.js');
111
+ const npmPrefix = installKind.kind === 'npmGlobal' ? installKind.prefix : '';
112
+ return {
113
+ running: { version: readVersionOrNull(packageRoot) ?? 'unknown', commit },
114
+ runningNode: options.nodeVersion,
115
+ installKind,
116
+ isHotMode: options.isHotMode,
117
+ npm: isCheckoutLike || installKind.kind === 'ephemeral' ? null : (0, npmSource_1.createNpmSource)({ runCommand, execPath: options.execPath, prefix: npmPrefix }),
118
+ git: installKind.kind === 'checkout' ? (0, gitSource_1.createGitSource)({ runCommand, root: installKind.root }) : null,
119
+ hostLock: installKind.kind === 'npmGlobal' ? { acquire: () => (0, hostLock_1.acquireHostLock)((0, npmSource_1.getHostLockPath)(installKind.prefix)) } : null,
120
+ readInstalledVersion: () => readVersionOrNull(packageRoot),
121
+ readInstalledChangelog: () => readTextOrNull(path.join(packageRoot, changelogFileName)),
122
+ async countCommits(from, to) {
123
+ const result = await runCommand('git', ['rev-list', '--count', `${from}..${to}`], { cwd: packageRoot, timeoutMs: constants_1.queryTimeoutMs });
124
+ const count = Number(result.stdout.trim());
125
+ return result.ok && Number.isInteger(count) ? count : null;
126
+ },
127
+ async runSelfCheck(expectVersion) {
128
+ const args = [cliPath, 'self-check', ...(expectVersion === null ? [] : ['--expect', expectVersion])];
129
+ const result = await runCommand(options.execPath, args, { cwd: packageRoot, timeoutMs: constants_1.selfCheckTimeoutMs });
130
+ return { ok: result.ok, detail: result.ok ? '' : result.isTimedOut ? 'the self-check did not finish in time' : (0, commandRunner_1.getOutputTail)(result, 3) };
131
+ },
132
+ reexecTarget: (0, restart_1.getReexecTarget)({ execPath: options.execPath, packageRoot, argv: options.argv }),
133
+ marker: {
134
+ read: () => (0, updatePending_1.readUpdatePending)(options.dataDir),
135
+ write: (marker) => (0, updatePending_1.writeUpdatePending)(options.dataDir, marker),
136
+ clear: () => (0, updatePending_1.clearUpdatePending)(options.dataDir),
137
+ },
138
+ supervisor: {
139
+ readRecord: () => (0, hotSupervisor_1.readHotSupervisorRecord)(options.dataDir),
140
+ getStaleModules: (record) => (0, hotSupervisor_1.getStaleSupervisorModules)(record, distDirectory),
141
+ requestReexec: (record) => (0, hotSupervisor_1.requestSupervisorReexec)(record, {
142
+ getStartToken: (pid) => (0, installManager_1.getProcessIdentity)(pid)?.startToken ?? null,
143
+ kill: (pid, signal) => process.kill(pid, signal),
144
+ }),
145
+ },
146
+ };
147
+ }
148
+ //# sourceMappingURL=updateRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateRuntime.js","sourceRoot":"","sources":["../../src/selfUpdate/updateRuntime.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,8 @@ export declare class StartupPromptBuffer {
47
47
  markStarting(threadId: string): void;
48
48
  /** Whether a thread's session is currently starting. */
49
49
  checkIsStarting(threadId: string): boolean;
50
+ /** Whether any thread is mid-startup or holds prompts that wait for a session: they live in memory, a restart would lose them. */
51
+ checkIsAnyPending(): boolean;
50
52
  /** Whether the thread holds prompts that wait for a session. */
51
53
  checkHasPrompts(threadId: string): boolean;
52
54
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"startupPromptBuffer.d.ts","sourceRoot":"","sources":["../src/startupPromptBuffer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,SAAS,CAAC;AAE3D,uDAAuD;AACvD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAO7E,sEAAsE;AACtE,MAAM,WAAW,oBAAoB;IACnC,0EAA0E;IAC1E,eAAe,EAAE,OAAO,CAAC;IACzB,2CAA2C;IAC3C,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAWD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,eAAe,CAAuC;IAC9D;4EACwE;IACxE,OAAO,CAAC,YAAY,CAAqB;IAEzC,yEAAyE;IACzE,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpC,wDAAwD;IACxD,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI1C,gEAAgE;IAChE,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI1C;;;;OAIG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKnC;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,qBAAqB,GAAG,OAAO;IAUrF;;;;;;;;;OASG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBnF;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAItC,6EAA6E;IAC7E,OAAO,CAAC,WAAW;CAOpB"}
1
+ {"version":3,"file":"startupPromptBuffer.d.ts","sourceRoot":"","sources":["../src/startupPromptBuffer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,UAAU,GAAG,SAAS,CAAC;AAE3D,uDAAuD;AACvD,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,EAAE,qBAAqB,KAAK,IAAI,CAAC;AAO7E,sEAAsE;AACtE,MAAM,WAAW,oBAAoB;IACnC,0EAA0E;IAC1E,eAAe,EAAE,OAAO,CAAC;IACzB,2CAA2C;IAC3C,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1C;AAWD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,eAAe,CAAuC;IAC9D;4EACwE;IACxE,OAAO,CAAC,YAAY,CAAqB;IAEzC,yEAAyE;IACzE,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpC,wDAAwD;IACxD,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI1C,kIAAkI;IAClI,iBAAiB,IAAI,OAAO;IAI5B,gEAAgE;IAChE,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI1C;;;;OAIG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKnC;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,qBAAqB,GAAG,OAAO;IAUrF;;;;;;;;;OASG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBnF;;;;OAIG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAItC,6EAA6E;IAC7E,OAAO,CAAC,WAAW;CAOpB"}
@@ -46,6 +46,10 @@ class StartupPromptBuffer {
46
46
  checkIsStarting(threadId) {
47
47
  return this.startingThreads.has(threadId);
48
48
  }
49
+ /** Whether any thread is mid-startup or holds prompts that wait for a session: they live in memory, a restart would lose them. */
50
+ checkIsAnyPending() {
51
+ return this.startingThreads.size > 0 || [...this.bufferedPrompts.values()].some((prompts) => prompts.length > 0);
52
+ }
49
53
  /** Whether the thread holds prompts that wait for a session. */
50
54
  checkHasPrompts(threadId) {
51
55
  return (this.bufferedPrompts.get(threadId)?.length ?? 0) > 0;
@@ -1 +1 @@
1
- {"version":3,"file":"startupPromptBuffer.js","sourceRoot":"","sources":["../src/startupPromptBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"startupPromptBuffer.js","sourceRoot":"","sources":["../src/startupPromptBuffer.ts"],"names":[],"mappings":"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"}
package/dist/state.d.ts CHANGED
@@ -9,6 +9,7 @@ import type { OpenRequestState, UnreleasedRequestAlert } from './requests/types'
9
9
  import { type RequestGroupKey } from './requests/requestGroup';
10
10
  import type { Locale } from './i18n';
11
11
  import type { LimitHeldPrompt } from './utils/limitHeldPrompts';
12
+ import type { LastRunVersion, SelfUpdateRecord } from './selfUpdate/types';
12
13
  /**
13
14
  * @description On-disk state for the multi-thread telegram bot.
14
15
  *
@@ -435,6 +436,10 @@ export interface StateV1 {
435
436
  */
436
437
  openCodeProviderUsage?: Record<string, OpenCodeProviderUsageRecord>;
437
438
  parkedSessions?: Record<string, ParkedSession>;
439
+ /** The update engine's bookkeeping (`selfUpdate/updateEngine.ts`): check times, first-seen times, failed and announced targets. */
440
+ selfUpdate?: SelfUpdateRecord;
441
+ /** The version (commit) of the previous boot; a difference at boot is a version change to announce. */
442
+ lastRunVersion?: LastRunVersion;
438
443
  /**
439
444
  * Persisted scheduled jobs, keyed by {@link ScheduleRecord.id}. Optional so
440
445
  * older state files (created before the scheduler feature) stay valid —
@@ -1125,6 +1130,13 @@ export declare class StateStore {
1125
1130
  getSttInstallProgressMessage(): SttInstallProgressMessage | null;
1126
1131
  /** Remember (or, with `null`, forget) the message an install job edits. */
1127
1132
  setSttInstallProgressMessage(message: SttInstallProgressMessage | null): Promise<void>;
1133
+ /** The engine's record; an empty one when nothing was recorded yet. */
1134
+ getSelfUpdateRecord(): SelfUpdateRecord;
1135
+ /** Replace the engine's record. Debounced; the engine flushes where a restart right after must not lose it. */
1136
+ setSelfUpdateRecord(record: SelfUpdateRecord): void;
1137
+ getLastRunVersion(): LastRunVersion | undefined;
1138
+ /** Record the version this boot runs. Flushed at once: the next boot compares against it. */
1139
+ setLastRunVersion(lastRun: LastRunVersion): Promise<void>;
1128
1140
  /** The chain as persisted, validated entry by entry; `[]` when none was set. */
1129
1141
  getFallbackChain(): FallbackChainEntry[];
1130
1142
  /** Replace the chain (an empty one is removed from the file). Flushed at once: the picker re-reads it right after. */
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
package/dist/state.js CHANGED
@@ -1379,6 +1379,24 @@ class StateStore {
1379
1379
  this.state.sttInstallProgress = message;
1380
1380
  await this.flush();
1381
1381
  }
1382
+ // ── automatic updates (`selfUpdate/`) ──
1383
+ /** The engine's record; an empty one when nothing was recorded yet. */
1384
+ getSelfUpdateRecord() {
1385
+ return this.state.selfUpdate ?? {};
1386
+ }
1387
+ /** Replace the engine's record. Debounced; the engine flushes where a restart right after must not lose it. */
1388
+ setSelfUpdateRecord(record) {
1389
+ this.state.selfUpdate = record;
1390
+ this.scheduleSave();
1391
+ }
1392
+ getLastRunVersion() {
1393
+ return this.state.lastRunVersion;
1394
+ }
1395
+ /** Record the version this boot runs. Flushed at once: the next boot compares against it. */
1396
+ async setLastRunVersion(lastRun) {
1397
+ this.state.lastRunVersion = lastRun;
1398
+ await this.flush();
1399
+ }
1382
1400
  // ── the fallback chain (`/fallback`) ──
1383
1401
  /** The chain as persisted, validated entry by entry; `[]` when none was set. */
1384
1402
  getFallbackChain() {