rehydra 0.12.0 → 0.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +37 -1
- package/dist/browser.d.ts +1 -1
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +1 -1
- package/dist/browser.js.map +1 -1
- package/dist/cli/commands/anonymize.d.ts.map +1 -1
- package/dist/cli/commands/anonymize.js.map +1 -1
- package/dist/cli/commands/proxy.d.ts.map +1 -1
- package/dist/cli/commands/proxy.js +39 -3
- package/dist/cli/commands/proxy.js.map +1 -1
- package/dist/cli/main.js +1 -1
- package/dist/cli/utils/color.d.ts.map +1 -1
- package/dist/cli/utils/color.js +1 -0
- package/dist/cli/utils/color.js.map +1 -1
- package/dist/core/anonymizer.d.ts.map +1 -1
- package/dist/core/anonymizer.js +4 -1
- package/dist/core/anonymizer.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/opencode-plugin/git-identity.d.ts +3 -0
- package/dist/opencode-plugin/git-identity.d.ts.map +1 -0
- package/dist/opencode-plugin/git-identity.js +37 -0
- package/dist/opencode-plugin/git-identity.js.map +1 -0
- package/dist/opencode-plugin/github-username.d.ts +3 -0
- package/dist/opencode-plugin/github-username.d.ts.map +1 -0
- package/dist/opencode-plugin/github-username.js +41 -0
- package/dist/opencode-plugin/github-username.js.map +1 -0
- package/dist/opencode-plugin/identity-recognizer.d.ts +5 -0
- package/dist/opencode-plugin/identity-recognizer.d.ts.map +1 -0
- package/dist/opencode-plugin/identity-recognizer.js +21 -0
- package/dist/opencode-plugin/identity-recognizer.js.map +1 -0
- package/dist/opencode-plugin/plugin.d.ts.map +1 -1
- package/dist/opencode-plugin/plugin.js +92 -5
- package/dist/opencode-plugin/plugin.js.map +1 -1
- package/dist/opencode-plugin/types.d.ts +4 -1
- package/dist/opencode-plugin/types.d.ts.map +1 -1
- package/dist/opencode-plugin/vcs-command.d.ts +3 -0
- package/dist/opencode-plugin/vcs-command.d.ts.map +1 -0
- package/dist/opencode-plugin/vcs-command.js +34 -0
- package/dist/opencode-plugin/vcs-command.js.map +1 -0
- package/dist/pipeline/tagger.d.ts +6 -6
- package/dist/pipeline/tagger.d.ts.map +1 -1
- package/dist/pipeline/tagger.js +32 -11
- package/dist/pipeline/tagger.js.map +1 -1
- package/dist/pipeline/validator.d.ts.map +1 -1
- package/dist/pipeline/validator.js +8 -1
- package/dist/pipeline/validator.js.map +1 -1
- package/dist/proxy/index.d.ts +1 -1
- package/dist/proxy/index.d.ts.map +1 -1
- package/dist/proxy/index.js.map +1 -1
- package/dist/proxy/providers/anthropic.d.ts +1 -0
- package/dist/proxy/providers/anthropic.d.ts.map +1 -1
- package/dist/proxy/providers/anthropic.js +2 -4
- package/dist/proxy/providers/anthropic.js.map +1 -1
- package/dist/proxy/providers/openai.d.ts +1 -0
- package/dist/proxy/providers/openai.d.ts.map +1 -1
- package/dist/proxy/providers/openai.js +3 -4
- package/dist/proxy/providers/openai.js.map +1 -1
- package/dist/proxy/providers/streaming-tool-loop.d.ts +12 -0
- package/dist/proxy/providers/streaming-tool-loop.d.ts.map +1 -0
- package/dist/proxy/providers/streaming-tool-loop.js +223 -0
- package/dist/proxy/providers/streaming-tool-loop.js.map +1 -0
- package/dist/proxy/providers/types.d.ts +3 -0
- package/dist/proxy/providers/types.d.ts.map +1 -1
- package/dist/proxy/providers/types.js +0 -4
- package/dist/proxy/providers/types.js.map +1 -1
- package/dist/proxy/rehydra-fetch.d.ts.map +1 -1
- package/dist/proxy/rehydra-fetch.js +68 -6
- package/dist/proxy/rehydra-fetch.js.map +1 -1
- package/dist/proxy/rehydra-proxy.d.ts.map +1 -1
- package/dist/proxy/rehydra-proxy.js +46 -0
- package/dist/proxy/rehydra-proxy.js.map +1 -1
- package/dist/proxy/tool-loop-stream.d.ts +7 -0
- package/dist/proxy/tool-loop-stream.d.ts.map +1 -0
- package/dist/proxy/tool-loop-stream.js +65 -0
- package/dist/proxy/tool-loop-stream.js.map +1 -0
- package/dist/proxy/types.d.ts +20 -2
- package/dist/proxy/types.d.ts.map +1 -1
- package/dist/recognizers/address.d.ts +2 -0
- package/dist/recognizers/address.d.ts.map +1 -0
- package/dist/recognizers/address.js +23 -0
- package/dist/recognizers/address.js.map +1 -0
- package/dist/recognizers/index.d.ts +2 -0
- package/dist/recognizers/index.d.ts.map +1 -1
- package/dist/recognizers/index.js +6 -0
- package/dist/recognizers/index.js.map +1 -1
- package/dist/recognizers/postal-code.d.ts +16 -0
- package/dist/recognizers/postal-code.d.ts.map +1 -0
- package/dist/recognizers/postal-code.js +42 -0
- package/dist/recognizers/postal-code.js.map +1 -0
- package/dist/types/index.d.ts +15 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/pii-types.d.ts +2 -0
- package/dist/types/pii-types.d.ts.map +1 -1
- package/dist/types/pii-types.js +7 -0
- package/dist/types/pii-types.js.map +1 -1
- package/dist/utils/storage-node.d.ts +1 -0
- package/dist/utils/storage-node.d.ts.map +1 -1
- package/dist/utils/storage-node.js +22 -0
- package/dist/utils/storage-node.js.map +1 -1
- package/dist/utils/storage.d.ts +3 -0
- package/dist/utils/storage.d.ts.map +1 -1
- package/dist/utils/storage.js.map +1 -1
- package/package.json +4 -1
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { DetectionSource, PIIType } from "../types/index.js";
|
|
2
|
+
const LOGIN = String.raw `[A-Za-z0-9](?:[A-Za-z0-9-]{0,37}[A-Za-z0-9])?(?:\[bot\])?`;
|
|
3
|
+
export const githubUsernameRecognizer = {
|
|
4
|
+
type: PIIType.GITHUB_USERNAME,
|
|
5
|
+
name: "GitHubUsernameRecognizer",
|
|
6
|
+
defaultConfidence: 1,
|
|
7
|
+
find(text) {
|
|
8
|
+
const logins = new Set();
|
|
9
|
+
const matches = new Map();
|
|
10
|
+
function add(start, login) {
|
|
11
|
+
logins.add(login);
|
|
12
|
+
matches.set(start, {
|
|
13
|
+
type: PIIType.GITHUB_USERNAME, start, end: start + login.length,
|
|
14
|
+
confidence: 1, source: DetectionSource.REGEX, text: login,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
// Restrict JSON matches to values, so a login like "id" cannot mask JSON keys.
|
|
18
|
+
for (const match of text.matchAll(new RegExp(String.raw `"login"\s*:\s*"(${LOGIN})"`, 'g'))) {
|
|
19
|
+
add(match.index + match[0].lastIndexOf(match[1]), match[1]);
|
|
20
|
+
}
|
|
21
|
+
for (const match of text.matchAll(/^(?:author|assignees|reviewers):[\t ]*(.+)$/gim)) {
|
|
22
|
+
const list = match[1];
|
|
23
|
+
const offset = match.index + match[0].indexOf(list);
|
|
24
|
+
const entry = new RegExp(String.raw `(?:^|,)[\t ]*(${LOGIN})(?=[\t ,(]|$)`, 'g');
|
|
25
|
+
for (const item of list.matchAll(entry)) {
|
|
26
|
+
add(offset + item.index + item[0].lastIndexOf(item[1]), item[1]);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
// Cover mentions of discovered participants, but preserve npm scopes.
|
|
30
|
+
for (const login of logins) {
|
|
31
|
+
const escaped = login.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
32
|
+
for (const match of text.matchAll(new RegExp(`(?<![A-Za-z0-9_/@])@(${escaped})(?![A-Za-z0-9-/])`, 'gi'))) {
|
|
33
|
+
const value = match[1];
|
|
34
|
+
matches.set(match.index + 1, { type: PIIType.GITHUB_USERNAME, start: match.index + 1,
|
|
35
|
+
end: match.index + 1 + value.length, confidence: 1, source: DetectionSource.REGEX, text: value });
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return [...matches.values()];
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=github-username.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-username.js","sourceRoot":"","sources":["../../src/opencode-plugin/github-username.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Recognizer } from '../recognizers/base.js';
|
|
2
|
+
import type { TagFormat } from '../types/index.js';
|
|
3
|
+
/** Keep repeated history transforms from discovering an existing tag as a name. */
|
|
4
|
+
export declare function protectIdentityTags(recognizer: Recognizer, format: TagFormat): Recognizer;
|
|
5
|
+
//# sourceMappingURL=identity-recognizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-recognizer.d.ts","sourceRoot":"","sources":["../../src/opencode-plugin/identity-recognizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,mFAAmF;AACnF,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,GAAG,UAAU,CAkBzF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { extractTagsStrict } from '../pipeline/tagger.js';
|
|
2
|
+
/** Keep repeated history transforms from discovering an existing tag as a name. */
|
|
3
|
+
export function protectIdentityTags(recognizer, format) {
|
|
4
|
+
return {
|
|
5
|
+
...recognizer,
|
|
6
|
+
find(text) {
|
|
7
|
+
const tags = extractTagsStrict(text, format);
|
|
8
|
+
if (tags.length === 0)
|
|
9
|
+
return recognizer.find(text);
|
|
10
|
+
const pieces = [];
|
|
11
|
+
let offset = 0;
|
|
12
|
+
for (const tag of tags) {
|
|
13
|
+
pieces.push(text.slice(offset, tag.position), ' '.repeat(tag.matchedText.length));
|
|
14
|
+
offset = tag.position + tag.matchedText.length;
|
|
15
|
+
}
|
|
16
|
+
pieces.push(text.slice(offset));
|
|
17
|
+
return recognizer.find(pieces.join('')).filter(match => !tags.some(tag => match.start < tag.position + tag.matchedText.length && match.end > tag.position));
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=identity-recognizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity-recognizer.js","sourceRoot":"","sources":["../../src/opencode-plugin/identity-recognizer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D,mFAAmF;AACnF,MAAM,UAAU,mBAAmB,CAAC,UAAsB,EAAE,MAAiB;IAC3E,OAAO;QACL,GAAG,UAAU;QACb,IAAI,CAAC,IAAI;YACP,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC7C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;gBAClF,MAAM,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;YACjD,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;YAChC,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACrD,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CACnG,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/opencode-plugin/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,KAAK,EAAe,oBAAoB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/opencode-plugin/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,KAAK,EAAe,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAQpE;;;GAGG;AACH,UAAU,WAAW;IACnB,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,UAAU,cAAc;IACtB,GAAG,EAAE;QACH,GAAG,CAAC,KAAK,EAAE;YACT,IAAI,EAAE;gBACJ,OAAO,EAAE,MAAM,CAAC;gBAChB,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;gBAC3C,OAAO,EAAE,MAAM,CAAC;gBAChB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;aACjC,CAAC;SACH,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KACtB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,KAAK,MAAM,GAAG,CAAC,KAAK,EAAE,WAAW,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;AAErD,UAAU,KAAK;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAoCD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,oBAAoB,GAAG,MAAM,CA8T1E;;AAED,wBAAqC"}
|
|
@@ -14,9 +14,13 @@ import { createAnonymizer } from "../core/anonymizer.js";
|
|
|
14
14
|
import { AnonymizerSessionImpl } from "../storage/session-base.js";
|
|
15
15
|
import { InMemoryPIIStorageProvider } from "../storage/in-memory.js";
|
|
16
16
|
import { InMemoryKeyProvider } from "../crypto/index.js";
|
|
17
|
-
import { createDefaultPolicy, SECRET_PII_TYPES, DEFAULT_TAG_FORMAT } from "../types/index.js";
|
|
17
|
+
import { PIIType, createDefaultPolicy, SECRET_PII_TYPES, DEFAULT_TAG_FORMAT } from "../types/index.js";
|
|
18
18
|
import { buildPIISystemInstruction } from "../proxy/system-instruction.js";
|
|
19
19
|
import { buildTagPrefix } from "../utils/regex.js";
|
|
20
|
+
import { githubUsernameRecognizer } from "./github-username.js";
|
|
21
|
+
import { protectIdentityTags } from "./identity-recognizer.js";
|
|
22
|
+
import { vcsCommandTypes } from "./vcs-command.js";
|
|
23
|
+
import { gitIdentityRecognizer } from "./git-identity.js";
|
|
20
24
|
/**
|
|
21
25
|
* Recursively rehydrate all string values containing PII tags.
|
|
22
26
|
* Returns a new value (for strings/arrays) or the same object mutated in-place
|
|
@@ -74,14 +78,21 @@ export function createRehydraPlugin(options) {
|
|
|
74
78
|
const keyProvider = new InMemoryKeyProvider();
|
|
75
79
|
const piiStorage = new InMemoryPIIStorageProvider();
|
|
76
80
|
// Build anonymizer config from options, sharing key and storage providers
|
|
77
|
-
const
|
|
81
|
+
const baseConfig = options?.anonymizer ?? {
|
|
78
82
|
secrets: {
|
|
79
83
|
enabled: true,
|
|
80
|
-
envFiles: options?.envFiles,
|
|
84
|
+
envFiles: options?.envFiles ?? ["**/.env*"],
|
|
81
85
|
redactValues: options?.redactValues,
|
|
82
86
|
minValueLength: options?.minValueLength,
|
|
83
87
|
},
|
|
84
88
|
};
|
|
89
|
+
const anonymizerConfig = {
|
|
90
|
+
...baseConfig,
|
|
91
|
+
secrets: baseConfig.secrets === undefined ? undefined : {
|
|
92
|
+
...baseConfig.secrets,
|
|
93
|
+
envBaseDirectory: baseConfig.secrets.envBaseDirectory ?? ctx.directory,
|
|
94
|
+
},
|
|
95
|
+
};
|
|
85
96
|
const tagFormat = anonymizerConfig.tagFormat ?? options?.tagFormat ?? DEFAULT_TAG_FORMAT;
|
|
86
97
|
const tagPrefix = buildTagPrefix(tagFormat);
|
|
87
98
|
const rehydraInstruction = `<rehydra>\n${buildPIISystemInstruction(tagFormat)}\n</rehydra>`;
|
|
@@ -91,6 +102,10 @@ export function createRehydraPlugin(options) {
|
|
|
91
102
|
keyProvider,
|
|
92
103
|
piiStorageProvider: piiStorage,
|
|
93
104
|
});
|
|
105
|
+
if (options?.vcsIdentities === true) {
|
|
106
|
+
anonymizer.getRegistry().register(protectIdentityTags(githubUsernameRecognizer, tagFormat));
|
|
107
|
+
anonymizer.getRegistry().register(protectIdentityTags(gitIdentityRecognizer, tagFormat));
|
|
108
|
+
}
|
|
94
109
|
await anonymizer.initialize();
|
|
95
110
|
// Build policy with disabled types (URL and IP_ADDRESS disabled by default)
|
|
96
111
|
const disableTypes = options?.disableTypes ?? ["URL", "IP_ADDRESS"];
|
|
@@ -119,11 +134,32 @@ export function createRehydraPlugin(options) {
|
|
|
119
134
|
};
|
|
120
135
|
}
|
|
121
136
|
log("info", "plugin initialized", {
|
|
122
|
-
envFiles:
|
|
137
|
+
envFiles: anonymizerConfig.secrets?.envFiles,
|
|
123
138
|
redactValueCount: options?.redactValues?.length ?? 0,
|
|
124
139
|
disableTypes,
|
|
125
140
|
});
|
|
126
141
|
const locale = options?.locale;
|
|
142
|
+
const identityPolicy = (types) => {
|
|
143
|
+
const defaults = createDefaultPolicy();
|
|
144
|
+
const configPolicy = anonymizerConfig.defaultPolicy;
|
|
145
|
+
const enabledTypes = new Set(policy?.enabledTypes ?? configPolicy?.enabledTypes ?? defaults.enabledTypes);
|
|
146
|
+
const regexEnabledTypes = new Set(policy?.regexEnabledTypes ?? configPolicy?.regexEnabledTypes ?? defaults.regexEnabledTypes);
|
|
147
|
+
if (anonymizerConfig.secrets?.enabled === true) {
|
|
148
|
+
for (const type of SECRET_PII_TYPES) {
|
|
149
|
+
if (!disableTypes.includes(type)) {
|
|
150
|
+
enabledTypes.add(type);
|
|
151
|
+
regexEnabledTypes.add(type);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
for (const type of types) {
|
|
156
|
+
if (!disableTypes.includes(type)) {
|
|
157
|
+
enabledTypes.add(type);
|
|
158
|
+
regexEnabledTypes.add(type);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return { ...policy, enabledTypes, regexEnabledTypes, reuseIdsForRepeatedPII: true };
|
|
162
|
+
};
|
|
127
163
|
// One session per OpenCode session, keyed by sessionID
|
|
128
164
|
const sessions = new Map();
|
|
129
165
|
function getSession(sessionID) {
|
|
@@ -142,7 +178,45 @@ export function createRehydraPlugin(options) {
|
|
|
142
178
|
const scrubbedByType = {};
|
|
143
179
|
for (const msg of output.messages) {
|
|
144
180
|
const session = getSession(msg.info.sessionID);
|
|
181
|
+
// OpenCode retains the rehydrated arguments after tool execution and
|
|
182
|
+
// serializes them into later model requests. Copy and scrub values so
|
|
183
|
+
// the execution arguments and JSON property names stay intact.
|
|
184
|
+
const scrubToolInput = async (value) => {
|
|
185
|
+
if (typeof value === "string") {
|
|
186
|
+
const result = await session.anonymize(value, locale, policy);
|
|
187
|
+
if (result.stats.totalEntities > 0) {
|
|
188
|
+
hasAnonymized = true;
|
|
189
|
+
totalScrubbed += result.stats.totalEntities;
|
|
190
|
+
for (const [type, count] of Object.entries(result.stats.countsByType)) {
|
|
191
|
+
scrubbedByType[type] = (scrubbedByType[type] ?? 0) + count;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
return result.anonymizedText;
|
|
195
|
+
}
|
|
196
|
+
if (Array.isArray(value)) {
|
|
197
|
+
const result = [];
|
|
198
|
+
for (const item of value)
|
|
199
|
+
result.push(await scrubToolInput(item));
|
|
200
|
+
return result;
|
|
201
|
+
}
|
|
202
|
+
if (value !== null && typeof value === "object") {
|
|
203
|
+
const entries = [];
|
|
204
|
+
for (const [key, item] of Object.entries(value)) {
|
|
205
|
+
entries.push([key, await scrubToolInput(item)]);
|
|
206
|
+
}
|
|
207
|
+
return Object.fromEntries(entries);
|
|
208
|
+
}
|
|
209
|
+
return value;
|
|
210
|
+
};
|
|
145
211
|
for (const part of msg.parts) {
|
|
212
|
+
if (part.type === "tool" && part.state !== undefined) {
|
|
213
|
+
const state = part.state;
|
|
214
|
+
if (state.input !== undefined)
|
|
215
|
+
state.input = await scrubToolInput(state.input);
|
|
216
|
+
if (typeof state.error === "string") {
|
|
217
|
+
state.error = await scrubToolInput(state.error);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
146
220
|
// Anonymize .text on any part type (text, reasoning, file, patch, etc.)
|
|
147
221
|
if (typeof part.text === "string") {
|
|
148
222
|
const result = await session.anonymize(part.text, locale, policy);
|
|
@@ -159,7 +233,20 @@ export function createRehydraPlugin(options) {
|
|
|
159
233
|
if (part.state !== undefined &&
|
|
160
234
|
part.state.status === "completed" &&
|
|
161
235
|
typeof part.state.output === "string") {
|
|
162
|
-
const
|
|
236
|
+
const command = part.state.input?.command;
|
|
237
|
+
let outputPolicy = policy;
|
|
238
|
+
if (options?.vcsIdentities === true &&
|
|
239
|
+
typeof command === "string") {
|
|
240
|
+
const commands = vcsCommandTypes(command);
|
|
241
|
+
const types = [];
|
|
242
|
+
if (commands.has('github'))
|
|
243
|
+
types.push(PIIType.GITHUB_USERNAME);
|
|
244
|
+
if (commands.has('git'))
|
|
245
|
+
types.push(PIIType.PERSON);
|
|
246
|
+
if (types.length > 0)
|
|
247
|
+
outputPolicy = identityPolicy(types);
|
|
248
|
+
}
|
|
249
|
+
const result = await session.anonymize(part.state.output, locale, outputPolicy);
|
|
163
250
|
if (result.stats.totalEntities > 0) {
|
|
164
251
|
hasAnonymized = true;
|
|
165
252
|
totalScrubbed += result.stats.totalEntities;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/opencode-plugin/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/opencode-plugin/plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,8 @@ export type PIITypeName = `${PIIType}`;
|
|
|
10
10
|
* Configuration options for the Rehydra OpenCode plugin.
|
|
11
11
|
*/
|
|
12
12
|
export interface RehydraPluginOptions {
|
|
13
|
-
/**
|
|
13
|
+
/** Paths/globs relative to the OpenCode project directory. Defaults to recursive .env discovery.
|
|
14
|
+
* Skips node_modules, .git, and symlinks. Pass [] to disable file loading. */
|
|
14
15
|
envFiles?: string[];
|
|
15
16
|
/** Explicit values to always redact */
|
|
16
17
|
redactValues?: string[];
|
|
@@ -20,6 +21,8 @@ export interface RehydraPluginOptions {
|
|
|
20
21
|
disableTypes?: PIITypeName[];
|
|
21
22
|
/** Locale hint for anonymization */
|
|
22
23
|
locale?: string;
|
|
24
|
+
/** Redact identities found in Git and GitHub CLI output */
|
|
25
|
+
vcsIdentities?: boolean;
|
|
23
26
|
/** Policy overrides */
|
|
24
27
|
policy?: Partial<AnonymizationPolicy>;
|
|
25
28
|
/** Advanced: full anonymizer config (overrides envFiles/redactValues/minValueLength) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/opencode-plugin/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,kEAAkE;AAClE,MAAM,MAAM,WAAW,GAAG,GAAG,OAAO,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/opencode-plugin/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAErD,kEAAkE;AAClE,MAAM,MAAM,WAAW,GAAG,GAAG,OAAO,EAAE,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;kFAC8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,0FAA0F;IAC1F,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAE7B,oCAAoC;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,2DAA2D;IAC3D,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,uBAAuB;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEtC,wFAAwF;IACxF,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B,qFAAqF;IACrF,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vcs-command.d.ts","sourceRoot":"","sources":["../../src/opencode-plugin/vcs-command.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,CAsBtE"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** Recognize direct Git/GitHub commands without matching quoted prose or arguments. */
|
|
2
|
+
export function vcsCommandTypes(command) {
|
|
3
|
+
const tokens = command.match(/"(?:\\.|[^"\\])*"|'[^']*'|[\n;&|]+|[^\s;&|]+/g) ?? [];
|
|
4
|
+
const result = new Set();
|
|
5
|
+
let start = true;
|
|
6
|
+
for (let i = 0; i < tokens.length; i++) {
|
|
7
|
+
const raw = tokens[i];
|
|
8
|
+
if (/^[\n;&|]+$/.test(raw)) {
|
|
9
|
+
start = true;
|
|
10
|
+
continue;
|
|
11
|
+
}
|
|
12
|
+
if (!start)
|
|
13
|
+
continue;
|
|
14
|
+
if (/^[A-Za-z_][A-Za-z0-9_]*=/.test(raw))
|
|
15
|
+
continue;
|
|
16
|
+
start = false;
|
|
17
|
+
const executable = raw.replace(/^['"]|['"]$/g, '').split('/').pop();
|
|
18
|
+
if (executable !== 'git' && executable !== 'gh')
|
|
19
|
+
continue;
|
|
20
|
+
let j = i + 1;
|
|
21
|
+
while (tokens[j]?.startsWith('-') === true) {
|
|
22
|
+
const option = tokens[j++];
|
|
23
|
+
if (['-C', '-c', '--git-dir', '--work-tree', '-R', '--repo', '--hostname'].includes(option))
|
|
24
|
+
j++;
|
|
25
|
+
}
|
|
26
|
+
const subcommand = tokens[j];
|
|
27
|
+
if (executable === 'git' && subcommand !== undefined && ['log', 'show', 'blame'].includes(subcommand))
|
|
28
|
+
result.add('git');
|
|
29
|
+
if (executable === 'gh' && subcommand !== undefined && ['pr', 'api'].includes(subcommand))
|
|
30
|
+
result.add('github');
|
|
31
|
+
}
|
|
32
|
+
return result;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=vcs-command.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vcs-command.js","sourceRoot":"","sources":["../../src/opencode-plugin/vcs-command.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,IAAI,EAAE,CAAC;IACpF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;QACvB,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAAC,KAAK,GAAG,IAAI,CAAC;YAAC,SAAS;QAAC,CAAC;QACvD,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,IAAI,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,SAAS;QACnD,KAAK,GAAG,KAAK,CAAC;QACd,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QACpE,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,IAAI;YAAE,SAAS;QAC1D,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,CAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,CAAC,EAAE,CAAC;QACnG,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACzH,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Replacement Tagger
|
|
3
3
|
* Replaces PII spans with placeholder tags and builds the PII map
|
|
4
4
|
*/
|
|
5
|
-
import { PIIType, SpanMatch, DetectedEntity, AnonymizationPolicy, SemanticAttributes, TagFormat } from "../types/index.js";
|
|
5
|
+
import { PIIType, SpanMatch, DetectedEntity, AnonymizationPolicy, SemanticAttributes, TagFormat, TagId } from "../types/index.js";
|
|
6
6
|
/**
|
|
7
7
|
* PII Map entry (before encryption)
|
|
8
8
|
*/
|
|
@@ -10,7 +10,7 @@ export interface PIIMapEntry {
|
|
|
10
10
|
/** PII type */
|
|
11
11
|
type: PIIType;
|
|
12
12
|
/** Entity ID */
|
|
13
|
-
id:
|
|
13
|
+
id: TagId;
|
|
14
14
|
/** Original text */
|
|
15
15
|
original: string;
|
|
16
16
|
}
|
|
@@ -37,13 +37,13 @@ export interface TaggingResult {
|
|
|
37
37
|
*
|
|
38
38
|
* Semantic attributes (gender, scope) are included when provided and not 'unknown'
|
|
39
39
|
*/
|
|
40
|
-
export declare function generateTag(type: PIIType, id:
|
|
40
|
+
export declare function generateTag(type: PIIType, id: TagId, semantic?: SemanticAttributes, tagFormat?: TagFormat): string;
|
|
41
41
|
/**
|
|
42
42
|
* Result of parsing a PII tag
|
|
43
43
|
*/
|
|
44
44
|
export interface ParsedTag {
|
|
45
45
|
type: PIIType;
|
|
46
|
-
id:
|
|
46
|
+
id: TagId;
|
|
47
47
|
semantic?: SemanticAttributes;
|
|
48
48
|
}
|
|
49
49
|
/**
|
|
@@ -59,7 +59,7 @@ export declare function parseTag(tag: string, tagFormat?: TagFormat): ParsedTag
|
|
|
59
59
|
/**
|
|
60
60
|
* Creates a key for the PII map
|
|
61
61
|
*/
|
|
62
|
-
export declare function createPIIMapKey(type: PIIType, id:
|
|
62
|
+
export declare function createPIIMapKey(type: PIIType, id: TagId): string;
|
|
63
63
|
/**
|
|
64
64
|
* Tags PII spans in text and builds the PII map
|
|
65
65
|
* @param text - Input text to tag
|
|
@@ -78,7 +78,7 @@ export declare function isValidTag(tag: string, tagFormat?: TagFormat): boolean;
|
|
|
78
78
|
*/
|
|
79
79
|
export interface ExtractedTag {
|
|
80
80
|
type: PIIType;
|
|
81
|
-
id:
|
|
81
|
+
id: TagId;
|
|
82
82
|
position: number;
|
|
83
83
|
/** The actual matched text (needed for replacement when tag is mangled) */
|
|
84
84
|
matchedText: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagger.d.ts","sourceRoot":"","sources":["../../src/pipeline/tagger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,OAAO,EACP,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,
|
|
1
|
+
{"version":3,"file":"tagger.d.ts","sourceRoot":"","sources":["../../src/pipeline/tagger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,OAAO,EACP,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,SAAS,EACT,KAAK,EAEN,MAAM,mBAAmB,CAAC;AAwB3B;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,eAAe;IACf,IAAI,EAAE,OAAO,CAAC;IACd,gBAAgB;IAChB,EAAE,EAAE,KAAK,CAAC;IACV,oBAAoB;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,cAAc,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,wCAAwC;IACxC,MAAM,EAAE,SAAS,CAAC;CACnB;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,OAAO,EACb,EAAE,EAAE,KAAK,EACT,QAAQ,CAAC,EAAE,kBAAkB,EAC7B,SAAS,GAAE,SAA8B,GACxC,MAAM,CAeR;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,KAAK,CAAC;IACV,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,wBAAgB,QAAQ,CACtB,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,SAA8B,GACxC,SAAS,GAAG,IAAI,CAmDlB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,GAAG,MAAM,CAEhE;AAiDD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,EAAE,EACpB,MAAM,EAAE,mBAAmB,EAC3B,cAAc,CAAC,EAAE,SAAS,EAC1B,SAAS,GAAE,SAA8B,GACxC,aAAa,CA4Ff;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,SAAS,GAAE,SAA8B,GACxC,OAAO,CAET;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,KAAK,CAAC;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,kBAAkB,CAAC;CAC/B;AAyJD;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CACzB,cAAc,EAAE,MAAM,EACtB,SAAS,GAAE,SAA8B,GACxC,YAAY,EAAE,CA4FhB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,MAAM,EACtB,SAAS,GAAE,SAA8B,GACxC,YAAY,EAAE,CAyDhB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,cAAc,EAAE,GACzB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,CAczB;AAED;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CACvB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,SAAS,EACjB,MAAM,GAAE,OAAe,EACvB,SAAS,GAAE,SAA8B,GACxC,MAAM,CAyBR"}
|
package/dist/pipeline/tagger.js
CHANGED
|
@@ -5,6 +5,24 @@
|
|
|
5
5
|
import { PIIType, DEFAULT_TAG_FORMAT, } from "../types/index.js";
|
|
6
6
|
import { sortSpansByPosition } from "../utils/offsets.js";
|
|
7
7
|
import { escapeRegExp } from "../utils/regex.js";
|
|
8
|
+
/**
|
|
9
|
+
* Character class for tag IDs.
|
|
10
|
+
*
|
|
11
|
+
* Lowercase alphanumerics only: decimal digits keep counter-assigned IDs
|
|
12
|
+
* working unchanged, while letters give callers enough space to seed
|
|
13
|
+
* value-derived IDs without relying on long decimal strings. Uppercase is
|
|
14
|
+
* excluded so a PII map key `${TYPE}_${id}` stays unambiguous — types are
|
|
15
|
+
* `[A-Z_]+` and may themselves contain underscores.
|
|
16
|
+
*/
|
|
17
|
+
const ID_CHARS = "[0-9a-z]+";
|
|
18
|
+
/**
|
|
19
|
+
* Converts a raw id attribute value into a {@link TagId}.
|
|
20
|
+
* Decimal-only IDs become numbers (preserving the existing numeric API);
|
|
21
|
+
* everything else is folded to a lowercase string.
|
|
22
|
+
*/
|
|
23
|
+
function parseTagId(raw) {
|
|
24
|
+
return /^[0-9]+$/.test(raw) ? parseInt(raw, 10) : raw.toLowerCase();
|
|
25
|
+
}
|
|
8
26
|
/**
|
|
9
27
|
* Generates a PII placeholder tag
|
|
10
28
|
* Format depends on TagFormat configuration:
|
|
@@ -40,7 +58,7 @@ export function parseTag(tag, tagFormat = DEFAULT_TAG_FORMAT) {
|
|
|
40
58
|
const open = escapeRegExp(tagFormat.open);
|
|
41
59
|
const close = escapeRegExp(tagFormat.close);
|
|
42
60
|
// Build regex dynamically from tag format
|
|
43
|
-
const match = tag.match(new RegExp(`^${open}${escapeRegExp(keyword)}\\s+type="([A-Z_]+)"(?:\\s+gender="(\\w+)")?(?:\\s+scope="([\\w-]+)")?\\s+id="(
|
|
61
|
+
const match = tag.match(new RegExp(`^${open}${escapeRegExp(keyword)}\\s+type="([A-Z_]+)"(?:\\s+gender="(\\w+)")?(?:\\s+scope="([\\w-]+)")?\\s+id="(${ID_CHARS})"\\s*${close}$`));
|
|
44
62
|
if (match === null) {
|
|
45
63
|
return null;
|
|
46
64
|
}
|
|
@@ -52,7 +70,7 @@ export function parseTag(tag, tagFormat = DEFAULT_TAG_FORMAT) {
|
|
|
52
70
|
// may emit types that are not members of the PIIType enum. Downstream code
|
|
53
71
|
// treats `type` as an opaque string when building PII map keys.
|
|
54
72
|
const type = typeStr;
|
|
55
|
-
const id =
|
|
73
|
+
const id = parseTagId(idStr);
|
|
56
74
|
// Build semantic attributes if present
|
|
57
75
|
let semantic;
|
|
58
76
|
if ((genderStr !== undefined && genderStr !== "") ||
|
|
@@ -83,20 +101,20 @@ export function createPIIMapKey(type, id) {
|
|
|
83
101
|
* @returns Parsed type and id, or null if invalid
|
|
84
102
|
*/
|
|
85
103
|
function parsePIIMapKey(key) {
|
|
86
|
-
const match = key.match(
|
|
104
|
+
const match = key.match(new RegExp(`^([A-Z_]+)_(${ID_CHARS})$`));
|
|
87
105
|
if (!match || match[1] === undefined || match[2] === undefined) {
|
|
88
106
|
return null;
|
|
89
107
|
}
|
|
90
108
|
// Allow any [A-Z_]+ type — matches what parseTag accepts, so custom-type
|
|
91
109
|
// entries survive `buildExistingEntityLookup` and session-level ID reuse.
|
|
92
110
|
const type = match[1];
|
|
93
|
-
const id =
|
|
111
|
+
const id = parseTagId(match[2]);
|
|
94
112
|
return { type, id };
|
|
95
113
|
}
|
|
96
114
|
/**
|
|
97
115
|
* Builds a reverse lookup and max ID from an existing PII map
|
|
98
116
|
* @param existingPiiMap - Existing PII map (key → value)
|
|
99
|
-
* @returns Reverse lookup (type:value → id) and global max ID
|
|
117
|
+
* @returns Reverse lookup (type:value → id) and global max numeric ID
|
|
100
118
|
*/
|
|
101
119
|
function buildExistingEntityLookup(existingPiiMap) {
|
|
102
120
|
const reverseLookup = new Map(); // "TYPE:value" → id
|
|
@@ -107,8 +125,9 @@ function buildExistingEntityLookup(existingPiiMap) {
|
|
|
107
125
|
// Build reverse lookup: "PERSON:Tom" → 1
|
|
108
126
|
const lookupKey = `${parsed.type}:${value}`;
|
|
109
127
|
reverseLookup.set(lookupKey, parsed.id);
|
|
110
|
-
// Track global max ID
|
|
111
|
-
|
|
128
|
+
// Track global max ID. Only numeric IDs feed the counter — an
|
|
129
|
+
// alphanumeric ID has no successor, so it must not affect `nextId`.
|
|
130
|
+
if (typeof parsed.id === "number" && parsed.id > maxId) {
|
|
112
131
|
maxId = parsed.id;
|
|
113
132
|
}
|
|
114
133
|
}
|
|
@@ -325,7 +344,7 @@ function buildFuzzyTagPatterns(tagFormat = DEFAULT_TAG_FORMAT) {
|
|
|
325
344
|
const typeAttr = `type${FLEXIBLE_WS}=${FLEXIBLE_WS}${QUOTE_CHARS}([A-Z_]+)${QUOTE_CHARS}`;
|
|
326
345
|
// Pattern for id attribute: id = "VALUE" (flexible spacing and quotes)
|
|
327
346
|
// Also handles malformed cases where close delimiter got placed inside the quotes
|
|
328
|
-
const idAttr = `id${FLEXIBLE_WS}=${FLEXIBLE_WS}${QUOTE_CHARS}(
|
|
347
|
+
const idAttr = `id${FLEXIBLE_WS}=${FLEXIBLE_WS}${QUOTE_CHARS}(${ID_CHARS})${idCloseLeak}${QUOTE_CHARS}`;
|
|
329
348
|
// Optional gender attribute
|
|
330
349
|
const genderAttr = `(?:${FLEXIBLE_WS}gender${FLEXIBLE_WS}=${FLEXIBLE_WS}${QUOTE_CHARS}(\\w+)${QUOTE_CHARS})?`;
|
|
331
350
|
// Optional scope attribute
|
|
@@ -391,7 +410,9 @@ export function extractTags(anonymizedText, tagFormat = DEFAULT_TAG_FORMAT) {
|
|
|
391
410
|
// createCustomIdRecognizer may emit types that are not PIIType enum
|
|
392
411
|
// members; rehydrate() must still be able to restore them.
|
|
393
412
|
const type = typeStr.toUpperCase();
|
|
394
|
-
|
|
413
|
+
// Fuzzy matching is case-insensitive, so fold the id back to lowercase
|
|
414
|
+
// (lossless: ids never contain uppercase).
|
|
415
|
+
const id = parseTagId(idStr);
|
|
395
416
|
// Build semantic attributes if present
|
|
396
417
|
let semantic;
|
|
397
418
|
if ((genderStr !== undefined && genderStr !== "") ||
|
|
@@ -436,7 +457,7 @@ export function extractTagsStrict(anonymizedText, tagFormat = DEFAULT_TAG_FORMAT
|
|
|
436
457
|
const open = escapeRegExp(tagFormat.open);
|
|
437
458
|
const close = escapeRegExp(tagFormat.close);
|
|
438
459
|
// Pattern matches: OPEN KEYWORD type="X" [gender="Y"] [scope="Z"] id="N" CLOSE
|
|
439
|
-
const tagPattern = new RegExp(`${open}${escapeRegExp(keyword)}\\s+type="([A-Z_]+)"(?:\\s+gender="(\\w+)")?(?:\\s+scope="([\\w-]+)")?\\s+id="(
|
|
460
|
+
const tagPattern = new RegExp(`${open}${escapeRegExp(keyword)}\\s+type="([A-Z_]+)"(?:\\s+gender="(\\w+)")?(?:\\s+scope="([\\w-]+)")?\\s+id="(${ID_CHARS})"\\s*${close}`, "g");
|
|
440
461
|
let match;
|
|
441
462
|
while ((match = tagPattern.exec(anonymizedText)) !== null) {
|
|
442
463
|
const typeStr = match[1];
|
|
@@ -446,7 +467,7 @@ export function extractTagsStrict(anonymizedText, tagFormat = DEFAULT_TAG_FORMAT
|
|
|
446
467
|
if (typeStr !== undefined && idStr !== undefined) {
|
|
447
468
|
// Accept any [A-Z_]+ type (see extractTags for rationale).
|
|
448
469
|
const type = typeStr;
|
|
449
|
-
const id =
|
|
470
|
+
const id = parseTagId(idStr);
|
|
450
471
|
// Build semantic attributes if present
|
|
451
472
|
let semantic;
|
|
452
473
|
if ((genderStr !== undefined && genderStr !== "") ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tagger.js","sourceRoot":"","sources":["../../src/pipeline/tagger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,OAAO,EAMP,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AA+BjD;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,IAAa,EACb,EAAU,EACV,QAA6B,EAC7B,YAAuB,kBAAkB;IAEzC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,KAAK,CAAC;IAC3C,IAAI,KAAK,GAAG,SAAS,IAAI,GAAG,CAAC;IAE7B,oDAAoD;IACpD,IAAI,QAAQ,EAAE,MAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACtD,KAAK,IAAI,YAAY,QAAQ,CAAC,MAAM,GAAG,CAAC;IAC1C,CAAC;IACD,IAAI,QAAQ,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACpD,KAAK,IAAI,WAAW,QAAQ,CAAC,KAAK,GAAG,CAAC;IACxC,CAAC;IAED,KAAK,IAAI,QAAQ,EAAE,GAAG,CAAC;IAEvB,OAAO,GAAG,SAAS,CAAC,IAAI,GAAG,OAAO,IAAI,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC;AAClE,CAAC;AAWD;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CACtB,GAAW,EACX,YAAuB,kBAAkB;IAEzC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,KAAK,CAAC;IAC3C,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAE5C,0CAA0C;IAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CACrB,IAAI,MAAM,CACR,IAAI,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,4FAA4F,KAAK,GAAG,CACrI,CACF,CAAC;IAEF,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IACtD,IAAI,OAAO,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gFAAgF;IAChF,2EAA2E;IAC3E,gEAAgE;IAChE,MAAM,IAAI,GAAG,OAAkB,CAAC;IAChC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAE/B,uCAAuC;IACvC,IAAI,QAAwC,CAAC;IAC7C,IACE,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE,CAAC;QAC7C,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,CAAC,EAC3C,CAAC;QACD,QAAQ,GAAG,EAAE,CAAC;QACd,IACE,SAAS,KAAK,SAAS;YACvB,SAAS,KAAK,EAAE;YAChB,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAC5D,CAAC;YACD,QAAQ,CAAC,MAAM,GAAG,SAAyC,CAAC;QAC9D,CAAC;QACD,IACE,QAAQ,KAAK,SAAS;YACtB,QAAQ,KAAK,EAAE;YACf,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC3E,CAAC;YACD,QAAQ,CAAC,KAAK,GAAG,QAAuC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAa,EAAE,EAAU;IACvD,OAAO,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;AACzB,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;QAC/D,OAAO,IAAI,CAAC;IACd,CAAC;IACD,yEAAyE;IACzE,0EAA0E;IAC1E,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAY,CAAC;IACjC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,SAAS,yBAAyB,CAAC,cAAyB;IAI1D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,oBAAoB;IACrE,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,cAAc,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,yCAAyC;YACzC,MAAM,SAAS,GAAG,GAAG,MAAM,CAAC,IAAI,IAAI,KAAK,EAAE,CAAC;YAC5C,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAExC,sBAAsB;YACtB,IAAI,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;gBACtB,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,OAAoB,EACpB,MAA2B,EAC3B,cAA0B,EAC1B,YAAuB,kBAAkB;IAEzC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,IAAI,GAAG,EAAE;SAClB,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,MAAM,eAAe,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAErD,mDAAmD;IACnD,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,cAAc;QAC7C,CAAC,CAAC,yBAAyB,CAAC,cAAc,CAAC;QAC3C,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,GAAG,EAAkB,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAE3D,aAAa;IACb,MAAM,eAAe,GAAsC,EAAE,CAAC;IAE9D,mDAAmD;IACnD,IAAI,MAAM,GAAG,KAAK,GAAG,CAAC,CAAC;IAEvB,6DAA6D;IAC7D,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,oBAAoB;IAEhE,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;QACpC,IAAI,EAAU,CAAC;QACf,MAAM,SAAS,GAAG,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QAEhD,kFAAkF;QAClF,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,EAAE,GAAG,UAAU,CAAC;YAChB,4EAA4E;YAC5E,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC9B,CAAC;aAAM,IAAI,MAAM,CAAC,sBAAsB,EAAE,CAAC;YACzC,sDAAsD;YACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,EAAE,GAAG,MAAM,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,EAAE,GAAG,MAAM,EAAE,CAAC;gBACd,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,EAAE,GAAG,MAAM,EAAE,CAAC;QAChB,CAAC;QAED,eAAe,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,gBAAgB;IAChB,MAAM,MAAM,GAAc,IAAI,GAAG,EAAE,CAAC;IACpC,KAAK,MAAM,MAAM,IAAI,eAAe,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QACpD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,oDAAoD;IACpD,0DAA0D;IAC1D,MAAM,gBAAgB,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAChD,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAC5B,CAAC;IAEF,uBAAuB;IACvB,IAAI,cAAc,GAAG,IAAI,CAAC;IAC1B,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC5E,cAAc;YACZ,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;gBACrC,GAAG;gBACH,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,iDAAiD;IACjD,MAAM,QAAQ,GAAqB,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,QAAQ,EAAE,CAAC,CAAC,IAAI;QAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;KACrB,CAAC,CAAC,CAAC;IAEJ,OAAO;QACL,cAAc;QACd,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,CAAC;QACvC,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CACxB,GAAW,EACX,YAAuB,kBAAkB;IAEzC,OAAO,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC;AAC3C,CAAC;AAeD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,GAAG,mEAAmE,CAAC;AAExF;;GAEG;AACH,MAAM,WAAW,GAAG,8BAA8B,CAAC;AACnD,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAE5D;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,SAAoB;IACnD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;IAC5B,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,+EAA+E;IAC/E,2BAA2B;IAC3B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI;aACR,KAAK,CAAC,EAAE,CAAC;aACT,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;aAC7B,IAAI,CAAC,WAAW,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,SAAoB;IAC/C,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;IAC9B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,wFAAwF;QACxF,MAAM,aAAa,GAAG,YAAY,CAAC;QACnC,OAAO,MAAM,WAAW,YAAY,WAAW,GAAG,aAAa,MAAM,aAAa,KAAK,CAAC;IAC1F,CAAC;IACD,4EAA4E;IAC5E,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,KAAK;aAClB,KAAK,CAAC,EAAE,CAAC;aACT,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;aAC7B,IAAI,CAAC,WAAW,CAAC,CAAC;QACrB,OAAO,GAAG,WAAW,GAAG,OAAO,EAAE,CAAC;IACpC,CAAC;IACD,OAAO,GAAG,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;AAChD,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,SAAoB;IACnD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;IAC9B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,sBAAsB,CAAC;IAChC,CAAC;IACD,wEAAwE;IACxE,mEAAmE;IACnE,kEAAkE;IAClE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,KAAK;aAClB,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aACZ,KAAK,CAAC,EAAE,CAAC;aACT,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC;aACnC,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,OAAO,MAAM,OAAO,IAAI,CAAC;IAC3B,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,gEAAgE;AAChE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAoB,CAAC;AAEtD,SAAS,oBAAoB,CAAC,SAAoB;IAChD,OAAO,GAAG,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,KAAK,KAAK,SAAS,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC;AAChF,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAC5B,YAAuB,kBAAkB;IAEzC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,KAAK,CAAC;IAC3C,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IAEvD,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,OAAO,WAAW,IAAI,WAAW,GAAG,WAAW,YAAY,WAAW,EAAE,CAAC;IAC1F,uEAAuE;IACvE,kFAAkF;IAClF,MAAM,MAAM,GAAG,KAAK,WAAW,IAAI,WAAW,GAAG,WAAW,SAAS,WAAW,GAAG,WAAW,EAAE,CAAC;IACjG,4BAA4B;IAC5B,MAAM,UAAU,GAAG,MAAM,WAAW,SAAS,WAAW,IAAI,WAAW,GAAG,WAAW,SAAS,WAAW,IAAI,CAAC;IAC9G,2BAA2B;IAC3B,MAAM,SAAS,GAAG,MAAM,WAAW,QAAQ,WAAW,IAAI,WAAW,GAAG,WAAW,YAAY,WAAW,IAAI,CAAC;IAE/G,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAE7C,MAAM,QAAQ,GAAG;QACf,wCAAwC;QACxC,0CAA0C;QAC1C,IAAI,MAAM,CACR,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,oBAAoB,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,oBAAoB,GAAG,MAAM,GAAG,cAAc,EAAE,EAC3J,IAAI,CACL;QACD,WAAW;QACX,uBAAuB;QACvB,IAAI,MAAM,CACR,GAAG,WAAW,GAAG,WAAW,GAAG,cAAc,GAAG,oBAAoB,GAAG,MAAM,GAAG,oBAAoB,GAAG,QAAQ,GAAG,cAAc,EAAE,EAClI,IAAI,CACL;KACF,CAAC;IAEF,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CACzB,cAAsB,EACtB,YAAuB,kBAAkB;IAEzC,MAAM,IAAI,GAAmB,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAElD,sFAAsF;IACtF,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE3C,KAAK,IAAI,YAAY,GAAG,CAAC,EAAE,YAAY,GAAG,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,CAAC;QAC1E,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,SAAS;YAAE,SAAS;QAEpC,IAAI,KAA6B,CAAC;QAClC,mCAAmC;QACnC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QAEtB,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACvD,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtC,SAAS,CAAC,4CAA4C;YACxD,CAAC;YAED,2EAA2E;YAC3E,6FAA6F;YAC7F,6CAA6C;YAC7C,IAAI,OAA2B,CAAC;YAChC,IAAI,KAAyB,CAAC;YAC9B,IAAI,SAA6B,CAAC;YAClC,IAAI,QAA4B,CAAC;YAEjC,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACrB,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACpB,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjB,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC;YAED,IAAI,OAAO,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACjD,6DAA6D;gBAC7D,oEAAoE;gBACpE,2DAA2D;gBAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAa,CAAC;gBAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAE/B,uCAAuC;gBACvC,IAAI,QAAwC,CAAC;gBAC7C,IACE,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE,CAAC;oBAC7C,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,CAAC,EAC3C,CAAC;oBACD,QAAQ,GAAG,EAAE,CAAC;oBACd,IACE,SAAS,KAAK,SAAS;wBACvB,SAAS,KAAK,EAAE;wBAChB,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAC/C,SAAS,CAAC,WAAW,EAAE,CACxB,EACD,CAAC;wBACD,QAAQ,CAAC,MAAM;4BACb,SAAS,CAAC,WAAW,EAAkC,CAAC;oBAC5D,CAAC;oBACD,IACE,QAAQ,KAAK,SAAS;wBACtB,QAAQ,KAAK,EAAE;wBACf,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,QAAQ,CAC/D,QAAQ,CAAC,WAAW,EAAE,CACvB,EACD,CAAC;wBACD,QAAQ,CAAC,KAAK;4BACZ,QAAQ,CAAC,WAAW,EAAiC,CAAC;oBAC1D,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC;oBACR,IAAI;oBACJ,EAAE;oBACF,QAAQ,EAAE,KAAK,CAAC,KAAK;oBACrB,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;oBACrB,QAAQ;iBACT,CAAC,CAAC;gBACH,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;IACH,CAAC;IAED,6BAA6B;IAC7B,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE7C,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,cAAsB,EACtB,YAAuB,kBAAkB;IAEzC,MAAM,IAAI,GAAmB,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,KAAK,CAAC;IAC3C,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC5C,+EAA+E;IAC/E,MAAM,UAAU,GAAG,IAAI,MAAM,CAC3B,GAAG,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,4FAA4F,KAAK,EAAE,EAClI,GAAG,CACJ,CAAC;IAEF,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACzB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEvB,IAAI,OAAO,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACjD,2DAA2D;YAC3D,MAAM,IAAI,GAAG,OAAkB,CAAC;YAChC,MAAM,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAE/B,uCAAuC;YACvC,IAAI,QAAwC,CAAC;YAC7C,IACE,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE,CAAC;gBAC7C,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,CAAC,EAC3C,CAAC;gBACD,QAAQ,GAAG,EAAE,CAAC;gBACd,IACE,SAAS,KAAK,SAAS;oBACvB,SAAS,KAAK,EAAE;oBAChB,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAC5D,CAAC;oBACD,QAAQ,CAAC,MAAM,GAAG,SAAyC,CAAC;gBAC9D,CAAC;gBACD,IACE,QAAQ,KAAK,SAAS;oBACtB,QAAQ,KAAK,EAAE;oBACf,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC3E,CAAC;oBACD,QAAQ,CAAC,KAAK,GAAG,QAAuC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAED,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI;gBACJ,EAAE;gBACF,QAAQ,EAAE,KAAK,CAAC,KAAK;gBACrB,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;gBACrB,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAA0B;IAE1B,MAAM,MAAM,GAA4B,EAA6B,CAAC;IAEtE,4BAA4B;IAC5B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IAED,iBAAiB;IACjB,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CACvB,cAAsB,EACtB,MAAiB,EACjB,SAAkB,KAAK,EACvB,YAAuB,kBAAkB;IAEzC,IAAI,MAAM,GAAG,cAAc,CAAC;IAC5B,MAAM,IAAI,GAAG,MAAM;QACjB,CAAC,CAAC,iBAAiB,CAAC,cAAc,EAAE,SAAS,CAAC;QAC9C,CAAC,CAAC,WAAW,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;IAE3C,8CAA8C;IAC9C,0DAA0D;IAC1D,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAE7C,KAAK,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEjC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,qDAAqD;YACrD,6EAA6E;YAC7E,MAAM;gBACJ,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC;oBACzB,QAAQ;oBACR,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
1
|
+
{"version":3,"file":"tagger.js","sourceRoot":"","sources":["../../src/pipeline/tagger.ts"],"names":[],"mappings":"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"}
|