@veilio-inc/cli 0.5.0 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -11
- package/dist/args.d.ts +19 -1
- package/dist/args.d.ts.map +1 -1
- package/dist/args.js +10 -2
- package/dist/args.js.map +1 -1
- package/dist/cloud-commands.d.ts +46 -10
- package/dist/cloud-commands.d.ts.map +1 -1
- package/dist/cloud-commands.js +330 -6
- package/dist/cloud-commands.js.map +1 -1
- package/dist/cloud.d.ts +69 -1
- package/dist/cloud.d.ts.map +1 -1
- package/dist/cloud.js +61 -0
- package/dist/cloud.js.map +1 -1
- package/dist/commands.d.ts +13 -1
- package/dist/commands.d.ts.map +1 -1
- package/dist/commands.js +105 -17
- package/dist/commands.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -10
- package/dist/index.js.map +1 -1
- package/dist/team-anonymize.d.ts +59 -0
- package/dist/team-anonymize.d.ts.map +1 -1
- package/dist/team-anonymize.js +143 -2
- package/dist/team-anonymize.js.map +1 -1
- package/dist/team-namespace.d.ts +9 -0
- package/dist/team-namespace.d.ts.map +1 -1
- package/dist/team-namespace.js +7 -1
- package/dist/team-namespace.js.map +1 -1
- package/dist/third-party.d.ts +25 -0
- package/dist/third-party.d.ts.map +1 -0
- package/dist/third-party.js +113 -0
- package/dist/third-party.js.map +1 -0
- package/dist/version.d.ts +15 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +16 -0
- package/dist/version.js.map +1 -0
- package/package.json +6 -5
package/dist/cloud.js
CHANGED
|
@@ -185,6 +185,43 @@ export function getTeamKeyWraps(credential, teamId) {
|
|
|
185
185
|
export function createMap(credential, body) {
|
|
186
186
|
return request('/api/maps', { credential, method: 'POST', body });
|
|
187
187
|
}
|
|
188
|
+
/** A placeholder base, as the engine mints them: `__CLS__`, `__FN__`. */
|
|
189
|
+
const PLACEHOLDER_BASE = /^__[A-Z][A-Z0-9_]*__$/;
|
|
190
|
+
/**
|
|
191
|
+
* Take numbers out of the team's shared allocation, so two members anonymizing
|
|
192
|
+
* at the same moment are never handed the same one.
|
|
193
|
+
*
|
|
194
|
+
* Counts and bases only. Never an identifier: the server cannot read a team's
|
|
195
|
+
* maps and does not need to in order to count. `floor` is the highest number
|
|
196
|
+
* this machine has already seen for that base - the server hands back
|
|
197
|
+
* `max(counter, floor) + 1`, so a map numbered locally before the team existed
|
|
198
|
+
* cannot be overwritten by a counter that never saw it.
|
|
199
|
+
*
|
|
200
|
+
* The base is checked here rather than only server-side. A malformed base would
|
|
201
|
+
* otherwise create a counter row under a name no placeholder can ever match,
|
|
202
|
+
* and the numbers reserved against it would be silently unusable.
|
|
203
|
+
*/
|
|
204
|
+
export async function reservePlaceholders(credential, teamId, requests, signal) {
|
|
205
|
+
for (const { base, count } of requests) {
|
|
206
|
+
if (!PLACEHOLDER_BASE.test(base)) {
|
|
207
|
+
throw new CloudError('forbidden', `${base} is not a placeholder base, so no numbers can be reserved for it`);
|
|
208
|
+
}
|
|
209
|
+
if (!Number.isInteger(count) || count < 1) {
|
|
210
|
+
throw new CloudError('forbidden', `cannot reserve ${count} numbers for ${base}`);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
return request(`/api/teams/${encodeURIComponent(teamId)}/placeholders/reserve`, { credential, method: 'POST', body: { requests }, signal });
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Delete a map in Cloud.
|
|
217
|
+
*
|
|
218
|
+
* Who may delete a team map is the server's decision and is not restated here:
|
|
219
|
+
* a 403 means it belongs to someone else on the team, a 404 that there is no
|
|
220
|
+
* such map to this account. Both leave everything local untouched.
|
|
221
|
+
*/
|
|
222
|
+
export function deleteMap(credential, id) {
|
|
223
|
+
return request(`/api/maps/${encodeURIComponent(id)}`, { credential, method: 'DELETE' });
|
|
224
|
+
}
|
|
188
225
|
/**
|
|
189
226
|
* The vault parameters, so the key can be derived HERE.
|
|
190
227
|
*
|
|
@@ -209,4 +246,28 @@ async function bodyOf(response) {
|
|
|
209
246
|
return {};
|
|
210
247
|
}
|
|
211
248
|
}
|
|
249
|
+
export function startDeviceLogin(instance, client) {
|
|
250
|
+
return request('/api/auth/device/code', {
|
|
251
|
+
instance,
|
|
252
|
+
method: 'POST',
|
|
253
|
+
body: { client },
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Exchange the long code for a session.
|
|
258
|
+
*
|
|
259
|
+
* Refusals arrive as RFC 8628 codes in `CloudError.message`:
|
|
260
|
+
* `authorization_pending` while nobody has approved, `slow_down` when polling
|
|
261
|
+
* faster than told, `expired_token` when the ten minutes are up or the code has
|
|
262
|
+
* already been spent, `access_denied` when it was declined - or when the
|
|
263
|
+
* browser session that approved has since been revoked, which is the same
|
|
264
|
+
* answer on purpose.
|
|
265
|
+
*/
|
|
266
|
+
export function exchangeDeviceCode(instance, deviceCode) {
|
|
267
|
+
return request('/api/auth/device/token', {
|
|
268
|
+
instance,
|
|
269
|
+
method: 'POST',
|
|
270
|
+
body: { device_code: deviceCode },
|
|
271
|
+
});
|
|
272
|
+
}
|
|
212
273
|
//# sourceMappingURL=cloud.js.map
|
package/dist/cloud.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud.js","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cloud.js","sourceRoot":"","sources":["../src/cloud.ts"],"names":[],"mappings":"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"}
|
package/dist/commands.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type TeamLayer } from '@veilio-inc/engine';
|
|
2
2
|
import type { ParsedArgs } from './args.js';
|
|
3
|
+
import { type Reserve } from './team-anonymize.js';
|
|
3
4
|
export interface Io {
|
|
4
5
|
cwd: string;
|
|
5
6
|
stdin: () => Promise<string>;
|
|
@@ -37,8 +38,19 @@ export type TeamNamespaceSource = () => Promise<{
|
|
|
37
38
|
team: {
|
|
38
39
|
namespace: Record<string, string>;
|
|
39
40
|
highest: Record<string, number>;
|
|
41
|
+
conflicts?: Record<string, number>;
|
|
40
42
|
} | null;
|
|
41
43
|
note: string | null;
|
|
44
|
+
/**
|
|
45
|
+
* Take new placeholder numbers out of the team's shared allocation.
|
|
46
|
+
*
|
|
47
|
+
* `null` when there is nothing to reserve against: signed out, not in a
|
|
48
|
+
* team, the key locked, the team's maps unreadable, or an older self-hosted
|
|
49
|
+
* instance that predates the endpoint. In each of those cases scrub numbers
|
|
50
|
+
* from a local floor and SAYS SO via `note` — which is the honest answer,
|
|
51
|
+
* because the alternative is pretending the number is safe.
|
|
52
|
+
*/
|
|
53
|
+
reserve?: Reserve | null;
|
|
42
54
|
}>;
|
|
43
55
|
export type TeamLayerSource = (missing: readonly string[]) => Promise<{
|
|
44
56
|
team: TeamLayer | null;
|
|
@@ -48,5 +60,5 @@ export declare function runRestore(args: ParsedArgs, io: Io, teamLayer?: TeamLay
|
|
|
48
60
|
/** Detect-only pass for pre-commit hooks and CI. Never rewrites anything. */
|
|
49
61
|
export declare function runScan(args: ParsedArgs, io: Io): Promise<number>;
|
|
50
62
|
export declare function runMap(args: ParsedArgs, io: Io): Promise<number>;
|
|
51
|
-
export declare const HELP = "veilio \u2014 anonymize code before it reaches an LLM, restore it after.\n\nUSAGE\n veilio <command> [files...] [options]\n\nCOMMANDS\n scrub [files...] Mask identifiers and redact credentials. Reads stdin when\n no file is given. Writes the symbol map to .veilio/map.json.\n restore [files...] Swap placeholders back and strip AI-generated noise.\n scan [files...] Detect credentials only; never rewrites. Exits 1 when it\n finds something \u2014 use it in a pre-commit hook or CI.\n map Show the current symbol map (--clear to wipe it).\n\n Everything above works offline, with no account. The commands below connect a\n Veilio Cloud subscription and are the only ones that touch the network.\n\n login Sign in to Veilio Cloud (--instance for self-hosted).\n logout Revoke the session and forget the credential.\n whoami Show the signed-in account. Answers from disk; makes no\n request, so it works with the instance down.\n maps list List the maps this account holds in Cloud.\n maps pull <id> Fetch one into the local store. A personal map is\n decrypted here \u2014 the passphrase never leaves the machine.\n A team map opens with the key from `team unlock`.\n maps push [name] Encrypt the local map and upload it as a new map.\n team unlock Open this account's team keys with the vault passphrase\n and keep them on this machine (7 days), so team maps -\n and the MCP server's shared namespace - work unattended.\n team lock Remove the unlocked team keys from this machine.\n rules pull Fetch this account's custom rules (personal and team).\n `scrub` then applies them offline, as the web app does.\n\nOPTIONS\n -l, --language <lang> auto (default), typescript, python, go, java, csharp,\n rust, ruby, php, c, sql\n -s, --secrets <policy> redact (default) | warn | off\n -p, --preamble Prepend the downstream-AI note and placeholder legend\n -m, --map <path> Use a specific map file\n --json Machine-readable output (scan, map)\n --strict scan: also fail on advisory findings. restore: write\n nothing and exit 1 if a placeholder would be left\n --keep-docs restore: keep JSDoc blocks the model wrote\n -f, --force Allow a map write that would drop existing entries\n -q, --quiet Suppress the all-clear summary (findings always show)\n --instance <url> login: the Veilio instance to sign in to. Defaults to\n the public Cloud; https required (localhost excepted)\n -h, --help Show this help\n -v, --version Show the version\n\nEXIT CODES\n 0 clean 1 findings that should stop the pipeline 2 usage or IO error\n\nEXAMPLES\n veilio scrub src/billing.ts | pbcopy\n pbpaste | veilio restore\n git diff --cached | veilio scan # pre-commit gate\n veilio scan 'src/**/*.ts' --json > findings.json\n\nTransformed code goes to stdout; everything else goes to stderr, so the CLI\ncomposes in a pipe.\n";
|
|
63
|
+
export declare const HELP = "veilio \u2014 anonymize code before it reaches an LLM, restore it after.\n\nUSAGE\n veilio <command> [files...] [options]\n\nCOMMANDS\n scrub --team Number new placeholders from the team's allocation.\n scrub [files...] Mask identifiers and redact credentials. Reads stdin when\n no file is given. Writes the symbol map to .veilio/map.json.\n restore [files...] Swap placeholders back and strip AI-generated noise.\n scan [files...] Detect credentials only; never rewrites. Exits 1 when it\n finds something \u2014 use it in a pre-commit hook or CI.\n map Show the current symbol map (--clear to wipe it).\n\n Everything above works offline, with no account. The commands below connect a\n Veilio Cloud subscription and are the only ones that touch the network.\n\n login Sign in to Veilio Cloud (--instance for self-hosted).\n logout Revoke the session and forget the credential.\n whoami Show the signed-in account. Answers from disk; makes no\n request, so it works with the instance down.\n maps list List the maps this account holds in Cloud.\n maps pull <id> Fetch one into the local store. A personal map is\n decrypted here \u2014 the passphrase never leaves the machine.\n A team map opens with the key from `team unlock`.\n maps push [name] Encrypt the local map and upload it as a new map.\n maps push --team Publish it as the TEAM's shared map instead.\n maps rm <id> Remove a map from Cloud.\n team unlock Open this account's team keys with the vault passphrase\n and keep them on this machine (7 days), so team maps -\n and the MCP server's shared namespace - work unattended.\n team lock Remove the unlocked team keys from this machine.\n rules pull Fetch this account's custom rules (personal and team).\n `scrub` then applies them offline, as the web app does.\n\nOPTIONS\n -l, --language <lang> auto (default), typescript, python, go, java, csharp,\n rust, ruby, php, c, sql\n -s, --secrets <policy> redact (default) | warn | off\n -p, --preamble Prepend the downstream-AI note and placeholder legend\n -m, --map <path> Use a specific map file\n --json Machine-readable output (scan, map)\n --strict scan: also fail on advisory findings. restore: write\n nothing and exit 1 if a placeholder would be left\n --keep-docs restore: keep JSDoc blocks the model wrote\n -f, --force Allow a map write that would drop existing entries\n -q, --quiet Suppress the all-clear summary (findings always show)\n --instance <url> login: the Veilio instance to sign in to. Defaults to\n the public Cloud; https required (localhost excepted)\n -h, --help Show this help\n -v, --version Show the version\n\nEXIT CODES\n 0 clean 1 findings that should stop the pipeline 2 usage or IO error\n\nEXAMPLES\n veilio scrub src/billing.ts | pbcopy\n pbpaste | veilio restore\n git diff --cached | veilio scan # pre-commit gate\n veilio scan 'src/**/*.ts' --json > findings.json\n\nTransformed code goes to stdout; everything else goes to stderr, so the CLI\ncomposes in a pipe.\n";
|
|
52
64
|
//# sourceMappingURL=commands.d.ts.map
|
package/dist/commands.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAUA,OAAO,
|
|
1
|
+
{"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"AAUA,OAAO,EAiBL,KAAK,SAAS,EAEf,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAI3C,OAAO,EAAgD,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGhG,MAAM,WAAW,EAAE;IACjB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qEAAqE;IACrE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CAC9C;AAED;6EAC6E;AAC7E,eAAO,MAAM,OAAO,IAAI,CAAA;AACxB,eAAO,MAAM,aAAa,IAAI,CAAA;AAC9B,eAAO,MAAM,UAAU,IAAI,CAAA;AAiC3B,wBAAsB,QAAQ,CAC5B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,EAAE,EACN,UAAU,CAAC,EAAE,mBAAmB,GAC/B,OAAO,CAAC,MAAM,CAAC,CAgKjB;AAED;;;;;;GAMG;AACH,mFAAmF;AACnF,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC;IAC9C,IAAI,EAAE;QACJ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KACnC,GAAG,IAAI,CAAA;IACR,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAA;CACzB,CAAC,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG,CAC5B,OAAO,EAAE,SAAS,MAAM,EAAE,KACvB,OAAO,CAAC;IAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAAA;AAE7D,wBAAsB,UAAU,CAC9B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,EAAE,EACN,SAAS,CAAC,EAAE,eAAe,GAC1B,OAAO,CAAC,MAAM,CAAC,CAwGjB;AAED,6EAA6E;AAC7E,wBAAsB,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAiCvE;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAsBtE;AAED,eAAO,MAAM,IAAI,g9GA+DhB,CAAA"}
|
package/dist/commands.js
CHANGED
|
@@ -7,11 +7,12 @@
|
|
|
7
7
|
// corrupting that pipe.
|
|
8
8
|
import { readFileSync } from 'node:fs';
|
|
9
9
|
import { resolve } from 'node:path';
|
|
10
|
-
import { alteredNote, BIN_NAME, detectSecrets, disputedNote, hasBlockingSecrets, LANGUAGE_LABELS, locallyNumberedNote, restore, restoreLayers, STORE_DIR, STRIPPABLE_TYPES, summarizeSecrets, withAiPreamble, } from '@veilio-inc/engine';
|
|
10
|
+
import { alteredNote, BIN_NAME, detectSecrets, keepRule, languageOfPath, disputedNote, hasBlockingSecrets, LANGUAGE_LABELS, locallyNumberedNote, restore, restoreLayers, STORE_DIR, STRIPPABLE_TYPES, summarizeSecrets, withAiPreamble, } from '@veilio-inc/engine';
|
|
11
11
|
import { clearMap, loadMap, resolveMapPath, saveMap } from './store.js';
|
|
12
12
|
import { readCredential } from './credential.js';
|
|
13
13
|
import { describeAge, readRules } from './rules.js';
|
|
14
|
-
import { anonymizeOverTeam } from './team-anonymize.js';
|
|
14
|
+
import { anonymizeOverTeam, reservedAnonymizeOverTeam } from './team-anonymize.js';
|
|
15
|
+
import { thirdPartyNames } from './third-party.js';
|
|
15
16
|
/** Exit codes are the contract for CI and pre-commit hooks:
|
|
16
17
|
* 0 clean, 1 findings that should stop the pipeline, 2 usage/IO failure. */
|
|
17
18
|
export const EXIT_OK = 0;
|
|
@@ -22,6 +23,14 @@ async function readInput(args, io) {
|
|
|
22
23
|
return io.stdin();
|
|
23
24
|
return args.files.map((f) => readFileSync(resolve(io.cwd, f), 'utf8')).join('\n');
|
|
24
25
|
}
|
|
26
|
+
/** Each file on its own, or standard input as one text. One `anonymize` call
|
|
27
|
+
* over joined files guessed one language for all of them: over this
|
|
28
|
+
* repository's 226 files it chose Go (spec 050 US3). */
|
|
29
|
+
async function readInputs(args, io) {
|
|
30
|
+
if (args.files.length === 0)
|
|
31
|
+
return [{ name: null, text: await io.stdin() }];
|
|
32
|
+
return args.files.map((f) => ({ name: f, text: readFileSync(resolve(io.cwd, f), 'utf8') }));
|
|
33
|
+
}
|
|
25
34
|
function formatFinding(f, file) {
|
|
26
35
|
const where = file ? `${file}:${f.line}:${f.column}` : `line ${f.line}:${f.column}`;
|
|
27
36
|
const state = f.redacted ? 'redacted' : 'left in place';
|
|
@@ -39,7 +48,7 @@ function summaryLine(findings) {
|
|
|
39
48
|
return parts.join(', ');
|
|
40
49
|
}
|
|
41
50
|
export async function runScrub(args, io, teamSource) {
|
|
42
|
-
const
|
|
51
|
+
const inputs = await readInputs(args, io);
|
|
43
52
|
const mapPath = resolveMapPath(args.mapPath, io.cwd);
|
|
44
53
|
const existingMap = loadMap(mapPath);
|
|
45
54
|
// The account's custom rules, as last pulled. Read from disk, never fetched.
|
|
@@ -48,10 +57,78 @@ export async function runScrub(args, io, teamSource) {
|
|
|
48
57
|
const cached = credential ? readRules(credential, io.home) : null;
|
|
49
58
|
// Signed in to a team: the team's namespace, as the web app and the MCP server
|
|
50
59
|
// number (spec 030, F11). Signed out: no request - scrub stays offline.
|
|
51
|
-
const found = teamSource
|
|
52
|
-
|
|
60
|
+
const found = teamSource
|
|
61
|
+
? await teamSource()
|
|
62
|
+
: { team: null, note: null, reserve: null };
|
|
63
|
+
// `--team`: take new numbers out of the team's SHARED allocation rather than
|
|
64
|
+
// from a floor computed here, because this map is going to be published.
|
|
65
|
+
//
|
|
66
|
+
// OPT-IN, not the default, and the reason is a second spec. Two members
|
|
67
|
+
// computing the same floor both minted __FN__6 on staging and one member's
|
|
68
|
+
// restore named the other's function (spec 017), so reserving is plainly
|
|
69
|
+
// better for a map that will be shared — but spec 030 FR-005 requires that
|
|
70
|
+
// `veilio scrub` and the MCP server's `anonymize_text` give the SAME
|
|
71
|
+
// placeholders for the same code and the same team, and the MCP server must
|
|
72
|
+
// never reserve (spec 011 FR-009: it does not publish, and an agent
|
|
73
|
+
// consuming the team's allocation on every tool call is a different thing
|
|
74
|
+
// again). Reserving unconditionally here would split the two surfaces apart
|
|
75
|
+
// for every user, to benefit the ones about to publish.
|
|
76
|
+
//
|
|
77
|
+
// So the person who is about to publish says so, and `maps push --team`
|
|
78
|
+
// refuses a map that conflicts anyway - naming this flag as the remedy.
|
|
79
|
+
const mask = async (source, map, options) => {
|
|
80
|
+
if (args.team && found.team && found.reserve) {
|
|
81
|
+
try {
|
|
82
|
+
return await reservedAnonymizeOverTeam(source, map, found.team, options, found.reserve);
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
// Nothing is written and nothing is printed. Numbering locally instead
|
|
86
|
+
// would hand back placeholders that look correct and collide — the
|
|
87
|
+
// failure this path exists to prevent. Retrying without reservation is
|
|
88
|
+
// deliberately NOT offered.
|
|
89
|
+
const why = err instanceof Error ? err.message : String(err);
|
|
90
|
+
io.stderr(`${BIN_NAME}: could not reserve placeholder numbers from the team (${why}), ` +
|
|
91
|
+
`so nothing was masked and nothing was written. ` +
|
|
92
|
+
`Numbering locally here would produce placeholders that clash with a ` +
|
|
93
|
+
`teammate's without either side noticing.\n`);
|
|
94
|
+
return null;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
return anonymizeOverTeam(source, map, found.team ?? { namespace: {}, highest: {} }, options);
|
|
98
|
+
};
|
|
99
|
+
// Each file in its own language: the flag's, else its extension's, else a
|
|
100
|
+
// guess from that file alone (spec 050 FR-004).
|
|
101
|
+
const languageFor = (name) => args.language !== 'auto' ? args.language : ((name ? languageOfPath(name) : null) ?? 'auto');
|
|
102
|
+
// What the team's maps hold counts as known code too (security review of 8adc729).
|
|
103
|
+
const keep = thirdPartyNames(inputs, [existingMap, found.team?.namespace ?? {}], io.cwd);
|
|
104
|
+
let toPersist = existingMap;
|
|
105
|
+
const outputs = [];
|
|
106
|
+
const added = new Map();
|
|
107
|
+
const results = [];
|
|
108
|
+
for (const input of inputs) {
|
|
109
|
+
const language = languageFor(input.name);
|
|
110
|
+
const own = keep.get(input) ?? new Set();
|
|
111
|
+
const rules = [
|
|
112
|
+
...(cached?.rules ?? []),
|
|
113
|
+
...keepRule(own, 'veilio-scrub-third-party', 'veilio scrub: third-party names'),
|
|
114
|
+
];
|
|
115
|
+
const masked = await mask(input.text, toPersist, {
|
|
116
|
+
language,
|
|
117
|
+
secrets: args.secrets,
|
|
118
|
+
rules: rules.length ? rules : undefined,
|
|
119
|
+
});
|
|
120
|
+
if (!masked)
|
|
121
|
+
return EXIT_ERROR;
|
|
122
|
+
const before = Object.keys(toPersist).length;
|
|
123
|
+
toPersist = masked.toPersist;
|
|
124
|
+
const label = LANGUAGE_LABELS[masked.result.language];
|
|
125
|
+
added.set(label, (added.get(label) ?? 0) + Object.keys(toPersist).length - before);
|
|
126
|
+
outputs.push(masked.result.anonymized);
|
|
127
|
+
results.push({ name: input.name, result: masked.result });
|
|
128
|
+
}
|
|
53
129
|
saveMap(mapPath, toPersist, { force: args.force });
|
|
54
|
-
|
|
130
|
+
const anonymized = outputs.join('\n');
|
|
131
|
+
io.stdout(args.preamble ? withAiPreamble(anonymized, toPersist) : anonymized);
|
|
55
132
|
// Survives --quiet. Everything else here describes work that went right; this
|
|
56
133
|
// says the masking itself may be wrong. No marker matched, so the file was
|
|
57
134
|
// tokenised with TypeScript rules — in a Ruby file that means `#` comments
|
|
@@ -62,15 +139,17 @@ export async function runScrub(args, io, teamSource) {
|
|
|
62
139
|
// A finding, not the summary: the placeholders may clash with the team's.
|
|
63
140
|
if (found.note)
|
|
64
141
|
io.stderr(`${BIN_NAME}: ${found.note}\n`);
|
|
65
|
-
|
|
66
|
-
|
|
142
|
+
for (const { name, result } of results) {
|
|
143
|
+
if (!result.languageFallback)
|
|
144
|
+
continue;
|
|
145
|
+
io.stderr(`${BIN_NAME}: ${name ? `${name}: ` : ''}no language marker matched — masked as ${LANGUAGE_LABELS[result.language]}, which may be wrong. ` +
|
|
67
146
|
`Pass --language to be sure.\n`);
|
|
68
147
|
}
|
|
69
148
|
if (!args.quiet) {
|
|
70
149
|
if (found.team)
|
|
71
150
|
io.stderr(`${BIN_NAME}: Namespace: team (the team's maps, from Cloud)\n`);
|
|
72
|
-
const
|
|
73
|
-
io.stderr(`${BIN_NAME}: ${
|
|
151
|
+
const parts = [...added].map(([label, n]) => `${label} — ${n} new placeholder${n === 1 ? '' : 's'}`);
|
|
152
|
+
io.stderr(`${BIN_NAME}: ${parts.join('; ')}, ${Object.keys(toPersist).length} in map\n`);
|
|
74
153
|
// Said every time, with the age: a whitelist rule the team has since
|
|
75
154
|
// removed would still leave that name readable until the next pull.
|
|
76
155
|
if (cached && cached.rules.length > 0) {
|
|
@@ -83,17 +162,23 @@ export async function runScrub(args, io, teamSource) {
|
|
|
83
162
|
// --quiet would defeat the flag and teach people to stop passing it. The
|
|
84
163
|
// engine reports it on every result either way, so nothing is hidden from a
|
|
85
164
|
// caller that wants it.
|
|
86
|
-
|
|
87
|
-
|
|
165
|
+
const comments = results.reduce((sum, { result }) => ({
|
|
166
|
+
total: sum.total + result.comments.total,
|
|
167
|
+
inline: sum.inline + result.comments.inline,
|
|
168
|
+
characters: sum.characters + result.comments.characters,
|
|
169
|
+
}), { total: 0, inline: 0, characters: 0 });
|
|
170
|
+
if (comments.total > 0) {
|
|
171
|
+
const { total, inline, characters } = comments;
|
|
88
172
|
const where = inline === 0 ? 'above the code' : `${inline} inside the body`;
|
|
89
173
|
io.stderr(`${BIN_NAME}: ${total} comment${total === 1 ? '' : 's'} (${where}) left as written — ` +
|
|
90
174
|
`${characters} characters of prose are NOT masked. Names and ticket numbers in them go out as typed.\n`);
|
|
91
175
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
176
|
+
const secrets = results.flatMap(({ name, result }) => result.secrets.map((f) => ({ f, name })));
|
|
177
|
+
if (secrets.length > 0) {
|
|
178
|
+
io.stderr(`${BIN_NAME}: credentials detected — ${summaryLine(secrets.map(({ f }) => f))}\n`);
|
|
179
|
+
for (const { f, name } of secrets)
|
|
180
|
+
io.stderr(`${formatFinding(f, name ?? undefined)}\n`);
|
|
181
|
+
if (secrets.some(({ f }) => f.redacted)) {
|
|
97
182
|
io.stderr(`${BIN_NAME}: redacted values are NOT recoverable on restore. Rotate anything real.\n`);
|
|
98
183
|
}
|
|
99
184
|
}
|
|
@@ -245,6 +330,7 @@ USAGE
|
|
|
245
330
|
${BIN_NAME} <command> [files...] [options]
|
|
246
331
|
|
|
247
332
|
COMMANDS
|
|
333
|
+
scrub --team Number new placeholders from the team's allocation.
|
|
248
334
|
scrub [files...] Mask identifiers and redact credentials. Reads stdin when
|
|
249
335
|
no file is given. Writes the symbol map to ${STORE_DIR}/map.json.
|
|
250
336
|
restore [files...] Swap placeholders back and strip AI-generated noise.
|
|
@@ -264,6 +350,8 @@ COMMANDS
|
|
|
264
350
|
decrypted here — the passphrase never leaves the machine.
|
|
265
351
|
A team map opens with the key from \`team unlock\`.
|
|
266
352
|
maps push [name] Encrypt the local map and upload it as a new map.
|
|
353
|
+
maps push --team Publish it as the TEAM's shared map instead.
|
|
354
|
+
maps rm <id> Remove a map from Cloud.
|
|
267
355
|
team unlock Open this account's team keys with the vault passphrase
|
|
268
356
|
and keep them on this machine (7 days), so team maps -
|
|
269
357
|
and the MCP server's shared namespace - work unattended.
|
package/dist/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { type Io } from './commands.js';
|
|
3
|
-
|
|
3
|
+
import { VERSION } from './version.js';
|
|
4
|
+
export { VERSION };
|
|
4
5
|
/** Testable entry point: everything that touches the process is injected. */
|
|
5
6
|
export declare function main(argv: readonly string[], io: Io): Promise<number>;
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAA2D,KAAK,EAAE,EAAE,MAAM,eAAe,CAAA;AAoBhG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,OAAO,EAAE,OAAO,EAAE,CAAA;AAElB,6EAA6E;AAC7E,wBAAsB,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAsE3E"}
|
package/dist/index.js
CHANGED
|
@@ -1,17 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { createRequire } from 'node:module';
|
|
3
2
|
import { parseArgs, UsageError } from './args.js';
|
|
4
3
|
import { EXIT_ERROR, HELP, runMap, runRestore, runScan, runScrub } from './commands.js';
|
|
5
|
-
import { runLogin, runLogout, runWhoami, runMapsList, runMapsPull, runMapsPush, runTeamUnlock, runTeamLock, runRulesPull, teamLayerFor, teamNamespaceForScrub, } from './cloud-commands.js';
|
|
4
|
+
import { runLogin, runLogout, runWhoami, runMapsList, runMapsPull, runMapsPush, runMapsRm, runTeamUnlock, runTeamLock, runRulesPull, teamLayerFor, teamNamespaceForScrub, } from './cloud-commands.js';
|
|
6
5
|
import { resolveMapPath } from './store.js';
|
|
7
6
|
import { createInterface } from 'node:readline';
|
|
8
7
|
import { realpathSync } from 'node:fs';
|
|
9
8
|
import { pathToFileURL } from 'node:url';
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
// npm always ships package.json, and ../package.json resolves from src/ and
|
|
13
|
-
// dist/ alike.
|
|
14
|
-
export const VERSION = createRequire(import.meta.url)('../package.json').version;
|
|
9
|
+
import { VERSION } from './version.js';
|
|
10
|
+
export { VERSION };
|
|
15
11
|
/** Testable entry point: everything that touches the process is injected. */
|
|
16
12
|
export async function main(argv, io) {
|
|
17
13
|
let args;
|
|
@@ -42,7 +38,7 @@ export async function main(argv, io) {
|
|
|
42
38
|
case 'map':
|
|
43
39
|
return await runMap(args, io);
|
|
44
40
|
case 'login':
|
|
45
|
-
return await runLogin(args.instance, io);
|
|
41
|
+
return await runLogin(args.instance, io, { device: args.device });
|
|
46
42
|
case 'logout':
|
|
47
43
|
return await runLogout(io);
|
|
48
44
|
case 'whoami':
|
|
@@ -55,9 +51,11 @@ export async function main(argv, io) {
|
|
|
55
51
|
case 'pull':
|
|
56
52
|
return await runMapsPull(args.files[0] ?? null, mapPath, io, { force: args.force });
|
|
57
53
|
case 'push':
|
|
58
|
-
return await runMapsPush(args.files[0] ?? null, mapPath, io);
|
|
54
|
+
return await runMapsPush(args.files[0] ?? null, mapPath, io, args.team);
|
|
55
|
+
case 'rm':
|
|
56
|
+
return await runMapsRm(args.files[0] ?? null, io);
|
|
59
57
|
default:
|
|
60
|
-
io.stderr('veilio: maps needs an action — list, pull or
|
|
58
|
+
io.stderr('veilio: maps needs an action — list, pull, push or rm.\n');
|
|
61
59
|
return EXIT_ERROR;
|
|
62
60
|
}
|
|
63
61
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/team-anonymize.d.ts
CHANGED
|
@@ -54,4 +54,63 @@ export declare function anonymizeOverTeam(source: string, local: Record<string,
|
|
|
54
54
|
result: ReturnType<typeof anonymize>;
|
|
55
55
|
toPersist: Record<string, string>;
|
|
56
56
|
};
|
|
57
|
+
/** Highest number per base in a map. */
|
|
58
|
+
export declare function highestPerBase(map: Record<string, string>): Record<string, number>;
|
|
59
|
+
/**
|
|
60
|
+
* Highest number per base among placeholders ALREADY IN the text.
|
|
61
|
+
*
|
|
62
|
+
* The engine numbers above those too, so a floor that ignored them would
|
|
63
|
+
* reserve a run the engine then numbers past — producing placeholders nobody
|
|
64
|
+
* reserved, which is the failure this whole path exists to prevent. Reached
|
|
65
|
+
* when already-masked text is scrubbed again, which is ordinary: a partially
|
|
66
|
+
* masked file, or output piped back through.
|
|
67
|
+
*/
|
|
68
|
+
export declare function highestInText(text: string): Record<string, number>;
|
|
69
|
+
/** The reservation call, injected so this stays testable and offline-safe. */
|
|
70
|
+
export type Reserve = (requests: {
|
|
71
|
+
base: string;
|
|
72
|
+
count: number;
|
|
73
|
+
floor: number;
|
|
74
|
+
}[]) => Promise<{
|
|
75
|
+
base: string;
|
|
76
|
+
start: number;
|
|
77
|
+
end: number;
|
|
78
|
+
}[]>;
|
|
79
|
+
/** A placeholder was minted outside the run reserved for it. */
|
|
80
|
+
export declare class ReservationMismatch extends Error {
|
|
81
|
+
constructor(placeholder: string);
|
|
82
|
+
}
|
|
83
|
+
/** The reservation itself did not happen: refused, unreachable, plan lapsed. */
|
|
84
|
+
export declare class ReservationFailed extends Error {
|
|
85
|
+
readonly cause: unknown;
|
|
86
|
+
constructor(cause: unknown);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* `anonymizeOverTeam`, with every NEW number taken from the team's allocation.
|
|
90
|
+
*
|
|
91
|
+
* Two passes, because only this machine can read the identifiers and so only
|
|
92
|
+
* this machine can know how many new names there are — but it may not choose
|
|
93
|
+
* their numbers:
|
|
94
|
+
*
|
|
95
|
+
* 1. anonymize once to learn which new placeholders the text needs, per base.
|
|
96
|
+
* Which numbers this pass picks does not matter and is thrown away.
|
|
97
|
+
* 2. reserve that many per base, declaring the floor this machine has seen.
|
|
98
|
+
* 3. anonymize again, seeded so numbering continues from each reserved start.
|
|
99
|
+
* The engine numbers above the highest number it is given and numbers the
|
|
100
|
+
* same input the same way twice, so the second pass is deterministic.
|
|
101
|
+
* 4. verify every new placeholder landed inside its run, and fail rather than
|
|
102
|
+
* return output carrying numbers nobody reserved.
|
|
103
|
+
*
|
|
104
|
+
* Step 4 is not belt-and-braces. If it ever fires, the alternative is a map
|
|
105
|
+
* that looks correct, publishes, and collides with a teammate's — the exact
|
|
106
|
+
* failure that is invisible until someone restores the wrong name.
|
|
107
|
+
*/
|
|
108
|
+
export declare function reservedAnonymizeOverTeam(source: string, local: Record<string, string>, team: {
|
|
109
|
+
namespace: Record<string, string>;
|
|
110
|
+
highest: Record<string, number>;
|
|
111
|
+
conflicts?: Record<string, number>;
|
|
112
|
+
}, options: Omit<AnonymizeOptions, 'existingMap'>, reserve: Reserve): Promise<{
|
|
113
|
+
result: ReturnType<typeof anonymize>;
|
|
114
|
+
toPersist: Record<string, string>;
|
|
115
|
+
}>;
|
|
57
116
|
//# sourceMappingURL=team-anonymize.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"team-anonymize.d.ts","sourceRoot":"","sources":["../src/team-anonymize.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC3B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAgBxB;AAED;;wEAEwE;AACxE,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAGzE;AAKD;;;;;;;;GAQG;AACH,qFAAqF;AACrF,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOxB;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,gBAAgB,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EACnE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,UAAU,CAAC,OAAO,SAAS,CAAC,CAe9B;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7B,IAAI,EAAE;IACJ,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC/B,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACnC,EACD,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,CAAC,GAC7C;IAAE,MAAM,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"team-anonymize.d.ts","sourceRoot":"","sources":["../src/team-anonymize.ts"],"names":[],"mappings":"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"}
|