agentfootprint 12.2.0 → 13.0.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/CAPABILITIES.md +1 -0
- package/dist/adapters/code/output.js +8 -29
- package/dist/adapters/code/output.js.map +1 -1
- package/dist/adapters/observability/audit.js +151 -159
- package/dist/adapters/observability/audit.js.map +1 -1
- package/dist/adapters/observability/auditBounding.js +411 -0
- package/dist/adapters/observability/auditBounding.js.map +1 -0
- package/dist/adapters/observability/auditKeptByContract.js +107 -0
- package/dist/adapters/observability/auditKeptByContract.js.map +1 -0
- package/dist/adapters/observability/auditShapes.js +1731 -0
- package/dist/adapters/observability/auditShapes.js.map +1 -0
- package/dist/answer-account/account.js +92 -15
- package/dist/answer-account/account.js.map +1 -1
- package/dist/answer-account/facts/calls.js +7 -9
- package/dist/answer-account/facts/calls.js.map +1 -1
- package/dist/answer-account/facts/checked.js +2 -2
- package/dist/answer-account/facts/checked.js.map +1 -1
- package/dist/answer-account/facts/common.js +40 -7
- package/dist/answer-account/facts/common.js.map +1 -1
- package/dist/answer-account/facts/found.js +1 -1
- package/dist/answer-account/facts/found.js.map +1 -1
- package/dist/answer-account/facts/howSure.js +21 -3
- package/dist/answer-account/facts/howSure.js.map +1 -1
- package/dist/answer-account/facts/inView.js +3 -4
- package/dist/answer-account/facts/inView.js.map +1 -1
- package/dist/answer-account/facts/pausedLeg.js +1 -1
- package/dist/answer-account/facts/pausedLeg.js.map +1 -1
- package/dist/answer-account/facts/scripts.js +222 -0
- package/dist/answer-account/facts/scripts.js.map +1 -0
- package/dist/answer-account/facts/understood.js +5 -5
- package/dist/answer-account/facts/understood.js.map +1 -1
- package/dist/answer-account/pointerKey.js +1 -1
- package/dist/answer-account/shown.js +25 -7
- package/dist/answer-account/shown.js.map +1 -1
- package/dist/answer-account/signals.js +1 -1
- package/dist/answer-account/signals.js.map +1 -1
- package/dist/answer-account/size.js +152 -0
- package/dist/answer-account/size.js.map +1 -0
- package/dist/answer-account/templates.js +39 -1
- package/dist/answer-account/templates.js.map +1 -1
- package/dist/core/Agent.js +25 -1
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/agent/AgentBuilder.js +85 -1
- package/dist/core/agent/AgentBuilder.js.map +1 -1
- package/dist/core/agent/arguments/ask.js +85 -2
- package/dist/core/agent/arguments/ask.js.map +1 -1
- package/dist/core/agent/arguments/partialWindow.js +120 -0
- package/dist/core/agent/arguments/partialWindow.js.map +1 -0
- package/dist/core/agent/assessment/assess.js +37 -0
- package/dist/core/agent/assessment/assess.js.map +1 -1
- package/dist/core/agent/assessment/compose.js +5 -1
- package/dist/core/agent/assessment/compose.js.map +1 -1
- package/dist/core/agent/assessment/reasons.js +7 -0
- package/dist/core/agent/assessment/reasons.js.map +1 -1
- package/dist/core/agent/assessment/witness.js +37 -4
- package/dist/core/agent/assessment/witness.js.map +1 -1
- package/dist/core/agent/buildAgentChart.js.map +1 -1
- package/dist/core/agent/evidence/codeRegions.js +279 -0
- package/dist/core/agent/evidence/codeRegions.js.map +1 -0
- package/dist/core/agent/evidence/gate.js +13 -2
- package/dist/core/agent/evidence/gate.js.map +1 -1
- package/dist/core/agent/evidence/recovery.js +11 -2
- package/dist/core/agent/evidence/recovery.js.map +1 -1
- package/dist/core/agent/findings/types.js.map +1 -1
- package/dist/core/agent/scripts/attachment.js +375 -0
- package/dist/core/agent/scripts/attachment.js.map +1 -0
- package/dist/core/agent/scripts/inert.js +88 -0
- package/dist/core/agent/scripts/inert.js.map +1 -0
- package/dist/core/agent/scripts/judge.js +41 -0
- package/dist/core/agent/scripts/judge.js.map +1 -0
- package/dist/core/agent/scripts/label.js +143 -0
- package/dist/core/agent/scripts/label.js.map +1 -0
- package/dist/core/agent/scripts/match.js +233 -0
- package/dist/core/agent/scripts/match.js.map +1 -0
- package/dist/core/agent/scripts/recovery.js +81 -0
- package/dist/core/agent/scripts/recovery.js.map +1 -0
- package/dist/core/agent/scripts/rows.js +221 -0
- package/dist/core/agent/scripts/rows.js.map +1 -0
- package/dist/core/agent/scripts/types.js +22 -0
- package/dist/core/agent/scripts/types.js.map +1 -0
- package/dist/core/agent/scripts/wrapper.js +63 -0
- package/dist/core/agent/scripts/wrapper.js.map +1 -0
- package/dist/core/agent/stages/argumentAsk.js +161 -19
- package/dist/core/agent/stages/argumentAsk.js.map +1 -1
- package/dist/core/agent/stages/evidenceRecheck.js +4 -1
- package/dist/core/agent/stages/evidenceRecheck.js.map +1 -1
- package/dist/core/agent/stages/prepareFinal.js +65 -10
- package/dist/core/agent/stages/prepareFinal.js.map +1 -1
- package/dist/core/agent/stages/route.js +53 -3
- package/dist/core/agent/stages/route.js.map +1 -1
- package/dist/core/agent/stages/seed.js +14 -1
- package/dist/core/agent/stages/seed.js.map +1 -1
- package/dist/core/agent/stages/toolCalls.js +339 -18
- package/dist/core/agent/stages/toolCalls.js.map +1 -1
- package/dist/core/codeRunnerTool.js +32 -3
- package/dist/core/codeRunnerTool.js.map +1 -1
- package/dist/core/runCheckpoint.js +19 -6
- package/dist/core/runCheckpoint.js.map +1 -1
- package/dist/esm/adapters/code/output.d.ts +1 -4
- package/dist/esm/adapters/code/output.js +3 -24
- package/dist/esm/adapters/code/output.js.map +1 -1
- package/dist/esm/adapters/observability/audit.d.ts +79 -12
- package/dist/esm/adapters/observability/audit.js +132 -142
- package/dist/esm/adapters/observability/audit.js.map +1 -1
- package/dist/esm/adapters/observability/auditBounding.d.ts +215 -0
- package/dist/esm/adapters/observability/auditBounding.js +390 -0
- package/dist/esm/adapters/observability/auditBounding.js.map +1 -0
- package/dist/esm/adapters/observability/auditKeptByContract.d.ts +65 -0
- package/dist/esm/adapters/observability/auditKeptByContract.js +103 -0
- package/dist/esm/adapters/observability/auditKeptByContract.js.map +1 -0
- package/dist/esm/adapters/observability/auditShapes.d.ts +78 -0
- package/dist/esm/adapters/observability/auditShapes.js +1726 -0
- package/dist/esm/adapters/observability/auditShapes.js.map +1 -0
- package/dist/esm/answer-account/account.js +91 -14
- package/dist/esm/answer-account/account.js.map +1 -1
- package/dist/esm/answer-account/facts/calls.d.ts +0 -2
- package/dist/esm/answer-account/facts/calls.js +1 -3
- package/dist/esm/answer-account/facts/calls.js.map +1 -1
- package/dist/esm/answer-account/facts/checked.js +2 -2
- package/dist/esm/answer-account/facts/checked.js.map +1 -1
- package/dist/esm/answer-account/facts/common.d.ts +16 -4
- package/dist/esm/answer-account/facts/common.js +38 -6
- package/dist/esm/answer-account/facts/common.js.map +1 -1
- package/dist/esm/answer-account/facts/found.js +2 -2
- package/dist/esm/answer-account/facts/found.js.map +1 -1
- package/dist/esm/answer-account/facts/howSure.d.ts +1 -1
- package/dist/esm/answer-account/facts/howSure.js +22 -4
- package/dist/esm/answer-account/facts/howSure.js.map +1 -1
- package/dist/esm/answer-account/facts/inView.js +1 -2
- package/dist/esm/answer-account/facts/inView.js.map +1 -1
- package/dist/esm/answer-account/facts/pausedLeg.js +2 -2
- package/dist/esm/answer-account/facts/pausedLeg.js.map +1 -1
- package/dist/esm/answer-account/facts/scripts.d.ts +34 -0
- package/dist/esm/answer-account/facts/scripts.js +218 -0
- package/dist/esm/answer-account/facts/scripts.js.map +1 -0
- package/dist/esm/answer-account/facts/understood.js +2 -2
- package/dist/esm/answer-account/facts/understood.js.map +1 -1
- package/dist/esm/answer-account/pointerKey.d.ts +1 -1
- package/dist/esm/answer-account/pointerKey.js +1 -1
- package/dist/esm/answer-account/shown.d.ts +9 -2
- package/dist/esm/answer-account/shown.js +25 -7
- package/dist/esm/answer-account/shown.js.map +1 -1
- package/dist/esm/answer-account/signals.js +2 -2
- package/dist/esm/answer-account/signals.js.map +1 -1
- package/dist/esm/answer-account/size.d.ts +59 -0
- package/dist/esm/answer-account/size.js +147 -0
- package/dist/esm/answer-account/size.js.map +1 -0
- package/dist/esm/answer-account/templates.d.ts +29 -1
- package/dist/esm/answer-account/templates.js +39 -1
- package/dist/esm/answer-account/templates.js.map +1 -1
- package/dist/esm/core/Agent.d.ts +8 -1
- package/dist/esm/core/Agent.js +25 -1
- package/dist/esm/core/Agent.js.map +1 -1
- package/dist/esm/core/agent/AgentBuilder.d.ts +52 -0
- package/dist/esm/core/agent/AgentBuilder.js +85 -1
- package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
- package/dist/esm/core/agent/arguments/ask.d.ts +11 -0
- package/dist/esm/core/agent/arguments/ask.js +83 -1
- package/dist/esm/core/agent/arguments/ask.js.map +1 -1
- package/dist/esm/core/agent/arguments/partialWindow.d.ts +42 -0
- package/dist/esm/core/agent/arguments/partialWindow.js +111 -0
- package/dist/esm/core/agent/arguments/partialWindow.js.map +1 -0
- package/dist/esm/core/agent/assessment/assess.js +37 -0
- package/dist/esm/core/agent/assessment/assess.js.map +1 -1
- package/dist/esm/core/agent/assessment/compose.d.ts +3 -1
- package/dist/esm/core/agent/assessment/compose.js +5 -1
- package/dist/esm/core/agent/assessment/compose.js.map +1 -1
- package/dist/esm/core/agent/assessment/reasons.js +7 -0
- package/dist/esm/core/agent/assessment/reasons.js.map +1 -1
- package/dist/esm/core/agent/assessment/types.d.ts +12 -2
- package/dist/esm/core/agent/assessment/witness.d.ts +44 -4
- package/dist/esm/core/agent/assessment/witness.js +35 -3
- package/dist/esm/core/agent/assessment/witness.js.map +1 -1
- package/dist/esm/core/agent/buildAgentChart.d.ts +9 -0
- package/dist/esm/core/agent/buildAgentChart.js.map +1 -1
- package/dist/esm/core/agent/evidence/codeRegions.d.ts +130 -0
- package/dist/esm/core/agent/evidence/codeRegions.js +275 -0
- package/dist/esm/core/agent/evidence/codeRegions.js.map +1 -0
- package/dist/esm/core/agent/evidence/gate.d.ts +3 -0
- package/dist/esm/core/agent/evidence/gate.js +12 -2
- package/dist/esm/core/agent/evidence/gate.js.map +1 -1
- package/dist/esm/core/agent/evidence/recovery.d.ts +5 -1
- package/dist/esm/core/agent/evidence/recovery.js +11 -2
- package/dist/esm/core/agent/evidence/recovery.js.map +1 -1
- package/dist/esm/core/agent/evidence/types.d.ts +35 -0
- package/dist/esm/core/agent/findings/types.d.ts +3 -2
- package/dist/esm/core/agent/findings/types.js.map +1 -1
- package/dist/esm/core/agent/scripts/attachment.d.ts +179 -0
- package/dist/esm/core/agent/scripts/attachment.js +361 -0
- package/dist/esm/core/agent/scripts/attachment.js.map +1 -0
- package/dist/esm/core/agent/scripts/inert.d.ts +38 -0
- package/dist/esm/core/agent/scripts/inert.js +84 -0
- package/dist/esm/core/agent/scripts/inert.js.map +1 -0
- package/dist/esm/core/agent/scripts/judge.d.ts +36 -0
- package/dist/esm/core/agent/scripts/judge.js +37 -0
- package/dist/esm/core/agent/scripts/judge.js.map +1 -0
- package/dist/esm/core/agent/scripts/label.d.ts +103 -0
- package/dist/esm/core/agent/scripts/label.js +136 -0
- package/dist/esm/core/agent/scripts/label.js.map +1 -0
- package/dist/esm/core/agent/scripts/match.d.ts +99 -0
- package/dist/esm/core/agent/scripts/match.js +226 -0
- package/dist/esm/core/agent/scripts/match.js.map +1 -0
- package/dist/esm/core/agent/scripts/recovery.d.ts +54 -0
- package/dist/esm/core/agent/scripts/recovery.js +77 -0
- package/dist/esm/core/agent/scripts/recovery.js.map +1 -0
- package/dist/esm/core/agent/scripts/rows.d.ts +143 -0
- package/dist/esm/core/agent/scripts/rows.js +211 -0
- package/dist/esm/core/agent/scripts/rows.js.map +1 -0
- package/dist/esm/core/agent/scripts/types.d.ts +91 -0
- package/dist/esm/core/agent/scripts/types.js +21 -0
- package/dist/esm/core/agent/scripts/types.js.map +1 -0
- package/dist/esm/core/agent/scripts/wrapper.d.ts +36 -0
- package/dist/esm/core/agent/scripts/wrapper.js +58 -0
- package/dist/esm/core/agent/scripts/wrapper.js.map +1 -0
- package/dist/esm/core/agent/stages/argumentAsk.d.ts +4 -1
- package/dist/esm/core/agent/stages/argumentAsk.js +164 -22
- package/dist/esm/core/agent/stages/argumentAsk.js.map +1 -1
- package/dist/esm/core/agent/stages/evidenceRecheck.js +4 -1
- package/dist/esm/core/agent/stages/evidenceRecheck.js.map +1 -1
- package/dist/esm/core/agent/stages/prepareFinal.d.ts +11 -0
- package/dist/esm/core/agent/stages/prepareFinal.js +65 -10
- package/dist/esm/core/agent/stages/prepareFinal.js.map +1 -1
- package/dist/esm/core/agent/stages/route.js +53 -3
- package/dist/esm/core/agent/stages/route.js.map +1 -1
- package/dist/esm/core/agent/stages/seed.js +14 -1
- package/dist/esm/core/agent/stages/seed.js.map +1 -1
- package/dist/esm/core/agent/stages/toolCalls.d.ts +14 -0
- package/dist/esm/core/agent/stages/toolCalls.js +337 -16
- package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
- package/dist/esm/core/agent/types.d.ts +41 -0
- package/dist/esm/core/codeRunnerTool.d.ts +23 -0
- package/dist/esm/core/codeRunnerTool.js +31 -2
- package/dist/esm/core/codeRunnerTool.js.map +1 -1
- package/dist/esm/core/runCheckpoint.js +16 -3
- package/dist/esm/core/runCheckpoint.js.map +1 -1
- package/dist/esm/events/payloads.d.ts +46 -1
- package/dist/esm/hosting/answerAccounts.js +4 -2
- package/dist/esm/hosting/answerAccounts.js.map +1 -1
- package/dist/esm/hosting/artifactWire.d.ts +3 -2
- package/dist/esm/hosting/artifactWire.js.map +1 -1
- package/dist/esm/index.d.ts +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/boundedJson.d.ts +24 -0
- package/dist/esm/lib/boundedJson.js +45 -2
- package/dist/esm/lib/boundedJson.js.map +1 -1
- package/dist/esm/lib/scriptRecord.d.ts +139 -0
- package/dist/esm/lib/scriptRecord.js +18 -0
- package/dist/esm/lib/scriptRecord.js.map +1 -0
- package/dist/esm/lib/utf8.d.ts +36 -0
- package/dist/esm/lib/utf8.js +70 -0
- package/dist/esm/lib/utf8.js.map +1 -0
- package/dist/esm/mcp/toolExtras.d.ts +9 -0
- package/dist/esm/mcp/toolExtras.js +6 -0
- package/dist/esm/mcp/toolExtras.js.map +1 -1
- package/dist/esm/redaction/conversation.js +10 -0
- package/dist/esm/redaction/conversation.js.map +1 -1
- package/dist/esm/redaction/knownStrings.js +34 -0
- package/dist/esm/redaction/knownStrings.js.map +1 -1
- package/dist/esm/semantics/coverage/answer.d.ts +12 -1
- package/dist/esm/semantics/coverage/answer.js +26 -3
- package/dist/esm/semantics/coverage/answer.js.map +1 -1
- package/dist/esm/tools/script.d.ts +85 -0
- package/dist/esm/tools/script.js +157 -0
- package/dist/esm/tools/script.js.map +1 -0
- package/dist/esm/tools/tools.d.ts +30 -0
- package/dist/esm/tools/tools.js +4 -0
- package/dist/esm/tools/tools.js.map +1 -1
- package/dist/hosting/answerAccounts.js +4 -2
- package/dist/hosting/answerAccounts.js.map +1 -1
- package/dist/hosting/artifactWire.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/boundedJson.js +48 -3
- package/dist/lib/boundedJson.js.map +1 -1
- package/dist/lib/scriptRecord.js +19 -0
- package/dist/lib/scriptRecord.js.map +1 -0
- package/dist/lib/utf8.js +77 -0
- package/dist/lib/utf8.js.map +1 -0
- package/dist/mcp/toolExtras.js +6 -0
- package/dist/mcp/toolExtras.js.map +1 -1
- package/dist/redaction/conversation.js +10 -0
- package/dist/redaction/conversation.js.map +1 -1
- package/dist/redaction/knownStrings.js +34 -0
- package/dist/redaction/knownStrings.js.map +1 -1
- package/dist/semantics/coverage/answer.js +26 -3
- package/dist/semantics/coverage/answer.js.map +1 -1
- package/dist/tools/script.js +163 -0
- package/dist/tools/script.js.map +1 -0
- package/dist/tools/tools.js +4 -0
- package/dist/tools/tools.js.map +1 -1
- package/dist/types/adapters/code/output.d.ts +1 -4
- package/dist/types/adapters/code/output.d.ts.map +1 -1
- package/dist/types/adapters/observability/audit.d.ts +79 -12
- package/dist/types/adapters/observability/audit.d.ts.map +1 -1
- package/dist/types/adapters/observability/auditBounding.d.ts +216 -0
- package/dist/types/adapters/observability/auditBounding.d.ts.map +1 -0
- package/dist/types/adapters/observability/auditKeptByContract.d.ts +66 -0
- package/dist/types/adapters/observability/auditKeptByContract.d.ts.map +1 -0
- package/dist/types/adapters/observability/auditShapes.d.ts +79 -0
- package/dist/types/adapters/observability/auditShapes.d.ts.map +1 -0
- package/dist/types/answer-account/account.d.ts.map +1 -1
- package/dist/types/answer-account/facts/calls.d.ts +0 -2
- package/dist/types/answer-account/facts/calls.d.ts.map +1 -1
- package/dist/types/answer-account/facts/checked.d.ts.map +1 -1
- package/dist/types/answer-account/facts/common.d.ts +16 -4
- package/dist/types/answer-account/facts/common.d.ts.map +1 -1
- package/dist/types/answer-account/facts/found.d.ts.map +1 -1
- package/dist/types/answer-account/facts/howSure.d.ts +1 -1
- package/dist/types/answer-account/facts/howSure.d.ts.map +1 -1
- package/dist/types/answer-account/facts/inView.d.ts.map +1 -1
- package/dist/types/answer-account/facts/pausedLeg.d.ts.map +1 -1
- package/dist/types/answer-account/facts/scripts.d.ts +35 -0
- package/dist/types/answer-account/facts/scripts.d.ts.map +1 -0
- package/dist/types/answer-account/facts/understood.d.ts.map +1 -1
- package/dist/types/answer-account/pointerKey.d.ts +1 -1
- package/dist/types/answer-account/shown.d.ts +9 -2
- package/dist/types/answer-account/shown.d.ts.map +1 -1
- package/dist/types/answer-account/signals.d.ts.map +1 -1
- package/dist/types/answer-account/size.d.ts +60 -0
- package/dist/types/answer-account/size.d.ts.map +1 -0
- package/dist/types/answer-account/templates.d.ts +29 -1
- package/dist/types/answer-account/templates.d.ts.map +1 -1
- package/dist/types/core/Agent.d.ts +8 -1
- package/dist/types/core/Agent.d.ts.map +1 -1
- package/dist/types/core/agent/AgentBuilder.d.ts +52 -0
- package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
- package/dist/types/core/agent/arguments/ask.d.ts +11 -0
- package/dist/types/core/agent/arguments/ask.d.ts.map +1 -1
- package/dist/types/core/agent/arguments/partialWindow.d.ts +43 -0
- package/dist/types/core/agent/arguments/partialWindow.d.ts.map +1 -0
- package/dist/types/core/agent/assessment/assess.d.ts.map +1 -1
- package/dist/types/core/agent/assessment/compose.d.ts +3 -1
- package/dist/types/core/agent/assessment/compose.d.ts.map +1 -1
- package/dist/types/core/agent/assessment/reasons.d.ts.map +1 -1
- package/dist/types/core/agent/assessment/types.d.ts +12 -2
- package/dist/types/core/agent/assessment/types.d.ts.map +1 -1
- package/dist/types/core/agent/assessment/witness.d.ts +44 -4
- package/dist/types/core/agent/assessment/witness.d.ts.map +1 -1
- package/dist/types/core/agent/buildAgentChart.d.ts +9 -0
- package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -1
- package/dist/types/core/agent/evidence/codeRegions.d.ts +131 -0
- package/dist/types/core/agent/evidence/codeRegions.d.ts.map +1 -0
- package/dist/types/core/agent/evidence/gate.d.ts +3 -0
- package/dist/types/core/agent/evidence/gate.d.ts.map +1 -1
- package/dist/types/core/agent/evidence/recovery.d.ts +5 -1
- package/dist/types/core/agent/evidence/recovery.d.ts.map +1 -1
- package/dist/types/core/agent/evidence/types.d.ts +35 -0
- package/dist/types/core/agent/evidence/types.d.ts.map +1 -1
- package/dist/types/core/agent/findings/types.d.ts +3 -2
- package/dist/types/core/agent/findings/types.d.ts.map +1 -1
- package/dist/types/core/agent/scripts/attachment.d.ts +180 -0
- package/dist/types/core/agent/scripts/attachment.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/inert.d.ts +39 -0
- package/dist/types/core/agent/scripts/inert.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/judge.d.ts +37 -0
- package/dist/types/core/agent/scripts/judge.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/label.d.ts +104 -0
- package/dist/types/core/agent/scripts/label.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/match.d.ts +100 -0
- package/dist/types/core/agent/scripts/match.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/recovery.d.ts +55 -0
- package/dist/types/core/agent/scripts/recovery.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/rows.d.ts +144 -0
- package/dist/types/core/agent/scripts/rows.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/types.d.ts +92 -0
- package/dist/types/core/agent/scripts/types.d.ts.map +1 -0
- package/dist/types/core/agent/scripts/wrapper.d.ts +37 -0
- package/dist/types/core/agent/scripts/wrapper.d.ts.map +1 -0
- package/dist/types/core/agent/stages/argumentAsk.d.ts +4 -1
- package/dist/types/core/agent/stages/argumentAsk.d.ts.map +1 -1
- package/dist/types/core/agent/stages/evidenceRecheck.d.ts.map +1 -1
- package/dist/types/core/agent/stages/prepareFinal.d.ts +11 -0
- package/dist/types/core/agent/stages/prepareFinal.d.ts.map +1 -1
- package/dist/types/core/agent/stages/route.d.ts.map +1 -1
- package/dist/types/core/agent/stages/seed.d.ts.map +1 -1
- package/dist/types/core/agent/stages/toolCalls.d.ts +14 -0
- package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
- package/dist/types/core/agent/types.d.ts +41 -0
- package/dist/types/core/agent/types.d.ts.map +1 -1
- package/dist/types/core/codeRunnerTool.d.ts +23 -0
- package/dist/types/core/codeRunnerTool.d.ts.map +1 -1
- package/dist/types/core/runCheckpoint.d.ts.map +1 -1
- package/dist/types/events/payloads.d.ts +46 -1
- package/dist/types/events/payloads.d.ts.map +1 -1
- package/dist/types/hosting/answerAccounts.d.ts.map +1 -1
- package/dist/types/hosting/artifactWire.d.ts +3 -2
- package/dist/types/hosting/artifactWire.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lib/boundedJson.d.ts +24 -0
- package/dist/types/lib/boundedJson.d.ts.map +1 -1
- package/dist/types/lib/scriptRecord.d.ts +140 -0
- package/dist/types/lib/scriptRecord.d.ts.map +1 -0
- package/dist/types/lib/utf8.d.ts +37 -0
- package/dist/types/lib/utf8.d.ts.map +1 -0
- package/dist/types/mcp/toolExtras.d.ts +9 -0
- package/dist/types/mcp/toolExtras.d.ts.map +1 -1
- package/dist/types/redaction/conversation.d.ts.map +1 -1
- package/dist/types/redaction/knownStrings.d.ts.map +1 -1
- package/dist/types/semantics/coverage/answer.d.ts +12 -1
- package/dist/types/semantics/coverage/answer.d.ts.map +1 -1
- package/dist/types/tools/script.d.ts +86 -0
- package/dist/types/tools/script.d.ts.map +1 -0
- package/dist/types/tools/tools.d.ts +30 -0
- package/dist/types/tools/tools.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
*
|
|
32
32
|
* A call a paused batch never dispatched (9.113.0) lands as its two
|
|
33
33
|
* brackets, each carrying `notDispatched: { pausedCall: { toolCallId,
|
|
34
|
-
* toolName } }` and neither carrying `error` — identifiers only
|
|
35
|
-
*
|
|
36
|
-
* chained record therefore says the call never ran — neither that it
|
|
34
|
+
* toolName } }` and neither carrying `error` — identifiers only. Bounded mode
|
|
35
|
+
* checks each field by its declared shape; verbatim mode sanitizes the payload.
|
|
36
|
+
* The chained record therefore says the call never ran — neither that it
|
|
37
37
|
* succeeded nor that it failed; the bounded `result` (`[type: string]`) never
|
|
38
38
|
* had to say it.
|
|
39
39
|
*
|
|
@@ -67,14 +67,25 @@
|
|
|
67
67
|
*
|
|
68
68
|
* ## PII discipline (mirrors #19's otelObservability)
|
|
69
69
|
*
|
|
70
|
-
* Payloads enter records through a bounding layer
|
|
71
|
-
*
|
|
72
|
-
*
|
|
70
|
+
* Payloads enter records through a bounding layer: every registered event
|
|
71
|
+
* has a shape that names every field of its payload (`auditShapes.ts`, total
|
|
72
|
+
* over the event registry and exhaustive by type, built from the combinators
|
|
73
|
+
* in `auditBounding.ts`). In the default `payloadMode: 'bounded'` a record
|
|
74
|
+
* payload keeps the run's STRUCTURE and never its CONTENT — every string or
|
|
75
|
+
* value the run composed from what it read or produced, whoever wrote it —
|
|
76
|
+
* except what is named below under "What a bounded record still carries".
|
|
77
|
+
* Bounding is CLOSED by default: a field a shape does not name, a value that
|
|
78
|
+
* is not the declared shape, and every field of an event type the registry
|
|
79
|
+
* does not declare (a consumer's own `emit`), is a marker. Some of what that
|
|
80
|
+
* bounds:
|
|
73
81
|
*
|
|
74
82
|
* - tool args → `'[keys: …]'` (top-level key NAMES only);
|
|
75
83
|
* `tool_end`'s `changedArgKeys` is names already
|
|
76
84
|
* - tool results → `'[type: …]'` (typeof only) — `result` and,
|
|
77
85
|
* when a rule changed it, `modelResult` alike
|
|
86
|
+
* - an attached script's program (`turn_end.scripts.shown[].text`)
|
|
87
|
+
* → `'[N chars]'`; checked labels, ids, counts and
|
|
88
|
+
* rendering-boundary flags retain their shapes
|
|
78
89
|
* - an evaluation's `explanation` → `'[N chars]'` (a judge's reason can
|
|
79
90
|
* quote the answer it graded)
|
|
80
91
|
* - userPrompt / LLM content / thinking blocks / history
|
|
@@ -87,13 +98,58 @@
|
|
|
87
98
|
* `rawOutput`) → `'[N chars]'` (messages can echo values)
|
|
88
99
|
* - free-form Records (`questionPayload`, `resumeInput`, risk/eval
|
|
89
100
|
* `evidence`, memory `scoreEvidence`) → `'[keys: …]'`
|
|
101
|
+
* - a typed answer's limits and negatives on `turn_end` (`answerCoverage`,
|
|
102
|
+
* `answerNegatives`) → the same shape, every sentence and value a
|
|
103
|
+
* `'[N chars]'` marker: a coverage item's `what` / `why` / `short`, a
|
|
104
|
+
* declared period's instants, an in-progress item's prose, an assumed
|
|
105
|
+
* `value`, a negative's `statement` and `about`. The tool and argument
|
|
106
|
+
* names, call ids, counts, kinds, codes and verdicts stay; a field the
|
|
107
|
+
* shape does not name is a marker too, so one added later is bounded
|
|
108
|
+
* until it is classified
|
|
109
|
+
* - every other event whose content sits beside structure keeps its
|
|
110
|
+
* shape, each content leaf a marker: a tool's absence, coverage
|
|
111
|
+
* and described-result words and data (`tools.absent`,
|
|
112
|
+
* `tools.coverage_declared`, `tools.semantics_declared`), the evidence
|
|
113
|
+
* gate's values, an external ground's value, the message text a routing
|
|
114
|
+
* match quotes (`map.engaged`, `map.parked`, `skill.turn_routed`,
|
|
115
|
+
* `context.evaluated`), a validation issue's quoted value, parser and
|
|
116
|
+
* fallback messages and previews, a tool's progress payload and a
|
|
117
|
+
* check-in's evidence pack, a person's note, a middleware's reason or
|
|
118
|
+
* question, the model's own words (`skill.step_skipped`, `agent.handoff`),
|
|
119
|
+
* the opt-in assembled system prompt, a retrieved passage's heading, an
|
|
120
|
+
* integrity finding's witnessed values and message, a tool effect's
|
|
121
|
+
* reason, a pause's own reason, an artifact's label and refusal detail, a
|
|
122
|
+
* fail-fast reason, a check's `rationale` and `tellLLM`, a fallback's or a
|
|
123
|
+
* credential failure's message, and a router's own reason
|
|
90
124
|
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
95
|
-
*
|
|
96
|
-
*
|
|
125
|
+
* What the shapes keep is checked structure: a number, boolean or string
|
|
126
|
+
* must arrive as that kind, and a closed enum must be one of its declared
|
|
127
|
+
* words. Every container is classified field by field, even if its declared
|
|
128
|
+
* type contains only counts. Unknown children and wrong kinds are markers.
|
|
129
|
+
* Strings are capped at 256 characters and lists at 32 items. This retains
|
|
130
|
+
* ids, names, kinds, codes, telemetry tags, verdicts, counts, library times
|
|
131
|
+
* and the words the app declared up front (labels, descriptions, step notes,
|
|
132
|
+
* hints, display names, rule ids). The type walker and runtime damage sweep
|
|
133
|
+
* check both halves; `auditKeptByContract.ts` names the exceptions below.
|
|
134
|
+
*
|
|
135
|
+
* What a bounded record still carries, by contract:
|
|
136
|
+
*
|
|
137
|
+
* - each record's `meta`: run and stage ids, paths, turn and iteration
|
|
138
|
+
* indices and — when the caller named them — `sessionId`, `principal`
|
|
139
|
+
* and `tenant`, the who of an audit record;
|
|
140
|
+
* - decision evidence as the engine summarized it: `decide()` evidence on
|
|
141
|
+
* `composition.route_decided` and a skill guard's conditions on
|
|
142
|
+
* `context.evaluated` — rule labels, operators, thresholds and a summary
|
|
143
|
+
* of each value a rule read. It is redaction-aware (under an agent's
|
|
144
|
+
* `redact` a selected key is the placeholder); otherwise the summary
|
|
145
|
+
* shows the value;
|
|
146
|
+
* - a policy's telemetry `reason` tag, and the reason word an app attaches
|
|
147
|
+
* to a lifecycle event it emits itself (`skill.deactivated`,
|
|
148
|
+
* `tools.offered`, `permission.gate_closed`): the app's own words, as
|
|
149
|
+
* written — an app that writes a run's value into one carries it;
|
|
150
|
+
* - a `tryInsteadTool` name, only once this strategy has seen that tool run.
|
|
151
|
+
*
|
|
152
|
+
* Sanitizing caps a string's length; it does not hide what the string says.
|
|
97
153
|
*
|
|
98
154
|
* `payloadMode: 'verbatim'` embeds full payloads (still
|
|
99
155
|
* JSON-sanitized). For Art. 12 completeness on an access-controlled
|
|
@@ -149,7 +205,8 @@
|
|
|
149
205
|
import { canonicalJson, CANONICAL_JSON_VERSION } from '../../lib/canonicalJson.js';
|
|
150
206
|
import { lazyRequire } from '../../lib/lazyRequire.js';
|
|
151
207
|
import { libraryVersion } from '../../lib/libraryVersion.js';
|
|
152
|
-
import {
|
|
208
|
+
import { blocksMarker, charsMarker, createToolRunTracker, keysMarker, messagesMarker, sanitizeJson, summariesMarker, typeMarker, unknownEventShape, } from './auditBounding.js';
|
|
209
|
+
import { boundAnswerCoverage, boundAnswerNegatives, boundMeta, boundScripts, eventShapeTable, } from './auditShapes.js';
|
|
153
210
|
// ─── Public types ─────────────────────────────────────────────────────
|
|
154
211
|
/** SHA-256 of "nothing" — the `prevHash` of the first record in a
|
|
155
212
|
* chain and the `chainHead` of a chain's first segment. */
|
|
@@ -180,123 +237,43 @@ function resolveCrypto() {
|
|
|
180
237
|
function sha256Hex(text) {
|
|
181
238
|
return resolveCrypto().createHash('sha256').update(text, 'utf8').digest('hex');
|
|
182
239
|
}
|
|
183
|
-
// ─── JSON sanitization (both modes) ──────────────────────────────────
|
|
184
|
-
/** Caps mirror otel.ts's bounding discipline (defense-in-depth — the
|
|
185
|
-
* registry payloads are mostly bounded upstream). */
|
|
186
|
-
const MAX_STRING_CHARS = 256;
|
|
187
|
-
const MAX_LIST_ITEMS = 32;
|
|
188
|
-
const MAX_DEPTH = 8;
|
|
189
|
-
/**
|
|
190
|
-
* Convert any value to a JSON-safe, size-bounded tree:
|
|
191
|
-
* strings capped, arrays capped with an overflow marker, cycles
|
|
192
|
-
* broken, depth capped, Date → ISO, bigint → string, non-finite →
|
|
193
|
-
* null, functions/symbols/undefined dropped (objects) or null
|
|
194
|
-
* (arrays). Output always canonicalizes without throwing.
|
|
195
|
-
*/
|
|
196
|
-
function sanitizeJson(value, depth = 0, seen = new Set()) {
|
|
197
|
-
if (value === null)
|
|
198
|
-
return null;
|
|
199
|
-
switch (typeof value) {
|
|
200
|
-
case 'string':
|
|
201
|
-
return value.length > MAX_STRING_CHARS ? `${value.slice(0, MAX_STRING_CHARS - 1)}…` : value;
|
|
202
|
-
case 'number':
|
|
203
|
-
return Number.isFinite(value) ? value : null;
|
|
204
|
-
case 'boolean':
|
|
205
|
-
return value;
|
|
206
|
-
case 'bigint':
|
|
207
|
-
return String(value);
|
|
208
|
-
case 'undefined':
|
|
209
|
-
case 'function':
|
|
210
|
-
case 'symbol':
|
|
211
|
-
return undefined;
|
|
212
|
-
default:
|
|
213
|
-
break;
|
|
214
|
-
}
|
|
215
|
-
const obj = value;
|
|
216
|
-
if (obj instanceof Date)
|
|
217
|
-
return obj.toISOString();
|
|
218
|
-
// The wire rule (`lib/wireJson.ts`): name, message, code, cause — never an
|
|
219
|
-
// Error's custom properties (an axios error's request headers).
|
|
220
|
-
if (isErrorValue(obj))
|
|
221
|
-
return sanitizeJson(wireError(obj), depth, seen);
|
|
222
|
-
if (depth >= MAX_DEPTH)
|
|
223
|
-
return '[truncated: depth]';
|
|
224
|
-
if (seen.has(obj))
|
|
225
|
-
return '[circular]';
|
|
226
|
-
seen.add(obj);
|
|
227
|
-
try {
|
|
228
|
-
if (Array.isArray(obj)) {
|
|
229
|
-
const capped = obj.slice(0, MAX_LIST_ITEMS).map((item) => {
|
|
230
|
-
const sanitized = sanitizeJson(item, depth + 1, seen);
|
|
231
|
-
return sanitized === undefined ? null : sanitized;
|
|
232
|
-
});
|
|
233
|
-
if (obj.length > MAX_LIST_ITEMS)
|
|
234
|
-
capped.push(`…+${obj.length - MAX_LIST_ITEMS} more`);
|
|
235
|
-
return capped;
|
|
236
|
-
}
|
|
237
|
-
const out = {};
|
|
238
|
-
for (const [key, entry] of Object.entries(obj)) {
|
|
239
|
-
const sanitized = sanitizeJson(entry, depth + 1, seen);
|
|
240
|
-
if (sanitized !== undefined)
|
|
241
|
-
out[key] = sanitized;
|
|
242
|
-
}
|
|
243
|
-
return out;
|
|
244
|
-
}
|
|
245
|
-
finally {
|
|
246
|
-
seen.delete(obj);
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
240
|
// ─── Bounding layer (payloadMode: 'bounded') ─────────────────────────
|
|
250
|
-
/** `'[23 chars]'` — length evidence without content. */
|
|
251
|
-
function charsMarker(value) {
|
|
252
|
-
return typeof value === 'string' ? `[${value.length} chars]` : `[type: ${typeofOf(value)}]`;
|
|
253
|
-
}
|
|
254
|
-
/** `'[keys: a, b, c]'` — shape evidence for free-form Records. */
|
|
255
|
-
function keysMarker(value) {
|
|
256
|
-
if (value === null || typeof value !== 'object')
|
|
257
|
-
return `[type: ${typeofOf(value)}]`;
|
|
258
|
-
const keys = Object.keys(value).slice(0, MAX_LIST_ITEMS);
|
|
259
|
-
return `[keys: ${keys.join(', ')}]`;
|
|
260
|
-
}
|
|
261
|
-
function typeofOf(value) {
|
|
262
|
-
return value === null ? 'null' : typeof value;
|
|
263
|
-
}
|
|
264
241
|
/**
|
|
265
|
-
*
|
|
266
|
-
*
|
|
267
|
-
*
|
|
268
|
-
*
|
|
242
|
+
* The conversation fields the bounded mode replaces WHOLE, per event type — a
|
|
243
|
+
* DECLARATION. Bounding itself is every event's shape (`auditShapes.ts` ·
|
|
244
|
+
* `eventShapes`), which applies these same rule functions to these same fields
|
|
245
|
+
* (pinned by `test/type-regressions/AuditBoundingDepth.test.ts`); this table
|
|
246
|
+
* names them so the redaction vocabulary can be pinned against them
|
|
247
|
+
* (`boundedContentFieldNames`).
|
|
269
248
|
*/
|
|
270
249
|
const BOUND_FIELDS = {
|
|
271
250
|
'agentfootprint.agent.turn_start': { userPrompt: charsMarker },
|
|
272
|
-
'
|
|
273
|
-
'
|
|
274
|
-
|
|
251
|
+
// A typed answer's limits and negatives hold tool-written sentences, assumed
|
|
252
|
+
// values and the populations a search covered BESIDE the record's own words:
|
|
253
|
+
// each is bounded at its content leaves and keeps its shape.
|
|
254
|
+
'agentfootprint.agent.turn_end': {
|
|
255
|
+
finalContent: charsMarker,
|
|
256
|
+
answerCoverage: boundAnswerCoverage,
|
|
257
|
+
answerNegatives: boundAnswerNegatives,
|
|
275
258
|
},
|
|
259
|
+
'agentfootprint.agent.iteration_end': { history: messagesMarker },
|
|
276
260
|
'agentfootprint.agent.output_schema_validation_failed': { rawOutput: charsMarker },
|
|
277
261
|
'agentfootprint.stream.llm_end': { content: charsMarker },
|
|
278
262
|
'agentfootprint.stream.token': { content: charsMarker },
|
|
279
263
|
'agentfootprint.stream.thinking_delta': { content: charsMarker },
|
|
280
|
-
'agentfootprint.stream.thinking_end': {
|
|
281
|
-
blocks: (v) => (Array.isArray(v) ? `[${v.length} blocks]` : charsMarker(v)),
|
|
282
|
-
},
|
|
264
|
+
'agentfootprint.stream.thinking_end': { blocks: blocksMarker },
|
|
283
265
|
'agentfootprint.stream.tool_start': { args: keysMarker },
|
|
284
266
|
// `modelResult` (what a rule let the model read, or the envelope without
|
|
285
267
|
// its record-only `short` / `kind`) is the same content as `result`, from
|
|
286
268
|
// the other side of a rule or that strip — bounded the same way.
|
|
287
269
|
// `changedArgKeys` is names only and rides verbatim, like `args`' keys.
|
|
288
|
-
'agentfootprint.stream.tool_end': {
|
|
289
|
-
result: (v) => `[type: ${typeofOf(v)}]`,
|
|
290
|
-
modelResult: (v) => `[type: ${typeofOf(v)}]`,
|
|
291
|
-
},
|
|
270
|
+
'agentfootprint.stream.tool_end': { result: typeMarker, modelResult: typeMarker },
|
|
292
271
|
// contentSummary is a raw-content PREVIEW (not a redacted summary) —
|
|
293
272
|
// for short content it IS the content, so it is bounded like content.
|
|
294
273
|
// `contentHash` stays verbatim: it links identical injections across
|
|
295
274
|
// records without echoing a byte of them.
|
|
296
275
|
'agentfootprint.context.injected': { rawContent: charsMarker, contentSummary: charsMarker },
|
|
297
|
-
'agentfootprint.context.slot_composed': {
|
|
298
|
-
droppedSummaries: (v) => (Array.isArray(v) ? `[${v.length} summaries]` : charsMarker(v)),
|
|
299
|
-
},
|
|
276
|
+
'agentfootprint.context.slot_composed': { droppedSummaries: summariesMarker },
|
|
300
277
|
'agentfootprint.composition.merge_end': { resultSummary: charsMarker },
|
|
301
278
|
'agentfootprint.memory.attached': { contentSummary: charsMarker },
|
|
302
279
|
'agentfootprint.memory.written': { contentSummary: charsMarker },
|
|
@@ -320,31 +297,26 @@ const BOUND_FIELDS = {
|
|
|
320
297
|
export function boundedContentFieldNames() {
|
|
321
298
|
return [...new Set(Object.values(BOUND_FIELDS).flatMap((rules) => Object.keys(rules)))];
|
|
322
299
|
}
|
|
323
|
-
/**
|
|
324
|
-
*
|
|
325
|
-
*
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
const sanitized = sanitizeJson(value);
|
|
344
|
-
if (sanitized !== undefined)
|
|
345
|
-
out[key] = sanitized;
|
|
346
|
-
}
|
|
347
|
-
return out;
|
|
300
|
+
/**
|
|
301
|
+
* The rules `BOUND_FIELDS` declares, by event type and field — what the pin
|
|
302
|
+
* holds every event's shape to.
|
|
303
|
+
*
|
|
304
|
+
* @internal
|
|
305
|
+
*/
|
|
306
|
+
export function boundedFieldRules() {
|
|
307
|
+
return BOUND_FIELDS;
|
|
308
|
+
}
|
|
309
|
+
/** Content leaves inside a field that also carries labels, ids and counts.
|
|
310
|
+
* The function is the same rule the event shape applies, never a second sanitizer. */
|
|
311
|
+
const BOUND_LEAVES = {
|
|
312
|
+
'agentfootprint.agent.turn_end': {
|
|
313
|
+
scripts: { bound: boundScripts, leaves: ['shown[].text'] },
|
|
314
|
+
},
|
|
315
|
+
};
|
|
316
|
+
/** The bounded content leaves, pinned against the redaction vocabulary's value-kind rule.
|
|
317
|
+
* @internal */
|
|
318
|
+
export function boundedContentLeaves() {
|
|
319
|
+
return Object.entries(BOUND_LEAVES).flatMap(([eventType, fields]) => Object.entries(fields).flatMap(([field, rule]) => rule.leaves.map((leaf) => `${eventType} · ${field}.${leaf}`)));
|
|
348
320
|
}
|
|
349
321
|
// ─── Strategy factory ────────────────────────────────────────────────
|
|
350
322
|
/** Excluded by default — high-volume content deltas. */
|
|
@@ -364,6 +336,25 @@ export function auditExport(opts = {}) {
|
|
|
364
336
|
let retained = [];
|
|
365
337
|
const seenRunIds = new Set();
|
|
366
338
|
let stopped = false;
|
|
339
|
+
// Bounded mode: the tools this strategy has seen run (a `tryInsteadTool`
|
|
340
|
+
// name is kept only for one of them) and the whole-event shapes — a `Map`,
|
|
341
|
+
// because an event's name is the emitter's to choose.
|
|
342
|
+
const toolRuns = createToolRunTracker();
|
|
343
|
+
const shapes = eventShapeTable(toolRuns.ran);
|
|
344
|
+
/** An event's payload in bounded mode: its shape — closed by default, an
|
|
345
|
+
* event type the registry does not declare (any name at all) included. */
|
|
346
|
+
function boundEvent(eventType, payload) {
|
|
347
|
+
const shape = shapes.get(eventType) ?? unknownEventShape;
|
|
348
|
+
return shape(payload);
|
|
349
|
+
}
|
|
350
|
+
/** A record's meta: its shape in bounded mode (`EventMeta`, each field
|
|
351
|
+
* checked), sanitized in verbatim mode; anything but an object, none. */
|
|
352
|
+
function recordMetaOf(metaRest) {
|
|
353
|
+
const bounded = payloadMode === 'bounded' ? boundMeta(metaRest) : sanitizeJson(metaRest);
|
|
354
|
+
return bounded !== null && typeof bounded === 'object' && !Array.isArray(bounded)
|
|
355
|
+
? bounded
|
|
356
|
+
: {};
|
|
357
|
+
}
|
|
367
358
|
function append(eventType, timestamp, payload, meta) {
|
|
368
359
|
const preimage = { seq: nextSeq, timestamp, eventType, payload, meta, prevHash: lastHash };
|
|
369
360
|
const hash = sha256Hex(canonicalJson(preimage));
|
|
@@ -419,16 +410,15 @@ export function auditExport(opts = {}) {
|
|
|
419
410
|
seenRunIds.add(runId);
|
|
420
411
|
appendGenesis(runId, timestamp);
|
|
421
412
|
}
|
|
422
|
-
// wallClockMs lives on `timestamp`; the rest of the meta rides
|
|
423
|
-
//
|
|
413
|
+
// wallClockMs lives on `timestamp`; the rest of the meta rides along
|
|
414
|
+
// (runtimeStageId, paths, turn/iter indices, …) — by its shape in bounded
|
|
415
|
+
// mode, sanitized in verbatim mode.
|
|
424
416
|
const { wallClockMs: _lifted, ...metaRest } = meta ?? {};
|
|
425
417
|
void _lifted;
|
|
426
|
-
const recordMeta = {
|
|
427
|
-
|
|
428
|
-
runId,
|
|
429
|
-
};
|
|
418
|
+
const recordMeta = { ...recordMetaOf(metaRest), runId };
|
|
419
|
+
toolRuns.observe(event.type, event.payload);
|
|
430
420
|
const payload = payloadMode === 'bounded'
|
|
431
|
-
?
|
|
421
|
+
? boundEvent(event.type, event.payload)
|
|
432
422
|
: sanitizeJson(event.payload);
|
|
433
423
|
append(event.type, timestamp, payload, recordMeta);
|
|
434
424
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../../../src/adapters/observability/audit.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../../../src/adapters/observability/audit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* auditBounding — HOW the audit chain's bounded mode bounds a value: the
|
|
3
|
+
* markers, the sanitizer, the leaves and the combinators every shape is built
|
|
4
|
+
* from (`auditShapes.ts` says WHAT each event keeps; `auditKeptByContract.ts`
|
|
5
|
+
* names what a record keeps although it may carry a run's value).
|
|
6
|
+
*
|
|
7
|
+
* Pattern: small pure rules composed into shapes; every rule records what it is
|
|
8
|
+
* (`ruleKind`), so a test can walk a shape beside the type it bounds
|
|
9
|
+
* and hand every rule what its kind forbids.
|
|
10
|
+
* Role: the bounding layer `auditExport({ payloadMode: 'bounded' })` runs
|
|
11
|
+
* every payload and every record's meta through (`audit.ts`). No I/O,
|
|
12
|
+
* no clock.
|
|
13
|
+
* Emits: N/A.
|
|
14
|
+
*
|
|
15
|
+
* THE RULE, the one `otel.ts` maps spans by: **structure is kept, content is
|
|
16
|
+
* a marker**, bounding is CLOSED by default, and every kept value is CHECKED:
|
|
17
|
+
*
|
|
18
|
+
* - Every registered event has a shape that names every field of its
|
|
19
|
+
* payload type (`shapeOf` is exhaustive by type: a field added to a
|
|
20
|
+
* payload does not compile until it is classified).
|
|
21
|
+
* - A field a shape does not name, a value that is not the declared shape,
|
|
22
|
+
* and every field of an event type the registry does not declare, is a
|
|
23
|
+
* marker.
|
|
24
|
+
* - A type says what a field holds; it cannot say what ARRIVES. So nothing is
|
|
25
|
+
* kept on a type's word: a kept leaf checks at runtime the kind its type
|
|
26
|
+
* promises — `num` a number, `bool` a boolean, `str` a string, `oneOf` one
|
|
27
|
+
* of the words it lists — and anything else is a marker. No container is
|
|
28
|
+
* kept whole: an object is a `shapeOf` (or a `recordOf`), a list a
|
|
29
|
+
* `listOf`, every child ruled, so a child the type does not declare is a
|
|
30
|
+
* marker however it got there (structural typing lets an object carry one).
|
|
31
|
+
* The type walker (`test/type-regressions/AuditBoundingDepth.test.ts`)
|
|
32
|
+
* holds every rule to the type beneath it; the runtime sweep
|
|
33
|
+
* (`test/observability-providers/audit-bounded-sweep.test.ts`) hands every
|
|
34
|
+
* rule what its kind forbids.
|
|
35
|
+
* - Names are data. A key is kept as an own key of the record, whatever it is
|
|
36
|
+
* (a name `Object.prototype` holds included: an assignment would drop
|
|
37
|
+
* `__proto__`, or re-prototype the record), and no rule table is ever asked
|
|
38
|
+
* for a name it merely inherits.
|
|
39
|
+
*
|
|
40
|
+
* Content becomes `'[N chars]'` (a string), `'[type: …]'` (anything else),
|
|
41
|
+
* `'[keys: …]'` (a free-form record: its key names, never its values), or a
|
|
42
|
+
* count (`'[N messages]'`, `'[N blocks]'`, `'[N summaries]'`). A kept string is
|
|
43
|
+
* capped at 256 characters, a list at 32 items.
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* Convert any value to a JSON-safe, size-bounded tree:
|
|
47
|
+
* strings capped, arrays capped with an overflow marker, cycles
|
|
48
|
+
* broken, depth capped, Date → ISO, bigint → string, non-finite →
|
|
49
|
+
* null, functions/symbols/undefined dropped (objects) or null
|
|
50
|
+
* (arrays). Every key an own key. Output always canonicalizes without
|
|
51
|
+
* throwing.
|
|
52
|
+
*/
|
|
53
|
+
export declare function sanitizeJson(value: unknown, depth?: number, seen?: Set<object>): unknown;
|
|
54
|
+
/** How the bounded mode writes one value. */
|
|
55
|
+
export type BoundRule = (value: unknown) => unknown;
|
|
56
|
+
/** The kind of a value, as a rule checks it at runtime. */
|
|
57
|
+
export type ValueKind = 'string' | 'number' | 'boolean' | 'null' | 'array' | 'object';
|
|
58
|
+
/** A value's kind — `undefined` for one JSON has no word for (a function, a symbol, a bigint). */
|
|
59
|
+
export declare function valueKindOf(value: unknown): ValueKind | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* What a rule is, so a test can walk a shape beside the type it bounds and
|
|
62
|
+
* hand each rule what its kind forbids. Every rule this module builds has one;
|
|
63
|
+
* a function it did not build has none, and the walkers refuse it.
|
|
64
|
+
*/
|
|
65
|
+
export type RuleKind =
|
|
66
|
+
/** Keeps nothing of the value: its length, its key names, its type or its count. */
|
|
67
|
+
{
|
|
68
|
+
readonly kind: 'marker';
|
|
69
|
+
readonly marks: 'chars' | 'keys' | 'type' | 'count';
|
|
70
|
+
}
|
|
71
|
+
/** Keeps a value of this one kind (a string capped); anything else is a marker. */
|
|
72
|
+
| {
|
|
73
|
+
readonly kind: 'leaf';
|
|
74
|
+
readonly accepts: 'number' | 'boolean' | 'string';
|
|
75
|
+
}
|
|
76
|
+
/** Keeps a value that is one of these words; anything else is a marker. */
|
|
77
|
+
| {
|
|
78
|
+
readonly kind: 'oneOf';
|
|
79
|
+
readonly values: ReadonlySet<string | number | boolean>;
|
|
80
|
+
}
|
|
81
|
+
/** An object: each named field by its rule, any other field a marker. */
|
|
82
|
+
| {
|
|
83
|
+
readonly kind: 'shape';
|
|
84
|
+
readonly fields: ReadonlyMap<string, BoundRule>;
|
|
85
|
+
}
|
|
86
|
+
/** A list: each item by the rule. */
|
|
87
|
+
| {
|
|
88
|
+
readonly kind: 'list';
|
|
89
|
+
readonly item: BoundRule;
|
|
90
|
+
}
|
|
91
|
+
/** An object with open keys: every key kept, every value by the rule. */
|
|
92
|
+
| {
|
|
93
|
+
readonly kind: 'record';
|
|
94
|
+
readonly value: BoundRule;
|
|
95
|
+
}
|
|
96
|
+
/** One value or a list of them, each by the rule. */
|
|
97
|
+
| {
|
|
98
|
+
readonly kind: 'orList';
|
|
99
|
+
readonly item: BoundRule;
|
|
100
|
+
}
|
|
101
|
+
/** `null` kept; anything else by the rule. */
|
|
102
|
+
| {
|
|
103
|
+
readonly kind: 'nullOr';
|
|
104
|
+
readonly inner: BoundRule;
|
|
105
|
+
}
|
|
106
|
+
/** The first alternative that accepts the value's kind; none, a marker. */
|
|
107
|
+
| {
|
|
108
|
+
readonly kind: 'either';
|
|
109
|
+
readonly alternatives: readonly BoundRule[];
|
|
110
|
+
}
|
|
111
|
+
/** One rule or another, by a test of the value — the reason written down. */
|
|
112
|
+
| {
|
|
113
|
+
readonly kind: 'when';
|
|
114
|
+
readonly why: string;
|
|
115
|
+
readonly then: BoundRule;
|
|
116
|
+
readonly otherwise: BoundRule;
|
|
117
|
+
}
|
|
118
|
+
/** A position the record keeps although it may carry a run's value — named (`auditKeptByContract.ts`). */
|
|
119
|
+
| {
|
|
120
|
+
readonly kind: 'byContract';
|
|
121
|
+
readonly exception: string;
|
|
122
|
+
readonly inner: BoundRule;
|
|
123
|
+
};
|
|
124
|
+
/** What a rule is — `undefined` only for a function this module did not build. */
|
|
125
|
+
export declare function ruleKind(rule: BoundRule): RuleKind | undefined;
|
|
126
|
+
/**
|
|
127
|
+
* The value kinds a rule KEEPS something of at its own position — what
|
|
128
|
+
* `either` dispatches on. A marker accepts none: it keeps nothing of any value.
|
|
129
|
+
*
|
|
130
|
+
* @internal
|
|
131
|
+
*/
|
|
132
|
+
export declare function acceptedKinds(rule: BoundRule): ReadonlySet<ValueKind>;
|
|
133
|
+
export declare function typeofOf(value: unknown): string;
|
|
134
|
+
/** `'[23 chars]'` — length evidence without content. */
|
|
135
|
+
export declare function charsMarker(value: unknown): string;
|
|
136
|
+
/** `'[keys: a, b, c]'` — shape evidence for free-form Records. */
|
|
137
|
+
export declare function keysMarker(value: unknown): string;
|
|
138
|
+
/** `'[type: object]'` — what kind of value, nothing of it (a tool's result). */
|
|
139
|
+
export declare const typeMarker: BoundRule;
|
|
140
|
+
/** `'[3 messages]'` — a conversation's history. */
|
|
141
|
+
export declare const messagesMarker: BoundRule;
|
|
142
|
+
/** `'[2 blocks]'` — the model's thinking blocks. */
|
|
143
|
+
export declare const blocksMarker: BoundRule;
|
|
144
|
+
/** `'[4 summaries]'` — the previews of what a slot dropped. */
|
|
145
|
+
export declare const summariesMarker: BoundRule;
|
|
146
|
+
/** A count, a duration, a score, an index: kept when it IS a number (non-finite as `null`). */
|
|
147
|
+
export declare const num: BoundRule;
|
|
148
|
+
/** A flag or a verdict: kept when it IS a boolean. */
|
|
149
|
+
export declare const bool: BoundRule;
|
|
150
|
+
/**
|
|
151
|
+
* The record's own word — an id, a name, a code, a label the app declared: kept
|
|
152
|
+
* when it IS a string, capped. Where the type is a closed union of words, use
|
|
153
|
+
* `oneOf`, which keeps only those words.
|
|
154
|
+
*/
|
|
155
|
+
export declare const str: BoundRule;
|
|
156
|
+
/**
|
|
157
|
+
* One of the listed words (or numbers, or booleans): kept when the value IS one
|
|
158
|
+
* of them — so what it keeps is always a word this table wrote. Anything else
|
|
159
|
+
* is a marker.
|
|
160
|
+
*/
|
|
161
|
+
export declare function oneOf(...values: readonly (string | number | boolean)[]): BoundRule;
|
|
162
|
+
/**
|
|
163
|
+
* Every key of `T` — of EVERY member when `T` is a union. `keyof` of a union is
|
|
164
|
+
* only the keys all members share, so a field one member alone carries would
|
|
165
|
+
* escape the shape's exhaustiveness.
|
|
166
|
+
*/
|
|
167
|
+
export type AnyKeyOf<T> = T extends unknown ? keyof T : never;
|
|
168
|
+
/**
|
|
169
|
+
* An object of a known shape, every field ruled (exhaustive by type, so a field
|
|
170
|
+
* added to `T` does not compile until it is). A field the rules do not name is
|
|
171
|
+
* a marker: whatever the value carries at runtime is bounded until someone
|
|
172
|
+
* decides it is the record's own words. Anything but an object is a marker too.
|
|
173
|
+
*/
|
|
174
|
+
export declare function shapeOf<T>(rules: {
|
|
175
|
+
readonly [K in AnyKeyOf<T>]-?: BoundRule;
|
|
176
|
+
}): BoundRule;
|
|
177
|
+
/** A list: each entry by `rule`, capped at 32 like every list. Anything else is a marker. */
|
|
178
|
+
export declare function listOf(rule: BoundRule): BoundRule;
|
|
179
|
+
/** A map with open keys: every key kept (a key is a name), every value by `rule`. Anything else is a marker. */
|
|
180
|
+
export declare function recordOf(rule: BoundRule): BoundRule;
|
|
181
|
+
/** One value, or a list of them, each by `rule` — a guard's declared value is either. */
|
|
182
|
+
export declare function orList(rule: BoundRule): BoundRule;
|
|
183
|
+
/** `null` stays `null` (a declared "none"); anything else by `rule`. */
|
|
184
|
+
export declare function nullOr(rule: BoundRule): BoundRule;
|
|
185
|
+
/**
|
|
186
|
+
* A value of one of several kinds — a library word or a window, a facet word or
|
|
187
|
+
* a filter: the first alternative that accepts the value's kind bounds it. A
|
|
188
|
+
* value no alternative accepts is a marker.
|
|
189
|
+
*/
|
|
190
|
+
export declare function either(...alternatives: readonly BoundRule[]): BoundRule;
|
|
191
|
+
/**
|
|
192
|
+
* One rule or another, by a test of the value itself, the reason written down —
|
|
193
|
+
* the few places a field is structure only for some values (a name this
|
|
194
|
+
* strategy has seen run, the engine's own decision evidence).
|
|
195
|
+
*/
|
|
196
|
+
export declare function when(why: string, test: (value: unknown) => boolean, then: BoundRule, otherwise: BoundRule): BoundRule;
|
|
197
|
+
/**
|
|
198
|
+
* A position a bounded record keeps although its value may come from the run —
|
|
199
|
+
* one of the exceptions `auditKeptByContract.ts` names, in one place. The rule
|
|
200
|
+
* inside still checks the value like every other: an exception keeps a value of
|
|
201
|
+
* its declared kind, never whatever arrives.
|
|
202
|
+
*/
|
|
203
|
+
export declare function byContract(exception: string, rule: BoundRule): BoundRule;
|
|
204
|
+
/** An event type the registry does not declare (a consumer's own `emit`): every field a marker. */
|
|
205
|
+
export declare const unknownEventShape: BoundRule;
|
|
206
|
+
/**
|
|
207
|
+
* Tool names this strategy has seen RUN — a `stream.tool_end` without `error`,
|
|
208
|
+
* `notExecuted` or `notDispatched`, matched to its `tool_start` by
|
|
209
|
+
* `toolCallId` — so a tool this agent holds, by construction. What a
|
|
210
|
+
* `tryInsteadTool` name is recognized against (`otel.ts` keeps the same set).
|
|
211
|
+
*/
|
|
212
|
+
export declare function createToolRunTracker(): {
|
|
213
|
+
observe(type: string, payload: unknown): void;
|
|
214
|
+
ran(name: string): boolean;
|
|
215
|
+
};
|