@tangle-network/braid 0.3.0 → 0.3.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.
- package/README.md +51 -4
- package/dist/adapters/connections/production-connection-credentials.d.ts +6 -0
- package/dist/adapters/connections/production-connection-credentials.d.ts.map +1 -1
- package/dist/adapters/connections/production-connection-credentials.js +46 -2
- package/dist/adapters/connections/production-connection-credentials.js.map +1 -1
- package/dist/adapters/connections/production-connection-health.js +4 -2
- package/dist/adapters/connections/production-connection-health.js.map +1 -1
- package/dist/app/connection-errors.d.ts +1 -1
- package/dist/app/connection-errors.d.ts.map +1 -1
- package/dist/app/connection-errors.js.map +1 -1
- package/dist/bin/production-setup-credentials.d.ts.map +1 -1
- package/dist/bin/production-setup-credentials.js +6 -2
- package/dist/bin/production-setup-credentials.js.map +1 -1
- package/dist/domain/secret-sanitizer.d.ts +8 -1
- package/dist/domain/secret-sanitizer.d.ts.map +1 -1
- package/dist/domain/secret-sanitizer.js +41 -455
- package/dist/domain/secret-sanitizer.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,20 +1,27 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<h1>Braid</h1>
|
|
3
|
-
<p><strong>One
|
|
3
|
+
<p><strong>One coding-agent profile across Pi, Codex, and OpenCode, on your machine or in a Tangle cloud sandbox.</strong></p>
|
|
4
4
|
<p>
|
|
5
5
|
<a href="https://github.com/tangle-network/braid/actions/workflows/ci.yml"><img alt="CI" src="https://github.com/tangle-network/braid/actions/workflows/ci.yml/badge.svg"></a>
|
|
6
6
|
<a href="LICENSE"><img alt="MIT License" src="https://img.shields.io/badge/license-MIT-7aa2f7"></a>
|
|
7
7
|
</p>
|
|
8
8
|
</div>
|
|
9
9
|
|
|
10
|
-
Braid is a
|
|
10
|
+
Braid is a terminal client for coding agents.
|
|
11
11
|
|
|
12
12
|
A portable [`AgentProfile`](https://github.com/tangle-network/agent-sdk/tree/main/packages/agent-interface) defines one agent's identity, instructions, model, runner preference, tools, and permissions.
|
|
13
13
|
|
|
14
|
-
Braid sends each turn through [`agent-runtime`](https://github.com/tangle-network/agent-runtime) and keeps the conversation, branches, runs, interactions,
|
|
14
|
+
Braid sends each turn through [`agent-runtime`](https://github.com/tangle-network/agent-runtime) and keeps the conversation, branches, runs, interactions, and usage records together.
|
|
15
|
+
Choose a local runner through CLI Bridge, Tangle inference, or a Tangle Sandbox for each turn.
|
|
15
16
|
|
|
16
17
|
Braid is a terminal client, not another agent loop.
|
|
17
18
|
|
|
19
|
+
<img alt="Braid terminal opening a conversation fork preview" src="artifacts/verification/w6/80x24-fork-preview.gif">
|
|
20
|
+
|
|
21
|
+
The terminal capture above is a deterministic conversation fixture from a packed 0.3.0 development build.
|
|
22
|
+
It does not show a live runner or cloud call.
|
|
23
|
+
The [launch comparison](docs/launch/comparison.md) separates live runner and cloud proofs from fixture captures.
|
|
24
|
+
|
|
18
25
|
The [component design map](docs/components/README.md) links each visible surface to its owning contract and source component.
|
|
19
26
|
|
|
20
27
|
## Install
|
|
@@ -25,15 +32,55 @@ The published package currently targets Linux and macOS.
|
|
|
25
32
|
|
|
26
33
|
```bash
|
|
27
34
|
npm install --global @tangle-network/braid
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Braid runs an `AgentProfile` from your workspace.
|
|
38
|
+
A clean workspace has none, so create one before the first run:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
mkdir -p .braid
|
|
42
|
+
cat > .braid/profile.json <<'EOF'
|
|
43
|
+
{
|
|
44
|
+
"name": "Coding agent",
|
|
45
|
+
"harness": "opencode",
|
|
46
|
+
"model": { "provider": "tangle-router", "default": "tangle-router/glm-5.3" },
|
|
47
|
+
"prompt": { "instructions": ["Inspect the repository before changing it."] }
|
|
48
|
+
}
|
|
49
|
+
EOF
|
|
28
50
|
braid
|
|
29
51
|
```
|
|
30
52
|
|
|
31
|
-
|
|
53
|
+
Braid also reads `braid.profile.json`, or any file passed with `--profile <path>`.
|
|
54
|
+
The first-run flow selects that `AgentProfile` and a connection.
|
|
32
55
|
|
|
33
56
|
A connection supplies transport and credential references.
|
|
34
57
|
|
|
35
58
|
Credential values stay in the operating-system credential facility or their bounded response path.
|
|
36
59
|
|
|
60
|
+
For a local runner, install and start [CLI Bridge](https://github.com/drewstone/cli-bridge#install) in another terminal.
|
|
61
|
+
Sign in to each runner you want to use, then choose **Local CLI Bridge** during Braid setup.
|
|
62
|
+
For example, from the CLI Bridge checkout:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
pnpm install
|
|
66
|
+
BRIDGE_BACKENDS=codex,opencode pnpm start
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Braid connects to the default local service at `http://127.0.0.1:3344`; it does not start the runners.
|
|
70
|
+
Pi on Linux also needs bubblewrap and `PI_EXECUTOR=host BRIDGE_JAIL_MODE=fs-jail BRIDGE_BACKENDS=pi` ([CLI Bridge requirements](https://github.com/drewstone/cli-bridge#install)).
|
|
71
|
+
|
|
72
|
+
For Tangle inference or a Tangle Sandbox, [create a Tangle account and key](https://sandbox.tangle.tools/?utm_source=github&utm_medium=readme&utm_campaign=braid-0.3.0&ref=braid).
|
|
73
|
+
Enter the key in setup, or provide it to Braid through `BRAID_TANGLE_AUTH`:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
export BRAID_TANGLE_AUTH=YOUR_TANGLE_KEY
|
|
77
|
+
braid
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
First-run setup creates an ephemeral sandbox connection.
|
|
81
|
+
It deletes its environment after one turn.
|
|
82
|
+
To use `/detach` and `/reconnect`, set that connection's `providerOptions` to `{"lifecycle":"retained","idleTtlSeconds":1800}` in your workspace's `.braid/config.json` before starting a run.
|
|
83
|
+
|
|
37
84
|
Use these launch forms when needed:
|
|
38
85
|
|
|
39
86
|
```bash
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import type { ConnectionRecord } from '../../domain/entities.js';
|
|
2
2
|
import type { ProductionConnectionOptions } from './production-connection-types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Stores a secret together with the origin it was issued for. The binding lives
|
|
5
|
+
* in the operating-system credential store, so editing the workspace endpoint
|
|
6
|
+
* cannot redirect the secret to another origin.
|
|
7
|
+
*/
|
|
8
|
+
export declare function bindCredentialToOrigin(secret: Uint8Array, endpoint: string): Uint8Array;
|
|
3
9
|
export declare function readConnectionCredential(record: ConnectionRecord, options: ProductionConnectionOptions, endpoint: string): Promise<string | undefined>;
|
|
4
10
|
/** Proves that a caller-supplied durable id maps to an existing protected value. */
|
|
5
11
|
export declare function assertConnectionCredentialReference(record: ConnectionRecord, options: ProductionConnectionOptions): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"production-connection-credentials.d.ts","sourceRoot":"","sources":["../../../src/adapters/connections/production-connection-credentials.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"production-connection-credentials.d.ts","sourceRoot":"","sources":["../../../src/adapters/connections/production-connection-credentials.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAQhE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAInF;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAOvF;AA+CD,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,2BAA2B,EACpC,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAuC7B;AAED,oFAAoF;AACpF,wBAAsB,mCAAmC,CACvD,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,IAAI,CAAC,CAIf"}
|
|
@@ -1,6 +1,50 @@
|
|
|
1
1
|
import { ConnectionError } from '../../app/connection-errors.js';
|
|
2
2
|
import { credentialRef } from '../../ports/credentials.js';
|
|
3
|
-
import { isLoopbackEndpoint } from './production-connection-endpoints.js';
|
|
3
|
+
import { DEFAULT_TANGLE_INFERENCE_ENDPOINT, isLoopbackEndpoint, } from './production-connection-endpoints.js';
|
|
4
|
+
import { DEFAULT_TANGLE_SANDBOX_ENDPOINT } from './production-connection-types.js';
|
|
5
|
+
const BOUND_CREDENTIAL_HEADER = 'braid-credential-v1\n';
|
|
6
|
+
/**
|
|
7
|
+
* Stores a secret together with the origin it was issued for. The binding lives
|
|
8
|
+
* in the operating-system credential store, so editing the workspace endpoint
|
|
9
|
+
* cannot redirect the secret to another origin.
|
|
10
|
+
*/
|
|
11
|
+
export function bindCredentialToOrigin(secret, endpoint) {
|
|
12
|
+
const origin = new URL(endpoint).origin;
|
|
13
|
+
const header = new TextEncoder().encode(`${BOUND_CREDENTIAL_HEADER}${origin}\n`);
|
|
14
|
+
const bound = new Uint8Array(header.length + secret.length);
|
|
15
|
+
bound.set(header, 0);
|
|
16
|
+
bound.set(secret, header.length);
|
|
17
|
+
return bound;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Credentials stored before origin binding carry no origin. They stay usable
|
|
21
|
+
* only where they could have been issued: the connection kind's default Tangle
|
|
22
|
+
* origin, or a loopback CLI Bridge.
|
|
23
|
+
*/
|
|
24
|
+
function legacyCredentialOriginAllowed(record, options, endpoint) {
|
|
25
|
+
const origin = new URL(endpoint).origin;
|
|
26
|
+
if (record.kind === 'tangle-sandbox')
|
|
27
|
+
return (origin === new URL(options.defaultSandboxEndpoint ?? DEFAULT_TANGLE_SANDBOX_ENDPOINT).origin);
|
|
28
|
+
if (record.kind === 'tangle-inference')
|
|
29
|
+
return (origin ===
|
|
30
|
+
new URL(options.defaultInferenceEndpoint ?? DEFAULT_TANGLE_INFERENCE_ENDPOINT).origin);
|
|
31
|
+
return isLoopbackEndpoint(endpoint);
|
|
32
|
+
}
|
|
33
|
+
function credentialForOrigin(value, record, options, endpoint) {
|
|
34
|
+
if (!value.startsWith(BOUND_CREDENTIAL_HEADER)) {
|
|
35
|
+
if (legacyCredentialOriginAllowed(record, options, endpoint))
|
|
36
|
+
return value;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
const rest = value.slice(BOUND_CREDENTIAL_HEADER.length);
|
|
40
|
+
const newline = rest.indexOf('\n');
|
|
41
|
+
const boundOrigin = newline < 0 ? '' : rest.slice(0, newline);
|
|
42
|
+
const secret = newline < 0 ? '' : rest.slice(newline + 1).trim();
|
|
43
|
+
if (boundOrigin === new URL(endpoint).origin && secret.length > 0)
|
|
44
|
+
return secret;
|
|
45
|
+
}
|
|
46
|
+
throw new ConnectionError('CONNECTION_CREDENTIAL_REAUTH_REQUIRED', 'The stored credential was not issued for this endpoint origin; run setup to authenticate the new endpoint', { connectionId: record.id });
|
|
47
|
+
}
|
|
4
48
|
export async function readConnectionCredential(record, options, endpoint) {
|
|
5
49
|
const required = record.kind !== 'cli-bridge' ||
|
|
6
50
|
!isLoopbackEndpoint(endpoint) ||
|
|
@@ -19,7 +63,7 @@ export async function readConnectionCredential(record, options, endpoint) {
|
|
|
19
63
|
if (value.length === 0 || value.includes('\u0000')) {
|
|
20
64
|
throw new ConnectionError('CONNECTION_CREDENTIAL_INVALID', 'The referenced credential in the operating-system credential store is empty or malformed', { connectionId: record.id });
|
|
21
65
|
}
|
|
22
|
-
return value;
|
|
66
|
+
return credentialForOrigin(value, record, options, endpoint);
|
|
23
67
|
}
|
|
24
68
|
catch (error) {
|
|
25
69
|
if (error instanceof ConnectionError)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"production-connection-credentials.js","sourceRoot":"","sources":["../../../src/adapters/connections/production-connection-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAGhE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"production-connection-credentials.js","sourceRoot":"","sources":["../../../src/adapters/connections/production-connection-credentials.ts"],"names":[],"mappings":"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"}
|
|
@@ -180,7 +180,8 @@ function healthFromError(error, checkedAt) {
|
|
|
180
180
|
if (error.code === 'CONNECTION_CREDENTIAL_REQUIRED' ||
|
|
181
181
|
error.code === 'CONNECTION_CREDENTIAL_REF_UNMAPPED' ||
|
|
182
182
|
error.code === 'CONNECTION_CREDENTIAL_UNAVAILABLE' ||
|
|
183
|
-
error.code === 'CONNECTION_CREDENTIAL_INVALID'
|
|
183
|
+
error.code === 'CONNECTION_CREDENTIAL_INVALID' ||
|
|
184
|
+
error.code === 'CONNECTION_CREDENTIAL_REAUTH_REQUIRED') {
|
|
184
185
|
return {
|
|
185
186
|
status: 'unauthorized',
|
|
186
187
|
checkedAt,
|
|
@@ -249,7 +250,8 @@ function modelVerificationFromError(model, checkedAt, error) {
|
|
|
249
250
|
if (error.code === 'CONNECTION_CREDENTIAL_REQUIRED' ||
|
|
250
251
|
error.code === 'CONNECTION_CREDENTIAL_REF_UNMAPPED' ||
|
|
251
252
|
error.code === 'CONNECTION_CREDENTIAL_UNAVAILABLE' ||
|
|
252
|
-
error.code === 'CONNECTION_CREDENTIAL_INVALID'
|
|
253
|
+
error.code === 'CONNECTION_CREDENTIAL_INVALID' ||
|
|
254
|
+
error.code === 'CONNECTION_CREDENTIAL_REAUTH_REQUIRED') {
|
|
253
255
|
return {
|
|
254
256
|
model,
|
|
255
257
|
status: 'unauthorized',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"production-connection-health.js","sourceRoot":"","sources":["../../../src/adapters/connections/production-connection-health.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"production-connection-health.js","sourceRoot":"","sources":["../../../src/adapters/connections/production-connection-health.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ConnectionRemovalBlocker } from '../domain/connection-removal.js';
|
|
2
2
|
import type { ConnectionId } from '../domain/ids.js';
|
|
3
|
-
export type ConnectionErrorCode = 'CONNECTION_NOT_FOUND' | 'CONNECTION_KIND_MISMATCH' | 'CONNECTION_REVISION_MISMATCH' | 'INVALID_CONNECTION_SELECTION' | 'INVALID_CONNECTION_RECORD' | 'SECRET_IN_CONNECTION_RECORD' | 'CONNECTION_ENDPOINT_REQUIRED' | 'CONNECTION_ENDPOINT_INVALID' | 'CONNECTION_ENDPOINT_INSECURE' | 'CONNECTION_ENDPOINT_CONFLICT' | 'CONNECTION_CREDENTIAL_REQUIRED' | 'CONNECTION_CREDENTIAL_REF_UNMAPPED' | 'CONNECTION_CREDENTIAL_UNAVAILABLE' | 'CONNECTION_CREDENTIAL_INVALID' | 'CONNECTION_CREDENTIAL_CHANGE_REQUIRES_SECURE_FLOW' | 'CONNECTION_UNSUPPORTED' | 'CONNECTION_MODEL_REQUIRED' | 'CONNECTION_MODEL_INVALID' | 'CONNECTION_MODEL_HARNESS_MISMATCH' | 'CONNECTION_WORKSPACE_REQUIRED' | 'CONNECTION_FETCH_UNAVAILABLE' | 'CONNECTION_REMOVAL_BLOCKED';
|
|
3
|
+
export type ConnectionErrorCode = 'CONNECTION_NOT_FOUND' | 'CONNECTION_KIND_MISMATCH' | 'CONNECTION_REVISION_MISMATCH' | 'INVALID_CONNECTION_SELECTION' | 'INVALID_CONNECTION_RECORD' | 'SECRET_IN_CONNECTION_RECORD' | 'CONNECTION_ENDPOINT_REQUIRED' | 'CONNECTION_ENDPOINT_INVALID' | 'CONNECTION_ENDPOINT_INSECURE' | 'CONNECTION_ENDPOINT_CONFLICT' | 'CONNECTION_CREDENTIAL_REQUIRED' | 'CONNECTION_CREDENTIAL_REF_UNMAPPED' | 'CONNECTION_CREDENTIAL_UNAVAILABLE' | 'CONNECTION_CREDENTIAL_INVALID' | 'CONNECTION_CREDENTIAL_REAUTH_REQUIRED' | 'CONNECTION_CREDENTIAL_CHANGE_REQUIRES_SECURE_FLOW' | 'CONNECTION_UNSUPPORTED' | 'CONNECTION_MODEL_REQUIRED' | 'CONNECTION_MODEL_INVALID' | 'CONNECTION_MODEL_HARNESS_MISMATCH' | 'CONNECTION_WORKSPACE_REQUIRED' | 'CONNECTION_FETCH_UNAVAILABLE' | 'CONNECTION_REMOVAL_BLOCKED';
|
|
4
4
|
export declare class ConnectionError extends Error {
|
|
5
5
|
readonly code: ConnectionErrorCode;
|
|
6
6
|
readonly connectionId?: ConnectionId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-errors.d.ts","sourceRoot":"","sources":["../../src/app/connection-errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpD,MAAM,MAAM,mBAAmB,GAC3B,sBAAsB,GACtB,0BAA0B,GAC1B,8BAA8B,GAC9B,8BAA8B,GAC9B,2BAA2B,GAC3B,6BAA6B,GAC7B,8BAA8B,GAC9B,6BAA6B,GAC7B,8BAA8B,GAC9B,8BAA8B,GAC9B,gCAAgC,GAChC,oCAAoC,GACpC,mCAAmC,GACnC,+BAA+B,GAC/B,mDAAmD,GACnD,wBAAwB,GACxB,2BAA2B,GAC3B,0BAA0B,GAC1B,mCAAmC,GACnC,+BAA+B,GAC/B,8BAA8B,GAC9B,4BAA4B,CAAA;AAEhC,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;IAEpC,YACE,IAAI,EAAE,mBAAmB,EACzB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;KAAO,EAMvD;CACF;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IACzD,QAAQ,CAAC,QAAQ,EAAE,SAAS,wBAAwB,EAAE,CAAA;IAEtD,YAAY,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,wBAAwB,EAAE,EAUpF;CACF"}
|
|
1
|
+
{"version":3,"file":"connection-errors.d.ts","sourceRoot":"","sources":["../../src/app/connection-errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAEpD,MAAM,MAAM,mBAAmB,GAC3B,sBAAsB,GACtB,0BAA0B,GAC1B,8BAA8B,GAC9B,8BAA8B,GAC9B,2BAA2B,GAC3B,6BAA6B,GAC7B,8BAA8B,GAC9B,6BAA6B,GAC7B,8BAA8B,GAC9B,8BAA8B,GAC9B,gCAAgC,GAChC,oCAAoC,GACpC,mCAAmC,GACnC,+BAA+B,GAC/B,uCAAuC,GACvC,mDAAmD,GACnD,wBAAwB,GACxB,2BAA2B,GAC3B,0BAA0B,GAC1B,mCAAmC,GACnC,+BAA+B,GAC/B,8BAA8B,GAC9B,4BAA4B,CAAA;AAEhC,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;IAEpC,YACE,IAAI,EAAE,mBAAmB,EACzB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAA;KAAO,EAMvD;CACF;AAED,qBAAa,sBAAuB,SAAQ,eAAe;IACzD,QAAQ,CAAC,QAAQ,EAAE,SAAS,wBAAwB,EAAE,CAAA;IAEtD,YAAY,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,wBAAwB,EAAE,EAUpF;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection-errors.js","sourceRoot":"","sources":["../../src/app/connection-errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"connection-errors.js","sourceRoot":"","sources":["../../src/app/connection-errors.ts"],"names":[],"mappings":"AA4BA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAC/B,IAAI,CAAqB;IACzB,YAAY,CAAe;IAEpC,YACE,IAAyB,EACzB,OAAe,EACf,OAAO,GAA6C,EAAE;QAEtD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAA;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS;YAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;IAClF,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,eAAe;IAChD,QAAQ,CAAqC;IAEtD,YAAY,YAA0B,EAAE,QAA6C;QACnF,KAAK,CACH,4BAA4B,EAC5B,cAAc,YAAY,uBAAuB,QAAQ;aACtD,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;aACrE,IAAI,CAAC,IAAI,CAAC,EAAE,EACf,EAAE,YAAY,EAAE,CACjB,CAAA;QACD,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAA;QACpC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IACzF,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"production-setup-credentials.d.ts","sourceRoot":"","sources":["../../src/bin/production-setup-credentials.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"production-setup-credentials.d.ts","sourceRoot":"","sources":["../../src/bin/production-setup-credentials.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAiB,MAAM,yBAAyB,CAAA;AAE5E,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAA;AAGrF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAA;AAiB/E,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAA;IAC1C,QAAQ,CAAC,cAAc,EAAE,4BAA4B,CAAA;IACrD,yEAAyE;IACzE,QAAQ,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACrC;AAED,wBAAgB,mCAAmC,CACjD,OAAO,EAAE,4BAA4B,EACrC,UAAU,EAAE,gBAAgB,GAC3B,OAAO,CAST;AAiHD,gFAAgF;AAChF,wBAAsB,kCAAkC,CACtD,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE;IACP,QAAQ,CAAC,eAAe,CAAC,EAAE,cAAc,CAAA;IACzC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,2BAA2B,CAAA;CACpD,GACL,OAAO,CAAC,IAAI,CAAC,CA8Bf;AAED;;;;GAIG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,4BAA4B,EACrC,SAAS,EAAE,sBAAsB,EACjC,UAAU,EAAE,MAAM,EAClB,kBAAkB,CAAC,EAAE,UAAU,EAC/B,oBAAoB,CAAC,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,GAC9D,OAAO,CAAC,2BAA2B,CAAC,CAmJtC"}
|
|
@@ -2,7 +2,8 @@ import { randomUUID } from 'node:crypto';
|
|
|
2
2
|
import { mkdir } from 'node:fs/promises';
|
|
3
3
|
import { dirname, resolve } from 'node:path';
|
|
4
4
|
import { canonicalCandidateJson } from '../adapters/agent-interface/profile-runtime.js';
|
|
5
|
-
import {
|
|
5
|
+
import { bindCredentialToOrigin } from '../adapters/connections/production-connection-credentials.js';
|
|
6
|
+
import { connectionEndpoint, isLoopbackEndpoint, } from '../adapters/connections/production-connection-endpoints.js';
|
|
6
7
|
import { createOperatingSystemCredentialStore } from '../adapters/credentials/os.js';
|
|
7
8
|
import { assertNoSymlinkPath, assertSafeDirectory, readNoFollow, removePrivateFile, writePrivateFile, } from '../adapters/persistence/safe-file.js';
|
|
8
9
|
import { createCredentialRefId } from '../domain/ids.js';
|
|
@@ -214,9 +215,12 @@ export async function prepareProductionSelection(options, selection, configPath,
|
|
|
214
215
|
credentialId,
|
|
215
216
|
portRef,
|
|
216
217
|
});
|
|
217
|
-
const
|
|
218
|
+
const plainSecret = hasSuppliedCredential
|
|
218
219
|
? Buffer.from(suppliedCredential)
|
|
219
220
|
: Buffer.from(configuredAuth ?? '', 'utf8');
|
|
221
|
+
// The stored value names the origin it authenticates; a later endpoint edit needs setup again.
|
|
222
|
+
const secret = Buffer.from(bindCredentialToOrigin(plainSecret, connectionEndpoint(selection.connection)));
|
|
223
|
+
plainSecret.fill(0);
|
|
220
224
|
try {
|
|
221
225
|
try {
|
|
222
226
|
const storedRef = await store.store({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"production-setup-credentials.js","sourceRoot":"","sources":["../../src/bin/production-setup-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAA;AACvF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"production-setup-credentials.js","sourceRoot":"","sources":["../../src/bin/production-setup-credentials.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,16 @@ export declare class SecretTextSanitizer {
|
|
|
4
4
|
#private;
|
|
5
5
|
constructor(maxOutputBytes?: number);
|
|
6
6
|
push(input: string): string;
|
|
7
|
+
/** Push text that ends on a line boundary and release everything that is complete. */
|
|
8
|
+
flushLines(input: string): string;
|
|
7
9
|
finish(): string;
|
|
8
10
|
}
|
|
9
|
-
/**
|
|
11
|
+
/**
|
|
12
|
+
* Streams sanitized text a complete line at a time. Each emitted line goes
|
|
13
|
+
* through the same recognizer as batch redaction, so a chunk boundary can never
|
|
14
|
+
* split a secret name from its value. A line longer than the pending bound is
|
|
15
|
+
* released through the batch sanitizer, which withholds any incomplete secret.
|
|
16
|
+
*/
|
|
10
17
|
export declare class IncrementalSecretTextSanitizer {
|
|
11
18
|
#private;
|
|
12
19
|
constructor(maxOutputBytes?: number);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secret-sanitizer.d.ts","sourceRoot":"","sources":["../../src/domain/secret-sanitizer.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,wBAAwB,QAAa,CAAA;AAClD,eAAO,MAAM,wBAAwB,uBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"secret-sanitizer.d.ts","sourceRoot":"","sources":["../../src/domain/secret-sanitizer.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,wBAAwB,QAAa,CAAA;AAClD,eAAO,MAAM,wBAAwB,uBAAkB,CAAA;AAwIvD,qBAAa,mBAAmB;;IAQ9B,YAAY,cAAc,SAA2B,EAEpD;IAED,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG1B;IAED,sFAAsF;IACtF,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMhC;IAED,MAAM,IAAI,MAAM,CAUf;CAoHF;AAED;;;;;GAKG;AACH,qBAAa,8BAA8B;;IAKzC,YAAY,cAAc,SAA2B,EAEpD;IAED,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAa1B;IAED,MAAM,IAAI,MAAM,CAQf;CAmBF;AAoCD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,SAA2B,GAAG,MAAM,CAG9F;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EACxB,QAAQ,SAA2B,GAClC,MAAM,CAKR;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD"}
|
|
@@ -4,62 +4,20 @@ export const SECRET_TRUNCATION_MARKER = '… [truncated]';
|
|
|
4
4
|
const MAX_PENDING_BYTES = 4096;
|
|
5
5
|
const MAX_LOOKBEHIND_CHARS = 1024;
|
|
6
6
|
const BIDI_CONTROLS = /\p{Bidi_Control}/gu;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const
|
|
7
|
+
// A secret name may sit inside JSON quotes (escaped or not) and may carry an
|
|
8
|
+
// identifier prefix such as TANGLE_API_KEY or X-Api-Key; the value may be quoted.
|
|
9
|
+
const SECRET_NAME_SOURCE = String.raw `(?:\\?["'])?(?:[A-Za-z0-9]+[_.-])*(?:password|passwd|passphrase|token|secret|credential|authorization|auth|key|api[_ -]*key|access[_ -]*key|private[_ -]*key|client[_ -]*secret|signature|cookie|header|query|fragment)(?:\\?["'])?`;
|
|
10
|
+
const SECRET_BOUNDARY_SOURCE = String.raw `(^|[\s,;{[(])`;
|
|
11
|
+
const SECRET_VALUE_SOURCE = String.raw `(?:\\?"[^"]*?\\?"|'[^']*'|[^\s,;}\])}]*)`;
|
|
12
|
+
const SECRET_ASSIGNMENT = new RegExp(String.raw `${SECRET_BOUNDARY_SOURCE}${SECRET_NAME_SOURCE}\s*[:=]\s*${SECRET_VALUE_SOURCE}`, 'giu');
|
|
13
|
+
const SECRET_AUTH_SCHEME_ASSIGNMENT = new RegExp(String.raw `${SECRET_BOUNDARY_SOURCE}${SECRET_NAME_SOURCE}\s*[:=]\s*(?:\\?["'])?(?:Bearer|Basic)(?:\s+|\s*=\s*)[^\s,;}\])}"']+`, 'giu');
|
|
10
14
|
const BEARER_ASSIGNMENT = /\bBearer(?:\s+|\s*=\s*)[^\s,;]*/giu;
|
|
11
15
|
const BARE_CREDENTIAL = /(?:sk-[A-Za-z0-9_-]{20,}|github_pat_[A-Za-z0-9_]{20,}|gh[pousr]_[A-Za-z0-9]{20,}|AKIA[0-9A-Z]{16}|AIza[0-9A-Za-z_-]{30,}|xox[baprs]-[A-Za-z0-9-]{20,})/gu;
|
|
12
16
|
const WEB_URL = /https?:\/\/[^\s\p{Cc}<>"']+/giu;
|
|
13
17
|
const INCOMPLETE_BEARER = /\bBearer(?:[\s]+|[\s]*=[\s]*)$/iu;
|
|
14
18
|
const INCOMPLETE_URL = /(^|[\s([{<])https?:\/\/[^\s\p{Cc}<>"']*$/iu;
|
|
15
|
-
const INCOMPLETE_ASSIGNMENT =
|
|
19
|
+
const INCOMPLETE_ASSIGNMENT = new RegExp(String.raw `${SECRET_BOUNDARY_SOURCE}${SECRET_NAME_SOURCE}\s*[:=]\s*(?:\\?"[^"]*|'[^']*|[^\s,;}\])}]*)$`, 'iu');
|
|
16
20
|
const INCOMPLETE_BARE_CREDENTIAL = /(?:sk-|github_pat_|gh[pousr]_|AKIA|AIza|xox[baprs]-)[A-Za-z0-9_-]*$/u;
|
|
17
|
-
const STREAM_BEARER_PREFIX = 'bearer';
|
|
18
|
-
const STREAM_URL_PREFIXES = ['http://', 'https://'];
|
|
19
|
-
const STREAM_SECRET_NAMES = [
|
|
20
|
-
'password',
|
|
21
|
-
'passwd',
|
|
22
|
-
'passphrase',
|
|
23
|
-
'token',
|
|
24
|
-
'secret',
|
|
25
|
-
'credential',
|
|
26
|
-
'authorization',
|
|
27
|
-
'auth',
|
|
28
|
-
'key',
|
|
29
|
-
'api_key',
|
|
30
|
-
'api-key',
|
|
31
|
-
'api key',
|
|
32
|
-
'access_key',
|
|
33
|
-
'access-key',
|
|
34
|
-
'access key',
|
|
35
|
-
'private_key',
|
|
36
|
-
'private-key',
|
|
37
|
-
'private key',
|
|
38
|
-
'client_secret',
|
|
39
|
-
'client-secret',
|
|
40
|
-
'client secret',
|
|
41
|
-
'signature',
|
|
42
|
-
'cookie',
|
|
43
|
-
'header',
|
|
44
|
-
'query',
|
|
45
|
-
'fragment',
|
|
46
|
-
];
|
|
47
|
-
const STREAM_BARE_PREFIXES = [
|
|
48
|
-
{ prefix: 'sk-', minimumBodyBytes: 20 },
|
|
49
|
-
{ prefix: 'github_pat_', minimumBodyBytes: 20 },
|
|
50
|
-
{ prefix: 'ghp_', minimumBodyBytes: 20 },
|
|
51
|
-
{ prefix: 'gho_', minimumBodyBytes: 20 },
|
|
52
|
-
{ prefix: 'ghu_', minimumBodyBytes: 20 },
|
|
53
|
-
{ prefix: 'ghs_', minimumBodyBytes: 20 },
|
|
54
|
-
{ prefix: 'ghr_', minimumBodyBytes: 20 },
|
|
55
|
-
{ prefix: 'AKIA', minimumBodyBytes: 16 },
|
|
56
|
-
{ prefix: 'AIza', minimumBodyBytes: 30 },
|
|
57
|
-
{ prefix: 'xoxb-', minimumBodyBytes: 20 },
|
|
58
|
-
{ prefix: 'xoxa-', minimumBodyBytes: 20 },
|
|
59
|
-
{ prefix: 'xoxp-', minimumBodyBytes: 20 },
|
|
60
|
-
{ prefix: 'xoxr-', minimumBodyBytes: 20 },
|
|
61
|
-
{ prefix: 'xoxs-', minimumBodyBytes: 20 },
|
|
62
|
-
];
|
|
63
21
|
const STREAM_MAX_PENDING_BYTES = 4096;
|
|
64
22
|
function isHighSurrogate(character) {
|
|
65
23
|
return (character.length === 1 && character.charCodeAt(0) >= 0xd800 && character.charCodeAt(0) <= 0xdbff);
|
|
@@ -67,65 +25,6 @@ function isHighSurrogate(character) {
|
|
|
67
25
|
function isLowSurrogate(character) {
|
|
68
26
|
return (character.length === 1 && character.charCodeAt(0) >= 0xdc00 && character.charCodeAt(0) <= 0xdfff);
|
|
69
27
|
}
|
|
70
|
-
function isStreamAssignmentBoundary(character) {
|
|
71
|
-
return character === undefined || /[\s,;{[(]/u.test(character);
|
|
72
|
-
}
|
|
73
|
-
function isStreamBearerBoundary(character) {
|
|
74
|
-
return character === undefined || !/[A-Za-z0-9_]/u.test(character);
|
|
75
|
-
}
|
|
76
|
-
function isStreamUrlCharacter(character) {
|
|
77
|
-
const code = character.codePointAt(0) ?? 0;
|
|
78
|
-
return code > 0x20 && code !== 0x7f && !/[<>"']/u.test(character);
|
|
79
|
-
}
|
|
80
|
-
function isStreamAssignmentDelimiter(character) {
|
|
81
|
-
return /[\s,;}\])}]/u.test(character);
|
|
82
|
-
}
|
|
83
|
-
function isStreamBearerDelimiter(character) {
|
|
84
|
-
return /[\s,;]/u.test(character);
|
|
85
|
-
}
|
|
86
|
-
function isStreamBareCharacter(character) {
|
|
87
|
-
return /[A-Za-z0-9_-]/u.test(character);
|
|
88
|
-
}
|
|
89
|
-
function streamCaseInsensitivePrefix(value, prefix) {
|
|
90
|
-
return prefix.startsWith(value.toLowerCase());
|
|
91
|
-
}
|
|
92
|
-
function streamCandidateIsPrefix(value) {
|
|
93
|
-
return (streamCaseInsensitivePrefix(value, STREAM_BEARER_PREFIX) ||
|
|
94
|
-
STREAM_URL_PREFIXES.some((prefix) => streamCaseInsensitivePrefix(value, prefix)) ||
|
|
95
|
-
streamSecretNameIsPrefix(value) ||
|
|
96
|
-
STREAM_BARE_PREFIXES.some(({ prefix }) => prefix.startsWith(value)));
|
|
97
|
-
}
|
|
98
|
-
function streamAssignmentName(value) {
|
|
99
|
-
return STREAM_SECRET_NAMES.some((name) => streamSecretNameMatches(value, name, true));
|
|
100
|
-
}
|
|
101
|
-
function streamSecretNameIsPrefix(value) {
|
|
102
|
-
if (value.length === 0)
|
|
103
|
-
return false;
|
|
104
|
-
return STREAM_SECRET_NAMES.some((name) => streamSecretNameMatches(value, name, false));
|
|
105
|
-
}
|
|
106
|
-
function streamSecretNameMatches(value, name, complete) {
|
|
107
|
-
const words = name.split(/[_ -]+/u);
|
|
108
|
-
const lowerValue = value.toLowerCase();
|
|
109
|
-
let offset = 0;
|
|
110
|
-
for (const [index, word] of words.entries()) {
|
|
111
|
-
if (offset === lowerValue.length)
|
|
112
|
-
return !complete || index < words.length;
|
|
113
|
-
const remainder = lowerValue.slice(offset);
|
|
114
|
-
if (remainder.length < word.length)
|
|
115
|
-
return !complete && word.startsWith(remainder);
|
|
116
|
-
if (!remainder.startsWith(word))
|
|
117
|
-
return false;
|
|
118
|
-
offset += word.length;
|
|
119
|
-
if (index === words.length - 1)
|
|
120
|
-
return offset === lowerValue.length;
|
|
121
|
-
while (offset < lowerValue.length && /[_ -]/u.test(lowerValue[offset] ?? ''))
|
|
122
|
-
offset += 1;
|
|
123
|
-
}
|
|
124
|
-
return !complete && offset === lowerValue.length;
|
|
125
|
-
}
|
|
126
|
-
function streamBarePrefix(value) {
|
|
127
|
-
return STREAM_BARE_PREFIXES.find(({ prefix }) => prefix === value);
|
|
128
|
-
}
|
|
129
28
|
function isUrlDelimiter(character) {
|
|
130
29
|
if (character === undefined || /\s/u.test(character))
|
|
131
30
|
return true;
|
|
@@ -226,6 +125,15 @@ export class SecretTextSanitizer {
|
|
|
226
125
|
this.#pending += this.#terminal.push(input);
|
|
227
126
|
return this.#drain(false);
|
|
228
127
|
}
|
|
128
|
+
/** Push text that ends on a line boundary and release everything that is complete. */
|
|
129
|
+
flushLines(input) {
|
|
130
|
+
this.#pending += this.#terminal.push(input);
|
|
131
|
+
if (this.#pendingSecret !== undefined)
|
|
132
|
+
return this.#drain(false);
|
|
133
|
+
const redacted = this.#append(redactStable(this.#pending));
|
|
134
|
+
this.#pending = '';
|
|
135
|
+
return redacted;
|
|
136
|
+
}
|
|
229
137
|
finish() {
|
|
230
138
|
this.#pending += this.#terminal.finish();
|
|
231
139
|
const result = this.#drain(true);
|
|
@@ -362,46 +270,43 @@ export class SecretTextSanitizer {
|
|
|
362
270
|
this.#pendingSecret = undefined;
|
|
363
271
|
}
|
|
364
272
|
}
|
|
365
|
-
/**
|
|
273
|
+
/**
|
|
274
|
+
* Streams sanitized text a complete line at a time. Each emitted line goes
|
|
275
|
+
* through the same recognizer as batch redaction, so a chunk boundary can never
|
|
276
|
+
* split a secret name from its value. A line longer than the pending bound is
|
|
277
|
+
* released through the batch sanitizer, which withholds any incomplete secret.
|
|
278
|
+
*/
|
|
366
279
|
export class IncrementalSecretTextSanitizer {
|
|
367
|
-
#
|
|
368
|
-
#maxOutputBytes;
|
|
369
|
-
#state = 'normal';
|
|
280
|
+
#lines;
|
|
370
281
|
#pending = '';
|
|
371
|
-
#pendingBytes = 0;
|
|
372
|
-
#assignmentEligible = false;
|
|
373
|
-
#assignmentQuote;
|
|
374
|
-
#assignmentValueStarted = false;
|
|
375
|
-
#assignmentToken = '';
|
|
376
|
-
#bareMinimumBodyBytes = 0;
|
|
377
|
-
#bareBodyBytes = 0;
|
|
378
|
-
#outputBytes = 0;
|
|
379
|
-
#truncated = false;
|
|
380
|
-
#lastCharacter;
|
|
381
282
|
#pendingHighSurrogate;
|
|
382
283
|
constructor(maxOutputBytes = MAX_SANITIZED_TEXT_BYTES) {
|
|
383
|
-
this.#
|
|
284
|
+
this.#lines = new SecretTextSanitizer(maxOutputBytes);
|
|
384
285
|
}
|
|
385
286
|
push(input) {
|
|
386
287
|
if (typeof input !== 'string' || input.length === 0)
|
|
387
288
|
return '';
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
289
|
+
this.#pending += this.#normalizeChunk(input);
|
|
290
|
+
const lineEnd = this.#pending.lastIndexOf('\n');
|
|
291
|
+
if (lineEnd < 0) {
|
|
292
|
+
if (Buffer.byteLength(this.#pending, 'utf8') <= STREAM_MAX_PENDING_BYTES)
|
|
293
|
+
return '';
|
|
294
|
+
const overflow = this.#pending;
|
|
295
|
+
this.#pending = '';
|
|
296
|
+
return this.#lines.push(overflow);
|
|
297
|
+
}
|
|
298
|
+
const complete = this.#pending.slice(0, lineEnd + 1);
|
|
299
|
+
this.#pending = this.#pending.slice(lineEnd + 1);
|
|
300
|
+
return this.#lines.flushLines(complete);
|
|
392
301
|
}
|
|
393
302
|
finish() {
|
|
394
|
-
const output = [];
|
|
395
303
|
if (this.#pendingHighSurrogate !== undefined) {
|
|
396
304
|
this.#pendingHighSurrogate = undefined;
|
|
397
|
-
|
|
305
|
+
this.#pending += '\ufffd';
|
|
398
306
|
}
|
|
399
|
-
this.#
|
|
400
|
-
this.#
|
|
401
|
-
|
|
402
|
-
this.#append(output, takeUtf8Prefix(SECRET_TRUNCATION_MARKER, this.#maxOutputBytes - this.#outputBytes));
|
|
403
|
-
}
|
|
404
|
-
return output.join('');
|
|
307
|
+
const rest = this.#pending;
|
|
308
|
+
this.#pending = '';
|
|
309
|
+
return this.#lines.push(rest) + this.#lines.finish();
|
|
405
310
|
}
|
|
406
311
|
#normalizeChunk(input) {
|
|
407
312
|
let normalized = '';
|
|
@@ -422,325 +327,6 @@ export class IncrementalSecretTextSanitizer {
|
|
|
422
327
|
}
|
|
423
328
|
return normalized;
|
|
424
329
|
}
|
|
425
|
-
#consumeVisible(input) {
|
|
426
|
-
const output = [];
|
|
427
|
-
for (const character of input) {
|
|
428
|
-
if (BIDI_CHARACTER.test(character))
|
|
429
|
-
continue;
|
|
430
|
-
this.#consumeCharacter(character, output);
|
|
431
|
-
}
|
|
432
|
-
return output.join('');
|
|
433
|
-
}
|
|
434
|
-
#consumeCharacter(character, output) {
|
|
435
|
-
for (;;) {
|
|
436
|
-
if (this.#state === 'normal') {
|
|
437
|
-
if (streamCandidateIsPrefix(character)) {
|
|
438
|
-
this.#state = 'candidate';
|
|
439
|
-
this.#pending = character;
|
|
440
|
-
this.#pendingBytes = Buffer.byteLength(character, 'utf8');
|
|
441
|
-
this.#assignmentEligible = isStreamAssignmentBoundary(this.#lastCharacter);
|
|
442
|
-
return;
|
|
443
|
-
}
|
|
444
|
-
this.#append(output, character);
|
|
445
|
-
this.#lastCharacter = character;
|
|
446
|
-
return;
|
|
447
|
-
}
|
|
448
|
-
if (this.#state === 'candidate') {
|
|
449
|
-
const isBearerCandidate = this.#pending.toLowerCase() === STREAM_BEARER_PREFIX &&
|
|
450
|
-
isStreamBearerBoundary(this.#lastCharacter);
|
|
451
|
-
if (!this.#assignmentEligible && /\s/u.test(character) && !isBearerCandidate) {
|
|
452
|
-
this.#emitLiteral(output, this.#pending);
|
|
453
|
-
this.#clearPending();
|
|
454
|
-
this.#state = 'normal';
|
|
455
|
-
continue;
|
|
456
|
-
}
|
|
457
|
-
const candidate = `${this.#pending}${character}`;
|
|
458
|
-
if (streamCandidateIsPrefix(candidate)) {
|
|
459
|
-
this.#pending = candidate;
|
|
460
|
-
this.#pendingBytes += Buffer.byteLength(character, 'utf8');
|
|
461
|
-
const bare = streamBarePrefix(candidate);
|
|
462
|
-
if (bare !== undefined) {
|
|
463
|
-
this.#state = 'bare-token';
|
|
464
|
-
this.#bareMinimumBodyBytes = bare.minimumBodyBytes;
|
|
465
|
-
this.#bareBodyBytes = 0;
|
|
466
|
-
}
|
|
467
|
-
else if (STREAM_URL_PREFIXES.some((prefix) => prefix === candidate.toLowerCase())) {
|
|
468
|
-
this.#state = 'url-body';
|
|
469
|
-
}
|
|
470
|
-
return;
|
|
471
|
-
}
|
|
472
|
-
if (this.#assignmentEligible && streamAssignmentName(this.#pending)) {
|
|
473
|
-
if (/\s/u.test(character)) {
|
|
474
|
-
this.#pending += character;
|
|
475
|
-
this.#pendingBytes += Buffer.byteLength(character, 'utf8');
|
|
476
|
-
this.#state = 'assignment-gap';
|
|
477
|
-
return;
|
|
478
|
-
}
|
|
479
|
-
if (character === ':' || character === '=') {
|
|
480
|
-
this.#beginAssignment(output);
|
|
481
|
-
return;
|
|
482
|
-
}
|
|
483
|
-
}
|
|
484
|
-
if (isBearerCandidate) {
|
|
485
|
-
if (/\s|=/u.test(character)) {
|
|
486
|
-
this.#pending += character;
|
|
487
|
-
this.#pendingBytes += Buffer.byteLength(character, 'utf8');
|
|
488
|
-
this.#state = 'bearer-gap';
|
|
489
|
-
return;
|
|
490
|
-
}
|
|
491
|
-
}
|
|
492
|
-
this.#emitLiteral(output, this.#pending);
|
|
493
|
-
this.#clearPending();
|
|
494
|
-
this.#state = 'normal';
|
|
495
|
-
continue;
|
|
496
|
-
}
|
|
497
|
-
if (this.#state === 'assignment-gap') {
|
|
498
|
-
if (/\s/u.test(character)) {
|
|
499
|
-
this.#pending += character;
|
|
500
|
-
this.#pendingBytes += Buffer.byteLength(character, 'utf8');
|
|
501
|
-
if (this.#pendingBytes > STREAM_MAX_PENDING_BYTES)
|
|
502
|
-
this.#beginAssignment(output);
|
|
503
|
-
return;
|
|
504
|
-
}
|
|
505
|
-
if (character === ':' || character === '=') {
|
|
506
|
-
this.#beginAssignment(output);
|
|
507
|
-
return;
|
|
508
|
-
}
|
|
509
|
-
this.#emitLiteral(output, this.#pending);
|
|
510
|
-
this.#clearPending();
|
|
511
|
-
this.#state = 'normal';
|
|
512
|
-
continue;
|
|
513
|
-
}
|
|
514
|
-
if (this.#state === 'assignment-value') {
|
|
515
|
-
if (!this.#assignmentValueStarted) {
|
|
516
|
-
if (/\s/u.test(character))
|
|
517
|
-
return;
|
|
518
|
-
if (character === '"' || character === "'") {
|
|
519
|
-
this.#assignmentQuote = character;
|
|
520
|
-
this.#assignmentValueStarted = true;
|
|
521
|
-
return;
|
|
522
|
-
}
|
|
523
|
-
if (isStreamAssignmentDelimiter(character)) {
|
|
524
|
-
this.#resetRedactionState();
|
|
525
|
-
continue;
|
|
526
|
-
}
|
|
527
|
-
this.#assignmentValueStarted = true;
|
|
528
|
-
this.#assignmentToken = character;
|
|
529
|
-
return;
|
|
530
|
-
}
|
|
531
|
-
if (this.#assignmentQuote !== undefined) {
|
|
532
|
-
if (character === this.#assignmentQuote)
|
|
533
|
-
this.#resetRedactionState();
|
|
534
|
-
return;
|
|
535
|
-
}
|
|
536
|
-
if ((character === '=' || /\s/u.test(character)) &&
|
|
537
|
-
(this.#assignmentToken.toLowerCase() === 'bearer' ||
|
|
538
|
-
this.#assignmentToken.toLowerCase() === 'basic')) {
|
|
539
|
-
this.#state = 'assignment-scheme-gap';
|
|
540
|
-
return;
|
|
541
|
-
}
|
|
542
|
-
if (isStreamAssignmentDelimiter(character)) {
|
|
543
|
-
this.#resetRedactionState();
|
|
544
|
-
continue;
|
|
545
|
-
}
|
|
546
|
-
if (this.#assignmentToken.length < 8)
|
|
547
|
-
this.#assignmentToken += character;
|
|
548
|
-
return;
|
|
549
|
-
}
|
|
550
|
-
if (this.#state === 'assignment-scheme-gap') {
|
|
551
|
-
if (/\s/u.test(character) || character === '=')
|
|
552
|
-
return;
|
|
553
|
-
if (isStreamAssignmentDelimiter(character)) {
|
|
554
|
-
this.#resetRedactionState();
|
|
555
|
-
continue;
|
|
556
|
-
}
|
|
557
|
-
this.#state = 'assignment-scheme-token';
|
|
558
|
-
return;
|
|
559
|
-
}
|
|
560
|
-
if (this.#state === 'assignment-scheme-token') {
|
|
561
|
-
if (isStreamAssignmentDelimiter(character)) {
|
|
562
|
-
this.#resetRedactionState();
|
|
563
|
-
continue;
|
|
564
|
-
}
|
|
565
|
-
return;
|
|
566
|
-
}
|
|
567
|
-
if (this.#state === 'bearer-gap') {
|
|
568
|
-
if (/\s|=/u.test(character)) {
|
|
569
|
-
this.#pending += character;
|
|
570
|
-
this.#pendingBytes += Buffer.byteLength(character, 'utf8');
|
|
571
|
-
if (this.#pendingBytes > STREAM_MAX_PENDING_BYTES)
|
|
572
|
-
this.#beginBearerDiscard(output);
|
|
573
|
-
return;
|
|
574
|
-
}
|
|
575
|
-
if (character === ',' || character === ';') {
|
|
576
|
-
this.#beginBearerDiscard(output);
|
|
577
|
-
this.#resetRedactionState();
|
|
578
|
-
continue;
|
|
579
|
-
}
|
|
580
|
-
this.#beginBearerDiscard(output);
|
|
581
|
-
return;
|
|
582
|
-
}
|
|
583
|
-
if (this.#state === 'bearer-discard') {
|
|
584
|
-
if (isStreamBearerDelimiter(character)) {
|
|
585
|
-
this.#resetRedactionState();
|
|
586
|
-
continue;
|
|
587
|
-
}
|
|
588
|
-
return;
|
|
589
|
-
}
|
|
590
|
-
if (this.#state === 'bare-token') {
|
|
591
|
-
if (isStreamBareCharacter(character)) {
|
|
592
|
-
this.#pending += character;
|
|
593
|
-
this.#pendingBytes += Buffer.byteLength(character, 'utf8');
|
|
594
|
-
this.#bareBodyBytes += Buffer.byteLength(character, 'utf8');
|
|
595
|
-
if (this.#bareBodyBytes >= this.#bareMinimumBodyBytes ||
|
|
596
|
-
this.#pendingBytes > STREAM_MAX_PENDING_BYTES)
|
|
597
|
-
this.#beginBareDiscard(output);
|
|
598
|
-
return;
|
|
599
|
-
}
|
|
600
|
-
if (this.#bareBodyBytes >= this.#bareMinimumBodyBytes)
|
|
601
|
-
this.#beginBareDiscard(output);
|
|
602
|
-
else
|
|
603
|
-
this.#emitLiteral(output, this.#pending);
|
|
604
|
-
this.#clearPending();
|
|
605
|
-
this.#state = 'normal';
|
|
606
|
-
continue;
|
|
607
|
-
}
|
|
608
|
-
if (this.#state === 'bare-discard') {
|
|
609
|
-
if (!isStreamBareCharacter(character)) {
|
|
610
|
-
this.#resetRedactionState();
|
|
611
|
-
continue;
|
|
612
|
-
}
|
|
613
|
-
return;
|
|
614
|
-
}
|
|
615
|
-
if (this.#state === 'url-body') {
|
|
616
|
-
if (isStreamUrlCharacter(character)) {
|
|
617
|
-
this.#pending += character;
|
|
618
|
-
this.#pendingBytes += Buffer.byteLength(character, 'utf8');
|
|
619
|
-
if (this.#pendingBytes > STREAM_MAX_PENDING_BYTES)
|
|
620
|
-
this.#beginUrlDiscard(output);
|
|
621
|
-
return;
|
|
622
|
-
}
|
|
623
|
-
const redacted = redactStable(`${redactUrl(this.#pending)}${character}`);
|
|
624
|
-
this.#append(output, redacted);
|
|
625
|
-
this.#clearPending();
|
|
626
|
-
this.#state = 'normal';
|
|
627
|
-
this.#lastCharacter = character;
|
|
628
|
-
if (redacted.includes('[redacted bearer]'))
|
|
629
|
-
this.#state = 'bearer-discard';
|
|
630
|
-
else if (redacted.includes('[redacted secret]'))
|
|
631
|
-
this.#state = 'assignment-value';
|
|
632
|
-
else if (redacted.includes('[redacted credential]'))
|
|
633
|
-
this.#state = 'bare-discard';
|
|
634
|
-
return;
|
|
635
|
-
}
|
|
636
|
-
if (this.#state === 'url-discard') {
|
|
637
|
-
if (!isStreamUrlCharacter(character)) {
|
|
638
|
-
this.#resetRedactionState();
|
|
639
|
-
continue;
|
|
640
|
-
}
|
|
641
|
-
return;
|
|
642
|
-
}
|
|
643
|
-
const exhaustive = this.#state;
|
|
644
|
-
throw new Error(`Unknown incremental redaction state: ${exhaustive}`);
|
|
645
|
-
}
|
|
646
|
-
}
|
|
647
|
-
#beginAssignment(output) {
|
|
648
|
-
this.#append(output, '[redacted secret]');
|
|
649
|
-
this.#lastCharacter = ']';
|
|
650
|
-
this.#clearPending();
|
|
651
|
-
this.#state = 'assignment-value';
|
|
652
|
-
this.#assignmentQuote = undefined;
|
|
653
|
-
this.#assignmentValueStarted = false;
|
|
654
|
-
this.#assignmentToken = '';
|
|
655
|
-
}
|
|
656
|
-
#beginBearerDiscard(output) {
|
|
657
|
-
this.#append(output, '[redacted bearer]');
|
|
658
|
-
this.#lastCharacter = ']';
|
|
659
|
-
this.#clearPending();
|
|
660
|
-
this.#state = 'bearer-discard';
|
|
661
|
-
}
|
|
662
|
-
#beginBareDiscard(output) {
|
|
663
|
-
this.#append(output, '[redacted credential]');
|
|
664
|
-
this.#lastCharacter = ']';
|
|
665
|
-
this.#clearPending();
|
|
666
|
-
this.#state = 'bare-discard';
|
|
667
|
-
}
|
|
668
|
-
#beginUrlDiscard(output) {
|
|
669
|
-
this.#append(output, '[redacted link]');
|
|
670
|
-
this.#lastCharacter = ']';
|
|
671
|
-
this.#clearPending();
|
|
672
|
-
this.#state = 'url-discard';
|
|
673
|
-
}
|
|
674
|
-
#finishRedaction(output) {
|
|
675
|
-
switch (this.#state) {
|
|
676
|
-
case 'candidate':
|
|
677
|
-
this.#emitLiteral(output, this.#pending);
|
|
678
|
-
break;
|
|
679
|
-
case 'assignment-gap':
|
|
680
|
-
this.#beginAssignment(output);
|
|
681
|
-
break;
|
|
682
|
-
case 'assignment-value':
|
|
683
|
-
case 'assignment-scheme-gap':
|
|
684
|
-
case 'assignment-scheme-token':
|
|
685
|
-
case 'bearer-discard':
|
|
686
|
-
case 'bare-discard':
|
|
687
|
-
case 'url-discard':
|
|
688
|
-
break;
|
|
689
|
-
case 'bearer-gap':
|
|
690
|
-
this.#beginBearerDiscard(output);
|
|
691
|
-
break;
|
|
692
|
-
case 'bare-token':
|
|
693
|
-
if (this.#bareBodyBytes >= this.#bareMinimumBodyBytes)
|
|
694
|
-
this.#beginBareDiscard(output);
|
|
695
|
-
else
|
|
696
|
-
this.#emitLiteral(output, this.#pending);
|
|
697
|
-
break;
|
|
698
|
-
case 'url-body':
|
|
699
|
-
this.#append(output, redactStable(redactUrl(this.#pending)));
|
|
700
|
-
break;
|
|
701
|
-
case 'normal':
|
|
702
|
-
break;
|
|
703
|
-
default: {
|
|
704
|
-
const exhaustive = this.#state;
|
|
705
|
-
throw new Error(`Unknown incremental redaction state: ${exhaustive}`);
|
|
706
|
-
}
|
|
707
|
-
}
|
|
708
|
-
this.#clearPending();
|
|
709
|
-
this.#state = 'normal';
|
|
710
|
-
}
|
|
711
|
-
#emitLiteral(output, value) {
|
|
712
|
-
if (value.length === 0)
|
|
713
|
-
return;
|
|
714
|
-
this.#append(output, value);
|
|
715
|
-
this.#lastCharacter = [...value].at(-1);
|
|
716
|
-
}
|
|
717
|
-
#append(output, value) {
|
|
718
|
-
if (value.length === 0)
|
|
719
|
-
return;
|
|
720
|
-
const remaining = this.#maxOutputBytes - this.#outputBytes;
|
|
721
|
-
if (remaining <= 0) {
|
|
722
|
-
this.#truncated = true;
|
|
723
|
-
return;
|
|
724
|
-
}
|
|
725
|
-
const bounded = takeUtf8Prefix(value, remaining);
|
|
726
|
-
this.#outputBytes += Buffer.byteLength(bounded, 'utf8');
|
|
727
|
-
if (bounded.length !== value.length)
|
|
728
|
-
this.#truncated = true;
|
|
729
|
-
output.push(bounded);
|
|
730
|
-
}
|
|
731
|
-
#clearPending() {
|
|
732
|
-
this.#pending = '';
|
|
733
|
-
this.#pendingBytes = 0;
|
|
734
|
-
this.#bareMinimumBodyBytes = 0;
|
|
735
|
-
this.#bareBodyBytes = 0;
|
|
736
|
-
}
|
|
737
|
-
#resetRedactionState() {
|
|
738
|
-
this.#clearPending();
|
|
739
|
-
this.#state = 'normal';
|
|
740
|
-
this.#assignmentQuote = undefined;
|
|
741
|
-
this.#assignmentValueStarted = false;
|
|
742
|
-
this.#assignmentToken = '';
|
|
743
|
-
}
|
|
744
330
|
}
|
|
745
331
|
function incompleteSecret(stable, tail) {
|
|
746
332
|
const bearer = INCOMPLETE_BEARER.exec(stable);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secret-sanitizer.js","sourceRoot":"","sources":["../../src/domain/secret-sanitizer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"secret-sanitizer.js","sourceRoot":"","sources":["../../src/domain/secret-sanitizer.ts"],"names":[],"mappings":"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"}
|