@did-btcr2/cli 0.17.0 → 0.18.1

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 (53) hide show
  1. package/README.md +33 -8
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/cjs/index.js +421 -177
  4. package/dist/esm/src/cli.js +2 -1
  5. package/dist/esm/src/cli.js.map +1 -1
  6. package/dist/esm/src/commands/create.js +4 -0
  7. package/dist/esm/src/commands/create.js.map +1 -1
  8. package/dist/esm/src/commands/deactivate.js +2 -0
  9. package/dist/esm/src/commands/deactivate.js.map +1 -1
  10. package/dist/esm/src/commands/index.js +1 -0
  11. package/dist/esm/src/commands/index.js.map +1 -1
  12. package/dist/esm/src/commands/init.js +87 -44
  13. package/dist/esm/src/commands/init.js.map +1 -1
  14. package/dist/esm/src/commands/keystore.js +61 -42
  15. package/dist/esm/src/commands/keystore.js.map +1 -1
  16. package/dist/esm/src/commands/quickstart.js +158 -0
  17. package/dist/esm/src/commands/quickstart.js.map +1 -0
  18. package/dist/esm/src/commands/update.js +2 -0
  19. package/dist/esm/src/commands/update.js.map +1 -1
  20. package/dist/esm/src/config.js +66 -0
  21. package/dist/esm/src/config.js.map +1 -1
  22. package/dist/esm/src/hints.js +54 -0
  23. package/dist/esm/src/hints.js.map +1 -0
  24. package/dist/types/src/cli.d.ts.map +1 -1
  25. package/dist/types/src/commands/create.d.ts.map +1 -1
  26. package/dist/types/src/commands/deactivate.d.ts.map +1 -1
  27. package/dist/types/src/commands/index.d.ts +1 -0
  28. package/dist/types/src/commands/index.d.ts.map +1 -1
  29. package/dist/types/src/commands/init.d.ts +52 -5
  30. package/dist/types/src/commands/init.d.ts.map +1 -1
  31. package/dist/types/src/commands/keystore.d.ts +37 -1
  32. package/dist/types/src/commands/keystore.d.ts.map +1 -1
  33. package/dist/types/src/commands/quickstart.d.ts +12 -0
  34. package/dist/types/src/commands/quickstart.d.ts.map +1 -0
  35. package/dist/types/src/commands/update.d.ts.map +1 -1
  36. package/dist/types/src/config.d.ts +35 -0
  37. package/dist/types/src/config.d.ts.map +1 -1
  38. package/dist/types/src/hints.d.ts +24 -0
  39. package/dist/types/src/hints.d.ts.map +1 -0
  40. package/dist/types/src/types.d.ts +17 -0
  41. package/dist/types/src/types.d.ts.map +1 -1
  42. package/package.json +5 -5
  43. package/src/cli.ts +2 -0
  44. package/src/commands/create.ts +4 -0
  45. package/src/commands/deactivate.ts +2 -0
  46. package/src/commands/index.ts +1 -0
  47. package/src/commands/init.ts +146 -54
  48. package/src/commands/keystore.ts +95 -55
  49. package/src/commands/quickstart.ts +209 -0
  50. package/src/commands/update.ts +2 -0
  51. package/src/config.ts +75 -0
  52. package/src/hints.ts +51 -0
  53. package/src/types.ts +12 -1
@@ -0,0 +1,158 @@
1
+ import { faucetUrl } from '@did-btcr2/api';
2
+ import { assertSupportedNetwork, readConfiguredDefaultNetwork, runDoctor, } from '../config.js';
3
+ import { CLIError } from '../error.js';
4
+ import { keystoreVerifierId } from '../keystore/file-key-store.js';
5
+ import { ENV_KEYSTORE_TTL, readSessionStatus } from '../keystore/session.js';
6
+ import { formatResult } from '../output.js';
7
+ import { defaultSessionPath } from '../paths.js';
8
+ import { runInit } from './init.js';
9
+ import { resolveSessionTtl, unlockSession } from './keystore.js';
10
+ /** The opinionated default network for `quickstart`: zero local infra, a free faucet, 30s blocks. */
11
+ const QUICKSTART_DEFAULT_NETWORK = 'mutinynet';
12
+ /**
13
+ * Registers the top-level `btcr2 quickstart` (ADR 083): a one-command onboarding
14
+ * that COMPOSES the existing primitives - the {@link runInit} scaffold, the
15
+ * network record, the optional {@link unlockSession} cache, and the advisory
16
+ * {@link runDoctor} probe - into a single step for a workshop follow-along.
17
+ * Reimplements nothing; the ADR 080/081 keystore and session guarantees hold by
18
+ * construction.
19
+ */
20
+ export function registerQuickstartCommand(program, globals) {
21
+ const print = (result) => console.log(formatResult(result, globals()));
22
+ program
23
+ .command('quickstart')
24
+ .description('One-command onboarding: create the home + config + keystore, record the network, and (optionally) cache the session and probe endpoints.')
25
+ .option('-n, --network <network>', 'Bitcoin network to set up <bitcoin|testnet3|testnet4|signet|mutinynet|regtest> (default: mutinynet)')
26
+ .option('--dev', 'Establish an UNENCRYPTED dev keystore: plaintext keys, no passphrase. Testnet only.', false)
27
+ .option('--unlock', 'Cache the passphrase for the session so later commands do not re-prompt (ADR 081).', false)
28
+ .option('--ttl <duration>', `Session lifetime with --unlock: bare seconds or an s/m/h suffix (default 1h, max 24h). Also $${ENV_KEYSTORE_TTL}.`)
29
+ .option('--no-doctor', 'Skip the endpoint reachability probe.')
30
+ .option('--allow-mainnet', 'Permit -n bitcoin (records mainnet as the default; dev keystores are still refused).', false)
31
+ .option('--force', 'Re-create the config even if it already exists (never the keystore).', false)
32
+ .action(async (options) => {
33
+ const g = globals();
34
+ const explicit = options.network ? assertSupportedNetwork(options.network) : undefined;
35
+ // The network quickstart will operate on, computed BEFORE any write so the
36
+ // mainnet guard sees the real target: explicit -n, else an existing
37
+ // defaults.network, else the mutinynet default. runInit resolves to the
38
+ // same value.
39
+ const network = explicit ?? readConfiguredDefaultNetwork(g) ?? QUICKSTART_DEFAULT_NETWORK;
40
+ // Mainnet is guarded before any files are written (ADR 083). A dev keystore
41
+ // never operates on mainnet; an encrypted mainnet setup needs the explicit
42
+ // opt-in that also gates the session-unlock mainnet suspension.
43
+ if (network === 'bitcoin') {
44
+ if (options.dev) {
45
+ throw new CLIError('Refusing to quickstart a mainnet (bitcoin) dev keystore: dev keystores store keys in plaintext '
46
+ + 'and never operate on mainnet. Drop --dev, or choose a testnet with -n.', 'MAINNET_QUICKSTART_REFUSED_ERROR', { network });
47
+ }
48
+ if (!options.allowMainnet) {
49
+ throw new CLIError('Refusing to quickstart on mainnet (bitcoin) without --allow-mainnet. Pass --allow-mainnet to '
50
+ + 'record mainnet as the default, or choose a testnet with -n (the default is mutinynet).', 'MAINNET_QUICKSTART_REFUSED_ERROR', { network });
51
+ }
52
+ }
53
+ // 1-2. Scaffold and record the network. An explicit -n always writes; a
54
+ // merely-defaulted mutinynet writes only when defaults.network is unset.
55
+ const init = runInit(g, {
56
+ dev: options.dev,
57
+ force: options.force,
58
+ network: explicit,
59
+ fallbackNetwork: explicit ? undefined : QUICKSTART_DEFAULT_NETWORK,
60
+ captureEstablishedPassphrase: !!options.unlock && !options.dev,
61
+ });
62
+ // 3. Optionally cache the session (ADR 081 opt-in; never on a dev keystore).
63
+ let unlocked = false;
64
+ let session;
65
+ if (options.unlock && !options.dev) {
66
+ const outcome = cacheSession(g, init, options.ttl, !!options.allowMainnet);
67
+ unlocked = outcome.unlocked;
68
+ session = outcome.session;
69
+ }
70
+ // 4. Advisory endpoint probe (on by default; a failed probe warns, exit 0).
71
+ let doctor;
72
+ if (options.doctor) {
73
+ doctor = await runDoctor(init.network, g);
74
+ }
75
+ print({
76
+ action: 'quickstart',
77
+ data: {
78
+ home: init.home,
79
+ config: init.config,
80
+ keystore: init.keystore,
81
+ network: init.network,
82
+ created: init.created,
83
+ protection: init.protection,
84
+ unlocked,
85
+ ...(session ? { session } : {}),
86
+ ...(doctor ? { doctor } : {}),
87
+ },
88
+ });
89
+ if (!g.quiet && g.output !== 'json') {
90
+ printNextSteps(init, unlocked, session, doctor);
91
+ }
92
+ });
93
+ }
94
+ /**
95
+ * Caches the session for `quickstart --unlock`. On a fresh keystore, reuses the
96
+ * establish-time confirmed passphrase (no second prompt). On an existing keystore
97
+ * with a live matching session, skips (idempotent re-run). Otherwise acquires and
98
+ * verifies the passphrase. In a non-interactive context with no passphrase source
99
+ * on an existing keystore, the step is a non-fatal skip (warn, `unlocked: false`),
100
+ * so `quickstart` still exits 0 (ADR 083).
101
+ */
102
+ function cacheSession(g, init, ttlFlag, allowMainnet) {
103
+ const ttlMs = resolveSessionTtl(ttlFlag);
104
+ const freshlyEstablished = init.created.includes('keystore');
105
+ // Existing encrypted keystore already unlocked: report it and skip re-writing.
106
+ if (!freshlyEstablished) {
107
+ const status = readSessionStatus(defaultSessionPath(g), init.keystore, keystoreVerifierId(init.keystore));
108
+ if (status.active && status.expiresAt !== undefined) {
109
+ return { unlocked: true, session: { expiresAt: status.expiresAt, ttlSeconds: status.secondsRemaining ?? 0 } };
110
+ }
111
+ }
112
+ try {
113
+ const written = unlockSession({
114
+ g,
115
+ keystorePath: init.keystore,
116
+ network: init.network,
117
+ allowMainnet,
118
+ ttlMs,
119
+ // Reuse the establish-time passphrase on a fresh keystore: no second prompt.
120
+ passphrase: freshlyEstablished ? init.establishedPassphrase : undefined,
121
+ });
122
+ return { unlocked: true, session: { expiresAt: written.expiresAt, ttlSeconds: written.ttlSeconds } };
123
+ }
124
+ catch (error) {
125
+ // On an EXISTING keystore with no passphrase source and no terminal, caching
126
+ // is a non-fatal skip: the scaffold already succeeded (ADR 083). A fresh
127
+ // keystore cannot reach here (its passphrase was just captured), and an
128
+ // interactive wrong passphrase still propagates.
129
+ const type = error.type;
130
+ if (!freshlyEstablished && !process.stdin.isTTY && type === 'PASSPHRASE_REQUIRED_ERROR') {
131
+ if (!g.quiet) {
132
+ process.stderr.write('note: no passphrase source and no terminal; skipped caching the session. '
133
+ + 'Run "btcr2 keystore unlock" later to cache it.\n');
134
+ }
135
+ return { unlocked: false };
136
+ }
137
+ throw error;
138
+ }
139
+ }
140
+ /** Prints the text-mode next-step hints after quickstart (ADR 082/083). */
141
+ function printNextSteps(init, unlocked, session, doctor) {
142
+ const lines = [`btcr2 home ready at ${init.home} on ${init.network}.`];
143
+ if (unlocked && session) {
144
+ lines.push(`Session cached until ${new Date(session.expiresAt).toISOString()}; signing will not re-prompt until it expires.`);
145
+ }
146
+ if (init.protection === 'dev') {
147
+ lines.push('Dev keystore: keys are stored in plaintext; mainnet operations are refused.');
148
+ }
149
+ if (doctor && doctor.checks.some((c) => !c.ok)) {
150
+ lines.push('Warning: one or more endpoints were unreachable (see the doctor report). Re-run "btcr2 config doctor" for detail.');
151
+ }
152
+ lines.push('Next: btcr2 key generate --name demo --set-active');
153
+ const faucet = faucetUrl(init.network);
154
+ if (faucet)
155
+ lines.push(`Faucet (fund your beacon after "btcr2 create"): ${faucet}`);
156
+ process.stderr.write(`${lines.join('\n')}\n`);
157
+ }
158
+ //# sourceMappingURL=quickstart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../../src/commands/quickstart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,SAAS,GAEV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAsB,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEjE,qGAAqG;AACrG,MAAM,0BAA0B,GAAkB,WAAW,CAAC;AAK9D;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAgB,EAAE,OAA4B;IACtF,MAAM,KAAK,GAAG,CAAC,MAAqB,EAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IAE5F,OAAO;SACJ,OAAO,CAAC,YAAY,CAAC;SACrB,WAAW,CAAC,0IAA0I,CAAC;SACvJ,MAAM,CACL,yBAAyB,EACzB,qGAAqG,CACtG;SACA,MAAM,CAAC,OAAO,EAAE,qFAAqF,EAAE,KAAK,CAAC;SAC7G,MAAM,CAAC,UAAU,EAAE,oFAAoF,EAAE,KAAK,CAAC;SAC/G,MAAM,CAAC,kBAAkB,EAAE,gGAAgG,gBAAgB,GAAG,CAAC;SAC/I,MAAM,CAAC,aAAa,EAAE,uCAAuC,CAAC;SAC9D,MAAM,CAAC,iBAAiB,EAAE,sFAAsF,EAAE,KAAK,CAAC;SACxH,MAAM,CAAC,SAAS,EAAE,sEAAsE,EAAE,KAAK,CAAC;SAChG,MAAM,CAAC,KAAK,EAAE,OAQd,EAAE,EAAE;QACH,MAAM,CAAC,GAAG,OAAO,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvF,2EAA2E;QAC3E,oEAAoE;QACpE,wEAAwE;QACxE,cAAc;QACd,MAAM,OAAO,GAAG,QAAQ,IAAI,4BAA4B,CAAC,CAAC,CAAC,IAAI,0BAA0B,CAAC;QAE1F,4EAA4E;QAC5E,2EAA2E;QAC3E,gEAAgE;QAChE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,MAAM,IAAI,QAAQ,CAChB,iGAAiG;sBAC/F,wEAAwE,EAC1E,kCAAkC,EAClC,EAAE,OAAO,EAAE,CACZ,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBAC1B,MAAM,IAAI,QAAQ,CAChB,+FAA+F;sBAC7F,wFAAwF,EAC1F,kCAAkC,EAClC,EAAE,OAAO,EAAE,CACZ,CAAC;YACJ,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,EAAE;YACtB,GAAG,EAA4B,OAAO,CAAC,GAAG;YAC1C,KAAK,EAA0B,OAAO,CAAC,KAAK;YAC5C,OAAO,EAAwB,QAAQ;YACvC,eAAe,EAAgB,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,0BAA0B;YAChF,4BAA4B,EAAG,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG;SAChE,CAAC,CAAC;QAEH,6EAA6E;QAC7E,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,OAAkC,CAAC;QACvC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC3E,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;YAC5B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC5B,CAAC;QAED,4EAA4E;QAC5E,IAAI,MAAgC,CAAC;QACrC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;QAED,KAAK,CAAC;YACJ,MAAM,EAAG,YAAY;YACrB,IAAI,EAAK;gBACP,IAAI,EAAS,IAAI,CAAC,IAAI;gBACtB,MAAM,EAAO,IAAI,CAAC,MAAM;gBACxB,QAAQ,EAAK,IAAI,CAAC,QAAQ;gBAC1B,OAAO,EAAM,IAAI,CAAC,OAAO;gBACzB,OAAO,EAAM,IAAI,CAAC,OAAO;gBACzB,UAAU,EAAG,IAAI,CAAC,UAAU;gBAC5B,QAAQ;gBACR,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9B;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACpC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAClD,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,YAAY,CACnB,CAA4B,EAC5B,IAA4B,EAC5B,OAAiC,EACjC,YAAsB;IAEtB,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE7D,+EAA+E;IAC/E,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,iBAAiB,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1G,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,gBAAgB,IAAI,CAAC,EAAE,EAAE,CAAC;QAChH,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,aAAa,CAAC;YAC5B,CAAC;YACD,YAAY,EAAG,IAAI,CAAC,QAAQ;YAC5B,OAAO,EAAQ,IAAI,CAAC,OAAO;YAC3B,YAAY;YACZ,KAAK;YACL,6EAA6E;YAC7E,UAAU,EAAK,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS;SAC3E,CAAC,CAAC;QACH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;IACvG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,6EAA6E;QAC7E,yEAAyE;QACzE,wEAAwE;QACxE,iDAAiD;QACjD,MAAM,IAAI,GAAI,KAA2B,CAAC,IAAI,CAAC;QAC/C,IAAI,CAAC,kBAAkB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,KAAK,2BAA2B,EAAE,CAAC;YACxF,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;gBACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,2EAA2E;sBACzE,kDAAkD,CACrD,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAC7B,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,SAAS,cAAc,CACrB,IAAwB,EACxB,QAAkB,EAClB,OAAoC,EACpC,MAAmC;IAEnC,MAAM,KAAK,GAAa,CAAC,uBAAuB,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACjF,IAAI,QAAQ,IAAI,OAAO,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,gDAAgD,CAAC,CAAC;IAChI,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,KAAK,KAAK,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,mHAAmH,CAAC,CAAC;IAClI,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,mDAAmD,MAAM,EAAE,CAAC,CAAC;IACpF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { KeyManagerSigner } from '@did-btcr2/key-manager';
2
2
  import { assertKeystoreAllowedForNetwork, deriveNetwork, resolveBroadcastOptions, resolveSigningKeyRef } from '../config.js';
3
3
  import { CLIError } from '../error.js';
4
+ import { printWatchHint } from '../hints.js';
4
5
  import { resolveKeyRef } from '../keystore/resolve-key-ref.js';
5
6
  import { formatResult } from '../output.js';
6
7
  export function registerUpdateCommand(program, factory, globals) {
@@ -63,6 +64,7 @@ export function registerUpdateCommand(program, factory, globals) {
63
64
  ...(broadcastOptions ? { broadcastOptions } : {}),
64
65
  });
65
66
  console.log(formatResult({ action: 'update', data }, globals()));
67
+ printWatchHint(globals(), network, data.txid);
66
68
  });
67
69
  }
68
70
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/commands/update.ts"],"names":[],"mappings":"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"}
@@ -241,6 +241,72 @@ export function resolveDefaultNetwork(overrides) {
241
241
  return network;
242
242
  return 'regtest';
243
243
  }
244
+ /**
245
+ * The network recorded at `defaults.network` in the config file, validated, or
246
+ * `undefined` when the file is absent, malformed, or the value is unset/unknown.
247
+ * Unlike {@link resolveDefaultNetwork} this consults ONLY the raw
248
+ * `defaults.network` (no profile fallback, no regtest default), so `quickstart`
249
+ * can distinguish "the operator set a default" from "there is none yet" before
250
+ * it writes (ADR 083). Never throws: a malformed config is surfaced loudly by
251
+ * the write path, so this pre-write read stays quiet.
252
+ */
253
+ export function readConfiguredDefaultNetwork(overrides) {
254
+ const configPath = overrides?.config ?? defaultConfigPath(overrides);
255
+ let raw;
256
+ try {
257
+ raw = parseConfigFileRaw(configPath);
258
+ }
259
+ catch {
260
+ return undefined;
261
+ }
262
+ const value = raw ? getConfigPath(raw, 'defaults.network') : undefined;
263
+ return typeof value === 'string' && SUPPORTED_NETWORKS.includes(value)
264
+ ? value
265
+ : undefined;
266
+ }
267
+ /**
268
+ * Persists `defaults.network` idempotently and returns the resolved network,
269
+ * the shared network-recording step behind `btcr2 init -n` and `btcr2 quickstart`
270
+ * (ADR 083). Writes when `explicit` (an explicit `-n`) is given, or when a
271
+ * `fallback` is given and the raw config has no `defaults.network` yet. Keyed on
272
+ * the **raw** file value (not {@link resolveDefaultNetwork}, which never returns
273
+ * undefined), so a defaulted re-run never clobbers a network the operator set
274
+ * earlier. When neither condition writes, the existing default is returned
275
+ * unchanged. Assumes `configPath` names a parseable config (the caller has just
276
+ * scaffolded one, or an existing one that a malformed-JSON read surfaces loudly).
277
+ */
278
+ export function persistDefaultNetwork(configPath, opts) {
279
+ const raw = parseConfigFileRaw(configPath);
280
+ const rawValue = raw ? getConfigPath(raw, 'defaults.network') : undefined;
281
+ const rawNetwork = typeof rawValue === 'string' && SUPPORTED_NETWORKS.includes(rawValue)
282
+ ? rawValue
283
+ : undefined;
284
+ if (opts.explicit) {
285
+ if (opts.explicit !== rawNetwork) {
286
+ writeConfigFile(configPath, (r) => setConfigPath(r, 'defaults.network', opts.explicit));
287
+ return { network: opts.explicit, wrote: true };
288
+ }
289
+ return { network: opts.explicit, wrote: false };
290
+ }
291
+ if (rawNetwork)
292
+ return { network: rawNetwork, wrote: false };
293
+ if (opts.fallback) {
294
+ writeConfigFile(configPath, (r) => setConfigPath(r, 'defaults.network', opts.fallback));
295
+ return { network: opts.fallback, wrote: true };
296
+ }
297
+ return { network: resolveDefaultNetwork(opts.overrides), wrote: false };
298
+ }
299
+ /**
300
+ * Validates an explicit network string against {@link SUPPORTED_NETWORKS},
301
+ * returning it typed as a {@link NetworkOption} or throwing a {@link CLIError}.
302
+ * Shared by the `-n/--network` flags on `init` and `quickstart` (ADR 083).
303
+ */
304
+ export function assertSupportedNetwork(value) {
305
+ if (!SUPPORTED_NETWORKS.includes(value)) {
306
+ throw new CLIError(`Invalid network "${value}". Must be one of ${SUPPORTED_NETWORKS.join(', ')}.`, 'INVALID_ARGUMENT_ERROR', { network: value });
307
+ }
308
+ return value;
309
+ }
244
310
  /**
245
311
  * Reports a coherence conflict between the network a `create` run is about to
246
312
  * encode and the network the active profile declares, so the CLI can warn
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,8BAA8B,EAAE,mBAAmB,EAAE,UAAU,EAA2D,MAAM,gBAAgB,CAAC;AAErK,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAuE,MAAM,YAAY,CAAC;AAEnI,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAmH7B,kEAAkE;AAClE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEvC;;;;;;;;;GASG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,MAA8C;IAC1F,MAAM,GAAG,GAA6B,cAAc,CAAC,IAAI,CAAyC,IAAI,EAAE,CAAC;IACzG,MAAM,CAAC,GAAG,CAAC,CAAC;IACZ,GAAG,CAAC,aAAa,GAAG,qBAAqB,CAAC;IAC1C,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IAChC,eAAe,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,MAAM,QAAQ,GAAG;QACf,aAAa,EAAG,qBAAqB;QACrC,QAAQ,EAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;QAClC,QAAQ,EAAQ,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAE,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC;KAC3E,CAAC;IACF,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;IAChC,eAAe,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACzE,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,aAAa,CAAC,MAA+B,EAAE,IAAY;IACzE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAC3B,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAE,IAA4C,EAAE,CAAC,GAAG,CAAC,EACnE,MAAM,CACP,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAE,WAAW,EAAE,aAAa,EAAE,WAAW,CAAE,CAAC,CAAC;AAEzE,8FAA8F;AAC9F,SAAS,aAAa,CAAC,GAAW,EAAE,IAAY;IAC9C,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,QAAQ,CAAC,gCAAgC,GAAG,SAAS,IAAI,IAAI,EAAE,wBAAwB,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IACpH,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,aAAa,CAAC,MAA+B,EAAE,IAAY,EAAE,KAAc;IACzF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACxB,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,QAAQ,CAAC,gCAAgC,EAAE,wBAAwB,CAAC,CAAC;IAC1F,IAAI,IAAI,GAAG,MAAM,CAAC;IAClB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACxE,IAAI,GAAG,IAAI,CAAC,GAAG,CAA4B,CAAC;IAC9C,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;AACrB,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,eAAe,CAAC,MAA+B,EAAE,IAAY;IAC3E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACxB,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,IAAI,IAAI,GAAwC,MAAM,CAAC;IACvD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,GAAG,IAAI,EAAE,CAAC,GAAG,CAAwC,CAAC;QAC1D,IAAI,CAAC,IAAI;YAAE,OAAO;IACpB,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC;AAaD;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAO,gBAAgB;IAC/B,WAAW,EAAI,mBAAmB;IAClC,YAAY,EAAG,oBAAoB;IACnC,YAAY,EAAG,oBAAoB;IACnC,WAAW,EAAI,mBAAmB;IAClC,WAAW,EAAI,mBAAmB;IAClC,WAAW,EAAI,mBAAmB;IAClC,WAAW,EAAI,mBAAmB;IAClC,QAAQ,EAAO,gBAAgB;CACvB,CAAC;AAEX;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,GAAG,GAAG,CAAC,GAAW,EAAsB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IAC/E,OAAO;QACL,OAAO,EAAM,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACnC,SAAS,EAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;QACtC,UAAU,EAAG,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC;QACvC,UAAU,EAAG,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC;QACvC,UAAU,EAAG,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;QACtC,SAAS,EAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;KACvC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,IAAK,KAA2B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACrE,MAAM,IAAI,QAAQ,CAChB,iCAAiC,IAAI,KAAM,KAAe,CAAC,OAAO,EAAE,EACpE,mBAAmB,EACnB,EAAE,IAAI,EAAE,CACT,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;IACxD,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,IAAI,QAAQ,CAChB,kBAAkB,IAAI,uBAAwB,KAAe,CAAC,OAAO,IAAI;cACvE,8EAA8E,EAChF,oBAAoB,EACpB,EAAE,IAAI,EAAE,CACT,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3C,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACjC,OAAO,MAAoB,CAAC;AAC9B,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,GAA4B,EAAE,IAAY;IACpE,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9E,IAAI,OAAO,GAAG,qBAAqB,EAAE,CAAC;QACpC,MAAM,IAAI,QAAQ,CAChB,kBAAkB,IAAI,sBAAsB,OAAO,gCAAgC;cACjF,GAAG,qBAAqB,qCAAqC,EAC/D,6BAA6B,EAC7B,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,CACjE,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAChC,MAAwB,EACxB,WAAoB;IAEpB,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,OAAO;QACL,OAAO,EAAM,OAAO,CAAC,GAAG,EAAE,IAAI;QAC9B,SAAS,EAAI,OAAO,CAAC,GAAG,EAAE,MAAM;QAChC,UAAU,EAAG,OAAO,CAAC,GAAG,EAAE,OAAO;QACjC,UAAU,EAAG,OAAO,CAAC,GAAG,EAAE,OAAO;QACjC,UAAU,EAAG,OAAO,CAAC,GAAG,EAAE,OAAO;QACjC,SAAS,EAAI,OAAO,CAAC,GAAG,EAAE,MAAM;KACjC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAClC,IAAkC,EAClC,SAA+B;IAE/B,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC;IACzE,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAE1D,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACjE,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAqB,CAAC,CAAC,CAAC,CAAC,IAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC7F,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAA+B;IACnE,MAAM,UAAU,GAAG,SAAS,EAAE,MAAM,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAExC,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC;IACzC,IAAI,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAEvE,MAAM,EAAE,OAAO,EAAE,GAAG,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC1D,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAyB,EACzB,SAA+B;IAE/B,gFAAgF;IAChF,8EAA8E;IAC9E,+CAA+C;IAC/C,IAAI,IAA4B,CAAC;IACjC,IAAI,CAAC;QACH,IAAI,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC1E,IAAI,IAAI,IAAI,QAAQ,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAA4D;IAC9F,MAAM,UAAU,GAA8B;QAC5C,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,SAAS;KACtC,CAAC;IACF,IAAI,CAAC;QACH,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClG,CAAC;IAAC,MAAM,CAAC;QACP,wEAAwE;QACxE,2EAA2E;IAC7E,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM;YAAE,OAAO,SAAS,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAcD;;;;;;;;GAQG;AACH,SAAS,cAAc,CACrB,SAAmC,EACnC,GAAmC,EACnC,aAAmC;IAEnC,MAAM,MAAM,GAA2E;QACrF,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAM,IAAI,EAAE,SAAS,EAAE,UAAU,EAAM,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE;QAC5G,EAAE,GAAG,EAAE,KAAK,EAAG,GAAG,EAAE,GAAG,EAAE,SAAS,EAAY,IAAI,EAAE,GAAG,EAAE,UAAU,EAAY,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE;QACtG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE;KACjH,CAAC;IACF,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAC;IACpE,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;IAClI,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;IAC7G,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IACxH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAyB,EACzB,SAA+B;IAE/B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IAExB,iFAAiF;IACjF,wEAAwE;IACxE,gFAAgF;IAChF,MAAM,UAAU,GAAG,SAAS,EAAE,MAAM,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,aAAa,IAAI,OAAO,CAAC;IAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAExE,iCAAiC;IACjC,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;IAE/B,+EAA+E;IAC/E,8EAA8E;IAC9E,gFAAgF;IAChF,yCAAyC;IACzC,MAAM,IAAI,GAAG,CAAC,IAAa,EAAE,MAAe,EAAE,OAAgB,EAAsB,EAAE,CACpF,YAAY,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC;IAEtE,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IAEtD,MAAM,GAAG,GAAqB,EAAE,OAAO,EAAE,CAAC;IAE1C,8EAA8E;IAC9E,yEAAyE;IACzE,+EAA+E;IAC/E,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,CAAC,SAAS,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACtH,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;QAC3B,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACzG,CAAC;IAED,iFAAiF;IACjF,mEAAmE;IACnE,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAC/E,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,CAAC,SAAS,EAAE,YAAY,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAEtH,8EAA8E;IAC9E,4EAA4E;IAC5E,+EAA+E;IAC/E,+EAA+E;IAC/E,6EAA6E;IAC7E,+EAA+E;IAC/E,gFAAgF;IAChF,2BAA2B;IAC3B,MAAM,oBAAoB,GAAG,8BAA8B,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC;IACvF,MAAM,QAAQ,GAAG,OAAO,KAAK,SAAS,IAAI,SAAS,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,CAAC;IAC9F,MAAM,UAAU,GAAG,OAAO,EAAE,GAAG,KAAK,SAAS,IAAI,oBAAoB,CAAC;IACtE,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC;QACtE,GAAG,CAAC,GAAG,GAAG;YACR,GAAG,CAAC,OAAO,EAAE,GAAG,KAAM,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClE,GAAG,CAAC,QAAQ,KAAU,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,iEAAiE;IACjE,MAAM,UAAU,GAAG,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;IACvI,IAAI,UAAU,KAAK,SAAS;QAAE,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC;IAEzD,sEAAsE;IACtE,+EAA+E;IAC/E,2DAA2D;IAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACzF,MAAM,SAAS,GAAI,IAAI,CAAC,SAAS,EAAE,SAAS,EAAG,GAAG,CAAC,SAAS,EAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACxF,MAAM,UAAU,GAAG,cAAc,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IACpI,MAAM,GAAG,GAAc,EAAE,CAAC;IAC1B,IAAI,UAAU;QAAE,GAAG,CAAC,OAAO,GAAG,UAAU,CAAC;IACzC,IAAI,SAAS;QAAG,GAAG,CAAC,MAAM,GAAI,SAAS,CAAC;IACxC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC;QAC3B,0EAA0E;QAC1E,yEAAyE;QACzE,4EAA4E;QAC5E,wCAAwC;QACxC,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS;YAAE,GAAG,CAAC,OAAO,GAAG,mBAAmB,CAAC;IACnE,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,IAAI,SAAS,IAAI,UAAU,KAAK,SAAS,CAAC;IAEnE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AACzC,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,cAAc,CAAC,IAAa,EAAE,MAAe,EAAE,OAAgB,EAAE,QAAQ,GAAG,SAAS,EAAE,GAAG,GAAG,CAAC;IACrG,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACtH,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,GAAG,EAAE,CAAC;QACrC,MAAM,IAAI,QAAQ,CAChB,WAAW,QAAQ,WAAW,GAAG,2CAA2C,GAAG,GAAG,EAClF,wBAAwB,EACxB,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAe,EAAE,QAAQ,GAAG,UAAU;IACpE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACjD,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACzD,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;YAC7B,MAAM,IAAI,QAAQ,CAChB,WAAW,QAAQ,KAAK,KAAK,2BAA2B,EACxD,wBAAwB,EACxB,EAAE,MAAM,EAAE,KAAK,EAAE,CAClB,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CACnB,IAAkC,EAClC,QAAkC;IAElC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IACzC,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,EAAE,CAAC;AAClC,CAAC;AAED,2FAA2F;AAC3F,MAAM,CAAC,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AAE3D,4FAA4F;AAC5F,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AACrC,CAAC;AAED,8GAA8G;AAC9G,SAAS,cAAc,CAAC,IAAY,EAAE,MAAc;IAClD,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,IAAI,QAAQ,CAChB,mCAAmC,MAAM,OAAO,IAAI,KAAM,KAAe,CAAC,OAAO,EAAE,EACnF,mBAAmB,EACnB,EAAE,IAAI,EAAE,CACT,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,mFAAmF;AACnF,SAAS,eAAe;IACtB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,OAAO,cAAc,CAAC,IAAI,EAAE,iBAAiB,iBAAiB,EAAE,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAwB,EACxB,SAA0C,EAC1C,KAAuD;IAEvD,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/E,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACtE,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,aAAa,IAAI,OAAO,CAAC,EAAE,GAAG,CAAC;IAEnE,MAAM,OAAO,GAAqB,EAAE,CAAC;IAErC,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC;WACzC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;WAC5C,CAAC,OAAO,UAAU,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACxF,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,CAAC,YAAY,GAAG,IAAI,kBAAkB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;IAEtG,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,YAAY,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IACnG,IAAI,aAAa;QAAE,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IAEzD,OAAO,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC;AAED,oFAAoF;AACpF,SAAS,YAAY,CAAC,GAAW;IAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACzB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,QAAQ,CAChB,uBAAuB,GAAG,kDAAkD,EAC5E,wBAAwB,EACxB,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAmCD;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAsB,EAAE,SAA+B;IAC5F,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/E,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,aAAa,IAAI,OAAO,CAAC;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IACtD,MAAM,GAAG,GAAG,gBAAgB,EAAE,CAAC;IAE/B,MAAM,GAAG,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;IAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;IAC9C,MAAM,IAAI,GAAG,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAEzD,MAAM,GAAG,GAAG,CAAC,IAAa,EAAE,MAAe,EAAE,OAAiB,EAAc,EAAE,CAC5E,YAAY,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM;QACvC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK;YAC1C,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM;gBACrF,CAAC,CAAC,SAAS,CAAC;IAEpB,6EAA6E;IAC7E,qEAAqE;IACrE,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAEhG,gFAAgF;IAChF,wEAAwE;IACxE,iFAAiF;IACjF,iFAAiF;IACjF,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,OAAO,EAAE,GAAG,IAAI,SAAS,CAAC;IACzC,MAAM,YAAY,GAAG,OAAO,EAAE,IAAI,KAAK,SAAS;WAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,KAAK,SAAS;WAC5C,MAAM,EAAE,QAAQ,KAAK,SAAS,CAAC;IAEpC,OAAO;QACL,OAAO;QACP,OAAO,EAAG,aAAa;QACvB,GAAG,EAAO;YACR,IAAI,EAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAM,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;YACrG,MAAM,EAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAO,MAAM,EAAE,OAAO,EAAE,GAAG,KAAM,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE;YAClG,OAAO,EAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAG,MAAM,EAAE,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE;YAClG,OAAO,EAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAG,MAAM,EAAE,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE;YAC3H,SAAS,EAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAK,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE;YAC7G,SAAS,EAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;SACzI;QACD,GAAG,EAAG;YACJ,OAAO,EAAK,EAAE,KAAK,EAAE,aAAa,EAAQ,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAqB,MAAM,CAAC,UAAU,CAAC,EAAE;YACpI,MAAM,EAAM,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAM,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,EAAG,GAAG,CAAC,SAAS,EAAsB,MAAM,CAAC,SAAS,CAAC,EAAE;YACpI,SAAS,EAAG,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAG,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;SAC1I;KACF,CAAC;AACJ,CAAC;AAgBD,0DAA0D;AAC1D,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC,yFAAyF;AACzF,KAAK,UAAU,aAAa,CAC1B,QAAkC,EAClC,MAAiB,EACjB,GAAiB,EACjB,IAAwE;IAExE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAI,IAAI,EAAE,MAAM,IAAI,KAAK;YAC/B,OAAO,EAAG,IAAI,EAAE,OAAO;YACvB,MAAM,EAAI,WAAW,CAAC,OAAO,CAAC,uBAAuB,CAAC;SACvD,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,EAAE;YACX,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE;YAChC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC;IAC3E,CAAC;AACH,CAAC;AAED,oFAAoF;AACpF,SAAS,gBAAgB,CAAI,OAAmB,EAAE,EAAU;IAC1D,IAAI,KAAoC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QAC/C,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,IAAI,CAAC,CAAE,OAAO,EAAE,OAAO,CAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAsB,EAAE,SAA+B;IACrF,MAAM,GAAG,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAClD,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,QAAQ,oBAAoB,EAAE,EAAE,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAE7I,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC;IACnC,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,eAAe,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,gBAAgB,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,uBAAuB,CAAC,CAAC;YACzE,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAG,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,yEAAyE;IACzE,yDAAyD;IACzD,MAAM,IAAI,GAAG,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACzD,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,iBAAiB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACzG,CAAC;SAAM,CAAC;QACN,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI,mBAAmB,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC/E,MAAM,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5D,OAAO;QACL,MAAM;QACN,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClH,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAuB,EAAE,SAA+B;IACxF,OAAO,SAAS,CAAC,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,SAA+B,EAAE,OAAuB;IAChF,MAAM,YAAY,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAClD,4EAA4E;IAC5E,6EAA6E;IAC7E,gFAAgF;IAChF,0EAA0E;IAC1E,iCAAiC;IACjC,MAAM,kBAAkB,GAAG,OAAO,KAAK,SAAS,CAAC;IACjD,OAAO,IAAI,oBAAoB,CAAC;QAC9B,IAAI,EAAY,YAAY;QAC5B,0EAA0E;QAC1E,4EAA4E;QAC5E,wEAAwE;QACxE,EAAE;QACF,8EAA8E;QAC9E,0EAA0E;QAC1E,8EAA8E;QAC9E,2EAA2E;QAC3E,6EAA6E;QAC7E,aAAa,EAAG,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC;YAC1C,cAAc,EAAG,SAAS,EAAE,cAAc;YAC1C,OAAO,EAAU,IAAI,EAAE,OAAO;YAC9B,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvB,YAAY,EAAG,GAAuB,EAAE,CACtC,yBAAyB,CAAC,WAAW,EAAE,YAAY,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;aAC7G,CAAC;SACH,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB,CAAC,SAA+B;IACvE,OAAO,kBAAkB,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAAC,OAAsB,EAAE,SAA+B;IACrG,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO;IAClC,IAAI,yBAAyB,CAAC,SAAS,CAAC,KAAK,KAAK;QAAE,OAAO;IAC3D,MAAM,IAAI,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAC5C,MAAM,IAAI,QAAQ,CAChB,+EAA+E,IAAI,IAAI;UACrF,yFAAyF;UACzF,yEAAyE,EAC3E,4BAA4B,EAC5B,EAAE,IAAI,EAAE,OAAO,EAAE,CAClB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAA+B,EAAE,OAA+B;IAClG,4EAA4E;IAC5E,gFAAgF;IAChF,kEAAkE;IAClE,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,IAAI,QAA6D,CAAC;IAClE,IAAI,CAAC;QACH,QAAQ,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,OAAO,EAAE,OAAO;YAAE,MAAM,KAAK,CAAC;IACrC,CAAC;IACD,OAAO,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAC5E,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,SAA+B;IAC5D,+EAA+E;IAC/E,+EAA+E;IAC/E,+EAA+E;IAC/E,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,yEAAyE;IACzE,MAAM,IAAI,GAAG,cAAc,CAAC,SAAS,EAAE,MAAM,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,oBAAoB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACvD,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAA+B;IAClE,OAAO,YAAY,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,YAAY,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;AACxG,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAuB,EAAE,SAA+B;IACzF,OAAO,SAAS,CAAC;QACf,GAAG,uBAAuB,CAAC,OAAO,EAAE,SAAS,CAAC;QAC9C,GAAG,EAAG,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC;KAC3C,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,OAAwB,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,QAAQ,CAChB,wBAAwB,OAAO,WAAW,EAC1C,wBAAwB,EACxB,EAAE,GAAG,EAAE,OAAO,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,OAAO,OAAwB,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import { explorerAddressUrl, explorerTxUrl, faucetUrl } from '@did-btcr2/api';
2
+ import { BeaconUtils } from '@did-btcr2/method';
3
+ /**
4
+ * Text-mode stderr hints derived from the per-network presets (ADR 082). All of
5
+ * these are suppressed under `--quiet` and `--output json` so machine output is
6
+ * never touched, and they never throw: a presentation hint must never break the
7
+ * command that produced the real result.
8
+ */
9
+ /**
10
+ * Prints a funding hint after a KEY `create` on a network with a public faucet:
11
+ * the derived initial P2WPKH beacon address next to the faucet and explorer
12
+ * links the operator would otherwise hand-copy. A no-op on a network without a
13
+ * faucet (regtest/mainnet), which also keeps mainnet from showing a fund-me
14
+ * affordance. The beacon address is derived from the DID string alone via
15
+ * {@link BeaconUtils.createBeaconService}, so it matches the resolver's
16
+ * `#initialP2WPKH` service rather than a divergent re-derivation.
17
+ */
18
+ export function printCreateFundingHint(g, network, did) {
19
+ if (g.quiet || g.output === 'json')
20
+ return;
21
+ const faucet = faucetUrl(network);
22
+ if (!faucet)
23
+ return;
24
+ let beaconAddress;
25
+ try {
26
+ const { serviceEndpoint } = BeaconUtils.createBeaconService(did, 'p2wpkh', 'SingletonBeacon');
27
+ beaconAddress = serviceEndpoint.replace(/^bitcoin:/, '');
28
+ }
29
+ catch {
30
+ return;
31
+ }
32
+ const explorer = explorerAddressUrl(network, beaconAddress);
33
+ const lines = [
34
+ 'Fund the initial beacon to anchor updates:',
35
+ ` Beacon: ${beaconAddress}`,
36
+ ` Faucet: ${faucet}`,
37
+ ];
38
+ if (explorer)
39
+ lines.push(` Explorer: ${explorer}`);
40
+ process.stderr.write(`${lines.join('\n')}\n`);
41
+ }
42
+ /**
43
+ * Prints a watch link after an `update`/`deactivate` broadcast: the
44
+ * block-explorer URL for the signal txid. A no-op on a network without an
45
+ * explorer (regtest).
46
+ */
47
+ export function printWatchHint(g, network, txid) {
48
+ if (g.quiet || g.output === 'json')
49
+ return;
50
+ const url = explorerTxUrl(network, txid);
51
+ if (url)
52
+ process.stderr.write(`Watch: ${url}\n`);
53
+ }
54
+ //# sourceMappingURL=hints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hints.js","sourceRoot":"","sources":["../../../src/hints.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD;;;;;GAKG;AAEH;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,CAAgB,EAAE,OAAsB,EAAE,GAAW;IAC1F,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO;IAC3C,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,IAAI,aAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,EAAE,eAAe,EAAE,GAAG,WAAW,CAAC,mBAAmB,CAAC,GAAG,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAC9F,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG;QACZ,4CAA4C;QAC5C,eAAe,aAAa,EAAE;QAC9B,eAAe,MAAM,EAAE;KACxB,CAAC;IACF,IAAI,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAC;IACpD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,CAAgB,EAAE,OAAsB,EAAE,IAAY;IACnF,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO;IAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzC,IAAI,GAAG;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;AACnD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAC;AAapD,OAAO,EAA8D,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAI1G;;GAEG;AACH,qBAAa,WAAW;IACtB,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC;;;;;;;;;;;;;OAaG;gBAED,OAAO,GAAE,UAA8B,EACvC,eAAe,GAAE,UAA+B;IAkDlD;;;;OAIG;IACU,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CASjD"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../../src/cli.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAkB,MAAM,WAAW,CAAC;AAcpD,OAAO,EAA8D,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAI1G;;GAEG;AACH,qBAAa,WAAW;IACtB,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC;;;;;;;;;;;;;OAaG;gBAED,OAAO,GAAE,UAA8B,EACvC,eAAe,GAAE,UAA+B;IAmDlD;;;;OAIG;IACU,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CASjD"}
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../src/commands/create.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAuB,MAAM,cAAc,CAAC;AAKpE,OAAO,KAAK,EAAiB,aAAa,EAAiB,MAAM,aAAa,CAAC;AAS/E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAW,OAAO,EACzB,OAAO,EAAW,UAAU,EAC5B,eAAe,EAAG,UAAU,EAC5B,OAAO,EAAW,MAAM,aAAa,GACpC,IAAI,CAyGN"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../src/commands/create.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,UAAU,EAAuB,MAAM,cAAc,CAAC;AAMpE,OAAO,KAAK,EAAiB,aAAa,EAAiB,MAAM,aAAa,CAAC;AAS/E;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAW,OAAO,EACzB,OAAO,EAAW,UAAU,EAC5B,eAAe,EAAG,UAAU,EAC5B,OAAO,EAAW,MAAM,aAAa,GACpC,IAAI,CA4GN"}
@@ -1 +1 @@
1
- {"version":3,"file":"deactivate.d.ts","sourceRoot":"","sources":["../../../../src/commands/deactivate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAiG,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAI9I,OAAO,KAAK,EAAE,aAAa,EAAwB,MAAM,aAAa,CAAC;AAKvE,wBAAgB,yBAAyB,CACvC,OAAO,EAAG,OAAO,EACjB,OAAO,EAAG,UAAU,EACpB,OAAO,EAAG,MAAM,aAAa,GAC5B,IAAI,CAwGN"}
1
+ {"version":3,"file":"deactivate.d.ts","sourceRoot":"","sources":["../../../../src/commands/deactivate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAiG,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAK9I,OAAO,KAAK,EAAE,aAAa,EAAwB,MAAM,aAAa,CAAC;AAKvE,wBAAgB,yBAAyB,CACvC,OAAO,EAAG,OAAO,EACjB,OAAO,EAAG,UAAU,EACpB,OAAO,EAAG,MAAM,aAAa,GAC5B,IAAI,CAyGN"}
@@ -1,4 +1,5 @@
1
1
  export { registerInitCommand } from './init.js';
2
+ export { registerQuickstartCommand } from './quickstart.js';
2
3
  export { registerCreateCommand } from './create.js';
3
4
  export { registerResolveCommand } from './resolve.js';
4
5
  export { registerUpdateCommand } from './update.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1,13 +1,60 @@
1
1
  import type { Command } from 'commander';
2
- import type { GlobalOptions } from '../types.js';
2
+ import type { GlobalOptions, KeystoreProtectionLabel, NetworkOption } from '../types.js';
3
+ /** Options for the shared {@link runInit} scaffolding step. */
4
+ export interface RunInitOptions {
5
+ /** Establish an UNENCRYPTED dev keystore (plaintext keys, testnet only). */
6
+ dev?: boolean;
7
+ /** Re-scaffold the regenerable config even if it exists (never the keystore). */
8
+ force?: boolean;
9
+ /** Explicit network from `-n/--network`, already validated. Persisted to `defaults.network`. */
10
+ network?: NetworkOption;
11
+ /**
12
+ * Network to persist when `-n` is absent and `defaults.network` is unset: a
13
+ * command's opinionated default (mutinynet for `quickstart`). Omitted by plain
14
+ * `init`, which never persists a merely-defaulted network.
15
+ */
16
+ fallbackNetwork?: NetworkOption;
17
+ /**
18
+ * Capture the establish-time confirmed passphrase so the caller can seed a
19
+ * session with no second prompt (`quickstart --unlock`). Only populated when a
20
+ * fresh ENCRYPTED keystore is established in this call. Never printed.
21
+ */
22
+ captureEstablishedPassphrase?: boolean;
23
+ }
24
+ /** Result of the shared {@link runInit} scaffolding step. */
25
+ export interface RunInitResult {
26
+ home: string;
27
+ config: string;
28
+ keystore: string;
29
+ network: NetworkOption;
30
+ created: string[];
31
+ protection: KeystoreProtectionLabel;
32
+ /**
33
+ * The confirmed passphrase from a fresh ENCRYPTED establishment in this call,
34
+ * present only when {@link RunInitOptions.captureEstablishedPassphrase} was set
35
+ * and a keystore was established. Consumed to seed a session; never printed.
36
+ */
37
+ establishedPassphrase?: string;
38
+ }
39
+ /**
40
+ * The shared scaffolding step behind `btcr2 init` and `btcr2 quickstart` (ADR
41
+ * 079/080/083): create the home, a default config if none exists, and establish
42
+ * the keystore if none exists (encrypted by default, `--dev` for unencrypted).
43
+ * Idempotent: existing files are left untouched, and `--force` re-scaffolds only
44
+ * the regenerable config, never the keystore. Records `defaults.network` via
45
+ * {@link persistDefaultNetwork}. Returns the resolved paths, network, protection,
46
+ * and (when asked) the establish-time passphrase for session seeding.
47
+ */
48
+ export declare function runInit(g: GlobalOptions, options?: RunInitOptions): RunInitResult;
3
49
  /**
4
50
  * Registers the top-level `btcr2 init`: the one-command entry point that creates
5
51
  * the btcr2 home (ADR 079), writes a default config if none exists, and
6
52
  * establishes the keystore if none exists (encrypted with a confirmed passphrase
7
- * by default, or `--dev` for an unencrypted testnet keystore). Idempotent:
8
- * existing files are left untouched unless `--force` is given. Establishing the
9
- * passphrase here, up front and confirmed, is what keeps the first `key generate`
10
- * off the accidental-first-seal path (ADR 080).
53
+ * by default, or `--dev` for an unencrypted testnet keystore). `-n/--network`
54
+ * records `defaults.network` so later commands can drop `-n` (ADR 083).
55
+ * Idempotent: existing files are left untouched unless `--force` is given.
56
+ * Establishing the passphrase here, up front and confirmed, is what keeps the
57
+ * first `key generate` off the accidental-first-seal path (ADR 080).
11
58
  */
12
59
  export declare function registerInitCommand(program: Command, globals: () => GlobalOptions): void;
13
60
  //# sourceMappingURL=init.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASzC,OAAO,KAAK,EAAiB,aAAa,EAAE,MAAM,aAAa,CAAC;AAEhE;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,GAAG,IAAI,CA2DxF"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAezC,OAAO,KAAK,EAAiB,aAAa,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAExG,+DAA+D;AAC/D,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,GAAG,CAAC,EAAO,OAAO,CAAC;IACnB,iFAAiF;IACjF,KAAK,CAAC,EAAK,OAAO,CAAC;IACnB,gGAAgG;IAChG,OAAO,CAAC,EAAG,aAAa,CAAC;IACzB;;;;OAIG;IACH,eAAe,CAAC,EAAG,aAAa,CAAC;IACjC;;;;OAIG;IACH,4BAA4B,CAAC,EAAG,OAAO,CAAC;CACzC;AAED,6DAA6D;AAC7D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAS,MAAM,CAAC;IACpB,MAAM,EAAO,MAAM,CAAC;IACpB,QAAQ,EAAK,MAAM,CAAC;IACpB,OAAO,EAAM,aAAa,CAAC;IAC3B,OAAO,EAAM,MAAM,EAAE,CAAC;IACtB,UAAU,EAAG,uBAAuB,CAAC;IACrC;;;;OAIG;IACH,qBAAqB,CAAC,EAAG,MAAM,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,GAAE,cAAmB,GAAG,aAAa,CAgErF;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,GAAG,IAAI,CA+BxF"}
@@ -1,5 +1,6 @@
1
1
  import type { Command } from 'commander';
2
- import { type GlobalOptions } from '../types.js';
2
+ import { type SessionFile } from '../keystore/session.js';
3
+ import { type GlobalOptions, type NetworkOption } from '../types.js';
3
4
  /**
4
5
  * Registers the `keystore` command group: establish, inspect, and re-key the
5
6
  * encrypted keystore (ADR 080), plus the session unlock agent (ADR 081). These
@@ -8,4 +9,39 @@ import { type GlobalOptions } from '../types.js';
8
9
  * `change-passphrase`.
9
10
  */
10
11
  export declare function registerKeystoreCommand(program: Command, globals: () => GlobalOptions): void;
12
+ /** Input for the shared {@link unlockSession} step. */
13
+ export interface UnlockSessionInput {
14
+ g: GlobalOptions;
15
+ /** The resolved keystore path to unlock. */
16
+ keystorePath: string;
17
+ /** The operation network for the mainnet gate, passed explicitly (never re-derived). */
18
+ network: NetworkOption;
19
+ /** Whether a mainnet (bitcoin) unlock is permitted (`--allow-mainnet`). */
20
+ allowMainnet: boolean;
21
+ /** Session lifetime in milliseconds (already resolved via {@link resolveSessionTtl}). */
22
+ ttlMs: number;
23
+ /**
24
+ * A pre-acquired passphrase to reuse instead of prompting (the establish-time
25
+ * passphrase from `quickstart --unlock` on a fresh keystore). Still verified
26
+ * against the keystore verifier before caching.
27
+ */
28
+ passphrase?: string;
29
+ }
30
+ /**
31
+ * The shared unlock step behind `keystore unlock` and `quickstart --unlock` (ADR
32
+ * 081/083): validate the keystore, enforce the mainnet gate against the passed
33
+ * `network`, acquire (or reuse) and verify the passphrase, and write the session.
34
+ * Refuses an absent, dev, or unestablished keystore. A wrong passphrase writes no
35
+ * session file. Returns the written {@link SessionFile}. The op network is passed
36
+ * in rather than re-derived so the mainnet gate is order-independent even when a
37
+ * caller has just written `defaults.network`.
38
+ */
39
+ export declare function unlockSession(input: UnlockSessionInput): SessionFile;
40
+ /**
41
+ * Resolves the session TTL in milliseconds from the `--ttl` flag, then
42
+ * `$BTCR2_KEYSTORE_TTL`, then the one-hour default. Rejects a non-positive,
43
+ * malformed, or over-24h value with a {@link CLIError} that names the actual
44
+ * source (the flag or the env var) so the operator fixes the right input.
45
+ */
46
+ export declare function resolveSessionTtl(flag?: string): number;
11
47
  //# sourceMappingURL=keystore.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keystore.d.ts","sourceRoot":"","sources":["../../../../src/commands/keystore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuBzC,OAAO,EAAoC,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAEnF;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,GAAG,IAAI,CA0K5F"}
1
+ {"version":3,"file":"keystore.d.ts","sourceRoot":"","sources":["../../../../src/commands/keystore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAYzC,OAAO,EAOL,KAAK,WAAW,EAEjB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAoC,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,aAAa,CAAC;AAEvG;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,GAAG,IAAI,CA6H5F;AAED,uDAAuD;AACvD,MAAM,WAAW,kBAAkB;IACjC,CAAC,EAAc,aAAa,CAAC;IAC7B,4CAA4C;IAC5C,YAAY,EAAG,MAAM,CAAC;IACtB,wFAAwF;IACxF,OAAO,EAAQ,aAAa,CAAC;IAC7B,2EAA2E;IAC3E,YAAY,EAAG,OAAO,CAAC;IACvB,yFAAyF;IACzF,KAAK,EAAU,MAAM,CAAC;IACtB;;;;OAIG;IACH,UAAU,CAAC,EAAI,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,WAAW,CAsDpE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAqBvD"}