@tinycloud/courier 0.5.1-beta.1 → 0.5.1-beta.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"grant-request.js","sourceRoot":"","sources":["../src/grant-request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grant-request.js","sourceRoot":"","sources":["../src/grant-request.ts"],"names":[],"mappings":"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"}
package/dist/pending.d.ts CHANGED
@@ -1,5 +1,9 @@
1
1
  import type { GrantPayload } from './grant.js';
2
2
  export declare function codeHash(code: string): string;
3
+ /** The delegations of the unexpired records. Read-only: unlike the readers around it, it never removes, repairs or rewrites anything. */
4
+ export declare function liveRedeemedDelegations(): GrantPayload[];
5
+ /** Whether an unexpired record exists (read-only, see `liveRedeemedDelegations`). */
6
+ export declare function hasLivePending(): boolean;
3
7
  /** The unexpired record saved for this code, if any. */
4
8
  export declare function pendingForCode(code: string): GrantPayload | undefined;
5
9
  /** The most recently saved unexpired record, for `init --resume` (which has no code). */
package/dist/pending.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import fs from 'node:fs';
2
2
  import path from 'node:path';
3
3
  import { createHash, randomBytes } from 'node:crypto';
4
- import { mkdirOwnerOnly, profileDir } from './profile.js';
4
+ import { mkdirOwnerOnly, profileDir, readRegularFile } from './profile.js';
5
5
  /**
6
6
  * OpenKey consumes a short code on the first redeem (a second GET is a 404), so the redeemed delegation
7
7
  * is the only copy of the owner's approval. It is written here, before any node call, and deleted only
@@ -94,6 +94,25 @@ function store(records) {
94
94
  else
95
95
  writeDurable(pendingPath(), { v: 1, records });
96
96
  }
97
+ /** The delegations of the unexpired records. Read-only: unlike the readers around it, it never removes, repairs or rewrites anything. */
98
+ export function liveRedeemedDelegations() {
99
+ try {
100
+ const text = readRegularFile(pendingPath());
101
+ if (text === undefined)
102
+ return [];
103
+ const parsed = JSON.parse(text);
104
+ if (parsed.v !== 1 || !Array.isArray(parsed.records))
105
+ return [];
106
+ return parsed.records.filter(isRecord).filter((record) => Date.parse(record.expiresAt) > Date.now()).map((record) => record.delegation);
107
+ }
108
+ catch {
109
+ return [];
110
+ }
111
+ }
112
+ /** Whether an unexpired record exists (read-only, see `liveRedeemedDelegations`). */
113
+ export function hasLivePending() {
114
+ return liveRedeemedDelegations().length > 0;
115
+ }
97
116
  /** The unexpired record saved for this code, if any. */
98
117
  export function pendingForCode(code) {
99
118
  const hash = codeHash(code);
@@ -1 +1 @@
1
- {"version":3,"file":"pending.js","sourceRoot":"","sources":["../src/pending.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pending.js","sourceRoot":"","sources":["../src/pending.ts"],"names":[],"mappings":"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"}
package/dist/profile.d.ts CHANGED
@@ -67,9 +67,18 @@ export declare function profileExists(): boolean;
67
67
  export declare function mkdirOwnerOnly(dir: string): void;
68
68
  /** Atomic, owner-only and durable: the bytes and the rename are fsynced, so a caller may act on "saved" (for example acknowledge an approval). */
69
69
  export declare function writeSecure(file: string, obj: unknown): void;
70
+ /**
71
+ * The text of a regular file of this user, or undefined when there is none: a symlink is never followed (O_NOFOLLOW), a FIFO or device
72
+ * never blocks the open (O_NONBLOCK) and is refused by `fstat` before any read. Read-only callers use it; it never changes the file.
73
+ */
74
+ export declare function readRegularFile(file: string): string | undefined;
70
75
  export declare function readSecure<T>(name: string, required: boolean, home?: string): T | undefined;
76
+ /** The fields `loadProfile` requires of a current (version 3) profile. */
77
+ export declare function hasProfileFields(profile: Partial<Profile> | null): profile is Profile;
71
78
  export declare function loadProfile(home?: string): Profile;
72
79
  export declare function saveProfile(profile: Profile): void;
80
+ /** The shape `loadKey` accepts: version 1, a JWK and a `did:key:` identifier. */
81
+ export declare function isAgentKey(value: unknown): value is AgentKey;
73
82
  export declare function loadKey(home?: string): AgentKey;
74
83
  export declare function saveKey(key: AgentKey): void;
75
84
  export declare function loadGrant(home?: string): OwnerGrant | undefined;
package/dist/profile.js CHANGED
@@ -72,6 +72,27 @@ export function writeSecure(file, obj) {
72
72
  catch { /* renamed or absent */ }
73
73
  }
74
74
  }
75
+ /**
76
+ * The text of a regular file of this user, or undefined when there is none: a symlink is never followed (O_NOFOLLOW), a FIFO or device
77
+ * never blocks the open (O_NONBLOCK) and is refused by `fstat` before any read. Read-only callers use it; it never changes the file.
78
+ */
79
+ export function readRegularFile(file) {
80
+ let fd;
81
+ try {
82
+ fd = fs.openSync(file, fs.constants.O_RDONLY | fs.constants.O_NOFOLLOW | fs.constants.O_NONBLOCK);
83
+ const stat = fs.fstatSync(fd);
84
+ if (!stat.isFile() || stat.uid !== process.getuid?.())
85
+ return undefined;
86
+ return fs.readFileSync(fd, 'utf8');
87
+ }
88
+ catch {
89
+ return undefined;
90
+ }
91
+ finally {
92
+ if (fd !== undefined)
93
+ fs.closeSync(fd);
94
+ }
95
+ }
75
96
  export function readSecure(name, required, home = profileDir()) {
76
97
  const file = profilePath(name, home);
77
98
  if (!fs.existsSync(file)) {
@@ -90,10 +111,15 @@ export function readSecure(name, required, home = profileDir()) {
90
111
  try {
91
112
  return JSON.parse(fs.readFileSync(file, 'utf8'));
92
113
  }
93
- catch (e) {
94
- throw new CourierError('bad-profile', `Invalid ${name}: ${e.message}`);
114
+ catch {
115
+ // A parser error quotes the text around the failure, and these files can hold private keys: say which file, never what was in it.
116
+ throw new CourierError('bad-profile', `Invalid ${name}: the file is unreadable or corrupt.`);
95
117
  }
96
118
  }
119
+ /** The fields `loadProfile` requires of a current (version 3) profile. */
120
+ export function hasProfileFields(profile) {
121
+ return !!profile && typeof profile === 'object' && profile.version === 3 && !!profile.courierDid && !!profile.host && !!profile.openkeyHost;
122
+ }
97
123
  export function loadProfile(home = profileDir()) {
98
124
  const loaded = readSecure('profile.json', true, home);
99
125
  if (!loaded || typeof loaded !== 'object' || !('version' in loaded)) {
@@ -105,7 +131,7 @@ export function loadProfile(home = profileDir()) {
105
131
  if (loaded.version !== 3)
106
132
  throw new CourierError('bad-profile', `Unsupported profile version ${String(loaded.version)}; run \`${cmd('init --rotate-key')}\`.`);
107
133
  const profile = loaded;
108
- if (!profile.courierDid || !profile.host || !profile.openkeyHost)
134
+ if (!hasProfileFields(profile))
109
135
  throw new CourierError('bad-profile', `Corrupt profile at ${profilePath('profile.json')}`);
110
136
  profile.peers ??= {};
111
137
  return profile;
@@ -113,9 +139,14 @@ export function loadProfile(home = profileDir()) {
113
139
  export function saveProfile(profile) {
114
140
  writeSecure(profilePath('profile.json'), profile);
115
141
  }
142
+ /** The shape `loadKey` accepts: version 1, a JWK and a `did:key:` identifier. */
143
+ export function isAgentKey(value) {
144
+ const key = value;
145
+ return !!key && typeof key === 'object' && key.v === 1 && !!key.jwk && typeof key.did === 'string' && key.did.startsWith('did:key:');
146
+ }
116
147
  export function loadKey(home = profileDir()) {
117
148
  const key = readSecure('key.json', true, home);
118
- if (key.v !== 1 || !key.jwk || !key.did?.startsWith('did:key:')) {
149
+ if (!isAgentKey(key)) {
119
150
  throw new CourierError('bad-profile', `Corrupt agent key at ${profilePath('key.json')}`);
120
151
  }
121
152
  return key;
@@ -1 +1 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../src/profile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { AgentKey, Profile } from './profile.js';
2
+ export type ApprovalState = 'none' | 'open' | 'held' | 'committed' | 'unreadable' | 'corrupt';
3
+ /** `unreadable`: profile.json exists and cannot be read (permissions or content). It is never the same as `absent`. */
4
+ export type ProfileStatus = 'absent' | 'unreadable' | Profile['status'];
5
+ export interface StateInputs {
6
+ profile: ProfileStatus;
7
+ spacePending: boolean;
8
+ grant: boolean;
9
+ key: boolean;
10
+ pendingGrant: boolean;
11
+ approval: ApprovalState;
12
+ rotation: boolean;
13
+ rotationTemp: boolean;
14
+ }
15
+ export type StateAction = 'finish-rotation' | 'refuse' | 'fix-profile' | 'init' | 'rotate-key' | 'wait' | 'resume' | 'request' | 'fix-approval' | 'none';
16
+ export type StateName = 'rotation-interrupted' | 'profile-unreadable' | 'approval-orphaned' | 'new' | 'key-only' | 'key-missing' | 'approval-held' | 'saved-delegation' | 'saved-grant' | 'approval-open' | 'approval-unreadable' | 'awaiting-grant' | 'grant-missing' | 'space-pending' | 'space-missing' | 'ready-approval' | 'ready';
17
+ export interface DerivedState {
18
+ inputs: StateInputs;
19
+ state: StateName;
20
+ action: StateAction;
21
+ /** A stray key-bearing temp file whose writer is gone is on disk and `recoverInterrupted` removes it. */
22
+ cleanTemp: boolean;
23
+ /** `init --wait` goes on; when false it advises `adviceFor(state)`. */
24
+ wait: boolean;
25
+ /** Warnings about files that were read and not used (printed once by the init mode). */
26
+ notes: string[];
27
+ /** Set (octal mode) when grant.json is a regular file that is not owner-only: it is a saved grant, unusable until its mode is fixed. */
28
+ grantMode?: string;
29
+ }
30
+ export declare const heldApproval: (approval: ApprovalState) => boolean;
31
+ export declare function classifyState(i: StateInputs): Omit<DerivedState, 'inputs' | 'notes'>;
32
+ /** The one place the inputs are read. Reads only. `notes` are warnings the init mode prints once; nothing is repaired or removed. */
33
+ export declare function readInputs(notes?: string[]): StateInputs;
34
+ export declare function deriveState(): DerivedState;
35
+ /** The next command for the person or agent running init. */
36
+ export declare function adviceFor(d: Pick<DerivedState, 'state' | 'inputs'>): string;
37
+ /**
38
+ * Explicit recovery, run once at the start of an init mode: roll an interrupted rotation forward (only after the journal validated), then
39
+ * remove stray key-bearing temp files. A refusal in the first step happens before anything is changed.
40
+ */
41
+ export declare function recoverInterrupted(): void;
42
+ /** Steps 1-5. `profile` is the complete new profile. */
43
+ export declare function rotateKey(key: AgentKey, profile: Profile): Promise<void>;
44
+ /** Roll an interrupted rotation forward. Returns whether one was found. Refuses, changing nothing, when the record is not a valid rotation. */
45
+ export declare function finishRotation(): boolean;