@intentic/keyring 1.366.0 → 1.367.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.
package/README.md CHANGED
@@ -21,7 +21,8 @@ flowchart LR
21
21
  intentic-machine is the agent's hands on the computer: it runs the agent's `run_command`, reads files, types. A vault
22
22
  key kept in its memory would be one bug in its scope checks away from the agent, and it updates itself on a timer at a
23
23
  sandbox maintainer's word. The keyring does only what a vault does, updates only when a person says so
24
- (`intentic-machine keyring upgrade` asks the running keyring, which asks the person), and trusts no caller on its pipe
24
+ (`intentic-machine keyring upgrade` asks the running keyring, which asks the person; where it has nobody to ask, no
25
+ session helper let in, the administrator's yes the update needs anyway stands for it), and trusts no caller on its pipe
25
26
  for who it is. The vault itself is held by a service running as a system account of its own, so no process of the user,
26
27
  the agent's own commands included, can read the vault file or the memory that holds its key (see "The protected
27
28
  service" below). Every caller on the pipe is a process of the same user, so the pipe is not the boundary; three things
@@ -129,7 +130,9 @@ Two processes share the work (`src/service/`):
129
130
  intentic-machine and intentic-askpass work as they did, and it is the service's hands: it shows the prompts and the
130
131
  type-once box and does the typing. It proves a person is at the session once per sign-in before the service sends it
131
132
  anything; before setup there is no vault and nothing to prove with, so it is let in to enrol Windows Hello, and only
132
- while no vault exists.
133
+ while no vault exists. A proof the person turns down, or leaves unanswered, is not asked again on a timer: the helper
134
+ waits until a request needs a person (an unlock answered "nobody is signed in to ask"), puts its proof up then, and
135
+ tells the requester where to look (`src/service/proof-gate.ts`).
133
136
  - **The door** is a loopback port on Windows (a pipe the service created would refuse the user's writes) and a unix
134
137
  socket on Linux, beside a random token in a door file only that user can read. The token keeps other users out; it
135
138
  does not keep out the user's own programs, which is why every value still needs a sandbox's grant or a person's yes.
@@ -190,6 +193,15 @@ the field `passphrase`. Asked for in the passphrase box ("Type your recovery key
190
193
  spaces or dashes, with I, L and O read as 1, 1 and 0; anything else is tried as typed, so a passphrase from before
191
194
  still opens a vault it made.
192
195
 
196
+ ### Starting over
197
+
198
+ A lost recovery key leaves a vault nobody can open. `intentic-machine keyring reset` (the Passwords app's "Lost your
199
+ recovery key?", offered while locked) asks an administrator's yes and runs `src/service/reset.ts`'s script: the service
200
+ stopped, every file in its vault folder moved into a `set-aside-<time>` folder inside it, the service started with no
201
+ vault. Nothing is deleted, so the old key still opens the set-aside vault if it turns up; setup then makes a new vault
202
+ and a new key. The script is the agent's to run, not a verb of the keyring binary, so a keyring too old to have one can
203
+ still be started over.
204
+
193
205
  ## The type-once box
194
206
 
195
207
  When nothing in the vault answers a prompt (ssh asking for a password nobody saved, a program's password field, an
package/dist/index.d.ts CHANGED
@@ -7,5 +7,7 @@ export { linuxServicePaths, linuxServiceInstalled, type LinuxServicePaths } from
7
7
  export { currentSid } from "./service/windows/sid-windows.js";
8
8
  export { helloHere, NOT_ON_MAC, serviceInstalledHere, servicePlatform, serviceUserId, type ServicePlatform } from "./service/user.js";
9
9
  export { asRecoveryKey, newRecoveryKey } from "./service/recovery.js";
10
+ export { NO_SESSION } from "./service/remote.js";
11
+ export { linuxResetScript, setAsideName, windowsResetScript } from "./service/reset.js";
10
12
  export { realRunner } from "./run.js";
11
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC5H,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAClH,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACtI,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,KAAK,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC5H,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAClH,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACtI,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -7,5 +7,7 @@ export { linuxServicePaths, linuxServiceInstalled } from "./service/linux/paths-
7
7
  export { currentSid } from "./service/windows/sid-windows.js";
8
8
  export { helloHere, NOT_ON_MAC, serviceInstalledHere, servicePlatform, serviceUserId } from "./service/user.js";
9
9
  export { asRecoveryKey, newRecoveryKey } from "./service/recovery.js";
10
+ export { NO_SESSION } from "./service/remote.js";
11
+ export { linuxResetScript, setAsideName, windowsResetScript } from "./service/reset.js";
10
12
  export { realRunner } from "./run.js";
11
13
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAqB,MAAM,cAAc,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAA6B,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAA4B,MAAM,oCAAoC,CAAC;AAC5H,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAA0B,MAAM,gCAAgC,CAAC;AAClH,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAwB,MAAM,mBAAmB,CAAC;AACtI,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAqB,MAAM,cAAc,CAAC;AAC7F,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAA6B,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAA4B,MAAM,oCAAoC,CAAC;AAC5H,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAA0B,MAAM,gCAAgC,CAAC;AAClH,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAwB,MAAM,mBAAmB,CAAC;AACtI,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../src/service/helper.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEtG,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,KAAK,SAAS,EAAkD,KAAK,UAAU,EAAoB,KAAK,WAAW,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAC;AAmB5J,MAAM,WAAW,eAAe;IAE5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAEtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,KAAK;IAElB,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAEtC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;IAExC,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CAC3B;AA+BD,eAAO,MAAM,UAAU,UAAiB,KAAK,QAAQ,UAAU,KAAG,OAAO,CAAC,WAAW,CAyBpF,CAAC;AAQF,eAAO,MAAM,QAAQ,cAAqB,SAAS,SAAS,KAAK,QAAO,MAAM,KAAiB,OAAO,CAAC,KAAK,CAgB3G,CAAC;AAwCF,eAAO,MAAM,UAAU,eAAsB,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,WAAU,MAAM,KAAgB,OAAO,CAAC,IAAI,CAqCpI,CAAC"}
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../src/service/helper.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEtG,OAAO,EAAc,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,EAAE,KAAK,SAAS,EAAkD,KAAK,UAAU,EAAoB,KAAK,WAAW,EAAE,KAAK,KAAK,EAAE,MAAM,WAAW,CAAC;AAoB5J,MAAM,WAAW,eAAe;IAE5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAEtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,KAAK;IAElB,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAEtC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;IAExC,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CAC3B;AA+BD,eAAO,MAAM,UAAU,UAAiB,KAAK,QAAQ,UAAU,KAAG,OAAO,CAAC,WAAW,CAyBpF,CAAC;AAQF,eAAO,MAAM,QAAQ,cAAqB,SAAS,SAAS,KAAK,QAAO,MAAM,KAAiB,OAAO,CAAC,KAAK,CAgB3G,CAAC;AAyDF,eAAO,MAAM,UAAU,eAAsB,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,WAAU,MAAM,KAAgB,OAAO,CAAC,IAAI,CAyDpI,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { readFile } from "node:fs/promises";
2
2
  import { connect } from "node:net";
3
3
  import { sleep } from "@intentic/base/async";
4
+ import { z } from "zod";
4
5
  import { claimPidFile } from "@intentic/local-agent";
5
6
  import { keyringPaths } from "../address.js";
6
7
  import { KEYRING_RESPONSES } from "../protocol.js";
@@ -11,6 +12,7 @@ import { appsWatchFor } from "../watch/apps.js";
11
12
  import { ChallengeSchema, DoorFileSchema, HelperCallSchema } from "./door.js";
12
13
  import { LineSocket } from "./lines.js";
13
14
  import { asRecoveryKey } from "./recovery.js";
15
+ import { neededPerson, ProofGate, proofAsked } from "./proof-gate.js";
14
16
  import { RECOVERY_HINT } from "./remote.js";
15
17
  const RETRY_MS = 5_000;
16
18
  const REQUEST_DEADLINE_MS = 135_000;
@@ -85,26 +87,41 @@ export const proofFor = async (challenge, hands, pid = process.pid) => {
85
87
  return { method: "unset" };
86
88
  }
87
89
  };
88
- const holdTheLine = async (door, hands, log) => {
90
+ const VerdictSchema = z.object({ ok: z.boolean() });
91
+ const VERDICT_DEADLINE_MS = 30_000;
92
+ const holdTheLine = async (door, hands, gate, log, asked) => {
89
93
  const lines = new LineSocket(dial(door));
90
94
  lines.send({ door: door.token, as: "helper" });
91
95
  const challenge = await lines.nextOf(ChallengeSchema, 30_000);
92
96
  if (challenge === undefined) {
93
97
  lines.end();
94
- return;
98
+ return "gone";
95
99
  }
100
+ asked(challenge.method);
96
101
  const proof = await proofFor(challenge, hands);
97
102
  lines.send(proof);
103
+ const verdict = await lines.nextOf(VerdictSchema, VERDICT_DEADLINE_MS);
104
+ if (verdict?.ok !== true) {
105
+ lines.end();
106
+ log(proof.method === "declined" ? "the person did not prove this session" : `the service refused this session's ${proof.method} proof`);
107
+ return "turned-down";
108
+ }
109
+ gate.settle(true);
98
110
  log(`proved this session with ${proof.method}`);
99
- for (;;) {
100
- const call = await lines.nextOf(HelperCallSchema, 24 * 60 * 60_000);
101
- if (call === undefined) {
102
- if (lines.closed) {
103
- return;
111
+ try {
112
+ for (;;) {
113
+ const call = await lines.nextOf(HelperCallSchema, 24 * 60 * 60_000);
114
+ if (call === undefined) {
115
+ if (lines.closed) {
116
+ return "gone";
117
+ }
118
+ continue;
104
119
  }
105
- continue;
120
+ lines.send({ id: call.id, reply: await answerCall(hands, call) });
106
121
  }
107
- lines.send({ id: call.id, reply: await answerCall(hands, call) });
122
+ }
123
+ finally {
124
+ gate.settle(false);
108
125
  }
109
126
  };
110
127
  const keepAppsWatch = async (ask, watch) => {
@@ -134,23 +151,42 @@ export const runSession = async (platformOf, runner = realRunner) => {
134
151
  const door = await readDoor(platform.doorFile);
135
152
  return door === undefined ? undefined : await throughDoor(door, request).catch(() => undefined);
136
153
  };
154
+ const gate = new ProofGate();
155
+ let method;
137
156
  await serveKeyring({
138
157
  handle: async (request) => {
139
158
  const door = await readDoor(platform.doorFile);
140
- return door === undefined ? { ok: false, code: "no-keyring", refusal: platform.noService } : await throughDoor(door, request);
159
+ if (door === undefined) {
160
+ return { ok: false, code: "no-keyring", refusal: platform.noService };
161
+ }
162
+ const answer = await throughDoor(door, request);
163
+ if (gate.proven || !neededPerson(answer)) {
164
+ return answer;
165
+ }
166
+ log(`${request.op} needed a person: asking this session to prove itself again`);
167
+ gate.want();
168
+ return { ...answer, refusal: proofAsked(method) };
141
169
  },
142
170
  }, own.address, log);
143
171
  void keepAppsWatch(ask, appsWatchFor(runner, ask, log));
144
172
  for (;;) {
145
173
  const door = await readDoor(platform.doorFile);
174
+ let outcome = "gone";
146
175
  if (door !== undefined) {
147
176
  try {
148
- await holdTheLine(door, platform.hands, log);
177
+ outcome = await holdTheLine(door, platform.hands, gate, log, (asked) => {
178
+ method = asked;
179
+ });
149
180
  }
150
181
  catch (error) {
151
182
  log(`lost the service: ${error instanceof Error ? error.message : "unknown error"}`);
152
183
  }
153
184
  }
185
+ if (outcome === "turned-down") {
186
+ log("not asking again until something needs a person here");
187
+ await gate.whenWanted();
188
+ continue;
189
+ }
154
190
  await sleep(RETRY_MS);
155
191
  }
156
192
  };
@@ -1 +1 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/service/helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/service/helper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { KeyringOp, KeyringResponse } from "../protocol.js";
2
+ import type { Challenge } from "./door.js";
3
+ export declare class ProofGate {
4
+ #private;
5
+ get proven(): boolean;
6
+ settle(proven: boolean): void;
7
+ whenWanted(): Promise<void>;
8
+ want(): void;
9
+ }
10
+ export declare const neededPerson: (answer: KeyringResponse<KeyringOp>) => answer is Extract<KeyringResponse<KeyringOp>, {
11
+ ok: false;
12
+ }>;
13
+ export declare const proofAsked: (method: Challenge["method"] | undefined) => string;
14
+ //# sourceMappingURL=proof-gate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proof-gate.d.ts","sourceRoot":"","sources":["../../src/service/proof-gate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAQ3C,qBAAa,SAAS;;IAMlB,IAAI,MAAM,IAAI,OAAO,CAEpB;IAGD,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAM5B;IAGK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAQhC;IAGD,IAAI,IAAI,IAAI,CAGX;CACJ;AAGD,eAAO,MAAM,YAAY,WAAY,eAAe,CAAC,SAAS,CAAC,KAAG,MAAM,IAAI,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;IAAE,EAAE,EAAE,KAAK,CAAA;CAAE,CAAsD,CAAC;AAGpL,eAAO,MAAM,UAAU,WAAY,SAAS,CAAC,QAAQ,CAAC,GAAG,SAAS,KAAG,MAGoD,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { NO_SESSION } from "./remote.js";
2
+ export class ProofGate {
3
+ #proven = false;
4
+ #wanted = false;
5
+ #wake;
6
+ get proven() {
7
+ return this.#proven;
8
+ }
9
+ settle(proven) {
10
+ this.#proven = proven;
11
+ if (proven) {
12
+ this.#wanted = false;
13
+ }
14
+ }
15
+ async whenWanted() {
16
+ if (!this.#wanted) {
17
+ await new Promise((resolve) => {
18
+ this.#wake = resolve;
19
+ });
20
+ }
21
+ this.#wanted = false;
22
+ this.#wake = undefined;
23
+ }
24
+ want() {
25
+ this.#wanted = true;
26
+ this.#wake?.();
27
+ }
28
+ }
29
+ export const neededPerson = (answer) => !answer.ok && answer.refusal.includes(NO_SESSION);
30
+ export const proofAsked = (method) => method === "passphrase"
31
+ ? "Passwords is asking for your recovery key, in a window on this computer's screen. Type it there, then try again."
32
+ : "Passwords is asking you to confirm it is you, in a window on this computer's screen. Do that, then try again.";
33
+ //# sourceMappingURL=proof-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proof-gate.js","sourceRoot":"","sources":["../../src/service/proof-gate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,MAAM,OAAO,SAAS;IAClB,OAAO,GAAG,KAAK,CAAC;IAChB,OAAO,GAAG,KAAK,CAAC;IAChB,KAAK,CAA2B;IAGhC,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAGD,MAAM,CAAC,MAAe;QAClB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,MAAM,EAAE,CAAC;YAET,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACzB,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,UAAU;QACZ,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAChC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC;YACzB,CAAC,CAAC,CAAC;QACP,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IAC3B,CAAC;IAGD,IAAI;QACA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;IACnB,CAAC;CACJ;AAGD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAkC,EAAgE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAGpL,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAuC,EAAU,EAAE,CAC1E,MAAM,KAAK,YAAY;IACnB,CAAC,CAAC,kHAAkH;IACpH,CAAC,CAAC,+GAA+G,CAAC"}
@@ -10,6 +10,7 @@ export declare class HelperLink {
10
10
  get ready(): boolean;
11
11
  call<T>(body: CallBody<HelperCall>, schema: z.ZodType<T>, deadlineMs: number): Promise<T | undefined>;
12
12
  }
13
+ export declare const NO_SESSION = "nobody is signed in to ask: Passwords' session helper starts at sign-in";
13
14
  export interface HelloPin {
14
15
  readonly credential: string;
15
16
  readonly publicKey: string;
@@ -1 +1 @@
1
- {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/service/remote.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAgB,YAAY,EAAE,WAAW,EAAe,gBAAgB,EAA6B,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5J,OAAO,KAAK,EAAoB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAc7C,KAAK,QAAQ,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,OAAO,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;AAEhF,qBAAa,UAAU;;IAMnB,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAG/B;IAED,IAAI,KAAK,IAAI,OAAO,CAEnB;IAGK,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAoB1G;CACJ;AAID,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC9B;AAKD,eAAO,MAAM,WAAW,SAAU,UAAU,OAAO,MAAM,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,KAAG,WA6CxF,CAAC;AAGF,eAAO,MAAM,aAAa,+FAA+F,CAAC;AAI1H,eAAO,MAAM,sBAAsB,SACxB,UAAU,KAAG,gBAOnB,CAAC;AAIN,eAAO,MAAM,iBAAiB,SACnB,UAAU,KAAG,WAQnB,CAAC;AAIN,eAAO,MAAM,kBAAkB,SACpB,UAAU,KAAG,YAInB,CAAC;AAEN,eAAO,MAAM,YAAY,SAAU,UAAU,KAAG,MAU9C,CAAC"}
1
+ {"version":3,"file":"remote.d.ts","sourceRoot":"","sources":["../../src/service/remote.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAgB,YAAY,EAAE,WAAW,EAAe,gBAAgB,EAA6B,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5J,OAAO,KAAK,EAAoB,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAc7C,KAAK,QAAQ,CAAC,CAAC,SAAS,UAAU,IAAI,CAAC,SAAS,OAAO,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;AAEhF,qBAAa,UAAU;;IAMnB,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAG/B;IAED,IAAI,KAAK,IAAI,OAAO,CAEnB;IAGK,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAoB1G;CACJ;AAED,eAAO,MAAM,UAAU,4EAA4E,CAAC;AAEpG,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC9B;AAKD,eAAO,MAAM,WAAW,SAAU,UAAU,OAAO,MAAM,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,KAAG,WA6CxF,CAAC;AAGF,eAAO,MAAM,aAAa,+FAA+F,CAAC;AAI1H,eAAO,MAAM,sBAAsB,SACxB,UAAU,KAAG,gBAOnB,CAAC;AAIN,eAAO,MAAM,iBAAiB,SACnB,UAAU,KAAG,WAQnB,CAAC;AAIN,eAAO,MAAM,kBAAkB,SACpB,UAAU,KAAG,YAInB,CAAC;AAEN,eAAO,MAAM,YAAY,SAAU,UAAU,KAAG,MAU9C,CAAC"}
@@ -39,7 +39,7 @@ export class HelperLink {
39
39
  });
40
40
  }
41
41
  }
42
- const NO_SESSION = "nobody is signed in to ask: Passwords' session helper starts at sign-in";
42
+ export const NO_SESSION = "nobody is signed in to ask: Passwords' session helper starts at sign-in";
43
43
  export const remoteHello = (link, pin) => {
44
44
  const sign = async (credential, challenge, title, message) => {
45
45
  const reply = await link.call({ call: "sign", credential, challenge, title, message }, SignedSchema, PROMPT_DEADLINE_MS);
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/service/remote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAO/J,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAEnC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AACrC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAIlC,MAAM,OAAO,UAAU;IACnB,OAAO,CAAyB;IAChC,KAAK,GAAG,CAAC,CAAC;IACD,IAAI,GAAG,UAAU,EAAE,CAAC;IAG7B,MAAM,CAAC,MAAkB;QACrB,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IAC1B,CAAC;IAED,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC9D,CAAC;IAGD,KAAK,CAAC,IAAI,CAAI,IAA0B,EAAE,MAAoB,EAAE,UAAkB;QAC9E,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC;YAC5B,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxC,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;YAC7B,SAAS,CAAC;gBACN,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACxD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtB,OAAO,SAAS,CAAC;gBACrB,CAAC;gBAED,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;oBAClB,OAAO,KAAK,CAAC,KAAK,CAAC;gBACvB,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AAED,MAAM,UAAU,GAAG,yEAAyE,CAAC;AAU7F,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAE,GAAwC,EAAe,EAAE;IACnG,MAAM,IAAI,GAAG,KAAK,EAAE,UAAkB,EAAE,SAAiB,EAAE,KAAa,EAAE,OAAe,EAAgC,EAAE;QACvH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;QACzH,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACtB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;QAClH,CAAC;QACD,OAAO,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IACpJ,CAAC,CAAC;IACF,OAAO;QACH,SAAS,EAAE,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACd,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,eAAe,EAAE,qBAAqB,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;QACtH,CAAC;QACD,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,0DAA0D,EAAE,CAAC;YAC/G,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,CAAC,CAAC;YAC1J,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;YAClH,CAAC;YACD,OAAO,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACrI,CAAC;QACD,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC;QAE9G,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;YACrB,MAAM,MAAM,GAAG,MAAM,GAAG,EAAE,CAAC;YAC3B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,uCAAuC,EAAE,CAAC;YAC5F,CAAC;YACD,MAAM,SAAS,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACtF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACb,OAAO,MAAM,CAAC;YAClB,CAAC;YACD,OAAO,WAAW,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC5E,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;gBAC3B,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,wDAAwD,EAAE,CAAC;QAC5G,CAAC;KACJ,CAAC;AACN,CAAC,CAAC;AAGF,MAAM,CAAC,MAAM,aAAa,GAAG,4FAA4F,CAAC;AAI1H,MAAM,CAAC,MAAM,sBAAsB,GAC/B,CAAC,IAAgB,EAAoB,EAAE,CACvC,KAAK,EAAE,MAAM,EAAyB,EAAE;IACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,OAAO,aAAa,EAAE,EAAE,EAAE,qBAAqB,EAAE,kBAAkB,CAAC,CAAC;IACxK,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAC1G,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AACjH,CAAC,CAAC;AAIN,MAAM,CAAC,MAAM,iBAAiB,GAC1B,CAAC,IAAgB,EAAe,EAAE,CAClC,KAAK,EAAE,MAAM,EAAwB,EAAE;IACnC,MAAM,IAAI,GAAqD,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC1J,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAChG,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;IAC1E,OAAO,KAAK,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;AACnH,CAAC,CAAC;AAIN,MAAM,CAAC,MAAM,kBAAkB,GAC3B,CAAC,IAAgB,EAAgB,EAAE,CACnC,KAAK,EAAE,MAAM,EAAyB,EAAE;IACpC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC;IACnM,OAAO,KAAK,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;AACnH,CAAC,CAAC;AAEN,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAgB,EAAU,EAAE,CAAC,CAAC;IACvD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAsB,EAAE;QACzC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;QAC/F,OAAO,KAAK,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,gCAAgC,EAAE,CAAC;IAC/H,CAAC;IACD,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAkB,EAAE;QAC/C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,kBAAkB,CAAC,CAAC;QAErG,OAAO,KAAK,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iDAAiD,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC3G,CAAC;CACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../../src/service/remote.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { LinuxServicePaths } from "./linux/paths-linux.js";
2
+ import type { WindowsServicePaths } from "./windows/paths-windows.js";
3
+ export declare const setAsideName: (at: Date) => string;
4
+ export declare const windowsResetScript: (paths: WindowsServicePaths, aside: string) => string;
5
+ export declare const linuxResetScript: (paths: LinuxServicePaths, aside: string) => string;
6
+ //# sourceMappingURL=reset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../src/service/reset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAStE,eAAO,MAAM,YAAY,OAAQ,IAAI,KAAG,MAAuF,CAAC;AAMhI,eAAO,MAAM,kBAAkB,UAAW,mBAAmB,SAAS,MAAM,KAAG,MAa9E,CAAC;AAGF,eAAO,MAAM,gBAAgB,UAAW,iBAAiB,SAAS,MAAM,KAAG,MAU1E,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { SERVICE_USER } from "./linux/paths-linux.js";
2
+ export const setAsideName = (at) => `set-aside-${at.toISOString().replace(/\.\d+Z$/u, "Z").replaceAll(":", "-")}`;
3
+ const psQuoted = (text) => `'${text.replaceAll("'", "''")}'`;
4
+ const shQuoted = (text) => `'${text.replaceAll("'", `'\\''`)}'`;
5
+ export const windowsResetScript = (paths, aside) => `$ErrorActionPreference = 'Stop'
6
+ $vault = ${psQuoted(paths.vaultDir)}
7
+ $aside = Join-Path $vault ${psQuoted(aside)}
8
+ Stop-ScheduledTask -TaskPath ${psQuoted(paths.taskPath)} -TaskName ${psQuoted(paths.taskName)} -ErrorAction SilentlyContinue
9
+ New-Item -ItemType Directory -Path $aside -Force | Out-Null
10
+ foreach ($file in Get-ChildItem -LiteralPath $vault -File) {
11
+ # The stopped service lets go of its files a moment after the task says it stopped.
12
+ for ($try = 1; ; $try++) {
13
+ try { Move-Item -LiteralPath $file.FullName -Destination $aside; break }
14
+ catch { if ($try -ge 20) { throw }; Start-Sleep -Milliseconds 500 }
15
+ }
16
+ }
17
+ Start-ScheduledTask -TaskPath ${psQuoted(paths.taskPath)} -TaskName ${psQuoted(paths.taskName)}
18
+ `;
19
+ export const linuxResetScript = (paths, aside) => {
20
+ const folder = shQuoted(`${paths.vaultDir}/${aside}`);
21
+ return [
22
+ "set -e",
23
+ `systemctl stop ${shQuoted(paths.unitName)}`,
24
+ `mkdir -m 0700 ${folder}`,
25
+ `find ${shQuoted(paths.vaultDir)} -mindepth 1 -maxdepth 1 -type f -exec mv -t ${folder} -- {} +`,
26
+ `chown ${SERVICE_USER}: ${folder}`,
27
+ `systemctl start ${shQuoted(paths.unitName)}`,
28
+ ].join("\n");
29
+ };
30
+ //# sourceMappingURL=reset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset.js","sourceRoot":"","sources":["../../src/service/reset.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAUtD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAQ,EAAU,EAAE,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;AAEhI,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC;AAC7E,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;AAGhF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAA0B,EAAE,KAAa,EAAU,EAAE,CAAC;WAC9E,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;4BACP,QAAQ,CAAC,KAAK,CAAC;+BACZ,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;;;;;;;;;gCAS7D,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;CAC7F,CAAC;AAGF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAwB,EAAE,KAAa,EAAU,EAAE;IAChF,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,EAAE,CAAC,CAAC;IACtD,OAAO;QACH,QAAQ;QACR,kBAAkB,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;QAC5C,iBAAiB,MAAM,EAAE;QACzB,QAAQ,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,gDAAgD,MAAM,UAAU;QAChG,SAAS,YAAY,KAAK,MAAM,EAAE;QAClC,mBAAmB,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;KAChD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjB,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intentic/keyring",
3
- "version": "1.366.0",
3
+ "version": "1.367.0",
4
4
  "description": "intentic-keyring: the password vault on a user's own computer, a process of its own beside intentic-machine, that types and releases secrets for a sandbox's agent without the agent ever holding them",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -34,14 +34,14 @@
34
34
  }
35
35
  },
36
36
  "dependencies": {
37
- "@intentic/base": "1.366.0",
38
- "@intentic/local-agent": "1.366.0",
39
- "@intentic/sandbox-contract": "1.366.0",
37
+ "@intentic/base": "1.367.0",
38
+ "@intentic/local-agent": "1.367.0",
39
+ "@intentic/sandbox-contract": "1.367.0",
40
40
  "@stricli/core": "1.3.0",
41
41
  "zod": "4.6.7"
42
42
  },
43
43
  "devDependencies": {
44
- "@intentic/constants": "1.366.0",
44
+ "@intentic/constants": "1.367.0",
45
45
  "@intentic/testing": "0.0.0",
46
46
  "@intentic/tsconfig": "0.0.0",
47
47
  "@types/bun": "1.4.4",