@aria-cli/tools 1.0.8 → 1.0.10
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/package.json +9 -6
- package/dist-cjs/.tsbuildinfo +0 -1
- package/dist-cjs/ask-user-interaction.d.ts +0 -10
- package/dist-cjs/ask-user-interaction.js +0 -28
- package/dist-cjs/ask-user-interaction.js.map +0 -1
- package/dist-cjs/cache/web-cache.d.ts +0 -52
- package/dist-cjs/cache/web-cache.js +0 -71
- package/dist-cjs/cache/web-cache.js.map +0 -1
- package/dist-cjs/definitions/arion.d.ts +0 -8
- package/dist-cjs/definitions/arion.js +0 -108
- package/dist-cjs/definitions/arion.js.map +0 -1
- package/dist-cjs/definitions/browser/browser.d.ts +0 -2
- package/dist-cjs/definitions/browser/browser.js +0 -422
- package/dist-cjs/definitions/browser/browser.js.map +0 -1
- package/dist-cjs/definitions/browser/index.d.ts +0 -1
- package/dist-cjs/definitions/browser/index.js +0 -9
- package/dist-cjs/definitions/browser/index.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-downloads.d.ts +0 -13
- package/dist-cjs/definitions/browser/pw-downloads.js +0 -118
- package/dist-cjs/definitions/browser/pw-downloads.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-interactions.d.ts +0 -78
- package/dist-cjs/definitions/browser/pw-interactions.js +0 -214
- package/dist-cjs/definitions/browser/pw-interactions.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-responses.d.ts +0 -28
- package/dist-cjs/definitions/browser/pw-responses.js +0 -85
- package/dist-cjs/definitions/browser/pw-responses.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-session.d.ts +0 -65
- package/dist-cjs/definitions/browser/pw-session.js +0 -327
- package/dist-cjs/definitions/browser/pw-session.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-shared.d.ts +0 -22
- package/dist-cjs/definitions/browser/pw-shared.js +0 -73
- package/dist-cjs/definitions/browser/pw-shared.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-snapshot.d.ts +0 -34
- package/dist-cjs/definitions/browser/pw-snapshot.js +0 -308
- package/dist-cjs/definitions/browser/pw-snapshot.js.map +0 -1
- package/dist-cjs/definitions/browser/pw-state.d.ts +0 -22
- package/dist-cjs/definitions/browser/pw-state.js +0 -71
- package/dist-cjs/definitions/browser/pw-state.js.map +0 -1
- package/dist-cjs/definitions/browser/types.d.ts +0 -277
- package/dist-cjs/definitions/browser/types.js +0 -6
- package/dist-cjs/definitions/browser/types.js.map +0 -1
- package/dist-cjs/definitions/code-intelligence.d.ts +0 -8
- package/dist-cjs/definitions/code-intelligence.js +0 -474
- package/dist-cjs/definitions/code-intelligence.js.map +0 -1
- package/dist-cjs/definitions/core.d.ts +0 -47
- package/dist-cjs/definitions/core.js +0 -134
- package/dist-cjs/definitions/core.js.map +0 -1
- package/dist-cjs/definitions/delegation.d.ts +0 -11
- package/dist-cjs/definitions/delegation.js +0 -516
- package/dist-cjs/definitions/delegation.js.map +0 -1
- package/dist-cjs/definitions/deploy.d.ts +0 -15
- package/dist-cjs/definitions/deploy.js +0 -69
- package/dist-cjs/definitions/deploy.js.map +0 -1
- package/dist-cjs/definitions/filesystem.d.ts +0 -9
- package/dist-cjs/definitions/filesystem.js +0 -200
- package/dist-cjs/definitions/filesystem.js.map +0 -1
- package/dist-cjs/definitions/frg.d.ts +0 -3
- package/dist-cjs/definitions/frg.js +0 -67
- package/dist-cjs/definitions/frg.js.map +0 -1
- package/dist-cjs/definitions/index.d.ts +0 -19
- package/dist-cjs/definitions/index.js +0 -44
- package/dist-cjs/definitions/index.js.map +0 -1
- package/dist-cjs/definitions/memory.d.ts +0 -8
- package/dist-cjs/definitions/memory.js +0 -127
- package/dist-cjs/definitions/memory.js.map +0 -1
- package/dist-cjs/definitions/messaging.d.ts +0 -11
- package/dist-cjs/definitions/messaging.js +0 -632
- package/dist-cjs/definitions/messaging.js.map +0 -1
- package/dist-cjs/definitions/meta.d.ts +0 -11
- package/dist-cjs/definitions/meta.js +0 -353
- package/dist-cjs/definitions/meta.js.map +0 -1
- package/dist-cjs/definitions/network.d.ts +0 -11
- package/dist-cjs/definitions/network.js +0 -163
- package/dist-cjs/definitions/network.js.map +0 -1
- package/dist-cjs/definitions/outlook.d.ts +0 -2
- package/dist-cjs/definitions/outlook.js +0 -281
- package/dist-cjs/definitions/outlook.js.map +0 -1
- package/dist-cjs/definitions/patch/apply-patch.d.ts +0 -11
- package/dist-cjs/definitions/patch/apply-patch.js +0 -192
- package/dist-cjs/definitions/patch/apply-patch.js.map +0 -1
- package/dist-cjs/definitions/patch/fuzzy-match.d.ts +0 -10
- package/dist-cjs/definitions/patch/fuzzy-match.js +0 -173
- package/dist-cjs/definitions/patch/fuzzy-match.js.map +0 -1
- package/dist-cjs/definitions/patch/index.d.ts +0 -1
- package/dist-cjs/definitions/patch/index.js +0 -6
- package/dist-cjs/definitions/patch/index.js.map +0 -1
- package/dist-cjs/definitions/patch/patch-parser.d.ts +0 -50
- package/dist-cjs/definitions/patch/patch-parser.js +0 -216
- package/dist-cjs/definitions/patch/patch-parser.js.map +0 -1
- package/dist-cjs/definitions/patch/sandbox-paths.d.ts +0 -18
- package/dist-cjs/definitions/patch/sandbox-paths.js +0 -114
- package/dist-cjs/definitions/patch/sandbox-paths.js.map +0 -1
- package/dist-cjs/definitions/process/index.d.ts +0 -1
- package/dist-cjs/definitions/process/index.js +0 -9
- package/dist-cjs/definitions/process/index.js.map +0 -1
- package/dist-cjs/definitions/process/process-registry.d.ts +0 -67
- package/dist-cjs/definitions/process/process-registry.js +0 -232
- package/dist-cjs/definitions/process/process-registry.js.map +0 -1
- package/dist-cjs/definitions/process/process.d.ts +0 -9
- package/dist-cjs/definitions/process/process.js +0 -390
- package/dist-cjs/definitions/process/process.js.map +0 -1
- package/dist-cjs/definitions/process/pty-keys.d.ts +0 -13
- package/dist-cjs/definitions/process/pty-keys.js +0 -260
- package/dist-cjs/definitions/process/pty-keys.js.map +0 -1
- package/dist-cjs/definitions/process/session-slug.d.ts +0 -1
- package/dist-cjs/definitions/process/session-slug.js +0 -146
- package/dist-cjs/definitions/process/session-slug.js.map +0 -1
- package/dist-cjs/definitions/quip.d.ts +0 -2
- package/dist-cjs/definitions/quip.js +0 -199
- package/dist-cjs/definitions/quip.js.map +0 -1
- package/dist-cjs/definitions/search.d.ts +0 -9
- package/dist-cjs/definitions/search.js +0 -64
- package/dist-cjs/definitions/search.js.map +0 -1
- package/dist-cjs/definitions/session-history.d.ts +0 -11
- package/dist-cjs/definitions/session-history.js +0 -73
- package/dist-cjs/definitions/session-history.js.map +0 -1
- package/dist-cjs/definitions/shell.d.ts +0 -8
- package/dist-cjs/definitions/shell.js +0 -185
- package/dist-cjs/definitions/shell.js.map +0 -1
- package/dist-cjs/definitions/slack.d.ts +0 -2
- package/dist-cjs/definitions/slack.js +0 -184
- package/dist-cjs/definitions/slack.js.map +0 -1
- package/dist-cjs/definitions/web.d.ts +0 -8
- package/dist-cjs/definitions/web.js +0 -113
- package/dist-cjs/definitions/web.js.map +0 -1
- package/dist-cjs/executors/apply-patch.d.ts +0 -51
- package/dist-cjs/executors/apply-patch.js +0 -939
- package/dist-cjs/executors/apply-patch.js.map +0 -1
- package/dist-cjs/executors/arion.d.ts +0 -50
- package/dist-cjs/executors/arion.js +0 -126
- package/dist-cjs/executors/arion.js.map +0 -1
- package/dist-cjs/executors/code-intelligence.d.ts +0 -138
- package/dist-cjs/executors/code-intelligence.js +0 -926
- package/dist-cjs/executors/code-intelligence.js.map +0 -1
- package/dist-cjs/executors/deploy.d.ts +0 -169
- package/dist-cjs/executors/deploy.js +0 -870
- package/dist-cjs/executors/deploy.js.map +0 -1
- package/dist-cjs/executors/filesystem.d.ts +0 -150
- package/dist-cjs/executors/filesystem.js +0 -1168
- package/dist-cjs/executors/filesystem.js.map +0 -1
- package/dist-cjs/executors/frg-freshness.d.ts +0 -93
- package/dist-cjs/executors/frg-freshness.js +0 -628
- package/dist-cjs/executors/frg-freshness.js.map +0 -1
- package/dist-cjs/executors/frg.d.ts +0 -27
- package/dist-cjs/executors/frg.js +0 -335
- package/dist-cjs/executors/frg.js.map +0 -1
- package/dist-cjs/executors/index.d.ts +0 -44
- package/dist-cjs/executors/index.js +0 -144
- package/dist-cjs/executors/index.js.map +0 -1
- package/dist-cjs/executors/learning-meta.d.ts +0 -87
- package/dist-cjs/executors/learning-meta.js +0 -1166
- package/dist-cjs/executors/learning-meta.js.map +0 -1
- package/dist-cjs/executors/lsp-client.d.ts +0 -38
- package/dist-cjs/executors/lsp-client.js +0 -311
- package/dist-cjs/executors/lsp-client.js.map +0 -1
- package/dist-cjs/executors/memory.d.ts +0 -203
- package/dist-cjs/executors/memory.js +0 -797
- package/dist-cjs/executors/memory.js.map +0 -1
- package/dist-cjs/executors/meta.d.ts +0 -73
- package/dist-cjs/executors/meta.js +0 -227
- package/dist-cjs/executors/meta.js.map +0 -1
- package/dist-cjs/executors/process-registry.d.ts +0 -98
- package/dist-cjs/executors/process-registry.js +0 -470
- package/dist-cjs/executors/process-registry.js.map +0 -1
- package/dist-cjs/executors/pty-session-store.d.ts +0 -14
- package/dist-cjs/executors/pty-session-store.js +0 -35
- package/dist-cjs/executors/pty-session-store.js.map +0 -1
- package/dist-cjs/executors/pty.d.ts +0 -133
- package/dist-cjs/executors/pty.js +0 -313
- package/dist-cjs/executors/pty.js.map +0 -1
- package/dist-cjs/executors/restart.d.ts +0 -13
- package/dist-cjs/executors/restart.js +0 -156
- package/dist-cjs/executors/restart.js.map +0 -1
- package/dist-cjs/executors/search-freshness.d.ts +0 -50
- package/dist-cjs/executors/search-freshness.js +0 -235
- package/dist-cjs/executors/search-freshness.js.map +0 -1
- package/dist-cjs/executors/search-types.d.ts +0 -52
- package/dist-cjs/executors/search-types.js +0 -57
- package/dist-cjs/executors/search-types.js.map +0 -1
- package/dist-cjs/executors/search.d.ts +0 -11
- package/dist-cjs/executors/search.js +0 -103
- package/dist-cjs/executors/search.js.map +0 -1
- package/dist-cjs/executors/self-diagnose.d.ts +0 -89
- package/dist-cjs/executors/self-diagnose.js +0 -435
- package/dist-cjs/executors/self-diagnose.js.map +0 -1
- package/dist-cjs/executors/session-history.d.ts +0 -75
- package/dist-cjs/executors/session-history.js +0 -321
- package/dist-cjs/executors/session-history.js.map +0 -1
- package/dist-cjs/executors/shell-safety.d.ts +0 -27
- package/dist-cjs/executors/shell-safety.js +0 -479
- package/dist-cjs/executors/shell-safety.js.map +0 -1
- package/dist-cjs/executors/shell.d.ts +0 -168
- package/dist-cjs/executors/shell.js +0 -1002
- package/dist-cjs/executors/shell.js.map +0 -1
- package/dist-cjs/executors/utils.d.ts +0 -20
- package/dist-cjs/executors/utils.js +0 -74
- package/dist-cjs/executors/utils.js.map +0 -1
- package/dist-cjs/executors/web.d.ts +0 -89
- package/dist-cjs/executors/web.js +0 -548
- package/dist-cjs/executors/web.js.map +0 -1
- package/dist-cjs/extraction/content-extraction.d.ts +0 -48
- package/dist-cjs/extraction/content-extraction.js +0 -244
- package/dist-cjs/extraction/content-extraction.js.map +0 -1
- package/dist-cjs/extraction/index.d.ts +0 -4
- package/dist-cjs/extraction/index.js +0 -9
- package/dist-cjs/extraction/index.js.map +0 -1
- package/dist-cjs/headless-control-contract.d.ts +0 -3182
- package/dist-cjs/headless-control-contract.js +0 -973
- package/dist-cjs/headless-control-contract.js.map +0 -1
- package/dist-cjs/index.d.ts +0 -62
- package/dist-cjs/index.js +0 -438
- package/dist-cjs/index.js.map +0 -1
- package/dist-cjs/local-control-http-auth.d.ts +0 -2
- package/dist-cjs/local-control-http-auth.js +0 -6
- package/dist-cjs/local-control-http-auth.js.map +0 -1
- package/dist-cjs/mcp/client.d.ts +0 -68
- package/dist-cjs/mcp/client.js +0 -186
- package/dist-cjs/mcp/client.js.map +0 -1
- package/dist-cjs/mcp/connection.d.ts +0 -54
- package/dist-cjs/mcp/connection.js +0 -485
- package/dist-cjs/mcp/connection.js.map +0 -1
- package/dist-cjs/mcp/index.d.ts +0 -10
- package/dist-cjs/mcp/index.js +0 -31
- package/dist-cjs/mcp/index.js.map +0 -1
- package/dist-cjs/mcp/jsonrpc.d.ts +0 -36
- package/dist-cjs/mcp/jsonrpc.js +0 -149
- package/dist-cjs/mcp/jsonrpc.js.map +0 -1
- package/dist-cjs/mcp/types.d.ts +0 -178
- package/dist-cjs/mcp/types.js +0 -9
- package/dist-cjs/mcp/types.js.map +0 -1
- package/dist-cjs/network-control-adapter.d.ts +0 -4
- package/dist-cjs/network-control-adapter.js +0 -78
- package/dist-cjs/network-control-adapter.js.map +0 -1
- package/dist-cjs/network-runtime/address-types.d.ts +0 -201
- package/dist-cjs/network-runtime/address-types.js +0 -169
- package/dist-cjs/network-runtime/address-types.js.map +0 -1
- package/dist-cjs/network-runtime/db-owner-fencing.d.ts +0 -43
- package/dist-cjs/network-runtime/db-owner-fencing.js +0 -77
- package/dist-cjs/network-runtime/db-owner-fencing.js.map +0 -1
- package/dist-cjs/network-runtime/delivery-receipts.d.ts +0 -117
- package/dist-cjs/network-runtime/delivery-receipts.js +0 -277
- package/dist-cjs/network-runtime/delivery-receipts.js.map +0 -1
- package/dist-cjs/network-runtime/direct-endpoint-authority.d.ts +0 -8
- package/dist-cjs/network-runtime/direct-endpoint-authority.js +0 -30
- package/dist-cjs/network-runtime/direct-endpoint-authority.js.map +0 -1
- package/dist-cjs/network-runtime/index.d.ts +0 -24
- package/dist-cjs/network-runtime/index.js +0 -173
- package/dist-cjs/network-runtime/index.js.map +0 -1
- package/dist-cjs/network-runtime/local-control-contract.d.ts +0 -758
- package/dist-cjs/network-runtime/local-control-contract.js +0 -634
- package/dist-cjs/network-runtime/local-control-contract.js.map +0 -1
- package/dist-cjs/network-runtime/node-store-contract.d.ts +0 -49
- package/dist-cjs/network-runtime/node-store-contract.js +0 -39
- package/dist-cjs/network-runtime/node-store-contract.js.map +0 -1
- package/dist-cjs/network-runtime/pair-route-contract.d.ts +0 -100
- package/dist-cjs/network-runtime/pair-route-contract.js +0 -81
- package/dist-cjs/network-runtime/pair-route-contract.js.map +0 -1
- package/dist-cjs/network-runtime/peer-capabilities.d.ts +0 -10
- package/dist-cjs/network-runtime/peer-capabilities.js +0 -38
- package/dist-cjs/network-runtime/peer-capabilities.js.map +0 -1
- package/dist-cjs/network-runtime/peer-principal-ref.d.ts +0 -9
- package/dist-cjs/network-runtime/peer-principal-ref.js +0 -16
- package/dist-cjs/network-runtime/peer-principal-ref.js.map +0 -1
- package/dist-cjs/network-runtime/peer-state-machine.d.ts +0 -70
- package/dist-cjs/network-runtime/peer-state-machine.js +0 -130
- package/dist-cjs/network-runtime/peer-state-machine.js.map +0 -1
- package/dist-cjs/network-runtime/protocol-schemas.d.ts +0 -328
- package/dist-cjs/network-runtime/protocol-schemas.js +0 -213
- package/dist-cjs/network-runtime/protocol-schemas.js.map +0 -1
- package/dist-cjs/network-runtime/runtime-bootstrap-contract.d.ts +0 -81
- package/dist-cjs/network-runtime/runtime-bootstrap-contract.js +0 -64
- package/dist-cjs/network-runtime/runtime-bootstrap-contract.js.map +0 -1
- package/dist-cjs/outlook/desktop-session.d.ts +0 -68
- package/dist-cjs/outlook/desktop-session.js +0 -319
- package/dist-cjs/outlook/desktop-session.js.map +0 -1
- package/dist-cjs/package.json +0 -3
- package/dist-cjs/policy.d.ts +0 -43
- package/dist-cjs/policy.js +0 -156
- package/dist-cjs/policy.js.map +0 -1
- package/dist-cjs/providers/brave.d.ts +0 -10
- package/dist-cjs/providers/brave.js +0 -67
- package/dist-cjs/providers/brave.js.map +0 -1
- package/dist-cjs/providers/duckduckgo.d.ts +0 -18
- package/dist-cjs/providers/duckduckgo.js +0 -181
- package/dist-cjs/providers/duckduckgo.js.map +0 -1
- package/dist-cjs/providers/exa.d.ts +0 -10
- package/dist-cjs/providers/exa.js +0 -68
- package/dist-cjs/providers/exa.js.map +0 -1
- package/dist-cjs/providers/firecrawl.d.ts +0 -10
- package/dist-cjs/providers/firecrawl.js +0 -60
- package/dist-cjs/providers/firecrawl.js.map +0 -1
- package/dist-cjs/providers/index.d.ts +0 -8
- package/dist-cjs/providers/index.js +0 -18
- package/dist-cjs/providers/index.js.map +0 -1
- package/dist-cjs/providers/jina.d.ts +0 -10
- package/dist-cjs/providers/jina.js +0 -54
- package/dist-cjs/providers/jina.js.map +0 -1
- package/dist-cjs/providers/router.d.ts +0 -21
- package/dist-cjs/providers/router.js +0 -101
- package/dist-cjs/providers/router.js.map +0 -1
- package/dist-cjs/providers/search-provider.d.ts +0 -35
- package/dist-cjs/providers/search-provider.js +0 -37
- package/dist-cjs/providers/search-provider.js.map +0 -1
- package/dist-cjs/providers/tavily.d.ts +0 -10
- package/dist-cjs/providers/tavily.js +0 -59
- package/dist-cjs/providers/tavily.js.map +0 -1
- package/dist-cjs/quip/desktop-session.d.ts +0 -69
- package/dist-cjs/quip/desktop-session.js +0 -354
- package/dist-cjs/quip/desktop-session.js.map +0 -1
- package/dist-cjs/registry/index.d.ts +0 -1
- package/dist-cjs/registry/index.js +0 -7
- package/dist-cjs/registry/index.js.map +0 -1
- package/dist-cjs/registry/registry.d.ts +0 -156
- package/dist-cjs/registry/registry.js +0 -762
- package/dist-cjs/registry/registry.js.map +0 -1
- package/dist-cjs/runtime-socket-local-control-client.d.ts +0 -10
- package/dist-cjs/runtime-socket-local-control-client.js +0 -368
- package/dist-cjs/runtime-socket-local-control-client.js.map +0 -1
- package/dist-cjs/security/dns-normalization.d.ts +0 -6
- package/dist-cjs/security/dns-normalization.js +0 -23
- package/dist-cjs/security/dns-normalization.js.map +0 -1
- package/dist-cjs/security/dns-pinning.d.ts +0 -27
- package/dist-cjs/security/dns-pinning.js +0 -161
- package/dist-cjs/security/dns-pinning.js.map +0 -1
- package/dist-cjs/security/external-content.d.ts +0 -40
- package/dist-cjs/security/external-content.js +0 -96
- package/dist-cjs/security/external-content.js.map +0 -1
- package/dist-cjs/security/ssrf.d.ts +0 -40
- package/dist-cjs/security/ssrf.js +0 -222
- package/dist-cjs/security/ssrf.js.map +0 -1
- package/dist-cjs/slack/desktop-session.d.ts +0 -69
- package/dist-cjs/slack/desktop-session.js +0 -367
- package/dist-cjs/slack/desktop-session.js.map +0 -1
- package/dist-cjs/tool-factory.d.ts +0 -46
- package/dist-cjs/tool-factory.js +0 -51
- package/dist-cjs/tool-factory.js.map +0 -1
- package/dist-cjs/types.d.ts +0 -1192
- package/dist-cjs/types.js +0 -9
- package/dist-cjs/types.js.map +0 -1
- package/dist-cjs/utils/retry.d.ts +0 -11
- package/dist-cjs/utils/retry.js +0 -170
- package/dist-cjs/utils/retry.js.map +0 -1
- package/dist-cjs/utils/safe-parse-json.d.ts +0 -26
- package/dist-cjs/utils/safe-parse-json.js +0 -165
- package/dist-cjs/utils/safe-parse-json.js.map +0 -1
- package/dist-cjs/utils/url.d.ts +0 -10
- package/dist-cjs/utils/url.js +0 -24
- package/dist-cjs/utils/url.js.map +0 -1
- package/src/__tests__/web-fetch-download.test.ts +0 -433
- package/src/__tests__/web-tools.test.ts +0 -619
- package/src/ask-user-interaction.ts +0 -33
- package/src/cache/web-cache.ts +0 -110
- package/src/definitions/arion.ts +0 -118
- package/src/definitions/browser/browser.ts +0 -502
- package/src/definitions/browser/index.ts +0 -5
- package/src/definitions/browser/pw-downloads.ts +0 -142
- package/src/definitions/browser/pw-interactions.ts +0 -282
- package/src/definitions/browser/pw-responses.ts +0 -98
- package/src/definitions/browser/pw-session.ts +0 -405
- package/src/definitions/browser/pw-shared.ts +0 -85
- package/src/definitions/browser/pw-snapshot.ts +0 -383
- package/src/definitions/browser/pw-state.ts +0 -101
- package/src/definitions/browser/types.ts +0 -203
- package/src/definitions/code-intelligence.ts +0 -526
- package/src/definitions/core.ts +0 -118
- package/src/definitions/delegation.ts +0 -567
- package/src/definitions/deploy.ts +0 -73
- package/src/definitions/filesystem.ts +0 -217
- package/src/definitions/frg.ts +0 -67
- package/src/definitions/index.ts +0 -28
- package/src/definitions/memory.ts +0 -150
- package/src/definitions/messaging.ts +0 -734
- package/src/definitions/meta.ts +0 -392
- package/src/definitions/network.ts +0 -179
- package/src/definitions/outlook.ts +0 -318
- package/src/definitions/patch/apply-patch.ts +0 -235
- package/src/definitions/patch/fuzzy-match.ts +0 -217
- package/src/definitions/patch/index.ts +0 -1
- package/src/definitions/patch/patch-parser.ts +0 -297
- package/src/definitions/patch/sandbox-paths.ts +0 -129
- package/src/definitions/process/index.ts +0 -5
- package/src/definitions/process/process-registry.ts +0 -303
- package/src/definitions/process/process.ts +0 -456
- package/src/definitions/process/pty-keys.ts +0 -298
- package/src/definitions/process/session-slug.ts +0 -147
- package/src/definitions/quip.ts +0 -225
- package/src/definitions/search.ts +0 -67
- package/src/definitions/session-history.ts +0 -79
- package/src/definitions/shell.ts +0 -202
- package/src/definitions/slack.ts +0 -211
- package/src/definitions/web.ts +0 -119
- package/src/executors/apply-patch.ts +0 -1035
- package/src/executors/arion.ts +0 -199
- package/src/executors/code-intelligence.ts +0 -1179
- package/src/executors/deploy.ts +0 -1066
- package/src/executors/filesystem.ts +0 -1428
- package/src/executors/frg-freshness.ts +0 -743
- package/src/executors/frg.ts +0 -394
- package/src/executors/index.ts +0 -280
- package/src/executors/learning-meta.ts +0 -1367
- package/src/executors/lsp-client.ts +0 -355
- package/src/executors/memory.ts +0 -978
- package/src/executors/meta.ts +0 -293
- package/src/executors/process-registry.ts +0 -570
- package/src/executors/pty-session-store.ts +0 -43
- package/src/executors/pty.ts +0 -342
- package/src/executors/restart.ts +0 -133
- package/src/executors/search-freshness.ts +0 -249
- package/src/executors/search-types.ts +0 -98
- package/src/executors/search.ts +0 -89
- package/src/executors/self-diagnose.ts +0 -552
- package/src/executors/session-history.ts +0 -435
- package/src/executors/shell-safety.ts +0 -519
- package/src/executors/shell.ts +0 -1243
- package/src/executors/utils.ts +0 -40
- package/src/executors/web.ts +0 -786
- package/src/extraction/content-extraction.ts +0 -281
- package/src/extraction/index.ts +0 -5
- package/src/headless-control-contract.ts +0 -1149
- package/src/index.ts +0 -788
- package/src/local-control-http-auth.ts +0 -2
- package/src/mcp/client.ts +0 -218
- package/src/mcp/connection.ts +0 -568
- package/src/mcp/index.ts +0 -11
- package/src/mcp/jsonrpc.ts +0 -195
- package/src/mcp/types.ts +0 -199
- package/src/network-control-adapter.ts +0 -88
- package/src/network-runtime/address-types.ts +0 -218
- package/src/network-runtime/db-owner-fencing.ts +0 -91
- package/src/network-runtime/delivery-receipts.ts +0 -372
- package/src/network-runtime/direct-endpoint-authority.ts +0 -35
- package/src/network-runtime/index.ts +0 -316
- package/src/network-runtime/local-control-contract.ts +0 -784
- package/src/network-runtime/node-store-contract.ts +0 -46
- package/src/network-runtime/pair-route-contract.ts +0 -97
- package/src/network-runtime/peer-capabilities.ts +0 -48
- package/src/network-runtime/peer-principal-ref.ts +0 -20
- package/src/network-runtime/peer-state-machine.ts +0 -160
- package/src/network-runtime/protocol-schemas.ts +0 -265
- package/src/network-runtime/runtime-bootstrap-contract.ts +0 -83
- package/src/outlook/desktop-session.ts +0 -409
- package/src/policy.ts +0 -171
- package/src/providers/brave.ts +0 -80
- package/src/providers/duckduckgo.ts +0 -199
- package/src/providers/exa.ts +0 -85
- package/src/providers/firecrawl.ts +0 -77
- package/src/providers/index.ts +0 -8
- package/src/providers/jina.ts +0 -70
- package/src/providers/router.ts +0 -121
- package/src/providers/search-provider.ts +0 -74
- package/src/providers/tavily.ts +0 -74
- package/src/quip/desktop-session.ts +0 -435
- package/src/registry/index.ts +0 -1
- package/src/registry/registry.ts +0 -905
- package/src/runtime-socket-local-control-client.ts +0 -632
- package/src/security/dns-normalization.ts +0 -34
- package/src/security/dns-pinning.ts +0 -138
- package/src/security/external-content.ts +0 -129
- package/src/security/ssrf.ts +0 -207
- package/src/slack/desktop-session.ts +0 -493
- package/src/tool-factory.ts +0 -91
- package/src/types.ts +0 -1341
- package/src/utils/retry.ts +0 -163
- package/src/utils/safe-parse-json.ts +0 -176
- package/src/utils/url.ts +0 -20
- package/tests/benchmarks/registry.bench.ts +0 -57
- package/tests/cache/web-cache.test.ts +0 -147
- package/tests/critical-integration.test.ts +0 -1465
- package/tests/definitions/apply-patch.test.ts +0 -586
- package/tests/definitions/browser.test.ts +0 -495
- package/tests/definitions/delegation-pause-resume.test.ts +0 -758
- package/tests/definitions/execution.test.ts +0 -671
- package/tests/definitions/messaging-inbox-scope.test.ts +0 -229
- package/tests/definitions/messaging.test.ts +0 -1468
- package/tests/definitions/outlook.test.ts +0 -30
- package/tests/definitions/process.test.ts +0 -469
- package/tests/definitions/slack.test.ts +0 -28
- package/tests/definitions/tool-inventory.test.ts +0 -218
- package/tests/e2e/delegation-quest-orchestration.e2e.test.ts +0 -433
- package/tests/e2e/memory-tool-discovery-contract.e2e.test.ts +0 -81
- package/tests/executors/apply-patch.test.ts +0 -538
- package/tests/executors/arion.test.ts +0 -309
- package/tests/executors/conversation-primitives.test.ts +0 -250
- package/tests/executors/deploy.test.ts +0 -746
- package/tests/executors/filesystem-tools.test.ts +0 -357
- package/tests/executors/filesystem.test.ts +0 -959
- package/tests/executors/frg-freshness.test.ts +0 -136
- package/tests/executors/frg-merge.test.ts +0 -70
- package/tests/executors/frg-session-content.test.ts +0 -40
- package/tests/executors/frg.test.ts +0 -56
- package/tests/executors/memory-bugfixes.test.ts +0 -257
- package/tests/executors/memory-real-memoria.integration.test.ts +0 -316
- package/tests/executors/memory.test.ts +0 -853
- package/tests/executors/meta-tools.test.ts +0 -411
- package/tests/executors/meta.test.ts +0 -683
- package/tests/executors/path-containment.test.ts +0 -51
- package/tests/executors/process-registry.test.ts +0 -505
- package/tests/executors/pty.test.ts +0 -664
- package/tests/executors/quest-security.test.ts +0 -249
- package/tests/executors/read-file-media.test.ts +0 -230
- package/tests/executors/recall-knowledge-schema.test.ts +0 -209
- package/tests/executors/recall-tags.test.ts +0 -278
- package/tests/executors/remember-null-safety.contract.test.ts +0 -41
- package/tests/executors/restart.test.ts +0 -67
- package/tests/executors/search-unified.test.ts +0 -381
- package/tests/executors/session-history.test.ts +0 -340
- package/tests/executors/session-transcript.test.ts +0 -561
- package/tests/executors/shell-abort.test.ts +0 -416
- package/tests/executors/shell-env-blocklist.test.ts +0 -648
- package/tests/executors/shell-env-process.test.ts +0 -245
- package/tests/executors/shell-process-registry.test.ts +0 -334
- package/tests/executors/shell-tools.test.ts +0 -393
- package/tests/executors/shell.test.ts +0 -690
- package/tests/executors/web-abort-vs-timeout.test.ts +0 -213
- package/tests/executors/web-integration.test.ts +0 -633
- package/tests/executors/web-symlink.test.ts +0 -18
- package/tests/executors/web.test.ts +0 -1400
- package/tests/executors/write-stdin.test.ts +0 -145
- package/tests/extraction/content-extraction.test.ts +0 -153
- package/tests/guards/tools-default-test-lane.integration.test.ts +0 -21
- package/tests/guards/tools-package-test-commands.e2e.test.ts +0 -43
- package/tests/guards/tools-test-lane-manifest.contract.test.ts +0 -76
- package/tests/guards/tools-vitest-workspace-alias.contract.test.ts +0 -63
- package/tests/helpers/async-waits.ts +0 -53
- package/tests/integration/headless-control-contract.integration.test.ts +0 -153
- package/tests/integration/memory-tool-schema-parity.integration.test.ts +0 -67
- package/tests/integration/meta-tools-round-trip.integration.test.ts +0 -506
- package/tests/integration/quest-round-trip.test.ts +0 -303
- package/tests/integration/registry-executor-flow.test.ts +0 -85
- package/tests/integration.test.ts +0 -177
- package/tests/loading-tier.test.ts +0 -126
- package/tests/mcp/client-reconnect.test.ts +0 -267
- package/tests/mcp/connection.test.ts +0 -846
- package/tests/mcp/injectable-logger.test.ts +0 -83
- package/tests/mcp/jsonrpc.test.ts +0 -109
- package/tests/mcp/lifecycle.test.ts +0 -879
- package/tests/network-runtime/address-types.contract.test.ts +0 -143
- package/tests/network-runtime/continuity-bind-schema.contract.test.ts +0 -203
- package/tests/network-runtime/local-control-contract.test.ts +0 -869
- package/tests/network-runtime/local-control-invite-token.contract.test.ts +0 -146
- package/tests/network-runtime/node-store-contract.test.ts +0 -11
- package/tests/network-runtime/pair-protocol-nodeid.contract.test.ts +0 -15
- package/tests/network-runtime/peer-state-machine.contract.test.ts +0 -148
- package/tests/network-runtime/protocol-schemas.contract.test.ts +0 -512
- package/tests/network-runtime/relay-pending-nodeid.contract.test.ts +0 -62
- package/tests/network-runtime/runtime-bootstrap-contract.test.ts +0 -227
- package/tests/network-runtime/runtime-socket-local-control-client.test.ts +0 -621
- package/tests/network-runtime/wait-for-message-script.test.ts +0 -288
- package/tests/parallel.test.ts +0 -71
- package/tests/policy.test.ts +0 -184
- package/tests/print-default-test-lane.ts +0 -14
- package/tests/print-test-lane-manifest.ts +0 -22
- package/tests/providers/brave.test.ts +0 -159
- package/tests/providers/duckduckgo.test.ts +0 -207
- package/tests/providers/exa.test.ts +0 -175
- package/tests/providers/firecrawl.test.ts +0 -168
- package/tests/providers/jina.test.ts +0 -144
- package/tests/providers/router.test.ts +0 -328
- package/tests/providers/tavily.test.ts +0 -165
- package/tests/registry/discovery.test.ts +0 -154
- package/tests/registry/injectable-logger.test.ts +0 -230
- package/tests/registry/input-validation.test.ts +0 -361
- package/tests/registry/interface-completeness.test.ts +0 -85
- package/tests/registry/mcp-integration.test.ts +0 -103
- package/tests/registry/mcp-read-only-hint.test.ts +0 -60
- package/tests/registry/memoria-discovery.test.ts +0 -390
- package/tests/registry/nested-validation.test.ts +0 -283
- package/tests/registry/pseudo-tool-filtering.test.ts +0 -258
- package/tests/registry/registration-lifecycle.test.ts +0 -133
- package/tests/registry-validation.test.ts +0 -424
- package/tests/registry.test.ts +0 -460
- package/tests/security/dns-pinning.test.ts +0 -162
- package/tests/security/external-content.test.ts +0 -144
- package/tests/security/ssrf.test.ts +0 -118
- package/tests/shell-safety-integration.test.ts +0 -32
- package/tests/shell-safety.test.ts +0 -365
- package/tests/slack/desktop-session.test.ts +0 -50
- package/tests/test-lane-manifest.ts +0 -440
- package/tests/test-utils.ts +0 -27
- package/tests/tool-factory.test.ts +0 -188
- package/tests/utils/retry.test.ts +0 -231
- package/tests/utils/url.test.ts +0 -63
- package/tsconfig.cjs.json +0 -24
- package/tsconfig.json +0 -12
- package/vitest.config.ts +0 -55
- package/vitest.e2e.config.ts +0 -24
- package/vitest.integration.config.ts +0 -24
- package/vitest.native.config.ts +0 -24
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @aria/tools - WriteStdin executor tests
|
|
3
|
-
*
|
|
4
|
-
* Tests for the write_stdin tool that sends input to interactive PTY sessions.
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
import { describe, it, expect, vi } from "vitest";
|
|
8
|
-
import type { ToolContext, PTYSessionStoreRef } from "../../src/types.js";
|
|
9
|
-
import { executeWriteStdin } from "../../src/executors/shell.js";
|
|
10
|
-
|
|
11
|
-
// Helper to create a base context
|
|
12
|
-
const createContext = (overrides?: Partial<ToolContext>): ToolContext => ({
|
|
13
|
-
workingDir: "/test/dir",
|
|
14
|
-
env: {},
|
|
15
|
-
confirm: async () => true,
|
|
16
|
-
...overrides,
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
// Helper to create a mock PTY session
|
|
20
|
-
const createMockPTYSession = (overrides?: {
|
|
21
|
-
isRunning?: boolean;
|
|
22
|
-
output?: string;
|
|
23
|
-
exitCode?: number;
|
|
24
|
-
}) => {
|
|
25
|
-
let _output = overrides?.output ?? "";
|
|
26
|
-
return {
|
|
27
|
-
get isRunning() {
|
|
28
|
-
return overrides?.isRunning ?? true;
|
|
29
|
-
},
|
|
30
|
-
get output() {
|
|
31
|
-
return _output;
|
|
32
|
-
},
|
|
33
|
-
get exitCode() {
|
|
34
|
-
return overrides?.exitCode;
|
|
35
|
-
},
|
|
36
|
-
write: vi.fn((data: string) => {
|
|
37
|
-
// Simulate output appearing after write
|
|
38
|
-
_output += `echo: ${data}`;
|
|
39
|
-
}),
|
|
40
|
-
resize: vi.fn(),
|
|
41
|
-
pid: 12345,
|
|
42
|
-
};
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
// Helper to create a mock PTY session store
|
|
46
|
-
const createMockPTYStore = (
|
|
47
|
-
sessions: Map<number, ReturnType<typeof createMockPTYSession>>,
|
|
48
|
-
): PTYSessionStoreRef => ({
|
|
49
|
-
has: (pid: number) => sessions.has(pid),
|
|
50
|
-
get: (pid: number) => sessions.get(pid),
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
describe("WriteStdin Executor", () => {
|
|
54
|
-
it("returns error for PID 0", async () => {
|
|
55
|
-
const ctx = createContext();
|
|
56
|
-
const result = await executeWriteStdin({ pid: 0, input: "hello" }, ctx);
|
|
57
|
-
|
|
58
|
-
expect(result.success).toBe(false);
|
|
59
|
-
expect(result.message).toContain("Invalid PID");
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
it("returns error for own process PID", async () => {
|
|
63
|
-
const ctx = createContext();
|
|
64
|
-
const result = await executeWriteStdin({ pid: process.pid, input: "hello" }, ctx);
|
|
65
|
-
|
|
66
|
-
expect(result.success).toBe(false);
|
|
67
|
-
expect(result.message).toContain("Cannot write to own process");
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
it("returns error when ptySessionStore is not available", async () => {
|
|
71
|
-
const ctx = createContext(); // no ptySessionStore
|
|
72
|
-
|
|
73
|
-
const result = await executeWriteStdin({ pid: 999, input: "hello" }, ctx);
|
|
74
|
-
|
|
75
|
-
expect(result.success).toBe(false);
|
|
76
|
-
expect(result.message).toContain("PTY session store not available");
|
|
77
|
-
});
|
|
78
|
-
|
|
79
|
-
it("returns error for unknown PID (not in store)", async () => {
|
|
80
|
-
const sessions = new Map();
|
|
81
|
-
const ctx = createContext({
|
|
82
|
-
ptySessionStore: createMockPTYStore(sessions),
|
|
83
|
-
});
|
|
84
|
-
|
|
85
|
-
const result = await executeWriteStdin({ pid: 9999, input: "hello" }, ctx);
|
|
86
|
-
|
|
87
|
-
expect(result.success).toBe(false);
|
|
88
|
-
expect(result.message).toContain("No interactive session found");
|
|
89
|
-
expect(result.message).toContain("9999");
|
|
90
|
-
});
|
|
91
|
-
|
|
92
|
-
it("writes to session and returns output", async () => {
|
|
93
|
-
const mockSession = createMockPTYSession();
|
|
94
|
-
const sessions = new Map<number, ReturnType<typeof createMockPTYSession>>();
|
|
95
|
-
sessions.set(12345, mockSession);
|
|
96
|
-
const ctx = createContext({
|
|
97
|
-
ptySessionStore: createMockPTYStore(sessions),
|
|
98
|
-
});
|
|
99
|
-
|
|
100
|
-
const result = await executeWriteStdin({ pid: 12345, input: "ls\n" }, ctx);
|
|
101
|
-
|
|
102
|
-
expect(result.success).toBe(true);
|
|
103
|
-
expect(result.message).toContain("Wrote");
|
|
104
|
-
expect(result.message).toContain("12345");
|
|
105
|
-
expect(mockSession.write).toHaveBeenCalledWith("ls\n");
|
|
106
|
-
const data = result.data as { output: string };
|
|
107
|
-
expect(data.output).toContain("echo: ls");
|
|
108
|
-
});
|
|
109
|
-
|
|
110
|
-
it("returns error when session has exited", async () => {
|
|
111
|
-
const mockSession = createMockPTYSession({ isRunning: false, exitCode: 1 });
|
|
112
|
-
const sessions = new Map<number, ReturnType<typeof createMockPTYSession>>();
|
|
113
|
-
sessions.set(42, mockSession);
|
|
114
|
-
const ctx = createContext({
|
|
115
|
-
ptySessionStore: createMockPTYStore(sessions),
|
|
116
|
-
});
|
|
117
|
-
|
|
118
|
-
const result = await executeWriteStdin({ pid: 42, input: "hello" }, ctx);
|
|
119
|
-
|
|
120
|
-
expect(result.success).toBe(false);
|
|
121
|
-
expect(result.message).toContain("exited");
|
|
122
|
-
});
|
|
123
|
-
|
|
124
|
-
it("returns error for negative PID", async () => {
|
|
125
|
-
const ctx = createContext();
|
|
126
|
-
const result = await executeWriteStdin({ pid: -1, input: "hello" }, ctx);
|
|
127
|
-
|
|
128
|
-
expect(result.success).toBe(false);
|
|
129
|
-
expect(result.message).toContain("Invalid PID");
|
|
130
|
-
});
|
|
131
|
-
|
|
132
|
-
it("returns error when input is not a string", async () => {
|
|
133
|
-
const mockSession = createMockPTYSession();
|
|
134
|
-
const sessions = new Map<number, ReturnType<typeof createMockPTYSession>>();
|
|
135
|
-
sessions.set(100, mockSession);
|
|
136
|
-
const ctx = createContext({
|
|
137
|
-
ptySessionStore: createMockPTYStore(sessions),
|
|
138
|
-
});
|
|
139
|
-
|
|
140
|
-
const result = await executeWriteStdin({ pid: 100, input: 123 as unknown as string }, ctx);
|
|
141
|
-
|
|
142
|
-
expect(result.success).toBe(false);
|
|
143
|
-
expect(result.message).toContain("Input must be a string");
|
|
144
|
-
});
|
|
145
|
-
});
|
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi } from "vitest";
|
|
2
|
-
import {
|
|
3
|
-
extractContent,
|
|
4
|
-
extractFromResponse,
|
|
5
|
-
type ExtractedContent,
|
|
6
|
-
} from "../../src/extraction/content-extraction.js";
|
|
7
|
-
|
|
8
|
-
describe("extractContent", () => {
|
|
9
|
-
it("converts article HTML to markdown with isArticle true", async () => {
|
|
10
|
-
const html = `
|
|
11
|
-
<html>
|
|
12
|
-
<head><title>Test Article</title></head>
|
|
13
|
-
<body>
|
|
14
|
-
<article>
|
|
15
|
-
<h1>Main Heading</h1>
|
|
16
|
-
<p>This is a paragraph with a <a href="https://example.com">link</a>.</p>
|
|
17
|
-
<p>Code example: <code>console.log("hello")</code></p>
|
|
18
|
-
</article>
|
|
19
|
-
</body>
|
|
20
|
-
</html>
|
|
21
|
-
`;
|
|
22
|
-
const result = await extractContent(html, "https://example.com/article");
|
|
23
|
-
|
|
24
|
-
expect(result.isArticle).toBe(true);
|
|
25
|
-
// Markdown heading (Readability demotes h1→h2 for embedded content)
|
|
26
|
-
expect(result.content).toContain("Main Heading");
|
|
27
|
-
expect(result.content).toMatch(/^#+\s+Main Heading/m);
|
|
28
|
-
// Markdown link (Readability may normalize URL with trailing slash)
|
|
29
|
-
expect(result.content).toMatch(/\[link\]\(https:\/\/example\.com\/?/);
|
|
30
|
-
// Code preserved
|
|
31
|
-
expect(result.content).toContain("console.log");
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
it("converts non-article HTML to markdown with isArticle false", async () => {
|
|
35
|
-
const html = `
|
|
36
|
-
<html>
|
|
37
|
-
<head><title>Non Article</title></head>
|
|
38
|
-
<body>
|
|
39
|
-
<div>
|
|
40
|
-
<p>Some content in a div</p>
|
|
41
|
-
<p>Another paragraph</p>
|
|
42
|
-
</div>
|
|
43
|
-
</body>
|
|
44
|
-
</html>
|
|
45
|
-
`;
|
|
46
|
-
const result = await extractContent(html, "https://example.com/page");
|
|
47
|
-
|
|
48
|
-
expect(result.isArticle).toBe(false);
|
|
49
|
-
expect(result.content).toContain("Some content in a div");
|
|
50
|
-
expect(result.content).toContain("Another paragraph");
|
|
51
|
-
});
|
|
52
|
-
|
|
53
|
-
it("gracefully handles malformed HTML without crashing", async () => {
|
|
54
|
-
// Verifies regex fallback when Readability can't parse.
|
|
55
|
-
const result = await extractContent("<malformed", "https://example.com");
|
|
56
|
-
expect(result).toBeDefined();
|
|
57
|
-
expect(typeof result.content).toBe("string");
|
|
58
|
-
expect(result.isArticle).toBe(false);
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
it("extracts title from HTML", async () => {
|
|
62
|
-
const html = `
|
|
63
|
-
<html>
|
|
64
|
-
<head><title>My Page</title></head>
|
|
65
|
-
<body><p>Content</p></body>
|
|
66
|
-
</html>
|
|
67
|
-
`;
|
|
68
|
-
const result = await extractContent(html, "https://example.com");
|
|
69
|
-
|
|
70
|
-
expect(result.title).toBe("My Page");
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
it("truncates content at 50K characters", async () => {
|
|
74
|
-
const longParagraph = "x".repeat(60_000);
|
|
75
|
-
const html = `
|
|
76
|
-
<html>
|
|
77
|
-
<head><title>Long Page</title></head>
|
|
78
|
-
<body><p>${longParagraph}</p></body>
|
|
79
|
-
</html>
|
|
80
|
-
`;
|
|
81
|
-
const result = await extractContent(html, "https://example.com/long");
|
|
82
|
-
|
|
83
|
-
expect(result.content.length).toBeLessThanOrEqual(50_000);
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
it("returns empty content for empty HTML", async () => {
|
|
87
|
-
const result = await extractContent("", "https://example.com/empty");
|
|
88
|
-
|
|
89
|
-
expect(result.title).toBe("");
|
|
90
|
-
expect(result.content).toBe("");
|
|
91
|
-
expect(result.isArticle).toBe(false);
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
it("returns raw content for non-HTML response types", async () => {
|
|
95
|
-
const raw = '{"status":"ok","payload":"<script>alert(1)</script>"}';
|
|
96
|
-
const result = await extractFromResponse(raw, "https://example.com/data.json", "application/json");
|
|
97
|
-
|
|
98
|
-
expect(result.isArticle).toBe(false);
|
|
99
|
-
expect(result.title).toBe("");
|
|
100
|
-
expect(result.content).toBe(raw);
|
|
101
|
-
});
|
|
102
|
-
|
|
103
|
-
it("falls back to default extraction concurrency when env value is invalid", async () => {
|
|
104
|
-
const original = process.env.ARIA_MAX_CONCURRENT_EXTRACTIONS;
|
|
105
|
-
process.env.ARIA_MAX_CONCURRENT_EXTRACTIONS = "0";
|
|
106
|
-
|
|
107
|
-
try {
|
|
108
|
-
vi.resetModules();
|
|
109
|
-
const reloadedModule = await import("../../src/extraction/content-extraction.js");
|
|
110
|
-
|
|
111
|
-
const result = await Promise.race<ExtractedContent>([
|
|
112
|
-
reloadedModule.extractContent("<html><body><p>Hello</p></body></html>", "https://example.com"),
|
|
113
|
-
new Promise<ExtractedContent>((_resolve, reject) => {
|
|
114
|
-
setTimeout(() => reject(new Error("extractContent timed out")), 500);
|
|
115
|
-
}),
|
|
116
|
-
]);
|
|
117
|
-
|
|
118
|
-
expect(result.content).toContain("Hello");
|
|
119
|
-
} finally {
|
|
120
|
-
if (original === undefined) {
|
|
121
|
-
delete process.env.ARIA_MAX_CONCURRENT_EXTRACTIONS;
|
|
122
|
-
} else {
|
|
123
|
-
process.env.ARIA_MAX_CONCURRENT_EXTRACTIONS = original;
|
|
124
|
-
}
|
|
125
|
-
vi.resetModules();
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
|
|
129
|
-
it("strips script and style tags from output", async () => {
|
|
130
|
-
const html = `
|
|
131
|
-
<html>
|
|
132
|
-
<head>
|
|
133
|
-
<title>Clean Page</title>
|
|
134
|
-
<style>body { color: red; }</style>
|
|
135
|
-
</head>
|
|
136
|
-
<body>
|
|
137
|
-
<script>alert("xss")</script>
|
|
138
|
-
<p>Visible content only</p>
|
|
139
|
-
<style>.hidden { display: none; }</style>
|
|
140
|
-
<script>document.cookie</script>
|
|
141
|
-
</body>
|
|
142
|
-
</html>
|
|
143
|
-
`;
|
|
144
|
-
const result = await extractContent(html, "https://example.com/clean");
|
|
145
|
-
|
|
146
|
-
expect(result.content).toContain("Visible content only");
|
|
147
|
-
expect(result.content).not.toContain("alert");
|
|
148
|
-
expect(result.content).not.toContain("xss");
|
|
149
|
-
expect(result.content).not.toContain("document.cookie");
|
|
150
|
-
expect(result.content).not.toContain("color: red");
|
|
151
|
-
expect(result.content).not.toContain("display: none");
|
|
152
|
-
});
|
|
153
|
-
});
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import config from "../../vitest.config.ts";
|
|
2
|
-
import { describe, expect, it } from "vitest";
|
|
3
|
-
import { loadToolsTestLaneManifest } from "../test-lane-manifest.js";
|
|
4
|
-
|
|
5
|
-
describe("tools default test lane", () => {
|
|
6
|
-
it("wires the default vitest config to the unit lane only", () => {
|
|
7
|
-
const manifest = loadToolsTestLaneManifest();
|
|
8
|
-
const include = config.test?.include ?? [];
|
|
9
|
-
|
|
10
|
-
expect(include).toEqual(manifest.lanes.unit);
|
|
11
|
-
expect(config.test?.maxWorkers).toBe(manifest.maxWorkers.unit);
|
|
12
|
-
expect(config.test?.pool).toBe(manifest.pool.unit);
|
|
13
|
-
expect(config.test?.fileParallelism).toBe(manifest.fileParallelism.unit);
|
|
14
|
-
expect(include).toContain("tests/guards/tools-test-lane-manifest.contract.test.ts");
|
|
15
|
-
expect(include).not.toContain("tests/definitions/messaging.test.ts");
|
|
16
|
-
expect(include).not.toContain("tests/executors/pty.test.ts");
|
|
17
|
-
expect(include).not.toContain("tests/integration.test.ts");
|
|
18
|
-
expect(include).not.toContain("tests/executors/shell.test.ts");
|
|
19
|
-
expect(include).not.toContain("tests/e2e/delegation-quest-orchestration.e2e.test.ts");
|
|
20
|
-
});
|
|
21
|
-
});
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { describe, expect, it } from "vitest";
|
|
3
|
-
import { execPnpmJsonCommand } from "../../../../scripts/package-test-command-helpers";
|
|
4
|
-
|
|
5
|
-
const repoRoot = path.resolve(import.meta.dirname, "../../../..");
|
|
6
|
-
|
|
7
|
-
describe("tools package test commands", () => {
|
|
8
|
-
it("exposes a package-level list command for the safe default lane", () => {
|
|
9
|
-
const listing = execPnpmJsonCommand<{ defaultLane: string; files: string[] }>(
|
|
10
|
-
repoRoot,
|
|
11
|
-
["--filter", "@aria-cli/tools", "test:list"],
|
|
12
|
-
{
|
|
13
|
-
timeout: 15_000,
|
|
14
|
-
maxBuffer: 10 * 1024 * 1024,
|
|
15
|
-
},
|
|
16
|
-
);
|
|
17
|
-
|
|
18
|
-
expect(listing.defaultLane).toBe("unit");
|
|
19
|
-
expect(listing.files).toContain("tests/guards/tools-test-lane-manifest.contract.test.ts");
|
|
20
|
-
expect(listing.files).toContain("tests/executors/write-stdin.test.ts");
|
|
21
|
-
expect(listing.files).not.toContain("tests/definitions/messaging.test.ts");
|
|
22
|
-
expect(listing.files).not.toContain("tests/executors/pty.test.ts");
|
|
23
|
-
expect(listing.files).not.toContain("tests/integration.test.ts");
|
|
24
|
-
}, 30_000);
|
|
25
|
-
|
|
26
|
-
it("reports explicit lane counts for the package", () => {
|
|
27
|
-
const report = execPnpmJsonCommand<{
|
|
28
|
-
defaultLane: string;
|
|
29
|
-
counts: Record<string, number>;
|
|
30
|
-
unclassified: string[];
|
|
31
|
-
}>(repoRoot, ["--filter", "@aria-cli/tools", "test:lanes"], {
|
|
32
|
-
timeout: 15_000,
|
|
33
|
-
maxBuffer: 10 * 1024 * 1024,
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
expect(report.defaultLane).toBe("unit");
|
|
37
|
-
expect(report.counts.unit).toBeGreaterThan(0);
|
|
38
|
-
expect(report.counts.integration).toBeGreaterThan(0);
|
|
39
|
-
expect(report.counts.native).toBeGreaterThan(0);
|
|
40
|
-
expect(report.counts.e2e).toBeGreaterThan(0);
|
|
41
|
-
expect(report.unclassified).toEqual([]);
|
|
42
|
-
}, 30_000);
|
|
43
|
-
});
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from "vitest";
|
|
2
|
-
import {
|
|
3
|
-
PACKAGE_TEST_AUTHORITY,
|
|
4
|
-
classifyToolsTestFile,
|
|
5
|
-
classifyToolsTestPlacement,
|
|
6
|
-
classifyToolsTestProofClass,
|
|
7
|
-
loadToolsTestLaneManifest,
|
|
8
|
-
type ToolsTestLaneId,
|
|
9
|
-
} from "../test-lane-manifest.js";
|
|
10
|
-
|
|
11
|
-
function expectLane(relativePath: string, expected: ToolsTestLaneId): void {
|
|
12
|
-
expect(classifyToolsTestFile(relativePath)).toBe(expected);
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
describe("tools test lane manifest", () => {
|
|
16
|
-
it("classifies every tools test file into an explicit lane", () => {
|
|
17
|
-
const manifest = loadToolsTestLaneManifest();
|
|
18
|
-
|
|
19
|
-
expect(manifest.defaultLane).toBe("unit");
|
|
20
|
-
expect(manifest.unclassified).toEqual([]);
|
|
21
|
-
expect(manifest.unclassifiedProofClasses).toEqual([]);
|
|
22
|
-
expect(manifest.proofClasses.live).toEqual([]);
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
it("keeps unsafe plain-name suites out of the default unit lane", () => {
|
|
26
|
-
expectLane("tests/definitions/messaging.test.ts", "native");
|
|
27
|
-
expectLane("tests/definitions/messaging-inbox-scope.test.ts", "native");
|
|
28
|
-
expectLane("tests/executors/pty.test.ts", "native");
|
|
29
|
-
expectLane("tests/executors/shell-tools.test.ts", "native");
|
|
30
|
-
expectLane("tests/integration.test.ts", "integration");
|
|
31
|
-
expectLane("tests/executors/shell.test.ts", "integration");
|
|
32
|
-
expectLane("tests/executors/shell-process-registry.test.ts", "integration");
|
|
33
|
-
expectLane("tests/executors/shell-abort.test.ts", "integration");
|
|
34
|
-
expectLane("tests/e2e/delegation-quest-orchestration.e2e.test.ts", "e2e");
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
it("keeps obvious hermetic suites in the bounded unit lane", () => {
|
|
38
|
-
expectLane("tests/executors/write-stdin.test.ts", "unit");
|
|
39
|
-
expectLane("tests/registry.test.ts", "unit");
|
|
40
|
-
expectLane("tests/registry/discovery.test.ts", "unit");
|
|
41
|
-
expectLane("tests/executors/memory.test.ts", "unit");
|
|
42
|
-
expectLane("tests/executors/shell-env-blocklist.test.ts", "unit");
|
|
43
|
-
expectLane("tests/network-runtime/nearby-peer-principal.contract.test.ts", "unit");
|
|
44
|
-
expect(classifyToolsTestProofClass("tests/registry.test.ts")).toBe("gate");
|
|
45
|
-
expect(classifyToolsTestPlacement("tests/registry.test.ts")).toMatchObject({
|
|
46
|
-
lane: "unit",
|
|
47
|
-
proofClass: "gate",
|
|
48
|
-
resourceKeys: [],
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
it("marks the heavier tools lanes as explicit system proof ownership", () => {
|
|
53
|
-
expect(classifyToolsTestProofClass("tests/executors/pty.test.ts")).toBe("system");
|
|
54
|
-
expect(classifyToolsTestProofClass("tests/e2e/delegation-quest-orchestration.e2e.test.ts")).toBe(
|
|
55
|
-
"system",
|
|
56
|
-
);
|
|
57
|
-
expect(PACKAGE_TEST_AUTHORITY.getProofClassFiles("system")).toContain(
|
|
58
|
-
"tests/executors/pty.test.ts",
|
|
59
|
-
);
|
|
60
|
-
});
|
|
61
|
-
|
|
62
|
-
it("keeps the default tools unit lane parallel-capable while the heavier non-unit lanes stay serialized", () => {
|
|
63
|
-
const manifest = loadToolsTestLaneManifest();
|
|
64
|
-
|
|
65
|
-
expect(manifest.maxWorkers.unit).toBeGreaterThan(1);
|
|
66
|
-
expect(manifest.maxWorkers.unit).toBeLessThanOrEqual(4);
|
|
67
|
-
expect(manifest.fileParallelism.unit).toBe(true);
|
|
68
|
-
|
|
69
|
-
expect(manifest.maxWorkers.integration).toBe(1);
|
|
70
|
-
expect(manifest.maxWorkers.native).toBe(1);
|
|
71
|
-
expect(manifest.maxWorkers.e2e).toBe(1);
|
|
72
|
-
expect(manifest.fileParallelism.integration).toBe(false);
|
|
73
|
-
expect(manifest.fileParallelism.native).toBe(false);
|
|
74
|
-
expect(manifest.fileParallelism.e2e).toBe(false);
|
|
75
|
-
});
|
|
76
|
-
});
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from "vitest";
|
|
2
|
-
import vitestConfig from "../../vitest.config.ts";
|
|
3
|
-
import { loadToolsTestLaneManifest } from "../test-lane-manifest.js";
|
|
4
|
-
|
|
5
|
-
interface AliasEntry {
|
|
6
|
-
find: string | RegExp;
|
|
7
|
-
replacement: string;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
function requireAliasEntries(): AliasEntry[] {
|
|
11
|
-
const alias = vitestConfig.resolve?.alias;
|
|
12
|
-
if (!alias || !Array.isArray(alias)) {
|
|
13
|
-
throw new Error("Tools Vitest workspace alias entries are unavailable");
|
|
14
|
-
}
|
|
15
|
-
return alias as AliasEntry[];
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
function requireAliasEntry(entries: AliasEntry[], find: RegExp): AliasEntry {
|
|
19
|
-
const entry = entries.find(
|
|
20
|
-
(candidate) =>
|
|
21
|
-
candidate.find instanceof RegExp && candidate.find.toString() === find.toString(),
|
|
22
|
-
);
|
|
23
|
-
|
|
24
|
-
if (!entry) {
|
|
25
|
-
throw new Error(`Missing alias entry for ${find.toString()}`);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
return entry;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
describe("tools vitest workspace alias contract", () => {
|
|
32
|
-
it("resolves transitive workspace packages from source instead of package dist exports", () => {
|
|
33
|
-
const alias = requireAliasEntries();
|
|
34
|
-
|
|
35
|
-
expect(requireAliasEntry(alias, /^@aria\/auth$/).replacement).toContain(
|
|
36
|
-
"/packages/auth/src/index.ts",
|
|
37
|
-
);
|
|
38
|
-
expect(requireAliasEntry(alias, /^@aria\/memoria$/).replacement).toContain(
|
|
39
|
-
"/packages/memoria/src/index.ts",
|
|
40
|
-
);
|
|
41
|
-
expect(requireAliasEntry(alias, /^@aria\/memoria\/storage$/).replacement).toContain(
|
|
42
|
-
"/packages/memoria/src/storage/index.ts",
|
|
43
|
-
);
|
|
44
|
-
expect(requireAliasEntry(alias, /^@aria\/models$/).replacement).toContain(
|
|
45
|
-
"/packages/models/src/index.ts",
|
|
46
|
-
);
|
|
47
|
-
expect(requireAliasEntry(alias, /^@aria\/types$/).replacement).toContain(
|
|
48
|
-
"/packages/types/src/index.ts",
|
|
49
|
-
);
|
|
50
|
-
expect(requireAliasEntry(alias, /^@aria\/tools$/).replacement).toContain(
|
|
51
|
-
"/packages/tools/src/index.ts",
|
|
52
|
-
);
|
|
53
|
-
expect(requireAliasEntry(alias, /^@aria\/tools\/network-runtime$/).replacement).toContain(
|
|
54
|
-
"/packages/tools/src/network-runtime/index.ts",
|
|
55
|
-
);
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
it("runs the package lane in isolated forks with a single worker", () => {
|
|
59
|
-
const manifest = loadToolsTestLaneManifest();
|
|
60
|
-
expect(vitestConfig.test?.pool).toBe("forks");
|
|
61
|
-
expect(vitestConfig.test?.maxWorkers).toBe(manifest.maxWorkers.unit);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import type { ChildProcess } from "node:child_process";
|
|
2
|
-
import { once } from "node:events";
|
|
3
|
-
import { access } from "node:fs/promises";
|
|
4
|
-
|
|
5
|
-
export async function withTimeout<T>(
|
|
6
|
-
promise: Promise<T>,
|
|
7
|
-
timeoutMs: number,
|
|
8
|
-
timeoutMessage: string,
|
|
9
|
-
): Promise<T> {
|
|
10
|
-
let timeoutId: NodeJS.Timeout | undefined;
|
|
11
|
-
const timeoutPromise = new Promise<never>((_, reject) => {
|
|
12
|
-
timeoutId = setTimeout(() => reject(new Error(timeoutMessage)), timeoutMs);
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
try {
|
|
16
|
-
return await Promise.race([promise, timeoutPromise]);
|
|
17
|
-
} finally {
|
|
18
|
-
if (timeoutId) {
|
|
19
|
-
clearTimeout(timeoutId);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export async function waitForFile(filePath: string, timeoutMs = 5_000): Promise<void> {
|
|
25
|
-
const start = Date.now();
|
|
26
|
-
while (Date.now() - start < timeoutMs) {
|
|
27
|
-
try {
|
|
28
|
-
await access(filePath);
|
|
29
|
-
return;
|
|
30
|
-
} catch {
|
|
31
|
-
// File not ready yet.
|
|
32
|
-
}
|
|
33
|
-
await new Promise((resolve) => setTimeout(resolve, 50));
|
|
34
|
-
}
|
|
35
|
-
throw new Error(`Timed out waiting for file: ${filePath}`);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
export async function waitForChildExit(
|
|
39
|
-
child: ChildProcess,
|
|
40
|
-
timeoutMs = 5_000,
|
|
41
|
-
): Promise<{ code: number | null; signal: NodeJS.Signals | null }> {
|
|
42
|
-
if (child.exitCode !== null || child.signalCode !== null) {
|
|
43
|
-
return { code: child.exitCode, signal: child.signalCode };
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
const [code, signal] = await withTimeout(
|
|
47
|
-
once(child, "exit") as Promise<[number | null, NodeJS.Signals | null]>,
|
|
48
|
-
timeoutMs,
|
|
49
|
-
`Timed out waiting for child process ${child.pid ?? "unknown"} to exit`,
|
|
50
|
-
);
|
|
51
|
-
|
|
52
|
-
return { code, signal };
|
|
53
|
-
}
|