@substrat-run/cli 0.49.7 → 0.51.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 (58) hide show
  1. package/README.md +31 -0
  2. package/dist/changeset.d.ts.map +1 -1
  3. package/dist/changeset.js +19 -6
  4. package/dist/changeset.js.map +1 -1
  5. package/dist/cli.js +96 -28
  6. package/dist/cli.js.map +1 -1
  7. package/dist/data-loss-check.d.ts.map +1 -1
  8. package/dist/data-loss-check.js +11 -1
  9. package/dist/data-loss-check.js.map +1 -1
  10. package/dist/dev-preload.d.ts +2 -0
  11. package/dist/dev-preload.d.ts.map +1 -0
  12. package/dist/dev-preload.js +32 -0
  13. package/dist/dev-preload.js.map +1 -0
  14. package/dist/dev-traces.d.ts +16 -0
  15. package/dist/dev-traces.d.ts.map +1 -0
  16. package/dist/dev-traces.js +191 -0
  17. package/dist/dev-traces.js.map +1 -0
  18. package/dist/dev.d.ts +6 -0
  19. package/dist/dev.d.ts.map +1 -0
  20. package/dist/dev.js +67 -0
  21. package/dist/dev.js.map +1 -0
  22. package/dist/doctor.d.ts +34 -0
  23. package/dist/doctor.d.ts.map +1 -0
  24. package/dist/doctor.js +89 -0
  25. package/dist/doctor.js.map +1 -0
  26. package/dist/login.d.ts +12 -0
  27. package/dist/login.d.ts.map +1 -1
  28. package/dist/login.js +22 -3
  29. package/dist/login.js.map +1 -1
  30. package/dist/outbound-scan.d.ts +1 -1
  31. package/dist/outbound-scan.d.ts.map +1 -1
  32. package/dist/outbound-scan.js +6 -4
  33. package/dist/outbound-scan.js.map +1 -1
  34. package/dist/preview.d.ts +2 -2
  35. package/dist/preview.js +1 -1
  36. package/dist/promote.d.ts +2 -1
  37. package/dist/promote.d.ts.map +1 -1
  38. package/dist/promote.js +4 -3
  39. package/dist/promote.js.map +1 -1
  40. package/dist/prompt.d.ts +21 -0
  41. package/dist/prompt.d.ts.map +1 -0
  42. package/dist/prompt.js +39 -0
  43. package/dist/prompt.js.map +1 -0
  44. package/dist/published-concept.d.ts +3 -0
  45. package/dist/published-concept.d.ts.map +1 -0
  46. package/dist/published-concept.js +28 -0
  47. package/dist/published-concept.js.map +1 -0
  48. package/dist/push.d.ts +38 -1
  49. package/dist/push.d.ts.map +1 -1
  50. package/dist/push.js +270 -111
  51. package/dist/push.js.map +1 -1
  52. package/dist/store-driver.d.ts.map +1 -1
  53. package/dist/store-driver.js +5 -3
  54. package/dist/store-driver.js.map +1 -1
  55. package/dist/worker-node-imports.d.ts.map +1 -1
  56. package/dist/worker-node-imports.js +2 -1
  57. package/dist/worker-node-imports.js.map +1 -1
  58. package/package.json +6 -6
package/dist/dev.js ADDED
@@ -0,0 +1,67 @@
1
+ /** Transparent local dev-script wrapper with an optional request-trace preload. */
2
+ import { execFileSync, spawn } from 'node:child_process';
3
+ import { constants } from 'node:os';
4
+ import { resolve } from 'node:path';
5
+ export async function dev(options = {}) {
6
+ const project = resolve(options.dir ?? '.');
7
+ const env = { ...process.env };
8
+ if (options.trace !== false) {
9
+ delete env.SUBSTRAT_DEV_TRACE_WARNED;
10
+ // A missing/broken CLI preload must not stop the project's own dev script. The tiny
11
+ // data-URL module catches its dynamic import error before Node loads the script.
12
+ const preload = new URL('./dev-preload.js', import.meta.url).href;
13
+ const source = `try{await import(${JSON.stringify(preload)})}catch(error){if(!process.env.SUBSTRAT_DEV_TRACE_WARNED){process.env.SUBSTRAT_DEV_TRACE_WARNED='1';process.stderr.write('warning: local request traces unavailable: '+String(error)+'\\n')}}`;
14
+ const option = `--import=data:text/javascript;base64,${Buffer.from(source).toString('base64')}`;
15
+ // Error stacks captured by the local trace should point at authored TypeScript when
16
+ // the project's compiled JavaScript ships source maps.
17
+ env.NODE_OPTIONS = [env.NODE_OPTIONS, '--enable-source-maps', option].filter(Boolean).join(' ');
18
+ env.SUBSTRAT_DEV_TRACE_DIR = project;
19
+ }
20
+ // Give the script and its subprocesses one group. A dev script commonly runs through
21
+ // pnpm -> concurrently -> tsx watch; signaling pnpm alone leaves the watcher alive.
22
+ const windows = process.platform === 'win32';
23
+ const grouped = !windows;
24
+ // Windows installs pnpm as a .cmd shim. Only this fixed command goes through
25
+ // cmd.exe: the project path stays in cwd and never becomes shell input.
26
+ const child = spawn(windows ? 'pnpm run dev' : 'pnpm', windows ? [] : ['run', 'dev'], {
27
+ cwd: project, env, stdio: 'inherit', detached: grouped, shell: windows,
28
+ });
29
+ const forward = (signal) => {
30
+ try {
31
+ if (windows && child.pid) {
32
+ // Killing cmd.exe alone leaves pnpm's watcher and server alive. Windows has
33
+ // no POSIX process-group signals, so stop the whole tree before returning.
34
+ execFileSync('taskkill.exe', ['/pid', String(child.pid), '/T', '/F'], {
35
+ stdio: 'ignore', windowsHide: true,
36
+ });
37
+ }
38
+ else if (grouped && child.pid)
39
+ process.kill(-child.pid, signal);
40
+ else
41
+ child.kill(signal);
42
+ }
43
+ catch {
44
+ /* the dev script already exited */
45
+ }
46
+ };
47
+ const onInt = () => forward('SIGINT');
48
+ const onTerm = () => forward('SIGTERM');
49
+ process.on('SIGINT', onInt);
50
+ process.on('SIGTERM', onTerm);
51
+ try {
52
+ return await new Promise((done) => {
53
+ child.once('error', (error) => {
54
+ process.stderr.write(`error: could not run dev script: ${error.message}\n`);
55
+ done(127);
56
+ });
57
+ child.once('exit', (code, signal) => {
58
+ done(code ?? (signal ? 128 + (constants.signals[signal] ?? 1) : 1));
59
+ });
60
+ });
61
+ }
62
+ finally {
63
+ process.off('SIGINT', onInt);
64
+ process.off('SIGTERM', onTerm);
65
+ }
66
+ }
67
+ //# sourceMappingURL=dev.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * `substrat doctor [dir] [--fix]`: is this machine and project ready to build and push?
3
+ *
4
+ * It reads, and changes nothing, unless `--fix` is given. The one thing `--fix` changes is
5
+ * Windows' long-path setting, because that is the one a person cannot be expected to know
6
+ * about: a vertical's `node_modules` holds files deeper than Windows' old 260-character limit,
7
+ * and with the setting off, programs built to go past it (PowerShell, Python, many installers)
8
+ * still stop there. Node goes past it either way; cmd.exe and Explorer never do, and git has its
9
+ * own `core.longpaths`. The setting is machine-wide and needs an administrator, so `--fix` asks Windows to run
10
+ * the one registry write elevated: the person sees Windows' own "allow this app" prompt, once.
11
+ */
12
+ /** What the system calls are, so a test can stand in for the registry and the elevation. */
13
+ export interface DoctorSystem {
14
+ platform: NodeJS.Platform;
15
+ nodeVersion: string;
16
+ /** `reg query` of the long-path value: its stdout, or `undefined` when the value is absent. */
17
+ queryLongPaths: () => string | undefined;
18
+ /** Run the elevated registry write; throws when it did not run (the prompt was declined). */
19
+ elevateLongPaths: () => void;
20
+ }
21
+ /** Every argument is a constant: nothing a person or a project supplies reaches the shell. */
22
+ export declare const ELEVATE_LONG_PATHS_SCRIPT: string;
23
+ export declare const realSystem: () => DoctorSystem;
24
+ /** On, off, or (not Windows) not a question at all. */
25
+ export declare function parseLongPaths(stdout: string | undefined): boolean;
26
+ export interface DoctorResult {
27
+ lines: string[];
28
+ /** How many checks still fail. A non-zero count is a non-zero exit. */
29
+ problems: number;
30
+ }
31
+ export declare function doctor(dir: string, opts?: {
32
+ fix?: boolean;
33
+ }, sys?: DoctorSystem): DoctorResult;
34
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;GAUG;AAEH,4FAA4F;AAC5F,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,+FAA+F;IAC/F,cAAc,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACzC,6FAA6F;IAC7F,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AAID,8FAA8F;AAC9F,eAAO,MAAM,yBAAyB,QAE8C,CAAC;AAErF,eAAO,MAAM,UAAU,QAAO,YAoB5B,CAAC;AAEH,uDAAuD;AACvD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAGlE;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAKD,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,OAAO,CAAA;CAAO,EAAE,GAAG,GAAE,YAA2B,GAAG,YAAY,CAiDhH"}
package/dist/doctor.js ADDED
@@ -0,0 +1,89 @@
1
+ import { execFileSync } from 'node:child_process';
2
+ import { existsSync } from 'node:fs';
3
+ import { join, resolve } from 'node:path';
4
+ import { resolveWrangler } from './push.js';
5
+ const FILESYSTEM_KEY = 'HKLM\\SYSTEM\\CurrentControlSet\\Control\\FileSystem';
6
+ /** Every argument is a constant: nothing a person or a project supplies reaches the shell. */
7
+ export const ELEVATE_LONG_PATHS_SCRIPT = "Start-Process -FilePath reg.exe -Verb RunAs -Wait -WindowStyle Hidden -ArgumentList " +
8
+ `'add','${FILESYSTEM_KEY}','/v','LongPathsEnabled','/t','REG_DWORD','/d','1','/f'`;
9
+ export const realSystem = () => ({
10
+ platform: process.platform,
11
+ nodeVersion: process.versions.node,
12
+ queryLongPaths: () => {
13
+ try {
14
+ return execFileSync('reg.exe', ['query', FILESYSTEM_KEY, '/v', 'LongPathsEnabled'], {
15
+ encoding: 'utf8',
16
+ stdio: ['ignore', 'pipe', 'ignore'],
17
+ windowsHide: true,
18
+ });
19
+ }
20
+ catch {
21
+ return undefined; // reg exits 1 when the value does not exist, which means "off"
22
+ }
23
+ },
24
+ elevateLongPaths: () => {
25
+ execFileSync('powershell.exe', ['-NoProfile', '-NonInteractive', '-Command', ELEVATE_LONG_PATHS_SCRIPT], {
26
+ stdio: ['ignore', 'ignore', 'pipe'],
27
+ windowsHide: true,
28
+ });
29
+ },
30
+ });
31
+ /** On, off, or (not Windows) not a question at all. */
32
+ export function parseLongPaths(stdout) {
33
+ const m = stdout?.match(/LongPathsEnabled\s+REG_DWORD\s+0x([0-9a-f]+)/i);
34
+ return m ? parseInt(m[1], 16) !== 0 : false;
35
+ }
36
+ /** Push needs wrangler 4, and wrangler 4 needs Node 22. */
37
+ const NODE_FOR_PUSH = 22;
38
+ export function doctor(dir, opts = {}, sys = realSystem()) {
39
+ const lines = [];
40
+ let problems = 0;
41
+ const bad = (line, ...hints) => {
42
+ problems++;
43
+ lines.push(` ✗ ${line}`, ...hints.map((h) => ` ${h}`));
44
+ };
45
+ const major = Number(sys.nodeVersion.split('.')[0]);
46
+ if (major >= NODE_FOR_PUSH)
47
+ lines.push(` ✓ Node ${sys.nodeVersion}`);
48
+ else
49
+ bad(`Node ${sys.nodeVersion}: \`substrat push\` needs Node ${NODE_FOR_PUSH} or later, because wrangler 4 does`, 'install a current Node LTS from https://nodejs.org');
50
+ const root = resolve(dir);
51
+ if (!existsSync(join(root, 'package.json'))) {
52
+ lines.push(` – no project in ${root} (no package.json), so wrangler is not checked`);
53
+ }
54
+ else {
55
+ try {
56
+ lines.push(` ✓ wrangler ${resolveWrangler(root).version}, installed in this project`);
57
+ }
58
+ catch {
59
+ bad('wrangler is not installed in this project — `substrat push` builds with it', 'npm install --save-dev wrangler (or: pnpm add -D wrangler)');
60
+ }
61
+ }
62
+ if (sys.platform === 'win32') {
63
+ let on = parseLongPaths(sys.queryLongPaths());
64
+ if (!on && opts.fix) {
65
+ lines.push(' … turning on Windows long paths — Windows asks you to allow it');
66
+ try {
67
+ sys.elevateLongPaths();
68
+ }
69
+ catch {
70
+ /* declined or failed: the re-read below says which way it went */
71
+ }
72
+ on = parseLongPaths(sys.queryLongPaths());
73
+ if (on) {
74
+ lines.push(' ✓ Windows long paths: turned on', ' programs already running keep the old limit: restart your terminal and editor');
75
+ }
76
+ else {
77
+ bad('Windows long paths are still off — the permission prompt was declined or did not appear', 'run `substrat doctor --fix` again and choose Yes');
78
+ }
79
+ }
80
+ else if (on) {
81
+ lines.push(' ✓ Windows long paths are on');
82
+ }
83
+ else {
84
+ bad('Windows long paths are off: node_modules holds files deeper than 260 characters, and programs stop at that limit until it is on', 'substrat doctor --fix (Windows asks you to allow it, once)');
85
+ }
86
+ }
87
+ return { lines, problems };
88
+ }
89
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
package/dist/login.d.ts CHANGED
@@ -1,3 +1,15 @@
1
+ /**
2
+ * The command that hands `url` to the platform's default browser, the URL as ONE argv
3
+ * element that no shell parses. Windows must not go through `cmd /c start`: cmd.exe reads
4
+ * `&` as a command separator, so the browser got `…/auth/cli?port=N` alone, without
5
+ * `state` and `challenge`, and the broker answered "bad cli request". `rundll32
6
+ * url.dll,FileProtocolHandler` opens the URL with no shell in between (what Go's
7
+ * pkg/browser does).
8
+ */
9
+ export declare function browserCommand(platform: NodeJS.Platform, url: string): {
10
+ cmd: string;
11
+ args: string[];
12
+ };
1
13
  /**
2
14
  * Run the full loopback login against `controlPlaneUrl`; returns a session token to store.
3
15
  * `fresh` forces a real re-authentication (`substrat login --fresh`): the broker skips any
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"AAuFA;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAa3G;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhH"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"AA+BA;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAItG;AA8DD;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAa3G;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhH"}
package/dist/login.js CHANGED
@@ -26,11 +26,30 @@ const randomB64url = (n = 32) => b64url(webcrypto.getRandomValues(new Uint8Array
26
26
  async function s256(verifier) {
27
27
  return b64url(new Uint8Array(await webcrypto.subtle.digest('SHA-256', enc.encode(verifier))));
28
28
  }
29
+ /**
30
+ * The command that hands `url` to the platform's default browser, the URL as ONE argv
31
+ * element that no shell parses. Windows must not go through `cmd /c start`: cmd.exe reads
32
+ * `&` as a command separator, so the browser got `…/auth/cli?port=N` alone, without
33
+ * `state` and `challenge`, and the broker answered "bad cli request". `rundll32
34
+ * url.dll,FileProtocolHandler` opens the URL with no shell in between (what Go's
35
+ * pkg/browser does).
36
+ */
37
+ export function browserCommand(platform, url) {
38
+ if (platform === 'darwin')
39
+ return { cmd: 'open', args: [url] };
40
+ if (platform === 'win32')
41
+ return { cmd: 'rundll32', args: ['url.dll,FileProtocolHandler', url] };
42
+ return { cmd: 'xdg-open', args: [url] };
43
+ }
29
44
  function openBrowser(url) {
30
- const cmd = process.platform === 'darwin' ? 'open' : process.platform === 'win32' ? 'cmd' : 'xdg-open';
31
- const args = process.platform === 'win32' ? ['/c', 'start', '', url] : [url];
45
+ const { cmd, args } = browserCommand(process.platform, url);
32
46
  try {
33
- spawn(cmd, args, { stdio: 'ignore', detached: true }).unref();
47
+ // A missing opener (no xdg-open on a headless box) is not a throw here: spawn reports it
48
+ // as an async 'error' event, and an 'error' event with no listener crashes the process
49
+ // mid-login. Swallow it — the printed URL is the fallback either way.
50
+ const child = spawn(cmd, args, { stdio: 'ignore', detached: true, windowsHide: true });
51
+ child.on('error', () => { });
52
+ child.unref();
34
53
  }
35
54
  catch {
36
55
  /* the printed URL is the fallback */
package/dist/login.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;;;;;;;;;GAYG;AAEH,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;AAE9B,SAAS,MAAM,CAAC,KAAiB;IAC/B,IAAI,CAAC,GAAG,EAAE,CAAC;IACX,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,CAAC,IAAI,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC5E,CAAC;AACD,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG,EAAE,EAAU,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9F,KAAK,UAAU,IAAI,CAAC,QAAgB;IAClC,OAAO,MAAM,CAAC,IAAI,UAAU,CAAC,MAAM,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAChG,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;IACvG,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;QACP,qCAAqC;IACvC,CAAC;AACH,CAAC;AAED,iGAAiG;AACjG,SAAS,aAAa,CAAC,aAAqB;IAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;QACjC,IAAI,WAAiC,CAAC;QACtC,IAAI,UAA+B,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,OAAO,CAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC5C,WAAW,GAAG,GAAG,CAAC;YAClB,UAAU,GAAG,GAAG,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACxD,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACjC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,GAAW,EAAQ,EAAE;gBAChD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC;gBACzF,GAAG,CAAC,GAAG,CAAC,6CAA6C,KAAK,oGAAoG,KAAK,WAAW,GAAG,aAAa,CAAC,CAAC;YAClM,CAAC,CAAC;YACF,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,GAAG,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;gBACpC,IAAI,CAAC,cAAc,EAAE,wDAAwD,CAAC,CAAC;gBAC/E,UAAU,CAAC,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,+BAA+B,EAAE,qDAAqD,CAAC,CAAC;gBAC7F,WAAW,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;YACD,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE;YACjC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9D,WAAW,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,UAAU,CAAC,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC,CAAC;YAChF,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAClB,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,eAAuB,EAAE,IAAI,GAAwB,EAAE;IACxF,MAAM,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAE/B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,GAAG,EAAE,kBAAkB,IAAI,UAAU,kBAAkB,CAAC,KAAK,CAAC,cAAc,kBAAkB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC3J,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAChD,OAAO,CAAC,GAAG,CAAC,mCAAmC,OAAO,IAAI,CAAC,CAAC;IAC5D,WAAW,CAAC,OAAO,CAAC,CAAC;IAErB,OAAO,iBAAiB,CAAC,EAAE,EAAE,MAAM,IAAI,EAAE,QAAQ,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,eAAuB,EAAE,IAAY,EAAE,QAAgB;IAC7F,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAC9B,GAAG,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,EACrE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CACzF,CAAC;IACF,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export interface OutboundSighting {
2
2
  host: string;
3
- /** Path relative to the vertical root. */
3
+ /** Path relative to the vertical root, with forward slashes on every platform. */
4
4
  file: string;
5
5
  line: number;
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"outbound-scan.d.ts","sourceRoot":"","sources":["../src/outbound-scan.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAsCD,4GAA4G;AAC5G,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAkCD,sGAAsG;AACtG,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,IAAI,SAAY,GACf;IAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAAC,OAAO,EAAE,UAAU,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CA0DvF;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,4EAA4E;IAC5E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,oGAAoG;IACpG,OAAO,EAAE,CAAC,UAAU,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC;CAC5C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,CAwB1E;AAED,MAAM,WAAW,cAAc;IAC7B,qFAAqF;IACrF,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,uDAAuD;IACvD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAgB,aAAa,CAC3B,SAAS,EAAE,SAAS,gBAAgB,EAAE,EACtC,QAAQ,EAAE,SAAS,MAAM,EAAE;AAC3B,gHAAgH;AAChH,YAAY,GAAE,SAAS,MAAM,EAAO,GACnC,cAAc,CAQhB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,EACxC,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GAC/D,IAAI,CAkCN"}
1
+ {"version":3,"file":"outbound-scan.d.ts","sourceRoot":"","sources":["../src/outbound-scan.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAsCD,4GAA4G;AAC5G,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAkCD,sGAAsG;AACtG,wBAAgB,UAAU,CACxB,MAAM,EAAE,MAAM,EACd,IAAI,SAAY,GACf;IAAE,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAAC,OAAO,EAAE,UAAU,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CA0DvF;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,4EAA4E;IAC5E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,oGAAoG;IACpG,OAAO,EAAE,CAAC,UAAU,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC;CAC5C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,CA0B1E;AAED,MAAM,WAAW,cAAc;IAC7B,qFAAqF;IACrF,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAC/B,uDAAuD;IACvD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAgB,aAAa,CAC3B,SAAS,EAAE,SAAS,gBAAgB,EAAE,EACtC,QAAQ,EAAE,SAAS,MAAM,EAAE;AAC3B,gHAAgH;AAChH,YAAY,GAAE,SAAS,MAAM,EAAO,GACnC,cAAc,CAQhB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,SAAS,EACxC,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAO,GAC/D,IAAI,CAkCN"}
@@ -20,7 +20,7 @@
20
20
  * checkpoint, so nothing here shrinks one silently.
21
21
  */
22
22
  import { readFileSync } from 'node:fs';
23
- import { relative, resolve } from 'node:path';
23
+ import { relative, resolve, sep } from 'node:path';
24
24
  import { parse } from '@babel/parser';
25
25
  import { matchesOutboundHost, outboundHost } from '@substrat-run/contracts';
26
26
  import { resolveRelative, SOURCE_EXTENSIONS } from './schedule-sweeper.js';
@@ -176,6 +176,8 @@ export function scanOutboundHosts(dir, entry) {
176
176
  const sightings = [];
177
177
  const unread = [];
178
178
  const dynamic = [];
179
+ // Printed in a person's or a CI log and compared by tests: one form everywhere, not `src\x.ts` on Windows.
180
+ const shown = (file) => relative(dir, file).split(sep).join('/');
179
181
  const visit = (file) => {
180
182
  if (seen.has(file))
181
183
  return;
@@ -185,13 +187,13 @@ export function scanOutboundHosts(dir, entry) {
185
187
  read = readSource(readFileSync(file, 'utf8'), file);
186
188
  }
187
189
  catch {
188
- unread.push(relative(dir, file));
190
+ unread.push(shown(file));
189
191
  return;
190
192
  }
191
193
  for (const hit of read.hosts)
192
- sightings.push({ ...hit, file: relative(dir, file) });
194
+ sightings.push({ ...hit, file: shown(file) });
193
195
  for (const d of read.dynamic)
194
- dynamic.push({ ...d, file: relative(dir, file) });
196
+ dynamic.push({ ...d, file: shown(file) });
195
197
  for (const spec of read.imports) {
196
198
  const target = resolveRelative(file, spec);
197
199
  if (target && SOURCE_EXTENSIONS.some((ext) => target.endsWith(ext)))
@@ -1 +1 @@
1
- {"version":3,"file":"outbound-scan.js","sourceRoot":"","sources":["../src/outbound-scan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outbound-scan.js","sourceRoot":"","sources":["../src/outbound-scan.ts"],"names":[],"mappings":"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"}
package/dist/preview.d.ts CHANGED
@@ -22,7 +22,7 @@ export interface PreviewCreated {
22
22
  * it — which also means nothing was done about the login at all.
23
23
  */
24
24
  auth?: PreviewAuth;
25
- /** What a preview does not carry over from the app it forks. */
25
+ /** What settings the preview receives from the app it forks. */
26
26
  notes?: string[];
27
27
  }
28
28
  /** How long `preview create` waits for a copy before giving up, ms: the control plane's own job limit. */
@@ -45,7 +45,7 @@ export interface PreviewRow {
45
45
  callbackUrl?: string | null;
46
46
  }
47
47
  /**
48
- * The lines `preview create` prints about the preview's login and what it did not carry over
48
+ * The lines `preview create` prints about the preview's login and settings
49
49
  * (#1704). Every status gets a line, so a preview without a working login is never silent —
50
50
  * and one that could not be wired is marked, since its URL still opens.
51
51
  */
package/dist/preview.js CHANGED
@@ -25,7 +25,7 @@ export const PREVIEW_COPY_WAIT_MS = 6 * 3_600_000;
25
25
  */
26
26
  export const PREVIEW_POLL_FAULTS = 10;
27
27
  /**
28
- * The lines `preview create` prints about the preview's login and what it did not carry over
28
+ * The lines `preview create` prints about the preview's login and settings
29
29
  * (#1704). Every status gets a line, so a preview without a working login is never silent —
30
30
  * and one that could not be wired is marked, since its URL still opens.
31
31
  */
package/dist/promote.d.ts CHANGED
@@ -16,7 +16,8 @@
16
16
  * #2333: an acknowledgement answers ONE review — the diffs printed against the version prod served
17
17
  * when they were read. Every refusal that prints them also prints the `--review` token they were
18
18
  * read with, and the control plane refuses a token whose base or stored rows have moved since
19
- * (and a `--ack-migrations` sent with none), so a person never acknowledges a diff they were not shown.
19
+ * (and a consumed permission or migration acknowledgement sent without one), so a person
20
+ * never acknowledges a diff they were not shown.
20
21
  */
21
22
  import { type MigrationDiff, type PermissionRegistry } from '@substrat-run/contracts';
22
23
  import { type ExportBreaks, type MintedStore, type PromoteResult, type PromoteReviewBinding } from '@substrat-run/control-plane-client';
@@ -1 +1 @@
1
- {"version":3,"file":"promote.d.ts","sourceRoot":"","sources":["../src/promote.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EAaL,KAAK,aAAa,EAElB,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EAC1B,MAAM,oCAAoC,CAAC;AAI5C,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,oBAAoB,CAAA;KAAE,CAAC;CAC/H;AAED,+FAA+F;AAC/F,wBAAgB,WAAW,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAEhE;AAED,yGAAyG;AACzG,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAM3E;AAED,+FAA+F;AAC/F,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,EAAE,CAQ1D;AAED,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAE1D;AAED,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AAEzD,wBAAsB,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAqC1E;AAOD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GACnD,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,EAAE,EAAE,EAAE,kBAAkB,GAAG,IAAI,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,EAAE,CA8BjI;AAYD;;;GAGG;AACH,eAAO,MAAM,IAAI,SAAU,MAAM,KAAG,MAAqD,CAAC;AAwB1F;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,EAAE,CA8C9F"}
1
+ {"version":3,"file":"promote.d.ts","sourceRoot":"","sources":["../src/promote.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAaL,KAAK,aAAa,EAElB,KAAK,kBAAkB,EACxB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EAC1B,MAAM,oCAAoC,CAAC;AAI5C,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,oBAAoB,CAAA;KAAE,CAAC;CAC/H;AAED,+FAA+F;AAC/F,wBAAgB,WAAW,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAEhE;AAED,yGAAyG;AACzG,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI,CAM3E;AAED,+FAA+F;AAC/F,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,EAAE,CAQ1D;AAED,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAE1D;AAED,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AAEzD,wBAAsB,OAAO,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAqC1E;AAOD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GACnD,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI,EAAE,EAAE,EAAE,kBAAkB,GAAG,IAAI,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,EAAE,CA8BjI;AAYD;;;GAGG;AACH,eAAO,MAAM,IAAI,SAAU,MAAM,KAAG,MAAqD,CAAC;AAwB1F;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,EAAE,WAAW,EAAE,OAAO,GAAG,MAAM,EAAE,CA8C9F"}
package/dist/promote.js CHANGED
@@ -16,7 +16,8 @@
16
16
  * #2333: an acknowledgement answers ONE review — the diffs printed against the version prod served
17
17
  * when they were read. Every refusal that prints them also prints the `--review` token they were
18
18
  * read with, and the control plane refuses a token whose base or stored rows have moved since
19
- * (and a `--ack-migrations` sent with none), so a person never acknowledges a diff they were not shown.
19
+ * (and a consumed permission or migration acknowledgement sent without one), so a person
20
+ * never acknowledges a diff they were not shown.
20
21
  */
21
22
  import { diffRegistries, grantShapeHolderNotes, RESERVED_KEY_MARK, reservationNote, roleHolderNote, promoteReviewReasonIn, clipReviewText, discardTally, reviewSql, reviewText, unitemisedRegistryChanges, } from '@substrat-run/contracts';
22
23
  import { ControlPlaneError, } from '@substrat-run/control-plane-client';
@@ -77,14 +78,14 @@ export async function promote(opts) {
77
78
  ? `\n (${parsed.exportBreaksUnavailable}; re-run with --ack-export-break to promote anyway)`
78
79
  : '';
79
80
  const message = failureMessage('promote failed', e.status, body);
80
- // A review that moved under the acknowledgement, or a migration acknowledgement sent with none
81
+ // A review that moved under the acknowledgement, or an acknowledgement sent with none
81
82
  // (#2333), is answered like a digest refusal: by the diffs as they stand now, and their token.
82
83
  const review = promoteReviewReasonIn(parsed);
83
84
  if (!message.includes(NEEDS_ACK) && review === undefined)
84
85
  throw new Error(message + listing);
85
86
  const lines = await explainRefusal(opts, {
86
87
  permission: message.includes('changes the permission surface'),
87
- migration: message.includes('changes migrations') || review === 'promote_review_unbound',
88
+ migration: message.includes('changes migrations'),
88
89
  });
89
90
  throw new Error(`${message}${listing}\n\n${lines.join('\n')}`);
90
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"promote.js","sourceRoot":"","sources":["../src/promote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"promote.js","sourceRoot":"","sources":["../src/promote.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ export interface PromptIo {
2
+ input: NodeJS.ReadableStream;
3
+ output: NodeJS.WritableStream;
4
+ terminal: boolean;
5
+ /** What Ctrl+C does. Default: stop the command, exit code 130, as an interrupted shell command does. */
6
+ onInterrupt: () => void;
7
+ }
8
+ /**
9
+ * Prompt for a plain (non-secret) value; `undefined` when stdin ends before an answer.
10
+ *
11
+ * readline closes on EOF WITHOUT calling the question callback, so a promise that only
12
+ * settles there never settles: the event loop drains and Node exits 0 in the middle of the
13
+ * command (a `substrat login` from an agent or piped stdin "succeeded" and saved nothing).
14
+ * Settling on 'close' makes the end of input an answer every caller must handle.
15
+ *
16
+ * Ctrl+C is not an end of input. On a terminal, readline with no 'SIGINT' listener closes the
17
+ * interface, which would read as "no answer" and let the command carry on: a push asked whether
18
+ * to pin its workspace would go on to upload. So Ctrl+C stops the command instead.
19
+ */
20
+ export declare function ask(question: string, io?: Partial<PromptIo>): Promise<string | undefined>;
21
+ //# sourceMappingURL=prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,wGAAwG;IACxG,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAYD;;;;;;;;;;;GAWG;AACH,wBAAgB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAE,OAAO,CAAC,QAAQ,CAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAe7F"}
package/dist/prompt.js ADDED
@@ -0,0 +1,39 @@
1
+ import { createInterface } from 'node:readline';
2
+ const processIo = () => ({
3
+ input: process.stdin,
4
+ output: process.stdout,
5
+ terminal: Boolean(process.stdin.isTTY),
6
+ onInterrupt: () => {
7
+ process.stdout.write('\n');
8
+ process.exit(130);
9
+ },
10
+ });
11
+ /**
12
+ * Prompt for a plain (non-secret) value; `undefined` when stdin ends before an answer.
13
+ *
14
+ * readline closes on EOF WITHOUT calling the question callback, so a promise that only
15
+ * settles there never settles: the event loop drains and Node exits 0 in the middle of the
16
+ * command (a `substrat login` from an agent or piped stdin "succeeded" and saved nothing).
17
+ * Settling on 'close' makes the end of input an answer every caller must handle.
18
+ *
19
+ * Ctrl+C is not an end of input. On a terminal, readline with no 'SIGINT' listener closes the
20
+ * interface, which would read as "no answer" and let the command carry on: a push asked whether
21
+ * to pin its workspace would go on to upload. So Ctrl+C stops the command instead.
22
+ */
23
+ export function ask(question, io = {}) {
24
+ const { input, output, terminal, onInterrupt } = { ...processIo(), ...io };
25
+ const rl = createInterface({ input, output, terminal });
26
+ return new Promise((resolve) => {
27
+ rl.on('SIGINT', () => {
28
+ rl.removeAllListeners('close');
29
+ rl.close();
30
+ onInterrupt();
31
+ });
32
+ rl.question(question, (answer) => {
33
+ resolve(answer.trim()); // before close(), whose listener would otherwise settle first
34
+ rl.close();
35
+ });
36
+ rl.on('close', () => resolve(undefined));
37
+ });
38
+ }
39
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAUhD,MAAM,SAAS,GAAG,GAAa,EAAE,CAAC,CAAC;IACjC,KAAK,EAAE,OAAO,CAAC,KAAK;IACpB,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;IACtC,WAAW,EAAE,GAAG,EAAE;QAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;CACF,CAAC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE,GAAsB,EAAE;IAC9D,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,SAAS,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC;IAC3E,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IACxD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACnB,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;YAC/B,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,WAAW,EAAE,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAC/B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,8DAA8D;YACtF,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Publish only an explicitly named file. A design document's mere existence grants no access. */
2
+ export declare function readPublishedConcept(dir: string): string | undefined;
3
+ //# sourceMappingURL=published-concept.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"published-concept.d.ts","sourceRoot":"","sources":["../src/published-concept.ts"],"names":[],"mappings":"AAIA,kGAAkG;AAClG,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAoBpE"}