autotel-eventcatalog 10.0.0 → 11.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/dist/cli.cjs +1 -1
  3. package/dist/cli.js +1 -1
  4. package/dist/{generate-DCSrdzQI.cjs → generate-CHjGIFJe.cjs} +5 -3
  5. package/dist/{generate-DCSrdzQI.cjs.map → generate-CHjGIFJe.cjs.map} +1 -1
  6. package/dist/{generate-dFbInSKR.js → generate-r5KccyNS.js} +5 -3
  7. package/dist/{generate-dFbInSKR.js.map → generate-r5KccyNS.js.map} +1 -1
  8. package/dist/index.cjs +1 -1
  9. package/dist/index.js +1 -1
  10. package/package.json +6 -7
  11. package/src/__fixtures__/drift-report-all.golden.json +0 -33
  12. package/src/__fixtures__/drift-summary-clean.golden.json +0 -17
  13. package/src/__fixtures__/drift-summary-drifty.golden.json +0 -17
  14. package/src/__fixtures__/stamp-summary-noop.golden.json +0 -10
  15. package/src/catalog.test.ts +0 -63
  16. package/src/catalog.ts +0 -169
  17. package/src/cli.e2e.test.ts +0 -513
  18. package/src/cli.ts +0 -668
  19. package/src/contract.test.ts +0 -483
  20. package/src/diff-vs-base.test.ts +0 -145
  21. package/src/diff-vs-base.ts +0 -242
  22. package/src/diff.test.ts +0 -384
  23. package/src/diff.ts +0 -291
  24. package/src/eventcatalog-snapshot-diff.test.ts +0 -61
  25. package/src/eventcatalog-snapshot-diff.ts +0 -170
  26. package/src/generate.test.ts +0 -195
  27. package/src/generate.ts +0 -559
  28. package/src/index.ts +0 -100
  29. package/src/policy.test.ts +0 -81
  30. package/src/policy.ts +0 -41
  31. package/src/renderers/eventcatalog-snapshot-diff.ts +0 -46
  32. package/src/renderers/index.ts +0 -89
  33. package/src/renderers/json.ts +0 -33
  34. package/src/renderers/markdown.ts +0 -223
  35. package/src/renderers/renderers.test.ts +0 -90
  36. package/src/renderers/terminal.ts +0 -30
  37. package/src/renderers/types.ts +0 -26
  38. package/src/report.test.ts +0 -244
  39. package/src/report.ts +0 -31
  40. package/src/snapshot.test.ts +0 -131
  41. package/src/snapshot.ts +0 -127
  42. package/src/stamp.test.ts +0 -283
  43. package/src/stamp.ts +0 -232
package/CHANGELOG.md CHANGED
@@ -1,5 +1,66 @@
1
1
  # Changelog
2
2
 
3
+ ## 11.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 4b7ad78: chore: routine dependency updates
8
+
9
+ Refresh runtime and peer dependency ranges across published packages (`ncu`, 3-day release-age cooldown).
10
+
11
+ The core `autotel` package moves to the latest OpenTelemetry libraries (stable `2.9.x`, experimental `0.220.x`, semantic-conventions `1.42.x`). This required adapting to a breaking change in `@opentelemetry/sdk-logs`: `BatchLogRecordProcessor` and `SimpleLogRecordProcessor` now take a `{ exporter }` options object instead of a positional exporter argument.
12
+
13
+ Notable peer range bumps for consumers: `autotel-aws` (AWS SDK `3.1081`), `autotel-cloudflare` (`@cloudflare/workers-types` v5), `autotel-pact` (`@pact-foundation/pact` v17), `autotel-terminal` (`ai` v7).
14
+ - autotel-subscribers@41.0.4
15
+
16
+ ## 11.0.0
17
+
18
+ ### Patch Changes
19
+
20
+ - ec47ec8: Google Secure AI Agents observability plus MCP protocol-boundary security observability — additive defense-in-depth across planning, tool use, MCP traffic, triage, and UI surfaces.
21
+
22
+ **autotel-mcp-instrumentation**
23
+ - Annotation hints captured as `mcp.tool.*` span attributes (`readOnlyHint`, `destructiveHint`, `idempotentHint`, `openWorldHint`, `untrustedContentHint`) to surface malicious-manifest vectors and tool trust profiles.
24
+ - Payload-size signals (`mcp.tool.arguments.size` / `mcp.tool.result.size`) for token-exhaustion and contaminated-output detection without logging content.
25
+ - Output character budgets (`outputCharBudget` + `MCP_CHAR_BUDGETS`) that emit `mcp.security.budget_exceeded` signals and can bridge to unified `security.*` events.
26
+ - Pluggable injection classifier (`securityClassifier`) scanning arguments and results on both client and server, recording `mcp.security.injection.*` signals and bridging suspicious verdicts to `security.*` events without breaking traced calls.
27
+ - `heuristicInjectionClassifier()` as a dependency-free first-pass detector.
28
+ - `spotlight()` to delimit/base64 untrusted content across Node and edge runtimes.
29
+ - `validateToolBudget()` for WebMCP-style text-surface limits.
30
+ - Guard bridge via `guard` config so MCP tool calls count against an `autotel-genai` guard.
31
+ - `applyManifestAssessment()` bridges suspicious manifest verdicts to unified `security.*` events when `bridgeSecurityEvents` is enabled.
32
+ - New `mcp.security.events` counter and `autotel-mcp-instrumentation/security` subpath export.
33
+
34
+ **autotel-cli**
35
+ - Add `autotel security mcp` to aggregate MCP security signals: injection verdicts, output-budget breaches, and untrusted-content tool calls.
36
+
37
+ **autotel-genai/agent**
38
+ - `AgentPlanClassifier` + `runAgentPlanClassifier()` / `recordPlanRiskAssessment()` with `agent.plan.risk.*` attrs and optional `llm.plan.risk.elevated` security event.
39
+ - `heuristicPlanRiskClassifier()` as a dependency-free first-pass plan-risk tripwire.
40
+ - Export `agentContextFromSpan()` from the agent subpath.
41
+
42
+ **autotel-audit**
43
+ - Passive action-chain processor emits `llm.action_chain.suspicious` and stamps unified `security.*` attributes on the destructive span.
44
+ - `llm.manifest.suspicious` and `llm.plan.risk.elevated` added to the suggested security event catalogue.
45
+
46
+ **autotel-cloudflare/agents**
47
+ - `tool:approval` events use `recordHumanApproval()` (optional `autotel-genai` peer dependency).
48
+
49
+ **autotel-devtools**
50
+ - Agent timeline surfaces consent, policy, injection, guard, security-event, and plan-step badges from the new agent security attributes.
51
+
52
+ **autotel-schema**
53
+ - Agent security contract snapshot extended with `agent.plan.risk.*` attributes.
54
+
55
+ **autotel**
56
+ - Core `security-schema` remains the shared sink for unified `security.*` events consumed by the agent and MCP observability layers.
57
+
58
+ **Packaging**
59
+ - Drop the duplicated `src/` directory from published tarballs across all packages. The shipped `.js.map` sourcemaps already embed original source via `sourcesContent`, so source-level debugging is unchanged while install footprint shrinks ~20–30%.
60
+
61
+ - Updated dependencies [ec47ec8]
62
+ - autotel-subscribers@41.0.0
63
+
3
64
  ## 10.0.0
4
65
 
5
66
  ### Patch Changes
package/dist/cli.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- const require_generate = require('./generate-DCSrdzQI.cjs');
2
+ const require_generate = require('./generate-CHjGIFJe.cjs');
3
3
  let node_fs_promises = require("node:fs/promises");
4
4
  let node_path = require("node:path");
5
5
  let node_url = require("node:url");
package/dist/cli.js CHANGED
@@ -1,5 +1,5 @@
1
1
 
2
- import { A as countDriftEntries, F as readCatalogState, I as loadSnapshot, M as diffCatalogAgainstSnapshot, O as compareDriftReports, d as evaluatePolicy, g as registerRenderer, h as listRendererNames, j as countDriftReport, l as buildStampSummary, m as getRenderer, n as buildGenerateSummary, r as generateCatalogFromSnapshot, u as stampCatalog } from "./generate-dFbInSKR.js";
2
+ import { A as countDriftEntries, F as readCatalogState, I as loadSnapshot, M as diffCatalogAgainstSnapshot, O as compareDriftReports, d as evaluatePolicy, g as registerRenderer, h as listRendererNames, j as countDriftReport, l as buildStampSummary, m as getRenderer, n as buildGenerateSummary, r as generateCatalogFromSnapshot, u as stampCatalog } from "./generate-r5KccyNS.js";
3
3
  import { mkdir, writeFile } from "node:fs/promises";
4
4
  import { dirname, resolve } from "node:path";
5
5
  import { pathToFileURL } from "node:url";
@@ -1241,23 +1241,25 @@ ${producerLine}${channelLine}${traceLine}${sourceLine}
1241
1241
  }
1242
1242
  function buildServiceMarkdown(serviceId, snapshot) {
1243
1243
  const sends = Object.entries(snapshot.events).filter(([, obs]) => obs.producer === serviceId).map(([name]) => `- \`${name}\``).join("\n");
1244
+ const sendsBlock = sends ? `### Sends\n${sends}\n` : "";
1244
1245
  return `${GENERATED_PREAMBLE}
1245
1246
 
1246
1247
  ## ${serviceId}
1247
1248
 
1248
1249
  *Generated from autotel snapshot. Add a human description and ownership.*
1249
1250
 
1250
- ${sends ? `### Sends\n${sends}\n` : ""}`;
1251
+ ${sendsBlock}`;
1251
1252
  }
1252
1253
  function buildChannelMarkdown(channelId, snapshot) {
1253
1254
  const messages = Object.entries(snapshot.events).filter(([, obs]) => obs.channel === channelId).map(([name]) => `- \`${name}\``).join("\n");
1255
+ const messagesBlock = messages ? `### Carries\n${messages}\n` : "";
1254
1256
  return `${GENERATED_PREAMBLE}
1255
1257
 
1256
1258
  ## ${channelId}
1257
1259
 
1258
1260
  *Generated from autotel snapshot. Add transport details, retention, schema registry, etc.*
1259
1261
 
1260
- ${messages ? `### Carries\n${messages}\n` : ""}`;
1262
+ ${messagesBlock}`;
1261
1263
  }
1262
1264
  function toCatalogEventId(snapshotEventName) {
1263
1265
  return snapshotEventName.split(/[._\-\s]+/).filter(Boolean).map((part) => part.charAt(0).toUpperCase() + part.slice(1)).join("");
@@ -1483,4 +1485,4 @@ Object.defineProperty(exports, 'toSnapshotDiffFromReport', {
1483
1485
  return toSnapshotDiffFromReport;
1484
1486
  }
1485
1487
  });
1486
- //# sourceMappingURL=generate-DCSrdzQI.cjs.map
1488
+ //# sourceMappingURL=generate-CHjGIFJe.cjs.map