instar 1.3.1613 → 1.3.1614
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.
- package/dashboard/console/machines-model.js +48 -0
- package/dashboard/console/machines.js +6 -3
- package/dashboard/console/plans-model.js +8 -6
- package/dist/core/AppConversationService.d.ts.map +1 -1
- package/dist/core/AppConversationService.js +3 -4
- package/dist/core/AppConversationService.js.map +1 -1
- package/dist/core/AppConversationStore.d.ts +26 -2
- package/dist/core/AppConversationStore.d.ts.map +1 -1
- package/dist/core/AppConversationStore.js +39 -1
- package/dist/core/AppConversationStore.js.map +1 -1
- package/dist/core/AppConversationsReplicatedStore.js +1 -1
- package/dist/core/AppConversationsReplicatedStore.js.map +1 -1
- package/dist/core/MobilePush.d.ts +3 -0
- package/dist/core/MobilePush.d.ts.map +1 -1
- package/dist/core/MobilePush.js +9 -3
- package/dist/core/MobilePush.js.map +1 -1
- package/dist/core/PostUpdateMigrator.d.ts +6 -0
- package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
- package/dist/core/PostUpdateMigrator.js +24 -0
- package/dist/core/PostUpdateMigrator.js.map +1 -1
- package/dist/core/appMediaReplyFiles.d.ts +10 -0
- package/dist/core/appMediaReplyFiles.d.ts.map +1 -1
- package/dist/core/appMediaReplyFiles.js +37 -19
- package/dist/core/appMediaReplyFiles.js.map +1 -1
- package/dist/core/appMediaTypes.d.ts +7 -0
- package/dist/core/appMediaTypes.d.ts.map +1 -1
- package/dist/core/appMediaTypes.js +17 -0
- package/dist/core/appMediaTypes.js.map +1 -1
- package/dist/core/appPlatformMedia.d.ts +44 -0
- package/dist/core/appPlatformMedia.d.ts.map +1 -0
- package/dist/core/appPlatformMedia.js +121 -0
- package/dist/core/appPlatformMedia.js.map +1 -0
- package/dist/data/standards-guard-index.json +1 -1
- package/dist/data/standards-guard-index.meta.json +2 -2
- package/dist/data/standards-registry.meta.json +1 -1
- package/dist/messaging/TelegramAdapter.d.ts +21 -0
- package/dist/messaging/TelegramAdapter.d.ts.map +1 -1
- package/dist/messaging/TelegramAdapter.js +48 -0
- package/dist/messaging/TelegramAdapter.js.map +1 -1
- package/dist/monitoring/GreenPrAutoMerger.d.ts.map +1 -1
- package/dist/monitoring/GreenPrAutoMerger.js +5 -2
- package/dist/monitoring/GreenPrAutoMerger.js.map +1 -1
- package/dist/monitoring/greenPrLogic.d.ts +7 -1
- package/dist/monitoring/greenPrLogic.d.ts.map +1 -1
- package/dist/monitoring/greenPrLogic.js +13 -0
- package/dist/monitoring/greenPrLogic.js.map +1 -1
- package/dist/native/instar-desktop-host +0 -0
- package/dist/scaffold/templates.d.ts.map +1 -1
- package/dist/scaffold/templates.js +2 -1
- package/dist/scaffold/templates.js.map +1 -1
- package/dist/server/AgentServer.d.ts.map +1 -1
- package/dist/server/AgentServer.js +17 -1
- package/dist/server/AgentServer.js.map +1 -1
- package/dist/server/CapabilityIndex.js +3 -3
- package/dist/server/CapabilityIndex.js.map +1 -1
- package/dist/server/machineMaintenancePool.d.ts +84 -0
- package/dist/server/machineMaintenancePool.d.ts.map +1 -0
- package/dist/server/machineMaintenancePool.js +165 -0
- package/dist/server/machineMaintenancePool.js.map +1 -0
- package/dist/server/mobileConversationRoutes.d.ts +7 -0
- package/dist/server/mobileConversationRoutes.d.ts.map +1 -1
- package/dist/server/mobileConversationRoutes.js +55 -1
- package/dist/server/mobileConversationRoutes.js.map +1 -1
- package/dist/server/mobileMediaRoutes.d.ts.map +1 -1
- package/dist/server/mobileMediaRoutes.js +9 -5
- package/dist/server/mobileMediaRoutes.js.map +1 -1
- package/dist/server/mobilePairingRoutes.d.ts +0 -5
- package/dist/server/mobilePairingRoutes.d.ts.map +1 -1
- package/dist/server/mobilePairingRoutes.js +11 -2
- package/dist/server/mobilePairingRoutes.js.map +1 -1
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/routes.js +59 -4
- package/dist/server/routes.js.map +1 -1
- package/package.json +1 -1
- package/scripts/lib/release-local-steps.mjs +11 -2
- package/scripts/safe-merge.mjs +35 -0
- package/scripts/standards-coverage.mjs +6 -1
- package/src/data/builtin-manifest.json +64 -64
- package/src/data/standards-guard-index.json +1 -1
- package/src/data/standards-guard-index.meta.json +2 -2
- package/src/data/standards-registry.meta.json +1 -1
- package/src/scaffold/templates.ts +2 -1
- package/upgrades/1.3.1614.md +73 -0
- package/upgrades/side-effects/app-reply-push-preview.eli16.md +11 -0
- package/upgrades/side-effects/app-reply-push-preview.md +57 -0
- package/upgrades/side-effects/chat-media-telegram-inbound.eli16.md +11 -0
- package/upgrades/side-effects/chat-media-telegram-inbound.md +75 -0
- package/upgrades/side-effects/console-blocker-topic-names.eli16.md +5 -0
- package/upgrades/side-effects/console-blocker-topic-names.md +34 -0
- package/upgrades/side-effects/machine-maintenance-pool-view.md +107 -0
- package/upgrades/side-effects/release-local-pending-runs.md +60 -0
- package/upgrades/side-effects/stacked-pr-and-ci-timeouts.md +120 -0
|
@@ -252,10 +252,10 @@ export const CAPABILITY_INDEX = [
|
|
|
252
252
|
{
|
|
253
253
|
key: 'appConversations',
|
|
254
254
|
prefixes: ['/app'],
|
|
255
|
-
description: 'Native app conversations (docs/specs/mobile-native-conversations.md) — the Instar iPhone app starts, lists, reads and writes conversations stored by Instar itself, with no messaging service configured. Device-signed: POST/GET /mobile/conversations, PATCH/DELETE /mobile/conversations/:key, POST /mobile/chat/app/:key (idempotent by requestId; persisted with its device-signature fields before dispatch), GET /mobile/chat/app/:key/messages (browse backwards) and /events (sync). A session spawned for an app conversation sees messages tagged [app:<id> "<title>" from <owner>] and answers with app-reply.sh, which posts to POST /app/session-reply (bind-token scoped; 409 not-owner unless this machine owns the conversation). Each app message is stored with the phone\'s signature and this machine\'s signed receipt; history rows (and a device\'s read of GET /telegram/topics/:topicId/messages, joined by eventId) carry originVerified: verified / redacted / failed / unknown / none, checked against the device-key ledger (machine-signed, append-only, never pruned) and the machine signing-key history. The conversation store and the ledger replicate to every machine. Dev-gated (mobilePairing.native.enabled); 503 when dark. Media (docs/specs/mobile-native-chat-media.md, mobilePairing.native.media.enabled): POST /mobile/media/uploads, PUT .../chunks/:index, GET /mobile/media/uploads/:id, GET /mobile/media/:sha256?ref=, POST /mobile/media/purge; sessions see [image:…], [document:…], [video:…], [voice:…] paths, open earlier files with GET /app/media-path/:attachmentId (app-media-path), and reply with files through app-reply.sh --file. Every machine copies every file an event it holds references, over the signed app-media-pull mesh verb, keeping a copy only when its SHA-256 matches; a download of a file still copying answers 202 fetching, a dispatch waits up to 60 s and otherwise says [file still copying: …] then [file now available: …], and /health?scope=pool → appMediaPool shows every machine (singleCopyBlobs, unrecoverableBlobs). Slack from the app (§4.9): where Slack is configured and mobilePairing.slackOwnerUserId is set, GET /mobile/conversations also lists Slack channels and threads (platform slack, id = the negative durable conversation id); GET /mobile/chat/slack/:conversationId/messages reads their history (slack-messages.jsonl, the in-memory ring and app-sent messages from the store, with originVerified) and POST /mobile/chat/slack/:conversationId sends as the operator through the Slack inbound dispatch, stored first with a v2 machine receipt that signs the canonical Slack key, then mirrored into the channel as "📱 <owner> (from the app): …". Owner id unset ⇒ 503 slack-owner-unset; no Slack ⇒ 503 slack-not-configured.',
|
|
255
|
+
description: 'Native app conversations (docs/specs/mobile-native-conversations.md) — the Instar iPhone app starts, lists, reads and writes conversations stored by Instar itself, with no messaging service configured. Device-signed: POST/GET /mobile/conversations, PATCH/DELETE /mobile/conversations/:key, POST /mobile/chat/app/:key (idempotent by requestId; persisted with its device-signature fields before dispatch), GET /mobile/chat/app/:key/messages (browse backwards) and /events (sync). A session spawned for an app conversation sees messages tagged [app:<id> "<title>" from <owner>] and answers with app-reply.sh, which posts to POST /app/session-reply (bind-token scoped; 409 not-owner unless this machine owns the conversation). Each app message is stored with the phone\'s signature and this machine\'s signed receipt; history rows (and a device\'s read of GET /telegram/topics/:topicId/messages, joined by eventId) carry originVerified: verified / redacted / failed / unknown / none, checked against the device-key ledger (machine-signed, append-only, never pruned) and the machine signing-key history. The conversation store and the ledger replicate to every machine. Dev-gated (mobilePairing.native.enabled); 503 when dark. Media (docs/specs/mobile-native-chat-media.md, mobilePairing.native.media.enabled): POST /mobile/media/uploads, PUT .../chunks/:index, GET /mobile/media/uploads/:id, GET /mobile/media/:sha256?ref=, POST /mobile/media/purge; sessions see [image:…], [document:…], [video:…], [voice:…] paths, open earlier files with GET /app/media-path/:attachmentId (app-media-path), and reply with files through app-reply.sh --file. Every machine copies every file an event it holds references, over the signed app-media-pull mesh verb, keeping a copy only when its SHA-256 matches; a download of a file still copying answers 202 fetching, a dispatch waits up to 60 s and otherwise says [file still copying: …] then [file now available: …], and /health?scope=pool → appMediaPool shows every machine (singleCopyBlobs, unrecoverableBlobs). A reply notification carries only the message id; the phone fetches GET /mobile/chat/app/:key/preview/:messageId (device, its notification read token, or the agent token) for the first 100 characters or a "sent a photo" phrase. Slack from the app (§4.9): where Slack is configured and mobilePairing.slackOwnerUserId is set, GET /mobile/conversations also lists Slack channels and threads (platform slack, id = the negative durable conversation id); GET /mobile/chat/slack/:conversationId/messages reads their history (slack-messages.jsonl, the in-memory ring and app-sent messages from the store, with originVerified) and POST /mobile/chat/slack/:conversationId sends as the operator through the Slack inbound dispatch, stored first with a v2 machine receipt that signs the canonical Slack key, then mirrored into the channel as "📱 <owner> (from the app): …". Owner id unset ⇒ 503 slack-owner-unset; no Slack ⇒ 503 slack-not-configured.',
|
|
256
256
|
build: () => ({
|
|
257
257
|
configured: true,
|
|
258
|
-
endpoints: ['POST /mobile/conversations', 'GET /mobile/conversations', 'PATCH /mobile/conversations/:key', 'DELETE /mobile/conversations/:key', 'POST /mobile/chat/app/:key', 'GET /mobile/chat/app/:key/messages', 'GET /mobile/chat/app/:key/events', 'GET /mobile/chat/slack/:conversationId/messages', 'POST /mobile/chat/slack/:conversationId', 'POST /app/session-reply', 'POST /mobile/media/uploads', 'PUT /mobile/media/uploads/:uploadId/chunks/:index', 'GET /mobile/media/uploads/:uploadId', 'GET /mobile/media/:sha256', 'POST /mobile/media/purge', 'GET /app/media-path/:attachmentId'],
|
|
258
|
+
endpoints: ['POST /mobile/conversations', 'GET /mobile/conversations', 'PATCH /mobile/conversations/:key', 'DELETE /mobile/conversations/:key', 'POST /mobile/chat/app/:key', 'GET /mobile/chat/app/:key/messages', 'GET /mobile/chat/app/:key/events', 'GET /mobile/chat/app/:key/preview/:messageId', 'GET /mobile/chat/slack/:conversationId/messages', 'POST /mobile/chat/slack/:conversationId', 'POST /app/session-reply', 'POST /mobile/media/uploads', 'PUT /mobile/media/uploads/:uploadId/chunks/:index', 'GET /mobile/media/uploads/:uploadId', 'GET /mobile/media/:sha256', 'POST /mobile/media/purge', 'GET /app/media-path/:attachmentId'],
|
|
259
259
|
}),
|
|
260
260
|
},
|
|
261
261
|
{
|
|
@@ -270,7 +270,7 @@ export const CAPABILITY_INDEX = [
|
|
|
270
270
|
{
|
|
271
271
|
key: 'machineMaintenance',
|
|
272
272
|
prefixes: ['/machine-maintenance'],
|
|
273
|
-
description: 'Machine self-maintenance (docs/specs/machine-self-maintenance.md), WATCH-ONLY: every night a paper drain records what a scheduled restart would have done on this machine, which of the closed delays and safety holds read true, and how long each kind of work took to reach its own yield point. It cannot restart anything or stop any work (canRestart:false, canStopWork:false). GET /machine-maintenance reports uptime, due, the next window, the host drain record, delays, safety holds, declared work kinds, lastRehearsal and the evidence gate, plus browserCare: the normal-Chrome browsers this agent opened (ledger) and which of them the 15-minute sweep WOULD close and why it kept the rest (dry-run, canClose:false; macOS only, null elsewhere). GET /machine-maintenance/lock-state is the honest lock reading: lockState unlocked/locked/screensaver-or-display-sleep/unknown/not-applicable with every input (session flag, password policy, lock shield, screensaver, display sleep) beside it; unknown means unknown, never locked. 503 when dark (machineMaintenance, dev-agent gated). When asked "what would a nightly restart do here?", "is this machine due?", "is that Mac really locked?" or "which browsers did you leave open?" read this, never guess.',
|
|
273
|
+
description: 'Machine self-maintenance (docs/specs/machine-self-maintenance.md), WATCH-ONLY: every night a paper drain records what a scheduled restart would have done on this machine, which of the closed delays and safety holds read true, and how long each kind of work took to reach its own yield point. It cannot restart anything or stop any work (canRestart:false, canStopWork:false). GET /machine-maintenance reports uptime, due, the next window, the host drain record, delays, safety holds, declared work kinds, lastRehearsal and the evidence gate, plus browserCare: the normal-Chrome browsers this agent opened (ledger) and which of them the 15-minute sweep WOULD close and why it kept the rest (dry-run, canClose:false; macOS only, null elsewhere). GET /machine-maintenance/lock-state is the honest lock reading: lockState unlocked/locked/screensaver-or-display-sleep/unknown/not-applicable with every input (session flag, password policy, lock shield, screensaver, display sleep) beside it; unknown means unknown, never locked. Both take ?scope=pool: every online machine\'s state tagged with machineId/machineNickname, unreadable machines in pool.failed with a reason (offline, not-enabled, route-missing, peer-unreachable, ...), read-only (authority none). 503 when dark (machineMaintenance, dev-agent gated). When asked "what would a nightly restart do here?", "is this machine due?", "is that Mac really locked?" or "which browsers did you leave open?" read this, never guess.',
|
|
274
274
|
build: () => ({
|
|
275
275
|
configured: true,
|
|
276
276
|
endpoints: ['GET /machine-maintenance', 'GET /machine-maintenance/lock-state'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CapabilityIndex.js","sourceRoot":"","sources":["../../src/server/CapabilityIndex.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CapabilityIndex.js","sourceRoot":"","sources":["../../src/server/CapabilityIndex.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { type PoolPeerTarget, type RopeResultRecorder } from './poolPeerFetch.js';
|
|
2
|
+
import type { PoolPollCache } from './PoolPollCache.js';
|
|
3
|
+
export type MaintenancePoolPart = 'status' | 'lock-state';
|
|
4
|
+
/** Closed set of reasons a machine's state is missing from the pool view. */
|
|
5
|
+
export type MaintenancePoolFailureReason = 'offline' | 'url-rejected' | 'not-enabled' | 'route-missing' | 'unauthorized' | 'http-error' | 'too-large' | 'invalid-body' | 'read-failed' | 'peer-unreachable';
|
|
6
|
+
export interface MaintenancePoolFailure {
|
|
7
|
+
machineId: string;
|
|
8
|
+
machineNickname?: string;
|
|
9
|
+
reason: MaintenancePoolFailureReason;
|
|
10
|
+
}
|
|
11
|
+
export interface MaintenancePoolMachine {
|
|
12
|
+
machineId: string;
|
|
13
|
+
machineNickname?: string;
|
|
14
|
+
self: boolean;
|
|
15
|
+
/** That machine's own plain-route answer, as data. */
|
|
16
|
+
state: Record<string, unknown>;
|
|
17
|
+
}
|
|
18
|
+
export interface MaintenancePoolView {
|
|
19
|
+
scope: 'pool';
|
|
20
|
+
part: MaintenancePoolPart;
|
|
21
|
+
/** Fixed: this view grants nothing and can trigger nothing. */
|
|
22
|
+
authority: 'none';
|
|
23
|
+
readOnly: true;
|
|
24
|
+
canRestart: false;
|
|
25
|
+
canStopWork: false;
|
|
26
|
+
machines: MaintenancePoolMachine[];
|
|
27
|
+
pool: {
|
|
28
|
+
selfMachineId: string | null;
|
|
29
|
+
peersQueried: number;
|
|
30
|
+
peersOk: number;
|
|
31
|
+
failed: MaintenancePoolFailure[];
|
|
32
|
+
/** True when any peer body was a last-cached copy served under CPU load-shed. */
|
|
33
|
+
stale: boolean;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export declare const MAINTENANCE_PEER_MAX_BYTES: number;
|
|
37
|
+
export declare const MAINTENANCE_PEER_TIMEOUT_MS = 2500;
|
|
38
|
+
export declare const MAINTENANCE_POOL_MAX_PEERS = 16;
|
|
39
|
+
export declare function routeForPart(part: MaintenancePoolPart): string;
|
|
40
|
+
/** Map a peer's HTTP status to a normalized failure reason (2xx ⇒ null). */
|
|
41
|
+
export declare function classifyPeerStatus(status: number): MaintenancePoolFailureReason | null;
|
|
42
|
+
export interface MaintenancePeerResult {
|
|
43
|
+
machineId: string;
|
|
44
|
+
body: Record<string, unknown>;
|
|
45
|
+
}
|
|
46
|
+
export interface MaintenanceFanOutDeps {
|
|
47
|
+
peers: PoolPeerTarget[];
|
|
48
|
+
authToken: string;
|
|
49
|
+
/** Registry view: `online === false` skips the dial. */
|
|
50
|
+
getCapacity?: (machineId: string) => {
|
|
51
|
+
online?: boolean;
|
|
52
|
+
nickname?: string | null;
|
|
53
|
+
} | null | undefined;
|
|
54
|
+
recordRopeResult?: RopeResultRecorder;
|
|
55
|
+
poolPollCache?: PoolPollCache | null;
|
|
56
|
+
/** Test seam; production dials through poolPeerFetch. */
|
|
57
|
+
fetchPeer?: (peer: PoolPeerTarget, path: string, init: Parameters<typeof fetch>[1]) => Promise<globalThis.Response>;
|
|
58
|
+
timeoutMs?: number;
|
|
59
|
+
}
|
|
60
|
+
/** Ask every peer for its plain maintenance route. Never throws. */
|
|
61
|
+
export declare function fetchMaintenancePool(deps: MaintenanceFanOutDeps, part: MaintenancePoolPart): Promise<{
|
|
62
|
+
results: MaintenancePeerResult[];
|
|
63
|
+
failed: MaintenancePoolFailure[];
|
|
64
|
+
stale: boolean;
|
|
65
|
+
queried: number;
|
|
66
|
+
}>;
|
|
67
|
+
/** Pure merge: self first, then peers by name; every machine tagged; read-only flags fixed. */
|
|
68
|
+
export declare function mergeMaintenancePool(input: {
|
|
69
|
+
part: MaintenancePoolPart;
|
|
70
|
+
selfMachineId: string | null;
|
|
71
|
+
selfNickname?: string | null;
|
|
72
|
+
/** This machine's own answer, or the reason it has none. */
|
|
73
|
+
self: {
|
|
74
|
+
body: Record<string, unknown>;
|
|
75
|
+
} | {
|
|
76
|
+
reason: MaintenancePoolFailureReason;
|
|
77
|
+
};
|
|
78
|
+
results: MaintenancePeerResult[];
|
|
79
|
+
failed: MaintenancePoolFailure[];
|
|
80
|
+
queried: number;
|
|
81
|
+
stale: boolean;
|
|
82
|
+
nicknameOf?: (machineId: string) => string | null | undefined;
|
|
83
|
+
}): MaintenancePoolView;
|
|
84
|
+
//# sourceMappingURL=machineMaintenancePool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"machineMaintenancePool.d.ts","sourceRoot":"","sources":["../../src/server/machineMaintenancePool.ts"],"names":[],"mappings":"AAeA,OAAO,EAAiB,KAAK,cAAc,EAAE,KAAK,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGxD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE1D,6EAA6E;AAC7E,MAAM,MAAM,4BAA4B,GACpC,SAAS,GACT,cAAc,GACd,aAAa,GACb,eAAe,GACf,cAAc,GACd,YAAY,GACZ,WAAW,GACX,cAAc,GACd,aAAa,GACb,kBAAkB,CAAC;AAEvB,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,4BAA4B,CAAC;CACtC;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,mBAAmB,CAAC;IAC1B,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,IAAI,CAAC;IACf,UAAU,EAAE,KAAK,CAAC;IAClB,WAAW,EAAE,KAAK,CAAC;IACnB,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,IAAI,EAAE;QACJ,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,sBAAsB,EAAE,CAAC;QACjC,iFAAiF;QACjF,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED,eAAO,MAAM,0BAA0B,QAAc,CAAC;AACtD,eAAO,MAAM,2BAA2B,OAAQ,CAAC;AACjD,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAG7C,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAE9D;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,4BAA4B,GAAG,IAAI,CAMtF;AAMD,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IACvG,gBAAgB,CAAC,EAAE,kBAAkB,CAAC;IACtC,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACrC,yDAAyD;IACzD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IACpH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,oEAAoE;AACpE,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,qBAAqB,EAC3B,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC;IAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;IAAC,MAAM,EAAE,sBAAsB,EAAE,CAAC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAwDlH;AAED,+FAA+F;AAC/F,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,IAAI,EAAE,mBAAmB,CAAC;IAC1B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,4DAA4D;IAC5D,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAAG;QAAE,MAAM,EAAE,4BAA4B,CAAA;KAAE,CAAC;IACnF,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,MAAM,EAAE,sBAAsB,EAAE,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC/D,GAAG,mBAAmB,CAwCtB"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pool view for machine self-maintenance (CMT-1199).
|
|
3
|
+
*
|
|
4
|
+
* `GET /machine-maintenance?scope=pool` and `GET /machine-maintenance/lock-state?scope=pool`
|
|
5
|
+
* answer from ANY machine with every online machine's watch-only maintenance state,
|
|
6
|
+
* each tagged with its machineId and verified nickname.
|
|
7
|
+
*
|
|
8
|
+
* Read-only by construction: each peer is asked for its PLAIN route (no scope=pool,
|
|
9
|
+
* so no recursion), the merged answer carries `authority: 'none'`, `canRestart: false`
|
|
10
|
+
* and `canStopWork: false`, and nothing here can start, schedule or approve a restart
|
|
11
|
+
* or a close. A peer that is dark, offline, on an older version without the route, or
|
|
12
|
+
* unreachable is listed under `pool.failed` with a NORMALIZED reason — never a 500,
|
|
13
|
+
* never a peer URL, never a token or a raw error message.
|
|
14
|
+
*/
|
|
15
|
+
import { isPeerUrlAllowedForCredentials } from './peerUrlGuard.js';
|
|
16
|
+
import { poolPeerFetch } from './poolPeerFetch.js';
|
|
17
|
+
import { verifiedEntityName } from '../messaging/shared/channelIdentity.js';
|
|
18
|
+
export const MAINTENANCE_PEER_MAX_BYTES = 1024 * 1024;
|
|
19
|
+
export const MAINTENANCE_PEER_TIMEOUT_MS = 2_500;
|
|
20
|
+
export const MAINTENANCE_POOL_MAX_PEERS = 16;
|
|
21
|
+
const BATCH = 4;
|
|
22
|
+
export function routeForPart(part) {
|
|
23
|
+
return part === 'lock-state' ? '/machine-maintenance/lock-state' : '/machine-maintenance';
|
|
24
|
+
}
|
|
25
|
+
/** Map a peer's HTTP status to a normalized failure reason (2xx ⇒ null). */
|
|
26
|
+
export function classifyPeerStatus(status) {
|
|
27
|
+
if (status >= 200 && status < 300)
|
|
28
|
+
return null;
|
|
29
|
+
if (status === 503)
|
|
30
|
+
return 'not-enabled';
|
|
31
|
+
if (status === 404)
|
|
32
|
+
return 'route-missing';
|
|
33
|
+
if (status === 401 || status === 403)
|
|
34
|
+
return 'unauthorized';
|
|
35
|
+
return 'http-error';
|
|
36
|
+
}
|
|
37
|
+
class PeerFailure extends Error {
|
|
38
|
+
reason;
|
|
39
|
+
constructor(reason) {
|
|
40
|
+
super(reason);
|
|
41
|
+
this.reason = reason;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/** Ask every peer for its plain maintenance route. Never throws. */
|
|
45
|
+
export async function fetchMaintenancePool(deps, part) {
|
|
46
|
+
const route = routeForPart(part);
|
|
47
|
+
const peers = deps.peers.slice(0, MAINTENANCE_POOL_MAX_PEERS);
|
|
48
|
+
const results = [];
|
|
49
|
+
const failed = [];
|
|
50
|
+
let stale = false;
|
|
51
|
+
const dial = deps.fetchPeer ?? ((peer, p, init) => poolPeerFetch(deps.recordRopeResult, peer, p, init));
|
|
52
|
+
const fetchOne = async (peer) => {
|
|
53
|
+
let response;
|
|
54
|
+
try {
|
|
55
|
+
response = await dial(peer, route, {
|
|
56
|
+
headers: { Authorization: `Bearer ${deps.authToken}` },
|
|
57
|
+
signal: AbortSignal.timeout(deps.timeoutMs ?? MAINTENANCE_PEER_TIMEOUT_MS),
|
|
58
|
+
redirect: 'manual',
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
// @silent-fallback-ok — a dial failure becomes a classified `peer-unreachable` row in pool.failed
|
|
63
|
+
throw new PeerFailure('peer-unreachable');
|
|
64
|
+
}
|
|
65
|
+
const reason = classifyPeerStatus(response.status);
|
|
66
|
+
if (reason)
|
|
67
|
+
throw new PeerFailure(reason);
|
|
68
|
+
let text;
|
|
69
|
+
try {
|
|
70
|
+
text = await response.text();
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
throw new PeerFailure('peer-unreachable');
|
|
74
|
+
}
|
|
75
|
+
if (Buffer.byteLength(text) > MAINTENANCE_PEER_MAX_BYTES)
|
|
76
|
+
throw new PeerFailure('too-large');
|
|
77
|
+
let parsed;
|
|
78
|
+
try {
|
|
79
|
+
parsed = JSON.parse(text);
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
throw new PeerFailure('invalid-body');
|
|
83
|
+
}
|
|
84
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed))
|
|
85
|
+
throw new PeerFailure('invalid-body');
|
|
86
|
+
return parsed;
|
|
87
|
+
};
|
|
88
|
+
for (let i = 0; i < peers.length; i += BATCH) {
|
|
89
|
+
await Promise.all(peers.slice(i, i + BATCH).map(async (peer) => {
|
|
90
|
+
const cap = deps.getCapacity?.(peer.machineId);
|
|
91
|
+
if (cap && cap.online === false) {
|
|
92
|
+
failed.push({ machineId: peer.machineId, reason: 'offline' });
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
if (!isPeerUrlAllowedForCredentials({ url: peer.url, kind: (peer.kind ?? 'last-known-url') }).ok) {
|
|
96
|
+
failed.push({ machineId: peer.machineId, reason: 'url-rejected' });
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
try {
|
|
100
|
+
let body;
|
|
101
|
+
if (deps.poolPollCache) {
|
|
102
|
+
const r = await deps.poolPollCache.fetchPeer(peer.machineId, route, () => fetchOne(peer));
|
|
103
|
+
body = r.body;
|
|
104
|
+
if (r.stale)
|
|
105
|
+
stale = true;
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
body = await fetchOne(peer);
|
|
109
|
+
}
|
|
110
|
+
results.push({ machineId: peer.machineId, body });
|
|
111
|
+
}
|
|
112
|
+
catch (err) {
|
|
113
|
+
// @silent-fallback-ok — every peer failure is listed in pool.failed with a normalized reason
|
|
114
|
+
failed.push({ machineId: peer.machineId, reason: err instanceof PeerFailure ? err.reason : 'peer-unreachable' });
|
|
115
|
+
}
|
|
116
|
+
}));
|
|
117
|
+
}
|
|
118
|
+
return { results, failed, stale, queried: peers.length };
|
|
119
|
+
}
|
|
120
|
+
/** Pure merge: self first, then peers by name; every machine tagged; read-only flags fixed. */
|
|
121
|
+
export function mergeMaintenancePool(input) {
|
|
122
|
+
const name = (id, candidate) => verifiedEntityName(id, candidate) ?? undefined;
|
|
123
|
+
const selfId = input.selfMachineId ?? 'self';
|
|
124
|
+
const machines = [];
|
|
125
|
+
const failed = [];
|
|
126
|
+
if ('body' in input.self) {
|
|
127
|
+
machines.push({ machineId: selfId, machineNickname: name(selfId, input.selfNickname), self: true, state: input.self.body });
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
failed.push({ machineId: selfId, machineNickname: name(selfId, input.selfNickname), reason: input.self.reason });
|
|
131
|
+
}
|
|
132
|
+
const seen = new Set([selfId]);
|
|
133
|
+
const peers = [];
|
|
134
|
+
for (const r of input.results) {
|
|
135
|
+
if (seen.has(r.machineId))
|
|
136
|
+
continue;
|
|
137
|
+
seen.add(r.machineId);
|
|
138
|
+
peers.push({ machineId: r.machineId, machineNickname: name(r.machineId, input.nicknameOf?.(r.machineId)), self: false, state: r.body });
|
|
139
|
+
}
|
|
140
|
+
peers.sort((a, b) => (a.machineNickname ?? a.machineId).localeCompare(b.machineNickname ?? b.machineId));
|
|
141
|
+
machines.push(...peers);
|
|
142
|
+
for (const f of input.failed) {
|
|
143
|
+
if (seen.has(f.machineId))
|
|
144
|
+
continue;
|
|
145
|
+
seen.add(f.machineId);
|
|
146
|
+
failed.push({ machineId: f.machineId, machineNickname: name(f.machineId, input.nicknameOf?.(f.machineId)), reason: f.reason });
|
|
147
|
+
}
|
|
148
|
+
return {
|
|
149
|
+
scope: 'pool',
|
|
150
|
+
part: input.part,
|
|
151
|
+
authority: 'none',
|
|
152
|
+
readOnly: true,
|
|
153
|
+
canRestart: false,
|
|
154
|
+
canStopWork: false,
|
|
155
|
+
machines,
|
|
156
|
+
pool: {
|
|
157
|
+
selfMachineId: input.selfMachineId,
|
|
158
|
+
peersQueried: input.queried,
|
|
159
|
+
peersOk: input.results.length,
|
|
160
|
+
failed,
|
|
161
|
+
stale: input.stale,
|
|
162
|
+
},
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=machineMaintenancePool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"machineMaintenancePool.js","sourceRoot":"","sources":["../../src/server/machineMaintenancePool.ts"],"names":[],"mappings":"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"}
|
|
@@ -113,5 +113,12 @@ export declare function appOwnerName(config: InstarConfig): string;
|
|
|
113
113
|
* has rotated away are returned from the store, merged by eventId. Never throws.
|
|
114
114
|
*/
|
|
115
115
|
export declare function joinTelegramHistory(app: AppConversationService, topicId: number, rows: ReadonlyArray<Record<string, unknown>>, limit: number): Array<Record<string, unknown>>;
|
|
116
|
+
/**
|
|
117
|
+
* Telegram media for a DEVICE's history read (media spec §4.9): a row whose Telegram message id
|
|
118
|
+
* has a `platform-media` event gets that event's `attachments` (the app history row shape), and
|
|
119
|
+
* EVERY row's text has its server paths replaced (`[photo]`, `[file: <name>]`, `[voice note]`), so
|
|
120
|
+
* a device never sees a server path, with or without a recorded event. Never throws.
|
|
121
|
+
*/
|
|
122
|
+
export declare function withTelegramMediaForDevice(app: AppConversationService | null, topicId: number, rows: ReadonlyArray<Record<string, unknown>>): Array<Record<string, unknown>>;
|
|
116
123
|
export {};
|
|
117
124
|
//# sourceMappingURL=mobileConversationRoutes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mobileConversationRoutes.d.ts","sourceRoot":"","sources":["../../src/server/mobileConversationRoutes.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAE,MAAM,EAAE,KAAK,OAAO,EAAiB,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAKhF,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAmC,MAAM,iCAAiC,CAAC;AAC3I,OAAO,EAA0D,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEhJ,OAAO,
|
|
1
|
+
{"version":3,"file":"mobileConversationRoutes.d.ts","sourceRoot":"","sources":["../../src/server/mobileConversationRoutes.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,12 +32,13 @@ import { requestIdAgeOk, requestIdTime } from '../core/MobileChatRequests.js';
|
|
|
32
32
|
import { cleanConversationTitle, derivedEventId, isAppConversationKey, newAppConversationKey, removeAuthorityTokens, } from '../core/appConversationText.js';
|
|
33
33
|
import { signReceipt, signRedaction, signRedactionV2, sha256Hex } from '../core/AppRecordSignatures.js';
|
|
34
34
|
import { buildAppConversationRecordData } from '../core/AppConversationsReplicatedStore.js';
|
|
35
|
-
import { MAX_ATTACHMENTS, MAX_MESSAGE_BYTES, MAX_TRANSCRIPT_CHARS, attachmentIdFor, effectiveKind, } from '../core/appMediaTypes.js';
|
|
35
|
+
import { MAX_ATTACHMENTS, MAX_MESSAGE_BYTES, MAX_TRANSCRIPT_CHARS, attachmentIdFor, effectiveKind, pushPreviewBody, } from '../core/appMediaTypes.js';
|
|
36
36
|
import { detectOutboundCredential } from '../messaging/outbound-credential-guard.js';
|
|
37
37
|
import { isExactStopMessage } from '../core/MessageSentinel.js';
|
|
38
38
|
import { cleanText } from '../core/MobilePairing.js';
|
|
39
39
|
import { isPeerUrlAllowedForCredentials } from './peerUrlGuard.js';
|
|
40
40
|
import { poolPeerFetch } from './poolPeerFetch.js';
|
|
41
|
+
import { deviceTextForRow } from '../core/appPlatformMedia.js';
|
|
41
42
|
export function conversationSortKey(r) { return `${r.platform}:${r.id}`; }
|
|
42
43
|
const actOf = (r) => r.lastActivity ?? '';
|
|
43
44
|
const strCmp = (a, b) => (a < b ? -1 : a > b ? 1 : 0);
|
|
@@ -819,6 +820,36 @@ export function createMobileConversationRouter(deps) {
|
|
|
819
820
|
nextBefore: more && oldest ? `${String(oldest.at)},${String(oldest.eventId)}` : null, pool: { failed: peers.failed },
|
|
820
821
|
});
|
|
821
822
|
});
|
|
823
|
+
// ── Reply notification preview (chat-media spec §4.11) ──
|
|
824
|
+
// The phone's notification extension asks for the text to show; Apple only ever carries
|
|
825
|
+
// "New reply". Open to the device, its notification read token, or the agent's token.
|
|
826
|
+
router.get('/mobile/chat/app/:key/preview/:messageId', (req, res) => {
|
|
827
|
+
res.setHeader('Cache-Control', 'no-store');
|
|
828
|
+
if (!deps.pairing.enabled() || !svc) {
|
|
829
|
+
off(res);
|
|
830
|
+
return;
|
|
831
|
+
}
|
|
832
|
+
const p = principalOf(req);
|
|
833
|
+
if (p.kind !== 'device' && p.kind !== 'device-notify' && p.kind !== 'token') {
|
|
834
|
+
res.status(403).json({ error: 'device-required' });
|
|
835
|
+
return;
|
|
836
|
+
}
|
|
837
|
+
const key = String(req.params.key);
|
|
838
|
+
const messageId = String(req.params.messageId);
|
|
839
|
+
if (!isAppConversationKey(key) || !/^[a-z0-9._:-]{1,128}$/.test(messageId)) {
|
|
840
|
+
res.status(400).json({ error: 'bad-request' });
|
|
841
|
+
return;
|
|
842
|
+
}
|
|
843
|
+
// A deleted conversation, or a reply not replicated to this machine yet: the phone keeps the generic text.
|
|
844
|
+
const ev = svc.liveConversation(key) ? svc.store.getMessageEvent(key, messageId) : null;
|
|
845
|
+
const m = ev;
|
|
846
|
+
if (!m || m.role !== 'agent') {
|
|
847
|
+
res.status(404).json({ error: 'not-found' });
|
|
848
|
+
return;
|
|
849
|
+
}
|
|
850
|
+
const name = deps.config.projectName ?? 'agent';
|
|
851
|
+
res.json({ title: name.charAt(0).toUpperCase() + name.slice(1), body: pushPreviewBody(m.attachments ?? [], typeof m.text === 'string' ? m.text : '') });
|
|
852
|
+
});
|
|
822
853
|
// ── Sync ──
|
|
823
854
|
router.get('/mobile/chat/app/:key/events', (req, res) => {
|
|
824
855
|
if (!readGate(req, res))
|
|
@@ -958,4 +989,27 @@ export function joinTelegramHistory(app, topicId, rows, limit) {
|
|
|
958
989
|
}
|
|
959
990
|
return out.sort((a, b) => String(a.timestamp).localeCompare(String(b.timestamp))).slice(-limit);
|
|
960
991
|
}
|
|
992
|
+
/**
|
|
993
|
+
* Telegram media for a DEVICE's history read (media spec §4.9): a row whose Telegram message id
|
|
994
|
+
* has a `platform-media` event gets that event's `attachments` (the app history row shape), and
|
|
995
|
+
* EVERY row's text has its server paths replaced (`[photo]`, `[file: <name>]`, `[voice note]`), so
|
|
996
|
+
* a device never sees a server path, with or without a recorded event. Never throws.
|
|
997
|
+
*/
|
|
998
|
+
export function withTelegramMediaForDevice(app, topicId, rows) {
|
|
999
|
+
const key = `telegram:${topicId}`;
|
|
1000
|
+
return rows.map((row) => {
|
|
1001
|
+
let attachments = null;
|
|
1002
|
+
const pmid = typeof row.messageId === 'number' || (typeof row.messageId === 'string' && row.messageId) ? String(row.messageId) : null;
|
|
1003
|
+
if (app && pmid && row.fromUser === true && !row.fromStore) {
|
|
1004
|
+
try {
|
|
1005
|
+
attachments = app.store.getPlatformMedia(key, pmid)?.attachments ?? null;
|
|
1006
|
+
}
|
|
1007
|
+
catch {
|
|
1008
|
+
attachments = null;
|
|
1009
|
+
} // @silent-fallback-ok — the row is still returned, path-free, without attachments
|
|
1010
|
+
}
|
|
1011
|
+
const text = typeof row.text === 'string' ? deviceTextForRow(row.text, attachments) : row.text;
|
|
1012
|
+
return { ...row, text, ...(attachments && app ? { attachments: attachmentRows(attachments, app) } : {}) };
|
|
1013
|
+
});
|
|
1014
|
+
}
|
|
961
1015
|
//# sourceMappingURL=mobileConversationRoutes.js.map
|