@bradheitmann/odin-sentinel 0.4.4 → 0.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/AGENTS.md +64 -0
  2. package/CLAUDE.md +43 -0
  3. package/README.md +102 -335
  4. package/dist/src/mcp/server.js +43 -12
  5. package/dist/src/mcp/server.js.map +1 -1
  6. package/dist/src/protocol/schemas.d.ts +2529 -4
  7. package/dist/src/protocol/schemas.js +214 -18
  8. package/dist/src/protocol/schemas.js.map +1 -1
  9. package/dist/src/protocol/service.d.ts +96 -2
  10. package/dist/src/protocol/service.js +516 -4
  11. package/dist/src/protocol/service.js.map +1 -1
  12. package/dist/src/protocol/surface-layout.d.ts +40 -1
  13. package/dist/src/protocol/surface-layout.js +98 -1
  14. package/dist/src/protocol/surface-layout.js.map +1 -1
  15. package/dist/src/protocol/validators.d.ts +3 -0
  16. package/dist/src/protocol/validators.js +28 -0
  17. package/dist/src/protocol/validators.js.map +1 -1
  18. package/dist/src/protocol/version.d.ts +3 -0
  19. package/dist/src/protocol/version.js +3 -0
  20. package/dist/src/protocol/version.js.map +1 -1
  21. package/dist/src/telemetry/config.d.ts +8 -0
  22. package/dist/src/telemetry/config.js +24 -0
  23. package/dist/src/telemetry/config.js.map +1 -1
  24. package/dist/src/telemetry/index.d.ts +5 -5
  25. package/dist/src/telemetry/index.js +3 -3
  26. package/dist/src/telemetry/index.js.map +1 -1
  27. package/dist/src/telemetry/redactor.js +25 -7
  28. package/dist/src/telemetry/redactor.js.map +1 -1
  29. package/dist/src/telemetry/report.d.ts +108 -0
  30. package/dist/src/telemetry/report.js +83 -3
  31. package/dist/src/telemetry/report.js.map +1 -1
  32. package/dist/src/telemetry/submit.d.ts +2 -0
  33. package/dist/src/telemetry/submit.js +79 -6
  34. package/dist/src/telemetry/submit.js.map +1 -1
  35. package/docs/guides/quick-start.md +112 -44
  36. package/docs/guides/quickstart-prompts.md +65 -0
  37. package/docs/guides/recommended-starter-team.md +45 -27
  38. package/docs/reference/client-compatibility.md +20 -43
  39. package/docs/reference/cost-and-privacy.md +26 -23
  40. package/docs/reference/distribution.md +40 -55
  41. package/docs/reference/public-surface-audit.md +35 -114
  42. package/package.json +19 -4
  43. package/protocol/SCP.md +8 -1
  44. package/protocol/bootstrap-skill.md +16 -11
  45. package/protocol/closeout.yaml +7 -1
  46. package/protocol/delegation.yaml +1 -1
  47. package/protocol/model-profiles.yaml +55 -1
  48. package/protocol/receipts/boot-receipt.yaml +42 -0
  49. package/protocol/receipts/team-manifest.yaml +41 -0
  50. package/protocol/roles.yaml +69 -1
  51. package/protocol/topology.yaml +78 -36
  52. package/scripts/audit/public-surface.mjs +48 -19
  53. package/scripts/audit/verify-pack.mjs +294 -27
  54. package/templates/dev-slice-template.md +56 -0
  55. package/templates/pm-role-template.md +61 -0
  56. package/templates/qa-slice-template.md +46 -0
  57. package/templates/team-manifest-template.yaml +163 -0
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/protocol/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/protocol/service.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,45 @@ export type SurfaceLayoutGate = {
24
24
  requiresNewColumn: boolean;
25
25
  requiresExecColumnSplit: boolean;
26
26
  requiresMoveOperations: boolean;
27
+ status: "PASS" | "DEGRADED_OPERATOR_LAYOUT" | "NOT_GOVERNED_NO_CMUX" | "SPLIT_WORKSPACE_BLOCKED";
28
+ warnings: string[];
27
29
  preStaffingCheck: string;
28
30
  };
29
- export declare function computeSurfaceLayoutGate(fromTeamCount: number, toTeamCount: number): SurfaceLayoutGate;
31
+ export type SurfaceLayoutGateOptions = {
32
+ cmuxAvailable?: boolean;
33
+ layoutMode?: "human_cmux_quad" | "tab_only" | "legacy_columns";
34
+ degradedModeApproved?: boolean;
35
+ execPmWorkspaceMode?: "SAME_WORKSPACE" | "SPLIT_WORKSPACE";
36
+ splitWorkspaceRoutingProof?: string;
37
+ };
38
+ export declare function computeSurfaceLayoutGate(fromTeamCount: number, toTeamCount: number, options?: SurfaceLayoutGateOptions): SurfaceLayoutGate;
39
+ export type HumanCmuxRoleSlot = {
40
+ roleSlot: string;
41
+ workspace: string;
42
+ pane: string;
43
+ surface: string;
44
+ emptyBeforeLaunch: boolean;
45
+ };
46
+ export type HumanCmuxRegion = {
47
+ quadrant: "A" | "B" | "C" | "D";
48
+ label: string;
49
+ purpose: string;
50
+ roles: string[];
51
+ locatorPrefix: string;
52
+ };
53
+ export type HumanCmuxQuadLayout = {
54
+ profile: "human_cmux_quad";
55
+ workspace: {
56
+ id: string;
57
+ name: string;
58
+ cmuxRequired: true;
59
+ execPmSameWorkspaceRequired: true;
60
+ };
61
+ regions: HumanCmuxRegion[];
62
+ roleSlots: HumanCmuxRoleSlot[];
63
+ blockedSlots: string[];
64
+ degradedModeWarnings: string[];
65
+ humanSummary: string;
66
+ machineInstructions: string[];
67
+ };
68
+ export declare function computeHumanCmuxQuadLayout(teamCount?: number, workspaceName?: string): HumanCmuxQuadLayout;
@@ -100,7 +100,7 @@ export function renderSurfaceLayoutAscii(layout) {
100
100
  })
101
101
  .join(" ");
102
102
  }
103
- export function computeSurfaceLayoutGate(fromTeamCount, toTeamCount) {
103
+ export function computeSurfaceLayoutGate(fromTeamCount, toTeamCount, options = {}) {
104
104
  if (toTeamCount <= fromTeamCount) {
105
105
  throw new Error(`Gate requires toTeamCount > fromTeamCount (got ${fromTeamCount} -> ${toTeamCount})`);
106
106
  }
@@ -111,13 +111,32 @@ export function computeSurfaceLayoutGate(fromTeamCount, toTeamCount) {
111
111
  const beforeNonExec = before.columns.slice(1).flatMap((column) => column.surfaces.map((s) => s.team));
112
112
  const afterNonExec = after.columns.slice(1).flatMap((column) => column.surfaces.map((s) => s.team));
113
113
  const requiresMoveOperations = beforeNonExec.length > 0 && !afterNonExec.join(",").startsWith(beforeNonExec.join(","));
114
+ const warnings = [];
115
+ let status = "PASS";
116
+ if (options.cmuxAvailable === false) {
117
+ status = "NOT_GOVERNED_NO_CMUX";
118
+ warnings.push("CMUX is unavailable; governed team launch must be blocked or downgraded to non-governed documentation/validation mode.");
119
+ }
120
+ else if (options.layoutMode === "tab_only" && options.degradedModeApproved !== true) {
121
+ status = "DEGRADED_OPERATOR_LAYOUT";
122
+ warnings.push("Tab-only layout is not acceptable for governed team mode unless degraded mode is explicitly approved.");
123
+ }
124
+ else if (options.execPmWorkspaceMode === "SPLIT_WORKSPACE" &&
125
+ (!options.splitWorkspaceRoutingProof || options.splitWorkspaceRoutingProof.trim() === "")) {
126
+ status = "SPLIT_WORKSPACE_BLOCKED";
127
+ warnings.push("A/EXEC-PM must remain in the governed workspace unless SPLIT_WORKSPACE routing proof is recorded.");
128
+ }
114
129
  return {
115
130
  fromTeamCount,
116
131
  toTeamCount,
117
132
  requiresNewColumn,
118
133
  requiresExecColumnSplit,
119
134
  requiresMoveOperations,
135
+ status,
136
+ warnings,
120
137
  preStaffingCheck: [
138
+ "Layout profile: human_cmux_quad is the canonical governed bootstrap profile.",
139
+ "CMUX vocabulary: workspace -> pane -> surface.",
121
140
  "EXEC PM must complete surface layout before dispatching any new spawn:",
122
141
  `1. Compute target layout for teamCount=${toTeamCount}.`,
123
142
  `2. ${requiresNewColumn
@@ -133,4 +152,82 @@ export function computeSurfaceLayoutGate(fromTeamCount, toTeamCount) {
133
152
  ].join("\n")
134
153
  };
135
154
  }
155
+ function developmentPodRoles(team) {
156
+ return [`${team}/TEAM-PM`, `${team}/ODIN`, `${team}/DEV-1`, `${team}/QA-1`, `${team}/SHADOW-1`];
157
+ }
158
+ export function computeHumanCmuxQuadLayout(teamCount = 3, workspaceName = "ODIN Governed Bootstrap") {
159
+ if (!Number.isInteger(teamCount) || teamCount < 1 || teamCount > MAX_TEAMS) {
160
+ throw new Error(`Invalid teamCount: ${teamCount} (must be an integer from 1 to ${MAX_TEAMS})`);
161
+ }
162
+ const execRoles = ["A/EXEC-PM", "A/EXEC-ODIN", "A/EXEC-ASST", "A/EXEC-RSCH", "A/EXEC-QA"];
163
+ const teamLetters = Array.from({ length: teamCount }, (_, index) => teamLetter(index));
164
+ const teamBRoles = teamLetters.includes("B") ? developmentPodRoles("B") : [];
165
+ const teamCRoles = teamLetters.includes("C") ? developmentPodRoles("C") : [];
166
+ const overflowTeams = teamLetters.filter((team) => !["A", "B", "C"].includes(team));
167
+ const overflowRoles = overflowTeams.flatMap(developmentPodRoles);
168
+ const regions = [
169
+ {
170
+ quadrant: "A",
171
+ label: "Executive Office",
172
+ purpose: "A/EXEC-PM, executive ODIN, assistant, research, and executive QA remain visible.",
173
+ roles: execRoles,
174
+ locatorPrefix: "workspace:governed pane:quad-a"
175
+ },
176
+ {
177
+ quadrant: "B",
178
+ label: "Team B Pod",
179
+ purpose: "Primary development pod with PM, ODIN, DEV, QA, and SHADOW role slots.",
180
+ roles: teamBRoles,
181
+ locatorPrefix: "workspace:governed pane:quad-b"
182
+ },
183
+ {
184
+ quadrant: "C",
185
+ label: "Team C Pod",
186
+ purpose: "Second development pod with the same visible role-slot shape as Team B.",
187
+ roles: teamCRoles,
188
+ locatorPrefix: "workspace:governed pane:quad-c"
189
+ },
190
+ {
191
+ quadrant: "D",
192
+ label: overflowRoles.length > 0 ? "Overflow Pods and Blockers" : "Blockers, Status, Intake",
193
+ purpose: "Operator-visible blocker lane, readiness matrix, intake, and deterministic overflow pods.",
194
+ roles: overflowRoles,
195
+ locatorPrefix: "workspace:governed pane:quad-d"
196
+ }
197
+ ];
198
+ const roleSlots = regions.flatMap((region) => region.roles.map((roleSlot, index) => ({
199
+ roleSlot,
200
+ workspace: "workspace:governed",
201
+ pane: `pane:quad-${region.quadrant.toLowerCase()}`,
202
+ surface: `surface:${region.quadrant.toLowerCase()}-${index + 1}-${roleSlot.toLowerCase().replace(/[^a-z0-9]+/g, "-")}`,
203
+ emptyBeforeLaunch: true
204
+ })));
205
+ return {
206
+ profile: "human_cmux_quad",
207
+ workspace: {
208
+ id: "workspace:governed",
209
+ name: workspaceName,
210
+ cmuxRequired: true,
211
+ execPmSameWorkspaceRequired: true
212
+ },
213
+ regions,
214
+ roleSlots,
215
+ blockedSlots: [],
216
+ degradedModeWarnings: [],
217
+ humanSummary: [
218
+ `${workspaceName}: Quadrant A executive office (${execRoles.join(", ")}).`,
219
+ `Quadrant B Team B pod (${teamBRoles.length} slots).`,
220
+ `Quadrant C Team C pod (${teamCRoles.length} slots).`,
221
+ `Quadrant D blockers/status/intake${overflowTeams.length > 0 ? ` plus overflow teams ${overflowTeams.join(", ")}` : ""}.`,
222
+ "Every role slot is visible and empty before occupant launch."
223
+ ].join(" "),
224
+ machineInstructions: [
225
+ "Create or select one CMUX workspace for governed bootstrap.",
226
+ "Split the workspace into four panes: quad-a, quad-b, quad-c, quad-d.",
227
+ "Create one surface per role slot inside its assigned pane before launching occupants.",
228
+ "Keep A/EXEC-PM in quad-a in the same workspace as all development teams.",
229
+ "Use quad-d for blockers/status/intake and deterministic overflow before adding additional workspaces."
230
+ ]
231
+ };
232
+ }
136
233
  //# sourceMappingURL=surface-layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"surface-layout.js","sourceRoot":"","sources":["../../../src/protocol/surface-layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surface-layout.js","sourceRoot":"","sources":["../../../src/protocol/surface-layout.ts"],"names":[],"mappings":"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"}
@@ -13,4 +13,7 @@ export declare function validateRequiredFields(value: Record<string, unknown>, r
13
13
  export declare function validateFieldTypes(value: Record<string, unknown>, expected: Record<string, FieldKind>): string[];
14
14
  export declare function validateNonEmptyArrays(value: Record<string, unknown>, fields: string[]): string[];
15
15
  export declare function isVisibleRoleSlot(value: string): boolean;
16
+ export declare function compareSemver(left: string, right: string): number;
17
+ export declare function isVersionBelow(version: string, minimum: string): boolean;
18
+ export declare function redactSecretLikeText(value: string): string;
16
19
  export {};
@@ -53,4 +53,32 @@ export function validateNonEmptyArrays(value, fields) {
53
53
  export function isVisibleRoleSlot(value) {
54
54
  return /^[A-Z0-9][A-Z0-9_-]*\/[A-Z0-9][A-Z0-9_-]*(?:-\d+)?$/.test(value);
55
55
  }
56
+ export function compareSemver(left, right) {
57
+ const normalize = (value) => value
58
+ .trim()
59
+ .replace(/^v/i, "")
60
+ .split(".")
61
+ .map((part) => {
62
+ const parsed = Number.parseInt(part.replace(/[^0-9].*$/, ""), 10);
63
+ return Number.isFinite(parsed) ? parsed : 0;
64
+ });
65
+ const a = normalize(left);
66
+ const b = normalize(right);
67
+ const length = Math.max(a.length, b.length, 3);
68
+ for (let i = 0; i < length; i++) {
69
+ const delta = (a[i] ?? 0) - (b[i] ?? 0);
70
+ if (delta !== 0)
71
+ return delta;
72
+ }
73
+ return 0;
74
+ }
75
+ export function isVersionBelow(version, minimum) {
76
+ return compareSemver(version, minimum) < 0;
77
+ }
78
+ export function redactSecretLikeText(value) {
79
+ return value
80
+ .replace(/(sk|pk|ghp|gho|ghu|github_pat|xox[baprs])-?[A-Za-z0-9_=-]{8,}/gi, "[REDACTED]")
81
+ .replace(/([A-Z0-9_]*(?:TOKEN|SECRET|KEY|PASSWORD)[A-Z0-9_]*=)[^\s]+/gi, "$1[REDACTED]")
82
+ .replace(/(Bearer\s+)[A-Za-z0-9._=-]+/gi, "$1[REDACTED]");
83
+ }
56
84
  //# sourceMappingURL=validators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/protocol/validators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/protocol/validators.ts"],"names":[],"mappings":"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"}
@@ -1 +1,4 @@
1
1
  export declare const VERSION: string;
2
+ export declare const PROTOCOL_SCHEMA_VERSION = "0.4.6";
3
+ export declare const MINIMUM_COMPATIBLE_MCP_VERSION = "0.4.5";
4
+ export declare const PUBLIC_LATEST_VERSION = "0.4.6";
@@ -23,4 +23,7 @@ function readPackageVersion() {
23
23
  throw new Error("Could not locate odin-sentinel package version");
24
24
  }
25
25
  export const VERSION = readPackageVersion();
26
+ export const PROTOCOL_SCHEMA_VERSION = "0.4.6";
27
+ export const MINIMUM_COMPATIBLE_MCP_VERSION = "0.4.5";
28
+ export const PUBLIC_LATEST_VERSION = "0.4.6";
26
29
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/protocol/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAOzC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE1D,SAAS,qBAAqB;IAC5B,OAAO;QACL,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC;QAC3C,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,KAAK,MAAM,IAAI,IAAI,qBAAqB,EAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAoB,CAAC;QAC3E,IACE,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ;YACjC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC1C,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;YACpC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAC9B,CAAC;YACD,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/protocol/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAOzC,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE1D,SAAS,qBAAqB;IAC5B,OAAO;QACL,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC;QAC3C,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB;IACzB,KAAK,MAAM,IAAI,IAAI,qBAAqB,EAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAEhC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAoB,CAAC;QAC3E,IACE,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ;YACjC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC1C,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;YACpC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAC9B,CAAC;YACD,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;AAC5C,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,CAAC;AAC/C,MAAM,CAAC,MAAM,8BAA8B,GAAG,OAAO,CAAC;AACtD,MAAM,CAAC,MAAM,qBAAqB,GAAG,OAAO,CAAC"}
@@ -3,6 +3,14 @@ export type TelemetryConfig = {
3
3
  endpoint: string | undefined;
4
4
  source: "env" | "default";
5
5
  };
6
+ export type PublicTelemetryConfig = {
7
+ enabled: boolean;
8
+ endpointConfigured: boolean;
9
+ endpoint: string | undefined;
10
+ source: "env" | "default";
11
+ };
6
12
  declare const ENDPOINT_ENV_VAR = "ODIN_TELEMETRY_ENDPOINT";
13
+ export declare function redactTelemetryEndpoint(endpoint: string | undefined): string | undefined;
7
14
  export declare function readTelemetryConfig(env?: NodeJS.ProcessEnv): TelemetryConfig;
15
+ export declare function publicTelemetryConfig(config?: TelemetryConfig): PublicTelemetryConfig;
8
16
  export { ENDPOINT_ENV_VAR };
@@ -1,4 +1,20 @@
1
1
  const ENDPOINT_ENV_VAR = "ODIN_TELEMETRY_ENDPOINT";
2
+ export function redactTelemetryEndpoint(endpoint) {
3
+ if (!endpoint)
4
+ return undefined;
5
+ try {
6
+ const parsed = new URL(endpoint);
7
+ const hasSensitiveSurface = parsed.username.length > 0 ||
8
+ parsed.password.length > 0 ||
9
+ parsed.pathname !== "/" ||
10
+ parsed.search.length > 0 ||
11
+ parsed.hash.length > 0;
12
+ return hasSensitiveSurface ? `${parsed.origin}/<redacted>` : parsed.origin;
13
+ }
14
+ catch {
15
+ return "<configured>";
16
+ }
17
+ }
2
18
  export function readTelemetryConfig(env = process.env) {
3
19
  const raw = env[ENDPOINT_ENV_VAR];
4
20
  const endpoint = typeof raw === "string" ? raw.trim() : "";
@@ -7,5 +23,13 @@ export function readTelemetryConfig(env = process.env) {
7
23
  }
8
24
  return { enabled: true, endpoint, source: "env" };
9
25
  }
26
+ export function publicTelemetryConfig(config = readTelemetryConfig()) {
27
+ return {
28
+ enabled: config.enabled,
29
+ endpointConfigured: typeof config.endpoint === "string" && config.endpoint.length > 0,
30
+ endpoint: redactTelemetryEndpoint(config.endpoint),
31
+ source: config.source
32
+ };
33
+ }
10
34
  export { ENDPOINT_ENV_VAR };
11
35
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/telemetry/config.ts"],"names":[],"mappings":"AAMA,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AAEnD,MAAM,UAAU,mBAAmB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACtE,MAAM,GAAG,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACpE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AACpD,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/telemetry/config.ts"],"names":[],"mappings":"AAaA,MAAM,gBAAgB,GAAG,yBAAyB,CAAC;AAEnD,MAAM,UAAU,uBAAuB,CAAC,QAA4B;IAClE,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,mBAAmB,GACvB,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC1B,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC1B,MAAM,CAAC,QAAQ,KAAK,GAAG;YACvB,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QACzB,OAAO,mBAAmB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IAC7E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACtE,MAAM,GAAG,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACpE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,SAA0B,mBAAmB,EAAE;IACnF,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,kBAAkB,EAAE,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QACrF,QAAQ,EAAE,uBAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC;QAClD,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,7 +1,7 @@
1
- export { readTelemetryConfig, ENDPOINT_ENV_VAR } from "./config.js";
2
- export type { TelemetryConfig } from "./config.js";
1
+ export { publicTelemetryConfig, readTelemetryConfig, redactTelemetryEndpoint, ENDPOINT_ENV_VAR } from "./config.js";
2
+ export type { PublicTelemetryConfig, TelemetryConfig } from "./config.js";
3
3
  export { redactString, redactPayload } from "./redactor.js";
4
- export { compileSessionReport } from "./report.js";
5
- export type { HaltEntry, ModelSignal, SessionReport, SessionReportInput, ViolationEntry } from "./report.js";
6
- export { submitSessionReport } from "./submit.js";
4
+ export { CHILD_AGENT_DIAGNOSTIC_QUESTIONS, ODIN_DIAGNOSTIC_QUESTIONS, compileSessionReport, getAxDiagnosticQuestions } from "./report.js";
5
+ export type { ArtifactDiagnostics, AxDiagnostics, AxSummary, BlockerClassification, ChildContextWindow, DiagnosticCheck, DiagnosticStatus, HaltEntry, HarnessFailureDiagnostics, LaunchRunbookDiagnostics, LayoutDiagnostics, ModelSignal, PromptType, ReadinessGateDiagnostics, ReadinessStatus, ReceiptStatus, ReleaseVersionDiagnostics, RoleSlotDiagnostic, RoleSlotLocator, SessionReport, SessionReportInput, ViolationEntry, WatchStatus } from "./report.js";
6
+ export { submitSessionReport, toTelemetryPayload } from "./submit.js";
7
7
  export type { SubmitOptions, SubmitResult } from "./submit.js";
@@ -1,5 +1,5 @@
1
- export { readTelemetryConfig, ENDPOINT_ENV_VAR } from "./config.js";
1
+ export { publicTelemetryConfig, readTelemetryConfig, redactTelemetryEndpoint, ENDPOINT_ENV_VAR } from "./config.js";
2
2
  export { redactString, redactPayload } from "./redactor.js";
3
- export { compileSessionReport } from "./report.js";
4
- export { submitSessionReport } from "./submit.js";
3
+ export { CHILD_AGENT_DIAGNOSTIC_QUESTIONS, ODIN_DIAGNOSTIC_QUESTIONS, compileSessionReport, getAxDiagnosticQuestions } from "./report.js";
4
+ export { submitSessionReport, toTelemetryPayload } from "./submit.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/telemetry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAQnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/telemetry/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EACL,gCAAgC,EAChC,yBAAyB,EACzB,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,aAAa,CAAC;AA0BrB,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,6 +1,6 @@
1
- // Pre-redaction for outbound payloads. Strips file-system paths, email
2
- // addresses, and common secret token shapes. Intentionally conservative:
3
- // over-redacts rather than under-redacts.
1
+ // Pre-redaction for outbound payloads. Strips or masks file-system paths,
2
+ // email addresses, token shapes, secret-bearing key/value text, and sensitive
3
+ // object fields. Intentionally conservative: over-redacts rather than under-redacts.
4
4
  const SLASH = "/";
5
5
  const BACKSLASH = "\\";
6
6
  const HOME_USERS_RE = new RegExp(`${SLASH}${"U" + "sers"}${SLASH}[^${SLASH}\\s"']+`, "g");
@@ -10,19 +10,37 @@ const EMAIL_RE = /[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g;
10
10
  // Common secret-token shapes. The set is conservative; readers should add
11
11
  // project-specific patterns if they ship custom token prefixes.
12
12
  const TOKEN_PATTERNS = [
13
- /\bsk-[a-zA-Z0-9]{20,}\b/g,
13
+ /\bsk-(?:proj-)?[a-zA-Z0-9_-]{20,}\b/g,
14
14
  /\blin_api_[a-zA-Z0-9]{16,}\b/g,
15
15
  /\bghp_[a-zA-Z0-9]{20,}\b/g,
16
16
  /\bgho_[a-zA-Z0-9]{20,}\b/g,
17
+ /\bgithub_pat_[a-zA-Z0-9_]{20,}\b/g,
17
18
  /\bAIza[0-9A-Za-z_-]{30,}\b/g,
18
- /\bxox[bp]-[a-zA-Z0-9-]{20,}\b/g
19
+ /\bxox[bp]-[a-zA-Z0-9-]{20,}\b/g,
20
+ /\bdp\.st\.[a-zA-Z0-9._-]{16,}\b/g,
21
+ /\bdp\.pt\.[a-zA-Z0-9._-]{16,}\b/g,
22
+ /\beyJ[a-zA-Z0-9_-]{20,}\.[a-zA-Z0-9_-]{10,}\.[a-zA-Z0-9_-]{10,}\b/g
19
23
  ];
24
+ const AUTH_BEARER_RE = /\b(Authorization\s*:\s*Bearer\s+)[A-Za-z0-9._~+\/-]{8,}={0,2}\b/gi;
25
+ const BEARER_RE = /\b(Bearer\s+)[A-Za-z0-9._~+\/-]{8,}={0,2}\b/g;
26
+ const SENSITIVE_KEY_RE = /secret|token|api[_-]?key|apiKey|access[_-]?key|accessKey|private[_-]?key|privateKey|password|credential|authorization|client[_-]?secret|clientSecret/i;
27
+ const ENV_DUMP_LINE_RE = /^([A-Z][A-Z0-9_]{1,60}=).+$/gm;
28
+ const SECRET_ASSIGNMENT_RE = /\b([A-Za-z0-9_.-]*(?:secret|token|api[_-]?key|apiKey|access[_-]?key|accessKey|private[_-]?key|privateKey|password|credential|client[_-]?secret|clientSecret)[A-Za-z0-9_.-]*\s*[:=]\s*)(["']?)(?!<)([^\s"',}]+)/gi;
29
+ const JSON_SECRET_RE = /("[^"]*(?:secret|token|apiKey|api_key|accessKey|access_key|privateKey|private_key|password|credential|authorization|clientSecret|client_secret)[^"]*"\s*:\s*)("[^"]*"|\d+|true|false|null)/gi;
30
+ function isSensitiveKey(key) {
31
+ return SENSITIVE_KEY_RE.test(key);
32
+ }
20
33
  export function redactString(value) {
21
34
  let result = value
22
35
  .replace(HOME_USERS_RE, "<HOME>")
23
36
  .replace(HOME_LINUX_RE, "<HOME>")
24
37
  .replace(HOME_WIN_RE, "<HOME>")
25
- .replace(EMAIL_RE, "<EMAIL>");
38
+ .replace(EMAIL_RE, "<EMAIL>")
39
+ .replace(AUTH_BEARER_RE, "$1<TOKEN>")
40
+ .replace(BEARER_RE, "$1<TOKEN>")
41
+ .replace(ENV_DUMP_LINE_RE, "$1<ENV_VALUE>")
42
+ .replace(SECRET_ASSIGNMENT_RE, "$1$2<SECRET>")
43
+ .replace(JSON_SECRET_RE, "$1" + '"<SECRET>"');
26
44
  for (const pattern of TOKEN_PATTERNS) {
27
45
  result = result.replace(pattern, "<TOKEN>");
28
46
  }
@@ -36,7 +54,7 @@ export function redactPayload(payload) {
36
54
  if (payload && typeof payload === "object") {
37
55
  const result = {};
38
56
  for (const [key, value] of Object.entries(payload)) {
39
- result[key] = redactPayload(value);
57
+ result[key] = isSensitiveKey(key) ? "<SECRET>" : redactPayload(value);
40
58
  }
41
59
  return result;
42
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"redactor.js","sourceRoot":"","sources":["../../../src/telemetry/redactor.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,yEAAyE;AACzE,0CAA0C;AAE1C,MAAM,KAAK,GAAG,GAAG,CAAC;AAClB,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB,MAAM,aAAa,GAAG,IAAI,MAAM,CAC9B,GAAG,KAAK,GAAG,GAAG,GAAG,MAAM,GAAG,KAAK,KAAK,KAAK,SAAS,EAClD,GAAG,CACJ,CAAC;AACF,MAAM,aAAa,GAAG,IAAI,MAAM,CAC9B,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,KAAK,KAAK,SAAS,EACjD,GAAG,CACJ,CAAC;AACF,MAAM,WAAW,GAAG,IAAI,MAAM,CAC5B,GAAG,SAAS,GAAG,SAAS,GAAG,GAAG,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,KAAK,SAAS,SAAS,EACtF,GAAG,CACJ,CAAC;AAEF,MAAM,QAAQ,GAAG,iDAAiD,CAAC;AAEnE,0EAA0E;AAC1E,gEAAgE;AAChE,MAAM,cAAc,GAAa;IAC/B,0BAA0B;IAC1B,+BAA+B;IAC/B,2BAA2B;IAC3B,2BAA2B;IAC3B,6BAA6B;IAC7B,gCAAgC;CACjC,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,IAAI,MAAM,GAAG,KAAK;SACf,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC;SAChC,OAAO,CAAC,aAAa,EAAE,QAAQ,CAAC;SAChC,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC;SAC9B,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAChC,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,aAAa,CAAI,OAAU;IACzC,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,YAAY,CAAC,OAAO,CAAiB,CAAC;IAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAiB,CAAC;IAChG,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC3C,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAkC,CAAC,EAAE,CAAC;YAC9E,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,MAAsB,CAAC;IAChC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"redactor.js","sourceRoot":"","sources":["../../../src/telemetry/redactor.ts"],"names":[],"mappings":"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"}