@reticlehq/server 2.1.0 → 2.2.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/LICENSE-ENTERPRISE +37 -0
- package/README.md +5 -1
- package/dist/bridge-security.d.ts +1 -1
- package/dist/bridge-security.js +1 -1
- package/dist/bridge.d.ts +7 -0
- package/dist/bridge.d.ts.map +1 -1
- package/dist/bridge.js +22 -3
- package/dist/bridge.js.map +1 -1
- package/dist/bridge.test-harness.d.ts +5 -0
- package/dist/bridge.test-harness.d.ts.map +1 -1
- package/dist/bridge.test-harness.js +4 -0
- package/dist/bridge.test-harness.js.map +1 -1
- package/dist/capsule/capsule-store.d.ts +66 -0
- package/dist/capsule/capsule-store.d.ts.map +1 -0
- package/dist/capsule/capsule-store.js +110 -0
- package/dist/capsule/capsule-store.js.map +1 -0
- package/dist/capsule/capsule.d.ts +19 -0
- package/dist/capsule/capsule.d.ts.map +1 -0
- package/dist/capsule/capsule.js +36 -0
- package/dist/capsule/capsule.js.map +1 -0
- package/dist/capsule/causal-summary.d.ts +36 -0
- package/dist/capsule/causal-summary.d.ts.map +1 -0
- package/dist/capsule/causal-summary.js +111 -0
- package/dist/capsule/causal-summary.js.map +1 -0
- package/dist/capsule/divergence.d.ts +31 -0
- package/dist/capsule/divergence.d.ts.map +1 -0
- package/dist/capsule/divergence.js +41 -0
- package/dist/capsule/divergence.js.map +1 -0
- package/dist/capsule/minimize.d.ts +13 -0
- package/dist/capsule/minimize.d.ts.map +1 -0
- package/dist/capsule/minimize.js +23 -0
- package/dist/capsule/minimize.js.map +1 -0
- package/dist/capsule/predicate-to-links.d.ts +9 -0
- package/dist/capsule/predicate-to-links.d.ts.map +1 -0
- package/dist/capsule/predicate-to-links.js +31 -0
- package/dist/capsule/predicate-to-links.js.map +1 -0
- package/dist/cli-flow-commands.d.ts +31 -0
- package/dist/cli-flow-commands.d.ts.map +1 -0
- package/dist/cli-flow-commands.js +207 -0
- package/dist/cli-flow-commands.js.map +1 -0
- package/dist/cli-parse.d.ts +18 -2
- package/dist/cli-parse.d.ts.map +1 -1
- package/dist/cli-parse.js +57 -0
- package/dist/cli-parse.js.map +1 -1
- package/dist/cli-port.d.ts +10 -4
- package/dist/cli-port.d.ts.map +1 -1
- package/dist/cli-port.js +32 -6
- package/dist/cli-port.js.map +1 -1
- package/dist/cli-verify.d.ts.map +1 -1
- package/dist/cli-verify.js +29 -10
- package/dist/cli-verify.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +81 -2
- package/dist/cli.js.map +1 -1
- package/dist/crawl/crawl-tools.d.ts.map +1 -1
- package/dist/crawl/crawl-tools.js +12 -0
- package/dist/crawl/crawl-tools.js.map +1 -1
- package/dist/crawl/crawl.d.ts +23 -1
- package/dist/crawl/crawl.d.ts.map +1 -1
- package/dist/crawl/crawl.js +36 -9
- package/dist/crawl/crawl.js.map +1 -1
- package/dist/daemon-resilience.d.ts +5 -5
- package/dist/daemon-resilience.js +5 -5
- package/dist/daemon.d.ts +1 -1
- package/dist/daemon.js +1 -1
- package/dist/domain/domain-tools.d.ts.map +1 -1
- package/dist/domain/domain-tools.js +11 -1
- package/dist/domain/domain-tools.js.map +1 -1
- package/dist/domain/flow-risk.d.ts +4 -4
- package/dist/domain/flow-risk.js +4 -4
- package/dist/ee/audit-log.d.ts +2 -2
- package/dist/ee/audit-log.js +2 -2
- package/dist/events/event-filters.d.ts +29 -1
- package/dist/events/event-filters.d.ts.map +1 -1
- package/dist/events/event-filters.js +75 -1
- package/dist/events/event-filters.js.map +1 -1
- package/dist/events/predicate-eval.d.ts +15 -0
- package/dist/events/predicate-eval.d.ts.map +1 -1
- package/dist/events/predicate-eval.js +97 -18
- package/dist/events/predicate-eval.js.map +1 -1
- package/dist/events/predicate.d.ts +22 -1
- package/dist/events/predicate.d.ts.map +1 -1
- package/dist/events/predicate.js +154 -20
- package/dist/events/predicate.js.map +1 -1
- package/dist/events/ring-buffer.d.ts +3 -3
- package/dist/events/ring-buffer.d.ts.map +1 -1
- package/dist/events/ring-buffer.js +54 -8
- package/dist/events/ring-buffer.js.map +1 -1
- package/dist/flows/affected.d.ts +25 -0
- package/dist/flows/affected.d.ts.map +1 -0
- package/dist/flows/affected.js +36 -0
- package/dist/flows/affected.js.map +1 -0
- package/dist/flows/annotate.d.ts +4 -4
- package/dist/flows/annotate.js +4 -4
- package/dist/flows/assertion-integrity.d.ts +24 -0
- package/dist/flows/assertion-integrity.d.ts.map +1 -0
- package/dist/flows/assertion-integrity.js +27 -0
- package/dist/flows/assertion-integrity.js.map +1 -0
- package/dist/flows/assertion-tiers-store.d.ts +80 -0
- package/dist/flows/assertion-tiers-store.d.ts.map +1 -0
- package/dist/flows/assertion-tiers-store.js +99 -0
- package/dist/flows/assertion-tiers-store.js.map +1 -0
- package/dist/flows/buddy-status.d.ts +25 -0
- package/dist/flows/buddy-status.d.ts.map +1 -0
- package/dist/flows/buddy-status.js +33 -0
- package/dist/flows/buddy-status.js.map +1 -0
- package/dist/flows/coverage.d.ts +28 -0
- package/dist/flows/coverage.d.ts.map +1 -0
- package/dist/flows/coverage.js +22 -0
- package/dist/flows/coverage.js.map +1 -0
- package/dist/flows/decision.d.ts.map +1 -1
- package/dist/flows/decision.js +16 -8
- package/dist/flows/decision.js.map +1 -1
- package/dist/flows/flake-store.d.ts +20 -0
- package/dist/flows/flake-store.d.ts.map +1 -0
- package/dist/flows/flake-store.js +59 -0
- package/dist/flows/flake-store.js.map +1 -0
- package/dist/flows/flake.d.ts +58 -0
- package/dist/flows/flake.d.ts.map +1 -0
- package/dist/flows/flake.js +36 -0
- package/dist/flows/flake.js.map +1 -0
- package/dist/flows/flow-classify.d.ts +8 -8
- package/dist/flows/flow-classify.js +8 -8
- package/dist/flows/flow-replay-run.d.ts.map +1 -1
- package/dist/flows/flow-replay-run.js +36 -0
- package/dist/flows/flow-replay-run.js.map +1 -1
- package/dist/flows/flow-replay.d.ts +9 -0
- package/dist/flows/flow-replay.d.ts.map +1 -1
- package/dist/flows/flow-replay.js +48 -13
- package/dist/flows/flow-replay.js.map +1 -1
- package/dist/flows/flow-report.d.ts +4 -4
- package/dist/flows/flow-sources.d.ts +20 -0
- package/dist/flows/flow-sources.d.ts.map +1 -0
- package/dist/flows/flow-sources.js +33 -0
- package/dist/flows/flow-sources.js.map +1 -0
- package/dist/flows/flow-tools.d.ts +13 -1
- package/dist/flows/flow-tools.d.ts.map +1 -1
- package/dist/flows/flow-tools.js +92 -5
- package/dist/flows/flow-tools.js.map +1 -1
- package/dist/flows/flows.d.ts +9 -4
- package/dist/flows/flows.d.ts.map +1 -1
- package/dist/flows/flows.js +38 -21
- package/dist/flows/flows.js.map +1 -1
- package/dist/flows/gate.d.ts +39 -0
- package/dist/flows/gate.d.ts.map +1 -0
- package/dist/flows/gate.js +34 -0
- package/dist/flows/gate.js.map +1 -0
- package/dist/flows/git-changed.d.ts +9 -0
- package/dist/flows/git-changed.d.ts.map +1 -0
- package/dist/flows/git-changed.js +25 -0
- package/dist/flows/git-changed.js.map +1 -0
- package/dist/flows/heal-run.d.ts +1 -1
- package/dist/flows/heal-run.js +1 -1
- package/dist/flows/parallel-suite.d.ts +27 -0
- package/dist/flows/parallel-suite.d.ts.map +1 -0
- package/dist/flows/parallel-suite.js +51 -0
- package/dist/flows/parallel-suite.js.map +1 -0
- package/dist/flows/replay.d.ts.map +1 -1
- package/dist/flows/replay.js +33 -11
- package/dist/flows/replay.js.map +1 -1
- package/dist/flows/watch-batcher.d.ts +18 -0
- package/dist/flows/watch-batcher.d.ts.map +1 -0
- package/dist/flows/watch-batcher.js +20 -0
- package/dist/flows/watch-batcher.js.map +1 -0
- package/dist/honesty/blind-spots.d.ts +37 -0
- package/dist/honesty/blind-spots.d.ts.map +1 -0
- package/dist/honesty/blind-spots.js +57 -0
- package/dist/honesty/blind-spots.js.map +1 -0
- package/dist/honesty/honesty.d.ts +57 -0
- package/dist/honesty/honesty.d.ts.map +1 -0
- package/dist/honesty/honesty.js +63 -0
- package/dist/honesty/honesty.js.map +1 -0
- package/dist/http-server.d.ts +5 -5
- package/dist/http-server.js +4 -4
- package/dist/idle-shutdown.d.ts +2 -2
- package/dist/idle-shutdown.js +2 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +98 -13
- package/dist/index.js.map +1 -1
- package/dist/init/agent-rules.d.ts +38 -0
- package/dist/init/agent-rules.d.ts.map +1 -0
- package/dist/init/agent-rules.js +65 -0
- package/dist/init/agent-rules.js.map +1 -0
- package/dist/init/plan.d.ts +6 -0
- package/dist/init/plan.d.ts.map +1 -1
- package/dist/init/plan.js +79 -3
- package/dist/init/plan.js.map +1 -1
- package/dist/init/run.d.ts.map +1 -1
- package/dist/init/run.js +4 -0
- package/dist/init/run.js.map +1 -1
- package/dist/init/snippets.js +1 -1
- package/dist/init/vite-config.d.ts +1 -1
- package/dist/init/vite-config.js +2 -2
- package/dist/init/vite-config.js.map +1 -1
- package/dist/input/network-detail.d.ts +74 -0
- package/dist/input/network-detail.d.ts.map +1 -0
- package/dist/input/network-detail.js +160 -0
- package/dist/input/network-detail.js.map +1 -0
- package/dist/input/network-mock.d.ts +4 -4
- package/dist/input/real-input.d.ts +44 -11
- package/dist/input/real-input.d.ts.map +1 -1
- package/dist/input/real-input.js +57 -9
- package/dist/input/real-input.js.map +1 -1
- package/dist/journal/ambient-store.d.ts +16 -0
- package/dist/journal/ambient-store.d.ts.map +1 -0
- package/dist/journal/ambient-store.js +46 -0
- package/dist/journal/ambient-store.js.map +1 -0
- package/dist/journal/ambient.d.ts +48 -0
- package/dist/journal/ambient.d.ts.map +1 -0
- package/dist/journal/ambient.js +48 -0
- package/dist/journal/ambient.js.map +1 -0
- package/dist/journal/attach-journal.d.ts +22 -0
- package/dist/journal/attach-journal.d.ts.map +1 -0
- package/dist/journal/attach-journal.js +20 -0
- package/dist/journal/attach-journal.js.map +1 -0
- package/dist/journal/deviation-report.d.ts +28 -0
- package/dist/journal/deviation-report.d.ts.map +1 -0
- package/dist/journal/deviation-report.js +54 -0
- package/dist/journal/deviation-report.js.map +1 -0
- package/dist/journal/deviation-service.d.ts +12 -0
- package/dist/journal/deviation-service.d.ts.map +1 -0
- package/dist/journal/deviation-service.js +32 -0
- package/dist/journal/deviation-service.js.map +1 -0
- package/dist/journal/envelope-store.d.ts +19 -0
- package/dist/journal/envelope-store.d.ts.map +1 -0
- package/dist/journal/envelope-store.js +62 -0
- package/dist/journal/envelope-store.js.map +1 -0
- package/dist/journal/envelope.d.ts +232 -0
- package/dist/journal/envelope.d.ts.map +1 -0
- package/dist/journal/envelope.js +94 -0
- package/dist/journal/envelope.js.map +1 -0
- package/dist/journal/journal-query.d.ts +20 -0
- package/dist/journal/journal-query.d.ts.map +1 -0
- package/dist/journal/journal-query.js +28 -0
- package/dist/journal/journal-query.js.map +1 -0
- package/dist/journal/journal-recorder.d.ts +38 -0
- package/dist/journal/journal-recorder.d.ts.map +1 -0
- package/dist/journal/journal-recorder.js +81 -0
- package/dist/journal/journal-recorder.js.map +1 -0
- package/dist/journal/retention.d.ts +21 -0
- package/dist/journal/retention.d.ts.map +1 -0
- package/dist/journal/retention.js +50 -0
- package/dist/journal/retention.js.map +1 -0
- package/dist/journal/rollups.d.ts +49 -0
- package/dist/journal/rollups.d.ts.map +1 -0
- package/dist/journal/rollups.js +83 -0
- package/dist/journal/rollups.js.map +1 -0
- package/dist/journal/session-end.d.ts +32 -0
- package/dist/journal/session-end.d.ts.map +1 -0
- package/dist/journal/session-end.js +52 -0
- package/dist/journal/session-end.js.map +1 -0
- package/dist/journal/session-journal.d.ts +25 -0
- package/dist/journal/session-journal.d.ts.map +1 -0
- package/dist/journal/session-journal.js +168 -0
- package/dist/journal/session-journal.js.map +1 -0
- package/dist/license/license.d.ts +8 -3
- package/dist/license/license.d.ts.map +1 -1
- package/dist/license/license.js +34 -11
- package/dist/license/license.js.map +1 -1
- package/dist/mcp-proxy.d.ts +20 -0
- package/dist/mcp-proxy.d.ts.map +1 -1
- package/dist/mcp-proxy.js +45 -27
- package/dist/mcp-proxy.js.map +1 -1
- package/dist/mcp.d.ts +14 -0
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +79 -9
- package/dist/mcp.js.map +1 -1
- package/dist/oracles/flow-instrument-gaps.d.ts +19 -0
- package/dist/oracles/flow-instrument-gaps.d.ts.map +1 -0
- package/dist/oracles/flow-instrument-gaps.js +45 -0
- package/dist/oracles/flow-instrument-gaps.js.map +1 -0
- package/dist/oracles/propose-consequences.d.ts +22 -0
- package/dist/oracles/propose-consequences.d.ts.map +1 -0
- package/dist/oracles/propose-consequences.js +93 -0
- package/dist/oracles/propose-consequences.js.map +1 -0
- package/dist/oracles/self-instrument.d.ts +32 -0
- package/dist/oracles/self-instrument.d.ts.map +1 -0
- package/dist/oracles/self-instrument.js +44 -0
- package/dist/oracles/self-instrument.js.map +1 -0
- package/dist/pairing-token.d.ts +1 -1
- package/dist/phenomena/phenomena.d.ts +27 -0
- package/dist/phenomena/phenomena.d.ts.map +1 -0
- package/dist/phenomena/phenomena.js +102 -0
- package/dist/phenomena/phenomena.js.map +1 -0
- package/dist/pool/browser-pool.d.ts +5 -3
- package/dist/pool/browser-pool.d.ts.map +1 -1
- package/dist/pool/browser-pool.js +21 -3
- package/dist/pool/browser-pool.js.map +1 -1
- package/dist/pool/playwright-launcher.d.ts.map +1 -1
- package/dist/pool/playwright-launcher.js +9 -2
- package/dist/pool/playwright-launcher.js.map +1 -1
- package/dist/project/file-lock.d.ts +2 -0
- package/dist/project/file-lock.d.ts.map +1 -0
- package/dist/project/file-lock.js +24 -0
- package/dist/project/file-lock.js.map +1 -0
- package/dist/project/fs-port.d.ts +18 -0
- package/dist/project/fs-port.d.ts.map +1 -1
- package/dist/project/fs-port.js +24 -2
- package/dist/project/fs-port.js.map +1 -1
- package/dist/project/project-store.d.ts.map +1 -1
- package/dist/project/project-store.js +13 -7
- package/dist/project/project-store.js.map +1 -1
- package/dist/project/project-tools.d.ts +0 -6
- package/dist/project/project-tools.d.ts.map +1 -1
- package/dist/project/project-tools.js +24 -1
- package/dist/project/project-tools.js.map +1 -1
- package/dist/project/reticle-dir.d.ts +39 -14
- package/dist/project/reticle-dir.d.ts.map +1 -1
- package/dist/project/reticle-dir.js +30 -4
- package/dist/project/reticle-dir.js.map +1 -1
- package/dist/runs/build-verification-run.d.ts +1 -1
- package/dist/runs/build-verification-run.js +1 -1
- package/dist/runs/repair-prompt.d.ts +2 -0
- package/dist/runs/repair-prompt.d.ts.map +1 -1
- package/dist/runs/repair-prompt.js +14 -1
- package/dist/runs/repair-prompt.js.map +1 -1
- package/dist/runs/reticle-runner.d.ts +1 -1
- package/dist/runs/reticle-runner.d.ts.map +1 -1
- package/dist/runs/run-diff.d.ts +34 -0
- package/dist/runs/run-diff.d.ts.map +1 -0
- package/dist/runs/run-diff.js +71 -0
- package/dist/runs/run-diff.js.map +1 -0
- package/dist/runs/run-store.d.ts +6 -1
- package/dist/runs/run-store.d.ts.map +1 -1
- package/dist/runs/run-store.js +22 -2
- package/dist/runs/run-store.js.map +1 -1
- package/dist/runs/run-tools.d.ts.map +1 -1
- package/dist/runs/run-tools.js +16 -3
- package/dist/runs/run-tools.js.map +1 -1
- package/dist/runs/verify-server.js +1 -1
- package/dist/runs/verify-server.js.map +1 -1
- package/dist/session/control-envelope.d.ts +9 -1
- package/dist/session/control-envelope.d.ts.map +1 -1
- package/dist/session/control-envelope.js +13 -1
- package/dist/session/control-envelope.js.map +1 -1
- package/dist/session/live-control-tools.d.ts +1 -1
- package/dist/session/live-control-tools.js +1 -1
- package/dist/session/live-control.d.ts +38 -0
- package/dist/session/live-control.d.ts.map +1 -0
- package/dist/session/live-control.js +64 -0
- package/dist/session/live-control.js.map +1 -0
- package/dist/session/observed-state.d.ts +46 -0
- package/dist/session/observed-state.d.ts.map +1 -0
- package/dist/session/observed-state.js +76 -0
- package/dist/session/observed-state.js.map +1 -0
- package/dist/session/output-budget.d.ts +9 -0
- package/dist/session/output-budget.d.ts.map +1 -1
- package/dist/session/output-budget.js +9 -0
- package/dist/session/output-budget.js.map +1 -1
- package/dist/session/review-store.d.ts +1 -1
- package/dist/session/review-store.d.ts.map +1 -1
- package/dist/session/review-store.js +2 -2
- package/dist/session/review-store.js.map +1 -1
- package/dist/session/session-manager.d.ts +9 -7
- package/dist/session/session-manager.d.ts.map +1 -1
- package/dist/session/session-manager.js +8 -8
- package/dist/session/session-manager.js.map +1 -1
- package/dist/session/session-readiness.js +1 -1
- package/dist/session/session-readiness.js.map +1 -1
- package/dist/session/session-reaper.d.ts +1 -1
- package/dist/session/session-reaper.js +1 -1
- package/dist/session/session-recommendation.d.ts +1 -1
- package/dist/session/session-recommendation.js +1 -1
- package/dist/session/session-tools.js +1 -1
- package/dist/session/session-tools.js.map +1 -1
- package/dist/session/session.d.ts +43 -11
- package/dist/session/session.d.ts.map +1 -1
- package/dist/session/session.js +115 -46
- package/dist/session/session.js.map +1 -1
- package/dist/tools/act-tools.d.ts.map +1 -1
- package/dist/tools/act-tools.js +252 -70
- package/dist/tools/act-tools.js.map +1 -1
- package/dist/tools/act-view.d.ts +4 -4
- package/dist/tools/act-view.js +4 -4
- package/dist/tools/browser-tools.d.ts.map +1 -1
- package/dist/tools/browser-tools.js +32 -8
- package/dist/tools/browser-tools.js.map +1 -1
- package/dist/tools/contract-tools.d.ts.map +1 -1
- package/dist/tools/contract-tools.js +5 -0
- package/dist/tools/contract-tools.js.map +1 -1
- package/dist/tools/dynamic-tools.d.ts.map +1 -1
- package/dist/tools/dynamic-tools.js +7 -6
- package/dist/tools/dynamic-tools.js.map +1 -1
- package/dist/tools/invoke-tool.d.ts.map +1 -1
- package/dist/tools/invoke-tool.js +32 -29
- package/dist/tools/invoke-tool.js.map +1 -1
- package/dist/tools/lease-tools.d.ts +16 -0
- package/dist/tools/lease-tools.d.ts.map +1 -1
- package/dist/tools/lease-tools.js +11 -0
- package/dist/tools/lease-tools.js.map +1 -1
- package/dist/tools/merge-tools.d.ts +43 -0
- package/dist/tools/merge-tools.d.ts.map +1 -0
- package/dist/tools/merge-tools.js +66 -0
- package/dist/tools/merge-tools.js.map +1 -0
- package/dist/tools/observe-tools.d.ts.map +1 -1
- package/dist/tools/observe-tools.js +172 -29
- package/dist/tools/observe-tools.js.map +1 -1
- package/dist/tools/profiles.d.ts +18 -13
- package/dist/tools/profiles.d.ts.map +1 -1
- package/dist/tools/profiles.js +39 -33
- package/dist/tools/profiles.js.map +1 -1
- package/dist/tools/query-paginate.d.ts +9 -2
- package/dist/tools/query-paginate.d.ts.map +1 -1
- package/dist/tools/query-paginate.js +21 -4
- package/dist/tools/query-paginate.js.map +1 -1
- package/dist/tools/read-tools.d.ts.map +1 -1
- package/dist/tools/read-tools.js +30 -1
- package/dist/tools/read-tools.js.map +1 -1
- package/dist/tools/snapshot-delta.d.ts +2 -0
- package/dist/tools/snapshot-delta.d.ts.map +1 -1
- package/dist/tools/snapshot-delta.js +0 -0
- package/dist/tools/snapshot-delta.js.map +1 -1
- package/dist/tools/tool-kit.d.ts +3 -2
- package/dist/tools/tool-kit.d.ts.map +1 -1
- package/dist/tools/tool-kit.js +11 -1
- package/dist/tools/tool-kit.js.map +1 -1
- package/dist/tools/tool-names.d.ts +18 -10
- package/dist/tools/tool-names.d.ts.map +1 -1
- package/dist/tools/tool-names.js +22 -13
- package/dist/tools/tool-names.js.map +1 -1
- package/dist/tools/tools-helpers.d.ts +12 -0
- package/dist/tools/tools-helpers.d.ts.map +1 -1
- package/dist/tools/tools-helpers.js +20 -0
- package/dist/tools/tools-helpers.js.map +1 -1
- package/dist/tools/tools.d.ts.map +1 -1
- package/dist/tools/tools.js +162 -12
- package/dist/tools/tools.js.map +1 -1
- package/dist/update/updater.d.ts +1 -1
- package/dist/update/updater.js +2 -2
- package/dist/update/updater.js.map +1 -1
- package/package.json +8 -3
- package/dist/update/update-tools.d.ts +0 -3
- package/dist/update/update-tools.d.ts.map +0 -1
- package/dist/update/update-tools.js +0 -94
- package/dist/update/update-tools.js.map +0 -1
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Observe / wait / assert tools — reticle_observe, reticle_wait_for, reticle_assert, reticle_network,
|
|
3
|
-
* reticle_console, reticle_animations. Split out of tools.ts; assembled back via
|
|
3
|
+
* reticle_console, reticle_animations. Split out of tools.ts; assembled back via...OBSERVE_TOOLS.
|
|
4
4
|
*/
|
|
5
5
|
import { z } from 'zod';
|
|
6
|
-
import { ReticleCommand } from '@reticlehq/core';
|
|
6
|
+
import { ReticleCommand, DEFAULT_ASSERT_TIMEOUT_MS } from '@reticlehq/core';
|
|
7
7
|
import { ReticleTool } from './tool-names.js';
|
|
8
8
|
import { buildReactionReport } from '../events/reaction.js';
|
|
9
9
|
import { evaluatePredicate, waitForPredicate, PredicateSchema } from '../events/predicate.js';
|
|
10
|
-
import { matchNet, matchConsole, isConsoleEvent, netEmptyHint, consoleEmptyHint, reconcileNet, projectNetCall, projectConsoleLog, } from '../events/event-filters.js';
|
|
11
|
-
import { applyEventBudget, costHint, withSizeCost } from '../session/output-budget.js';
|
|
10
|
+
import { matchNet, matchConsole, isConsoleEvent, eventMatchesFilters, netEmptyHint, consoleEmptyHint, reconcileNet, projectNetCall, projectConsoleLog, } from '../events/event-filters.js';
|
|
11
|
+
import { applyEventBudget, costHint, withSizeCost, DEFAULT_QUERY_LIMIT, } from '../session/output-budget.js';
|
|
12
12
|
import { healthEnvelope, bufferEnvelope } from '../session/session-health.js';
|
|
13
13
|
import { isPresenceOnlyAssertion, PRESENCE_ONLY_ADVICE } from './assert-grade.js';
|
|
14
|
+
import { buildCoverageStatement, blindSpotsFromState } from '../honesty/blind-spots.js';
|
|
14
15
|
import { withControl } from '../session/control-envelope.js';
|
|
15
16
|
import { asString, asNumber } from './tools-helpers.js';
|
|
16
17
|
import { sessionIdShape, commandOrThrow } from './tool-kit.js';
|
|
@@ -24,6 +25,23 @@ const bufferOutputShape = {
|
|
|
24
25
|
.optional()
|
|
25
26
|
.describe('Present only when the event buffer evicted events — a negative result may then be a false negative.'),
|
|
26
27
|
};
|
|
28
|
+
/**
|
|
29
|
+
* Where to look when a failure has no element.
|
|
30
|
+
*
|
|
31
|
+
* "the signal never fired", "the request was never made", "the store did not change" have no DOM node
|
|
32
|
+
* to map to a component, so the file:line that covers element failures leaves exactly the failures
|
|
33
|
+
* that most need explaining with nowhere to send the agent. The handler that should have fired the
|
|
34
|
+
* signal lives with the control that was clicked, and the act path captured that control's source —
|
|
35
|
+
* so a failing assertion can point there instead of at nothing.
|
|
36
|
+
*
|
|
37
|
+
* RED only: on a pass this is noise on the path the agent walks most.
|
|
38
|
+
*/
|
|
39
|
+
function lastActSourceOnFailure(session, pass) {
|
|
40
|
+
if (pass)
|
|
41
|
+
return {};
|
|
42
|
+
const source = session.lastActSource();
|
|
43
|
+
return source === undefined ? {} : { source };
|
|
44
|
+
}
|
|
27
45
|
export const OBSERVE_TOOLS = [
|
|
28
46
|
{
|
|
29
47
|
name: ReticleTool.OBSERVE,
|
|
@@ -37,10 +55,20 @@ export const OBSERVE_TOOLS = [
|
|
|
37
55
|
.number()
|
|
38
56
|
.optional()
|
|
39
57
|
.describe('Cursor from a prior reticle_act or reticle_observe call. Scopes the event window to exactly that span.'),
|
|
58
|
+
until: z
|
|
59
|
+
.number()
|
|
60
|
+
.optional()
|
|
61
|
+
.describe('Upper cursor bound. With `since`, returns the span "between action A and B".'),
|
|
62
|
+
actionId: z
|
|
63
|
+
.string()
|
|
64
|
+
.optional()
|
|
65
|
+
.describe('Keep only events attributed to this action — answers "what did action N cause".'),
|
|
40
66
|
filters: z
|
|
41
67
|
.array(z.string())
|
|
42
68
|
.optional()
|
|
43
|
-
.describe('Event type allowlist
|
|
69
|
+
.describe('Event type allowlist — the cheapest way to shrink a large timeline. Use a bucket name — ' +
|
|
70
|
+
'dom | net | route | console | animation | signal | perf | state | storage — or a raw ' +
|
|
71
|
+
'type (e.g. "net.request"). Omit to return all types.'),
|
|
44
72
|
max_events: z
|
|
45
73
|
.number()
|
|
46
74
|
.optional()
|
|
@@ -48,6 +76,9 @@ export const OBSERVE_TOOLS = [
|
|
|
48
76
|
...sessionIdShape,
|
|
49
77
|
},
|
|
50
78
|
outputSchema: {
|
|
79
|
+
// The observed window's duration — buildReactionReport returns it on every call; without it in
|
|
80
|
+
// the schema, a validating profile stripped it and the agent lost "over how long" the counts hold.
|
|
81
|
+
window_ms: z.number(),
|
|
51
82
|
events: z.array(z.unknown()),
|
|
52
83
|
summary: z.object({
|
|
53
84
|
total: z.number(),
|
|
@@ -74,23 +105,29 @@ export const OBSERVE_TOOLS = [
|
|
|
74
105
|
.optional(),
|
|
75
106
|
...bufferOutputShape,
|
|
76
107
|
},
|
|
77
|
-
handler: (deps, args) => {
|
|
108
|
+
handler: async (deps, args) => {
|
|
78
109
|
const session = deps.sessions.resolve(asString(args['sessionId']));
|
|
79
|
-
const
|
|
110
|
+
const explicitSince = asNumber(args['since']);
|
|
80
111
|
const windowMs = asNumber(args['window_ms']) ?? 2000;
|
|
81
|
-
|
|
112
|
+
// Explicit since wins; else look back one window. Journal-backed so it survives buffer eviction.
|
|
113
|
+
const since = explicitSince ?? Math.max(0, session.elapsed() - windowMs);
|
|
114
|
+
const events = await session.queryEvents({
|
|
115
|
+
since,
|
|
116
|
+
until: asNumber(args['until']),
|
|
117
|
+
actionId: asString(args['actionId']),
|
|
118
|
+
});
|
|
82
119
|
const filters = Array.isArray(args['filters']) ? args['filters'] : undefined;
|
|
83
|
-
const filtered = filters === undefined ? events : events.filter((e) =>
|
|
120
|
+
const filtered = filters === undefined ? events : events.filter((e) => eventMatchesFilters(e, filters));
|
|
84
121
|
// Output budget: cap to the most recent N (no silent caps — droppedOldest is surfaced in cost).
|
|
85
122
|
const { events: budgeted, droppedOldest } = applyEventBudget(filtered, asNumber(args['max_events']));
|
|
86
123
|
const report = buildReactionReport(budgeted, windowMs);
|
|
87
124
|
// carry session health — a throttled tab means the observed timeline may be incomplete.
|
|
88
|
-
return
|
|
125
|
+
return withControl(session, {
|
|
89
126
|
...report,
|
|
90
127
|
cost: costHint(report, budgeted.length, droppedOldest),
|
|
91
128
|
...healthEnvelope(session),
|
|
92
129
|
...bufferEnvelope(session),
|
|
93
|
-
})
|
|
130
|
+
});
|
|
94
131
|
},
|
|
95
132
|
},
|
|
96
133
|
{
|
|
@@ -112,15 +149,38 @@ export const OBSERVE_TOOLS = [
|
|
|
112
149
|
session: z
|
|
113
150
|
.object({ lastSeenMs: z.number(), throttled: z.boolean(), focused: z.boolean() })
|
|
114
151
|
.optional(),
|
|
152
|
+
buffer: z
|
|
153
|
+
.object({ held: z.number(), dropped: z.number(), note: z.string() })
|
|
154
|
+
.optional()
|
|
155
|
+
.describe('Present ONLY when the ring buffer evicted events during this window. A passing assertion — especially an absence one — may then be a false negative: the evidence that would have failed it could have been dropped. Absence of this block means the buffer was intact and the verdict is trustworthy.'),
|
|
156
|
+
observed: z
|
|
157
|
+
.string()
|
|
158
|
+
.optional()
|
|
159
|
+
.describe('What was actually seen — the structured half of failureReason, for the agent rather than a log.'),
|
|
160
|
+
expected: z.string().optional().describe('What the oracle required.'),
|
|
161
|
+
assertion: z
|
|
162
|
+
.string()
|
|
163
|
+
.optional()
|
|
164
|
+
.describe('Which oracle judged it, e.g. element.state — lets an agent branch on the failure KIND without parsing prose.'),
|
|
165
|
+
source: z
|
|
166
|
+
.string()
|
|
167
|
+
.optional()
|
|
168
|
+
.describe('On a FAILING assertion, the `file:line` of the control last acted on — where the code that should have produced the missing signal/request/state change lives. Present only when an act preceded this assertion.'),
|
|
115
169
|
},
|
|
116
170
|
handler: async (deps, args) => {
|
|
117
171
|
const session = deps.sessions.resolve(asString(args['sessionId']));
|
|
118
172
|
const predicate = PredicateSchema.parse(args['predicate']);
|
|
119
173
|
// Honesty: explicit since wins; else default to the last act's cursor; else the whole buffer.
|
|
120
174
|
const since = asNumber(args['since']) ?? session.lastActCursor() ?? 0;
|
|
121
|
-
const verdict = await waitForPredicate(session, predicate, asNumber(args['timeout_ms']) ??
|
|
122
|
-
// match reticle_assert — wrap with control + session health (throttle matters most while blocking)
|
|
123
|
-
|
|
175
|
+
const verdict = await waitForPredicate(session, predicate, asNumber(args['timeout_ms']) ?? DEFAULT_ASSERT_TIMEOUT_MS, since);
|
|
176
|
+
// match reticle_assert — wrap with control + session health (throttle matters most while blocking)
|
|
177
|
+
// and the buffer envelope, so a verdict reached over an evicted window says so.
|
|
178
|
+
return withControl(session, {
|
|
179
|
+
...verdict,
|
|
180
|
+
...lastActSourceOnFailure(session, verdict.pass),
|
|
181
|
+
...healthEnvelope(session),
|
|
182
|
+
...bufferEnvelope(session),
|
|
183
|
+
});
|
|
124
184
|
},
|
|
125
185
|
},
|
|
126
186
|
{
|
|
@@ -146,9 +206,34 @@ export const OBSERVE_TOOLS = [
|
|
|
146
206
|
.string()
|
|
147
207
|
.optional()
|
|
148
208
|
.describe('Present on a PASSING presence-only assertion — nudges toward a consequence.'),
|
|
209
|
+
observed: z
|
|
210
|
+
.string()
|
|
211
|
+
.optional()
|
|
212
|
+
.describe('What was actually seen — the structured half of failureReason, for the agent rather than a log.'),
|
|
213
|
+
expected: z.string().optional().describe('What the oracle required.'),
|
|
214
|
+
assertion: z
|
|
215
|
+
.string()
|
|
216
|
+
.optional()
|
|
217
|
+
.describe('Which oracle judged it, e.g. element.state — lets an agent branch on the failure KIND without parsing prose.'),
|
|
149
218
|
session: z
|
|
150
219
|
.object({ lastSeenMs: z.number(), throttled: z.boolean(), focused: z.boolean() })
|
|
151
220
|
.optional(),
|
|
221
|
+
buffer: z
|
|
222
|
+
.object({ held: z.number(), dropped: z.number(), note: z.string() })
|
|
223
|
+
.optional()
|
|
224
|
+
.describe('Present ONLY when the ring buffer evicted events during this window. A passing assertion — especially an absence one — may then be a false negative: the evidence that would have failed it could have been dropped. Absence of this block means the buffer was intact and the verdict is trustworthy.'),
|
|
225
|
+
source: z
|
|
226
|
+
.string()
|
|
227
|
+
.optional()
|
|
228
|
+
.describe('On a FAILING assertion, the `file:line` of the control last acted on — where the code that should have produced the missing signal/request/state change lives. Present only when an act preceded this assertion.'),
|
|
229
|
+
coverage: z
|
|
230
|
+
.string()
|
|
231
|
+
.optional()
|
|
232
|
+
.describe('Present ONLY when part of the page was unobservable (cross-origin iframe, closed shadow root). A PASSING assertion is then scoped to what could be seen — treat it as "no failure found in the observed region", never as "the page is correct".'),
|
|
233
|
+
coverage_spots: z
|
|
234
|
+
.array(z.object({ kind: z.string(), count: z.number() }))
|
|
235
|
+
.optional()
|
|
236
|
+
.describe('Which regions were unobservable, when coverage is partial.'),
|
|
152
237
|
},
|
|
153
238
|
handler: async (deps, args) => {
|
|
154
239
|
const session = deps.sessions.resolve(asString(args['sessionId']));
|
|
@@ -162,7 +247,39 @@ export const OBSERVE_TOOLS = [
|
|
|
162
247
|
// A GREEN presence-only assertion is the dangerous case (a wrong element can fake it) — nudge
|
|
163
248
|
// toward a consequence. Never on a failing verdict (moot) or when a signal/net is asserted.
|
|
164
249
|
const advice = verdict.pass && isPresenceOnlyAssertion(predicate) ? { advice: PRESENCE_ONLY_ADVICE } : {};
|
|
165
|
-
|
|
250
|
+
// A verdict reached over an evicted buffer can be a FALSE NEGATIVE: "no console error" may
|
|
251
|
+
// simply mean the error aged out. reticle_console has always disclosed this on the same window;
|
|
252
|
+
// the verdict path — the one an agent actually gates on — did not. Omitted when nothing dropped.
|
|
253
|
+
// Coverage, on the verdict an agent actually gates on.
|
|
254
|
+
//
|
|
255
|
+
// Scope caveat, stated because it is a real limitation and not a bug: blind spots are tracked
|
|
256
|
+
// per SESSION, not per assertion window. So a cross-origin iframe seen once marks every later
|
|
257
|
+
// verdict in that session partial, including ones about a region it cannot affect. That errs
|
|
258
|
+
// toward over-warning, which is the correct direction for an honesty signal — the failure this
|
|
259
|
+
// guards against is a green that implies coverage it never had, and the opposite error (a
|
|
260
|
+
// needless caveat) costs the agent a sentence.
|
|
261
|
+
//
|
|
262
|
+
// act_and_wait has always disclosed this; plain assert did not — so a GREEN assert on a page
|
|
263
|
+
// with a cross-origin iframe or a closed shadow root read as "the page is correct" when the
|
|
264
|
+
// honest claim is "nothing failed in the part I could see". That is the false-green shape this
|
|
265
|
+
// project exists to prevent, sitting on the most-used verdict path. Omitted entirely when
|
|
266
|
+
// coverage is full, so an intact page pays nothing and the field's PRESENCE is the warning.
|
|
267
|
+
const spots = blindSpotsFromState(session.blindSpots());
|
|
268
|
+
const statement = buildCoverageStatement(spots);
|
|
269
|
+
const coverage = statement.coverage === 'partial'
|
|
270
|
+
? {
|
|
271
|
+
coverage: statement.note ?? 'partial',
|
|
272
|
+
coverage_spots: statement.spots.map((sp) => ({ kind: sp.kind, count: sp.count })),
|
|
273
|
+
}
|
|
274
|
+
: {};
|
|
275
|
+
return withControl(session, {
|
|
276
|
+
...verdict,
|
|
277
|
+
...advice,
|
|
278
|
+
...coverage,
|
|
279
|
+
...lastActSourceOnFailure(session, verdict.pass),
|
|
280
|
+
...healthEnvelope(session),
|
|
281
|
+
...bufferEnvelope(session),
|
|
282
|
+
});
|
|
166
283
|
},
|
|
167
284
|
},
|
|
168
285
|
{
|
|
@@ -173,6 +290,14 @@ export const OBSERVE_TOOLS = [
|
|
|
173
290
|
.number()
|
|
174
291
|
.optional()
|
|
175
292
|
.describe('Cursor from a prior reticle_act — scopes the query to requests fired after that act.'),
|
|
293
|
+
until: z
|
|
294
|
+
.number()
|
|
295
|
+
.optional()
|
|
296
|
+
.describe('Upper cursor bound — with `since`, the span between two acts.'),
|
|
297
|
+
actionId: z
|
|
298
|
+
.string()
|
|
299
|
+
.optional()
|
|
300
|
+
.describe('Keep only requests attributed to this action — "what did action N request".'),
|
|
176
301
|
method: z
|
|
177
302
|
.string()
|
|
178
303
|
.optional()
|
|
@@ -182,7 +307,7 @@ export const OBSERVE_TOOLS = [
|
|
|
182
307
|
limit: z
|
|
183
308
|
.number()
|
|
184
309
|
.optional()
|
|
185
|
-
.describe('Keep only the most recent N matching calls (older are dropped and counted in droppedOldest) — cuts tokens on a wide window.'),
|
|
310
|
+
.describe('Keep only the most recent N matching calls (older are dropped and counted in droppedOldest) — cuts tokens on a wide window. Defaults to 200 when omitted; pass a higher number for more, or scope with since/until.'),
|
|
186
311
|
...sessionIdShape,
|
|
187
312
|
},
|
|
188
313
|
outputSchema: {
|
|
@@ -196,7 +321,7 @@ export const OBSERVE_TOOLS = [
|
|
|
196
321
|
cost: z.object({ bytes: z.number(), tokens: z.number() }).optional(),
|
|
197
322
|
...bufferOutputShape,
|
|
198
323
|
},
|
|
199
|
-
handler: (deps, args) => {
|
|
324
|
+
handler: async (deps, args) => {
|
|
200
325
|
const session = deps.sessions.resolve(asString(args['sessionId']));
|
|
201
326
|
const since = asNumber(args['since']) ?? 0;
|
|
202
327
|
const method = asString(args['method']);
|
|
@@ -205,17 +330,22 @@ export const OBSERVE_TOOLS = [
|
|
|
205
330
|
const limit = asNumber(args['limit']);
|
|
206
331
|
const buffer = bufferEnvelope(session);
|
|
207
332
|
// Completed calls + unresolved in-flight requests (a hung request shows as pending).
|
|
208
|
-
const allNet = reconcileNet(session.
|
|
333
|
+
const allNet = reconcileNet(await session.queryEvents({
|
|
334
|
+
since,
|
|
335
|
+
until: asNumber(args['until']),
|
|
336
|
+
actionId: asString(args['actionId']),
|
|
337
|
+
}));
|
|
209
338
|
const matched = allNet.filter((e) => matchNet(e, method, urlContains, status));
|
|
210
339
|
// zero-match filter returns what DID fire, not a bare [].
|
|
211
340
|
if (matched.length === 0 && allNet.length > 0) {
|
|
212
|
-
return
|
|
341
|
+
return withSizeCost({ calls: matched, hint: netEmptyHint(allNet), ...buffer });
|
|
213
342
|
}
|
|
214
|
-
|
|
343
|
+
// Default the cap so an omitted `limit` can't dump a whole flooded session (since defaults to 0).
|
|
344
|
+
const { events: budgeted, droppedOldest } = applyEventBudget(matched, limit ?? DEFAULT_QUERY_LIMIT);
|
|
215
345
|
const calls = budgeted.map(projectNetCall);
|
|
216
|
-
return
|
|
346
|
+
return withSizeCost(droppedOldest > 0
|
|
217
347
|
? { calls, total: matched.length, droppedOldest, ...buffer }
|
|
218
|
-
: { calls, ...buffer })
|
|
348
|
+
: { calls, ...buffer });
|
|
219
349
|
},
|
|
220
350
|
},
|
|
221
351
|
{
|
|
@@ -230,10 +360,18 @@ export const OBSERVE_TOOLS = [
|
|
|
230
360
|
.number()
|
|
231
361
|
.optional()
|
|
232
362
|
.describe('Cursor from a prior reticle_act — scopes the query to log entries after that act.'),
|
|
363
|
+
until: z
|
|
364
|
+
.number()
|
|
365
|
+
.optional()
|
|
366
|
+
.describe('Upper cursor bound — with `since`, the span between two acts.'),
|
|
367
|
+
actionId: z
|
|
368
|
+
.string()
|
|
369
|
+
.optional()
|
|
370
|
+
.describe('Keep only log entries attributed to this action — "what did action N log".'),
|
|
233
371
|
limit: z
|
|
234
372
|
.number()
|
|
235
373
|
.optional()
|
|
236
|
-
.describe('Keep only the most recent N matching entries (older are dropped and counted in droppedOldest) — cuts tokens when a page spams the console.'),
|
|
374
|
+
.describe('Keep only the most recent N matching entries (older are dropped and counted in droppedOldest) — cuts tokens when a page spams the console. Defaults to 200 when omitted; pass a higher number for more, or scope with since/until.'),
|
|
237
375
|
...sessionIdShape,
|
|
238
376
|
},
|
|
239
377
|
outputSchema: {
|
|
@@ -247,23 +385,28 @@ export const OBSERVE_TOOLS = [
|
|
|
247
385
|
cost: z.object({ bytes: z.number(), tokens: z.number() }).optional(),
|
|
248
386
|
...bufferOutputShape,
|
|
249
387
|
},
|
|
250
|
-
handler: (deps, args) => {
|
|
388
|
+
handler: async (deps, args) => {
|
|
251
389
|
const session = deps.sessions.resolve(asString(args['sessionId']));
|
|
252
390
|
const since = asNumber(args['since']) ?? 0;
|
|
253
391
|
const level = asString(args['level']);
|
|
254
392
|
const limit = asNumber(args['limit']);
|
|
255
393
|
const buffer = bufferEnvelope(session);
|
|
256
|
-
const allConsole = session.
|
|
394
|
+
const allConsole = (await session.queryEvents({
|
|
395
|
+
since,
|
|
396
|
+
until: asNumber(args['until']),
|
|
397
|
+
actionId: asString(args['actionId']),
|
|
398
|
+
})).filter(isConsoleEvent);
|
|
257
399
|
const matched = allConsole.filter((e) => matchConsole(e, level));
|
|
258
400
|
// zero matches at this level → report what levels ARE present (not a bare []).
|
|
259
401
|
if (matched.length === 0 && allConsole.length > 0) {
|
|
260
|
-
return
|
|
402
|
+
return withSizeCost({ logs: matched, hint: consoleEmptyHint(allConsole), ...buffer });
|
|
261
403
|
}
|
|
262
|
-
|
|
404
|
+
// Default the cap so an omitted `limit` can't dump a whole flooded session (since defaults to 0).
|
|
405
|
+
const { events: budgeted, droppedOldest } = applyEventBudget(matched, limit ?? DEFAULT_QUERY_LIMIT);
|
|
263
406
|
const logs = budgeted.map(projectConsoleLog);
|
|
264
|
-
return
|
|
407
|
+
return withSizeCost(droppedOldest > 0
|
|
265
408
|
? { logs, total: matched.length, droppedOldest, ...buffer }
|
|
266
|
-
: { logs, ...buffer })
|
|
409
|
+
: { logs, ...buffer });
|
|
267
410
|
},
|
|
268
411
|
},
|
|
269
412
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observe-tools.js","sourceRoot":"","sources":["../../src/tools/observe-tools.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAgB,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE7E;;;GAGG;AACH,MAAM,iBAAiB,GAAG;IACxB,MAAM,EAAE,CAAC;SACN,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;SACnE,QAAQ,EAAE;SACV,QAAQ,CACP,qGAAqG,CACtG;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAc;IACtC;QACE,IAAI,EAAE,WAAW,CAAC,OAAO;QACzB,WAAW,EACT,gWAAgW;QAClW,WAAW,EAAE;YACX,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,8EAA8E,CAAC;YAC3F,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,wGAAwG,CACzG;YACH,OAAO,EAAE,CAAC;iBACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,QAAQ,EAAE;iBACV,QAAQ,CACP,mGAAmG,CACpG;YACH,UAAU,EAAE,CAAC;iBACV,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,+FAA+F,CAChG;YACH,GAAG,cAAc;SAClB;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAC5B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;gBAChB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;gBACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;gBACnB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;gBACpB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;gBACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;gBACtB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;gBACxB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;gBACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;gBACtB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACpB,CAAC;YACF,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;gBACb,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;gBAClB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;gBACjB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACpC,cAAc,EAAE,CAAC;qBACd,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CACP,iFAAiF,CAClF;aACJ,CAAC;YACF,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;iBAChF,QAAQ,EAAE;YACb,GAAG,iBAAiB;SACrB;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACnE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,IAAI,CAAC;YACrD,MAAM,MAAM,GACV,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YACtF,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,SAAS,CAAc,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3F,MAAM,QAAQ,GACZ,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAClF,gGAAgG;YAChG,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAC1D,QAAQ,EACR,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAC7B,CAAC;YACF,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACvD,wFAAwF;YACxF,OAAO,OAAO,CAAC,OAAO,CACpB,WAAW,CAAC,OAAO,EAAE;gBACnB,GAAG,MAAM;gBACT,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;gBACtD,GAAG,cAAc,CAAC,OAAO,CAAC;gBAC1B,GAAG,cAAc,CAAC,OAAO,CAAC;aAC3B,CAAC,CACH,CAAC;QACJ,CAAC;KACF;IACD;QACE,IAAI,EAAE,WAAW,CAAC,QAAQ;QAC1B,WAAW,EACT,qVAAqV;QACvV,WAAW,EAAE;YACX,SAAS,EAAE,eAAe,CAAC,QAAQ,CACjC,kYAAkY,CACnY;YACD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YAC1F,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,6EAA6E,CAAC;YAC1F,GAAG,cAAc;SAClB;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;YACjB,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAChC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACpC,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;iBAChF,QAAQ,EAAE;SACd;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACnE,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC3D,8FAA8F;YAC9F,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,OAAO,EACP,SAAS,EACT,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,EACpC,KAAK,CACN,CAAC;YACF,oGAAoG;YACpG,OAAO,WAAW,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC;KACF;IACD;QACE,IAAI,EAAE,WAAW,CAAC,MAAM;QACxB,WAAW,EACT,ieAAie;QACne,WAAW,EAAE;YACX,SAAS,EAAE,eAAe,CAAC,QAAQ,CACjC,2EAA2E,CAC5E;YACD,UAAU,EAAE,CAAC;iBACV,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,uFAAuF,CACxF;YACH,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,kFAAkF,CACnF;YACH,GAAG,cAAc;SAClB;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;YACjB,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAChC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACpC,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,6EAA6E,CAAC;YAC1F,OAAO,EAAE,CAAC;iBACP,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;iBAChF,QAAQ,EAAE;SACd;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;YAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACnE,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC;YAClD,8FAA8F;YAC9F,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YACtE,MAAM,OAAO,GACX,OAAO,GAAG,CAAC;gBACT,CAAC,CAAC,MAAM,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC;gBAC5D,CAAC,CAAC,MAAM,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACzD,8FAA8F;YAC9F,4FAA4F;YAC5F,MAAM,MAAM,GACV,OAAO,CAAC,IAAI,IAAI,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,OAAO,WAAW,CAAC,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACrF,CAAC;KACF;IACD;QACE,IAAI,EAAE,WAAW,CAAC,OAAO;QACzB,WAAW,EACT,kMAAkM;QACpM,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,sFAAsF,CACvF;YACH,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,4DAA4D,CAAC;YACzE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YAC3F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;YACvF,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,6HAA6H,CAC9H;YACH,GAAG,cAAc;SAClB;QACD,YAAY,EAAE;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAC3B,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0DAA0D,CAAC;YACvE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACxF,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;YACtF,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE;YACpE,GAAG,iBAAiB;SACrB;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACnE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YACvC,qFAAqF;YACrF,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YACxD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;YAC/E,0DAA0D;YAC1D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9C,OAAO,OAAO,CAAC,OAAO,CACpB,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CACxE,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7E,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC3C,OAAO,OAAO,CAAC,OAAO,CACpB,YAAY,CACV,aAAa,GAAG,CAAC;gBACf,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE;gBAC5D,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,MAAM,EAAE,CACzB,CACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,IAAI,EAAE,WAAW,CAAC,OAAO;QACzB,WAAW,EACT,iNAAiN;QACnN,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,yEAAyE,CAAC;YACtF,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,mFAAmF,CACpF;YACH,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,4IAA4I,CAC7I;YACH,GAAG,cAAc;SAClB;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YAC1B,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,0DAA0D,CAAC;YACvE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACxF,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;YACvF,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE;YACpE,GAAG,iBAAiB;SACrB;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YACnE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YACvC,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;YACjE,+EAA+E;YAC/E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClD,OAAO,OAAO,CAAC,OAAO,CACpB,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAC/E,CAAC;YACJ,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7E,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC7C,OAAO,OAAO,CAAC,OAAO,CACpB,YAAY,CACV,aAAa,GAAG,CAAC;gBACf,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE;gBAC3D,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CACxB,CACF,CAAC;QACJ,CAAC;KACF;IACD;QACE,IAAI,EAAE,WAAW,CAAC,UAAU;QAC5B,WAAW,EAAE,wEAAwE;QACrF,WAAW,EAAE,EAAE,GAAG,cAAc,EAAE;QAClC,YAAY,EAAE;YACZ,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;SACjC;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CACtB,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,EAAE,cAAc,CAAC,UAAU,EAAE,EAAE,CAAC;KACnF;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"observe-tools.js","sourceRoot":"","sources":["../../src/tools/observe-tools.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/profiles.d.ts
CHANGED
|
@@ -1,25 +1,30 @@
|
|
|
1
1
|
import type { ToolDef } from './tools.js';
|
|
2
2
|
/**
|
|
3
3
|
* Which MCP tool surface to expose. The advertised tool DEFINITIONS are re-sent to the model on
|
|
4
|
-
* every turn, so a smaller surface is a per-turn token saving that compounds across a loop
|
|
5
|
-
*
|
|
6
|
-
* model wander less (fewer turns, higher accuracy). See bench/LAYER-B.md.
|
|
4
|
+
* every turn, so a smaller surface is a per-turn token saving that compounds across a loop. Fewer
|
|
5
|
+
* tools also makes the model wander less (fewer turns, higher accuracy). See bench/agent-loop-and-replay.md.
|
|
7
6
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
7
|
+
* MEASURED surface sizes (assert them with profile-reachability.test.ts rather than trusting prose —
|
|
8
|
+
* every count previously written here was wrong, and the token figures below derive from those counts):
|
|
9
|
+
* core 14 · standard 32 · hybrid 14 · full 41 · dynamic 2
|
|
10
|
+
* core and hybrid are both 14 because a trimmed profile now also advertises the two meta-tools, which
|
|
11
|
+
* is what keeps an un-advertised tool reachable through reticle_run.
|
|
12
|
+
*
|
|
13
|
+
* core — the verify loop a coding agent actually needs: navigate→look→act→observe→assert,
|
|
14
|
+
* WITH direct network + console + state observability (the highest-signal checks).
|
|
15
|
+
* The recommended profile for agent-driven verification.
|
|
16
|
+
* standard — core + common extras (inspect, sequences, animations, flows, session lifecycle,
|
|
17
|
+
* scroll, baselines, …). For agents that need more than the bare loop.
|
|
18
|
+
* hybrid — THE DEFAULT: core verify+oracle tools advertised directly + 2 meta-tools for on-demand
|
|
19
|
+
* reach to everything else. Core accuracy/detection at ~64% less schema tax than full.
|
|
20
|
+
* full — all tools advertised directly. Opt in via RETICLE_TOOL_PROFILE=full for hard-call scripts.
|
|
16
21
|
*/
|
|
17
22
|
export declare const TOOL_PROFILE: {
|
|
18
23
|
/** dynamic — advertise only 2 meta-tools (reticle_tools + reticle_run); load real tools on demand.
|
|
19
|
-
*
|
|
24
|
+
* Fixed ~hundreds of tokens/turn regardless of how many tools exist. See dynamic-tools.ts. */
|
|
20
25
|
readonly DYNAMIC: "dynamic";
|
|
21
26
|
/** hybrid — the core verify tools advertised directly (so the agent acts reliably) PLUS the 2
|
|
22
|
-
*
|
|
27
|
+
* meta-tools for on-demand reach to every other tool. Core accuracy + full reach at ~core cost. */
|
|
23
28
|
readonly HYBRID: "hybrid";
|
|
24
29
|
readonly CORE: "core";
|
|
25
30
|
readonly STANDARD: "standard";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../src/tools/profiles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C
|
|
1
|
+
{"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../src/tools/profiles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,YAAY;IACvB;kGAC8F;;IAE9F;uGACmG;;;;;CAK3F,CAAC;AACX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE3E,eAAO,MAAM,gBAAgB,yBAAyB,CAAC;AAmBvD,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,MAAM,CAa9C,CAAC;AA0BH,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,WAAW,CAWjE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,EAAE,CAK7E"}
|
package/dist/tools/profiles.js
CHANGED
|
@@ -1,37 +1,53 @@
|
|
|
1
1
|
import { ReticleTool } from './tool-names.js';
|
|
2
2
|
/**
|
|
3
3
|
* Which MCP tool surface to expose. The advertised tool DEFINITIONS are re-sent to the model on
|
|
4
|
-
* every turn, so a smaller surface is a per-turn token saving that compounds across a loop
|
|
5
|
-
*
|
|
6
|
-
* model wander less (fewer turns, higher accuracy). See bench/LAYER-B.md.
|
|
4
|
+
* every turn, so a smaller surface is a per-turn token saving that compounds across a loop. Fewer
|
|
5
|
+
* tools also makes the model wander less (fewer turns, higher accuracy). See bench/agent-loop-and-replay.md.
|
|
7
6
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
7
|
+
* MEASURED surface sizes (assert them with profile-reachability.test.ts rather than trusting prose —
|
|
8
|
+
* every count previously written here was wrong, and the token figures below derive from those counts):
|
|
9
|
+
* core 14 · standard 32 · hybrid 14 · full 41 · dynamic 2
|
|
10
|
+
* core and hybrid are both 14 because a trimmed profile now also advertises the two meta-tools, which
|
|
11
|
+
* is what keeps an un-advertised tool reachable through reticle_run.
|
|
12
|
+
*
|
|
13
|
+
* core — the verify loop a coding agent actually needs: navigate→look→act→observe→assert,
|
|
14
|
+
* WITH direct network + console + state observability (the highest-signal checks).
|
|
15
|
+
* The recommended profile for agent-driven verification.
|
|
16
|
+
* standard — core + common extras (inspect, sequences, animations, flows, session lifecycle,
|
|
17
|
+
* scroll, baselines, …). For agents that need more than the bare loop.
|
|
18
|
+
* hybrid — THE DEFAULT: core verify+oracle tools advertised directly + 2 meta-tools for on-demand
|
|
19
|
+
* reach to everything else. Core accuracy/detection at ~64% less schema tax than full.
|
|
20
|
+
* full — all tools advertised directly. Opt in via RETICLE_TOOL_PROFILE=full for hard-call scripts.
|
|
16
21
|
*/
|
|
17
22
|
export const TOOL_PROFILE = {
|
|
18
23
|
/** dynamic — advertise only 2 meta-tools (reticle_tools + reticle_run); load real tools on demand.
|
|
19
|
-
*
|
|
24
|
+
* Fixed ~hundreds of tokens/turn regardless of how many tools exist. See dynamic-tools.ts. */
|
|
20
25
|
DYNAMIC: 'dynamic',
|
|
21
26
|
/** hybrid — the core verify tools advertised directly (so the agent acts reliably) PLUS the 2
|
|
22
|
-
*
|
|
27
|
+
* meta-tools for on-demand reach to every other tool. Core accuracy + full reach at ~core cost. */
|
|
23
28
|
HYBRID: 'hybrid',
|
|
24
29
|
CORE: 'core',
|
|
25
30
|
STANDARD: 'standard',
|
|
26
31
|
FULL: 'full',
|
|
27
32
|
};
|
|
28
33
|
export const TOOL_PROFILE_ENV = 'RETICLE_TOOL_PROFILE';
|
|
29
|
-
// The set an agent needs to verify a change end-to-end. Tool DEFINITIONS are re-sent every turn,
|
|
30
|
-
//
|
|
31
|
-
//
|
|
32
|
-
//
|
|
33
|
-
//
|
|
34
|
-
//
|
|
34
|
+
// The set an agent needs to verify a change end-to-end. Tool DEFINITIONS are re-sent every turn, so a
|
|
35
|
+
// smaller surface compounds. Measured per-turn surface cost (bench/first-drive, o200k proxy):
|
|
36
|
+
// core 6,479 tok · standard 13,951 · full 20,441 — the hybrid default is far cheaper per turn than
|
|
37
|
+
// advertising everything. STALE: these were measured against a 12/40/56-tool surface that no longer
|
|
38
|
+
// exists (it is now 14/32/41 after the merge and the escape-hatch change), so treat the ratio as
|
|
39
|
+
// directional and the absolute numbers as needing a re-measure before they are quoted anywhere.
|
|
40
|
+
//
|
|
41
|
+
// There is a floor, though: an 8-tool cut (dropping act/navigate/wait_for/sessions) was MEASURED to
|
|
42
|
+
// regress real-agent accuracy 5/5 → 3/5, because the model loses scaffolding and wanders on harder
|
|
43
|
+
// flows. These 12 are the lean sweet spot. Direct network/console stay (far more discoverable than
|
|
44
|
+
// observe-with-filters → fewer turns, better verdicts).
|
|
45
|
+
//
|
|
46
|
+
// Evidence status: the original 5/5 figure came from a single gpt-4o run and is STALE as a
|
|
47
|
+
// justification. Current-model evidence is indirect but real — the cost-delta run
|
|
48
|
+
// (bench/fix-loop/COST-DELTA.md) drove this hybrid default on a current model and fixed 4/4 cells with
|
|
49
|
+
// ~25% FEWER tool calls than the baseline. A formal core-vs-hybrid A/B on a current model is
|
|
50
|
+
// still UNRUN; do not quote the 5/5 number as if it were current. See bench/agent-loop-and-replay.md.
|
|
35
51
|
export const CORE_TOOL_NAMES = new Set([
|
|
36
52
|
ReticleTool.SESSIONS,
|
|
37
53
|
ReticleTool.NAVIGATE,
|
|
@@ -54,27 +70,17 @@ const STANDARD_TOOL_NAMES = new Set([
|
|
|
54
70
|
ReticleTool.CONSOLE,
|
|
55
71
|
ReticleTool.ANIMATIONS,
|
|
56
72
|
ReticleTool.FLOW_SAVE,
|
|
57
|
-
ReticleTool.FLOW_LIST,
|
|
58
|
-
ReticleTool.FLOW_LOAD,
|
|
59
|
-
ReticleTool.FLOW_DELETE,
|
|
60
73
|
ReticleTool.FLOW_REPLAY,
|
|
61
74
|
ReticleTool.FLOW_VERIFY,
|
|
62
75
|
ReticleTool.FLOW_HEAL,
|
|
63
|
-
ReticleTool.SESSION,
|
|
64
|
-
ReticleTool.
|
|
65
|
-
ReticleTool.
|
|
66
|
-
ReticleTool.
|
|
67
|
-
ReticleTool.MESSAGES,
|
|
68
|
-
ReticleTool.REVIEW,
|
|
69
|
-
ReticleTool.WAIT_READY,
|
|
76
|
+
ReticleTool.SESSION, // merged lifecycle/human-channel family
|
|
77
|
+
ReticleTool.FLOW, // merged flow list/load/delete
|
|
78
|
+
ReticleTool.RECORD, // merged record start/stop
|
|
79
|
+
ReticleTool.BASELINE, // merged baseline save/list/diff
|
|
70
80
|
ReticleTool.SCROLL_TO,
|
|
71
81
|
ReticleTool.CRAWL,
|
|
72
|
-
ReticleTool.RECORD_START,
|
|
73
|
-
ReticleTool.RECORD_STOP,
|
|
74
82
|
ReticleTool.REPLAY,
|
|
75
83
|
ReticleTool.EXPLORE,
|
|
76
|
-
ReticleTool.BASELINE_SAVE,
|
|
77
|
-
ReticleTool.BASELINE_LIST,
|
|
78
84
|
ReticleTool.CONTRACT_SAVE,
|
|
79
85
|
ReticleTool.NETWORK_MOCK,
|
|
80
86
|
ReticleTool.VIEWPORT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../src/tools/profiles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C
|
|
1
|
+
{"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../src/tools/profiles.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,12 +4,19 @@
|
|
|
4
4
|
* expensive part of a tool call is the bytes that land in its context.
|
|
5
5
|
*
|
|
6
6
|
* - count_only: drop the elements array entirely, return just `count` (the agent often only needs
|
|
7
|
-
*
|
|
7
|
+
* "how many?" — e.g. "are there 3 rows now?").
|
|
8
8
|
* - limit: keep the first N descriptors, report `total` + `truncated:true` so the trim is never
|
|
9
|
-
*
|
|
9
|
+
* silent (the agent knows to narrow with name/scope rather than assume it saw everything).
|
|
10
10
|
*
|
|
11
11
|
* Pure and result-shape-tolerant: anything that is not a `{ elements: [...] }` object passes
|
|
12
12
|
* through untouched (a thrown-error envelope, a zero-match hint result, etc.).
|
|
13
|
+
*
|
|
14
|
+
* WHY THE COUNT IS NOT `elements.length`: the browser counts matches against the live DOM and puts
|
|
15
|
+
* that number in `count` before the reply is serialized. The wire sanitizer then caps the elements
|
|
16
|
+
* ARRAY (200 items, plus a node budget that bites sooner on rich descriptors). On a page with
|
|
17
|
+
* thousands of matches the array that arrives here is therefore shorter than the truth, and deriving
|
|
18
|
+
* the count from it reports the transport's cap as though it were the answer — an authoritative-looking
|
|
19
|
+
* number that is silently wrong. `count` survives because it is a scalar. Trust it over the array.
|
|
13
20
|
*/
|
|
14
21
|
export declare function paginateQueryResult(result: unknown, limit: number | undefined, countOnly: boolean): unknown;
|
|
15
22
|
//# sourceMappingURL=query-paginate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-paginate.d.ts","sourceRoot":"","sources":["../../src/tools/query-paginate.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"query-paginate.d.ts","sourceRoot":"","sources":["../../src/tools/query-paginate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,SAAS,EAAE,OAAO,GACjB,OAAO,CA4BT"}
|