From 8169119583b100c7f34b9e36ddd833d431faa204 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 20 Oct 2026 08:53:21 +0000 Subject: [PATCH 1/8] chore(deps): bump @mariozechner/pi-agent-core from 0.72.1 to 0.73.1 Bumps [@mariozechner/pi-agent-core](https://github.com/badlogic/pi-mono/tree/HEAD/packages/agent) from 0.72.1 to 0.73.1. - [Release notes](https://github.com/badlogic/pi-mono/releases) - [Changelog](https://github.com/earendil-works/pi/blob/main/packages/agent/CHANGELOG.md) - [Commits](https://github.com/badlogic/pi-mono/commits/v0.73.1/packages/agent) --- updated-dependencies: - dependency-name: "@mariozechner/pi-agent-core" dependency-version: 0.73.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- apps/desktop/package.json | 2 +- packages/core/package.json | 2 +- pnpm-lock.yaml | 592 ++++++++++++++++++++++++++++++++++--- 3 files changed, 555 insertions(+), 41 deletions(-) diff --git a/apps/desktop/package.json b/apps/desktop/package.json index bbd64ad33..3deffdeb3 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -28,7 +28,7 @@ "undici": "^7.29.1" }, "devDependencies": { - "@mariozechner/pi-agent-core": "^0.72.1", + "@mariozechner/pi-agent-core": "^0.73.1", "@mariozechner/pi-ai": "^0.72.1", "@mariozechner/pi-coding-agent": "^0.72.1", "@open-codesign/artifacts": "workspace:*", diff --git a/packages/core/package.json b/packages/core/package.json index 87c0cc7e3..6f60d4f9c 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -13,7 +13,7 @@ "test": "vitest run --passWithNoTests" }, "dependencies": { - "@mariozechner/pi-agent-core": "^0.72.1", + "@mariozechner/pi-agent-core": "^0.73.1", "@mariozechner/pi-ai": "^0.72.1", "@mariozechner/pi-coding-agent": "^0.72.1", "@open-codesign/providers": "workspace:*", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 13f6925ed..bc4a4564c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -75,14 +75,14 @@ importers: version: 7.29.1 devDependencies: '@mariozechner/pi-agent-core': - specifier: ^0.72.1 - version: 0.72.1(ws@8.20.0)(zod@4.4.2) + specifier: ^0.73.1 + version: 0.73.1(ws@8.22.0)(zod@4.6.7) '@mariozechner/pi-ai': specifier: ^0.72.1 - version: 0.72.1(ws@8.20.0)(zod@4.4.2) + version: 0.72.1(ws@8.22.0)(zod@4.6.7) '@mariozechner/pi-coding-agent': specifier: ^0.72.1 - version: 0.72.1(ws@8.20.0)(zod@4.4.2) + version: 0.72.1(ws@8.22.0)(zod@4.6.7) '@open-codesign/artifacts': specifier: workspace:* version: link:../../packages/artifacts @@ -205,14 +205,14 @@ importers: packages/core: dependencies: '@mariozechner/pi-agent-core': - specifier: ^0.72.1 - version: 0.72.1(ws@8.20.0)(zod@4.4.2) + specifier: ^0.73.1 + version: 0.73.1(ws@8.22.0)(zod@4.6.7) '@mariozechner/pi-ai': specifier: ^0.72.1 - version: 0.72.1(ws@8.20.0)(zod@4.4.2) + version: 0.72.1(ws@8.22.0)(zod@4.6.7) '@mariozechner/pi-coding-agent': specifier: ^0.72.1 - version: 0.72.1(ws@8.20.0)(zod@4.4.2) + version: 0.72.1(ws@8.22.0)(zod@4.6.7) '@open-codesign/providers': specifier: workspace:* version: link:../providers @@ -290,7 +290,7 @@ importers: dependencies: '@mariozechner/pi-ai': specifier: ^0.72.1 - version: 0.72.1(ws@8.20.0)(zod@4.4.2) + version: 0.72.1(ws@8.22.0)(zod@4.6.7) '@open-codesign/shared': specifier: workspace:* version: link:../shared @@ -517,50 +517,98 @@ packages: resolution: {integrity: sha512-1QehYO3jhdvNQ5mOKtwIiNV04y4aywaNZw9HzCp7SSYCX4yy+AGXc2hhYjCiMDUvQPIELuvbR8MXw81NGAj8ZQ==} engines: {node: '>=20.0.0'} + '@aws-sdk/client-bedrock-runtime@3.1152.0': + resolution: {integrity: sha512-73OunQANpKST6eQljF9mwt9z49MpL1oL1inIgBTUtc/CegxYQ8OLj/5/yLrmxuRzZWYFSxp0e04TLiwIrDRuSQ==} + engines: {node: '>=20.0.0'} + '@aws-sdk/core@3.974.8': resolution: {integrity: sha512-njR2qoG6ZuB0kvAS2FyICsFZJ6gmCcf2X/7JcD14sUvGDm26wiZ5BrA6LOiUxKFEF+IVe7kdroxyE00YlkiYsw==} engines: {node: '>=20.0.0'} + '@aws-sdk/core@3.978.3': + resolution: {integrity: sha512-nslpzUCTI9b2IQMWSd6mSAXldBexPc8rr0d3dXUutXYFLFaTdsHa2GD7sJdsn3PhyjK0O5K8ypd6zi+RXXPVlg==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-env@3.972.34': resolution: {integrity: sha512-XT0jtf8Fw9JE6ppsQeoNnZRiG+jqRixMT1v1ZR17G60UvVdsQmTG8nbEyHuEPfMxDXEhfdARaM/XiEhca4lGHQ==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-env@3.972.74': + resolution: {integrity: sha512-rsRJcW2iFUhCgclyD6OSbMEaPl8Eu0qSeRZb2uuCK1ViZ66hl5wOe/p6Vr6MO3b+ydyKgFeqza2p6tZThvILlw==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-http@3.972.36': resolution: {integrity: sha512-DPoGWfy7J7RKxvbf5kOKIGQkD2ek3dbKgzKIGrnLuvZBz5myU+Im/H6pmc14QcnFbqHMqxvtWSgRDSJW3qXLQg==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-http@3.972.76': + resolution: {integrity: sha512-pnKdh0Br7OJPj+7qKjzgTfDTFW0RhEMKXNDR2jv9CAM4oHuG/4z3hRh8KtutLfpmItuRtDbKBmwWkDqHwwAWXw==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-ini@3.972.38': resolution: {integrity: sha512-oDzUBu2MGJFgoar05sPMCwSrhw44ASyccrHzj66vO69OZqi7I6hZZxXfuPLC8OCzW7C+sU+bI73XHij41yekgQ==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-ini@3.973.19': + resolution: {integrity: sha512-kcjvAxqQEV8yuwkX58RelNn3ne65o7JgRWf3Z/gVvbi7Xuw1qSDLJlatrLD76+40cmRxmNkLxBoyp/vAQChQ5g==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-login@3.972.38': resolution: {integrity: sha512-g1NosS8qe4OF++G2UFCM5ovSkgipC7YYor5KCWatG0UoMSO5YFj9C8muePlyVmOBV/WTI16Jo3/s1NUo/o1Bww==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-login@3.972.81': + resolution: {integrity: sha512-CeQHSbE2CnVdaHIJ/NayRaCecIER+Pm9faUPkmRATO54rCoMTEPSbVieGHzEwvm1dZM2HIs6qQZCznhayNTWJQ==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-node@3.972.39': resolution: {integrity: sha512-HEswDQyxUtadoZ/bJsPPENHg7R0Lzym5LuMksJeHvqhCOpP+rtkDLKI4/ZChH4w3cf5kG8n6bZuI8PzajoiqMg==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-node@3.972.86': + resolution: {integrity: sha512-WNttSyr6e8innPtBSty//CdnqJcgZN6eAbtw3v/CR2IObz6MYZEo8eusdtuCHJ2ujwFqC2bSPHVyhXGHx8HruQ==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-process@3.972.34': resolution: {integrity: sha512-T3IFs4EVmVi1dVN5RciFnklCANSzvrQd/VuHY9ThHSQmYkTogjcGkoJEr+oNUPQZnso52183088NqysMPji1/Q==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-process@3.972.74': + resolution: {integrity: sha512-Yj6kZFJQdbR+PygTkqdVLPHHpdDpOS9GCYVcDCuweCRRig9LF24ELQBMfyUw1vspvrZJUfnOGVyMjhaL094ahw==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-sso@3.972.38': resolution: {integrity: sha512-5ZxG+t0+3Q3QPh8KEjX6syskhgNf7I0MN7oGioTf6Lm1NTjfP7sIcYGNsthXC2qR8vcD3edNZwCr2ovfSSWuRA==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-sso@3.973.18': + resolution: {integrity: sha512-FnpPhdY4qUGtX/8X6eKxh+uD+9Y19i9FYibgk4SBe0M935s9vocHkHzaxaMNk+YkHmvzgdu8cHA5SCoeU+kkew==} + engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-web-identity@3.972.38': resolution: {integrity: sha512-lYHFF30DGI20jZcYX8cm6Ns0V7f1dDN6g/MBDLTyD/5iw+bXs3yBr2iAiHDkx4RFU5JgsnZvCHYKiRVPRdmOgw==} engines: {node: '>=20.0.0'} + '@aws-sdk/credential-provider-web-identity@3.972.80': + resolution: {integrity: sha512-TJF25Ndwy2HxcVj6oxMgp8qVlJAawlExHYBXqhuC6Zt2m+A7WpdkjBD6QglNbiArlteYljZHEY3R7KKmno6ISA==} + engines: {node: '>=20.0.0'} + '@aws-sdk/eventstream-handler-node@3.972.14': resolution: {integrity: sha512-m4X56gxG76/CKfxNVbOFuYwnAZcHgS6HOH8lgp15HoGHIAVTcZfZrXvcYzJFOMLEJgVn+JHBu6EiNV+xSNXXFg==} engines: {node: '>=20.0.0'} + '@aws-sdk/eventstream-handler-node@3.972.36': + resolution: {integrity: sha512-HFaKXA6ugPVvpR7W/3UT3hylWIPndqGMwduwNVrmGsRT5+OESHN8/ven4eeofraQF5Kxp8A8QgGVrv7iQsTRKQ==} + engines: {node: '>=20.0.0'} + '@aws-sdk/middleware-eventstream@3.972.10': resolution: {integrity: sha512-QUqLs7Af1II9X4fCRAu+EGHG3KHyOp4RkuLhRKoA3NuFlh6TL8i+zXBl8w2LUxqm44B/Kom45hgSlwA1SpTsXQ==} engines: {node: '>=20.0.0'} + '@aws-sdk/middleware-eventstream@3.972.31': + resolution: {integrity: sha512-4yvdTVwPGKCnrwuwlYEmwLqQXKwk0unx3f/FvBi4FA9ruK/WGoPJyqfK7hOYurheIyQL44FR0ovgOHqvkfdpAQ==} + engines: {node: '>=20.0.0'} + '@aws-sdk/middleware-host-header@3.972.10': resolution: {integrity: sha512-IJSsIMeVQ8MMCPbuh1AbltkFhLBLXn7aejzfX5YKT/VLDHn++Dcz8886tXckE+wQssyPUhaXrJhdakO2VilRhg==} engines: {node: '>=20.0.0'} @@ -585,6 +633,14 @@ packages: resolution: {integrity: sha512-86+S9oCyRVGzoMRpQhxkArp7kD2K75GPmaNevd9B6EyNhWoNvnCZZ3WbgN4j7ZT+jvtvBCGZvI2XHsWZJ+BRIg==} engines: {node: '>= 14.0.0'} + '@aws-sdk/middleware-websocket@3.972.56': + resolution: {integrity: sha512-32d9EnnNM5UMwjVp/qnL0K4XYiZv+YlSbULI3BaoBdJvebAS6cD0bKfPJ7lzovN0qrelvmSh5jo/3tk0KoTuGQ==} + engines: {node: '>= 14.0.0'} + + '@aws-sdk/nested-clients@3.997.48': + resolution: {integrity: sha512-B01jdXJtAW/XOiUzGdI2mz67WyEHbGEc9X6Euzw3bjLAa+txTqdZDER4X2FsIEcXzV2ABqudVZ5thali8tCCzQ==} + engines: {node: '>=20.0.0'} + '@aws-sdk/nested-clients@3.997.6': resolution: {integrity: sha512-WBDnqatJl+kGObpfmfSxqnXeYTu3Me8wx8WCtvoxX3pfWrrTv8I4WTMSSs7PZqcRcVh8WeUKMgGFjMG+52SR1w==} engines: {node: '>=20.0.0'} @@ -597,14 +653,30 @@ packages: resolution: {integrity: sha512-+CMIt3e1VzlklAECmG+DtP1sV8iKq25FuA0OKpnJ4KA0kxUtd7CgClY7/RU6VzJBQwbN4EJ9Ue6plvqx1qGadw==} engines: {node: '>=20.0.0'} + '@aws-sdk/signature-v4-multi-region@3.996.48': + resolution: {integrity: sha512-cFDXfEbXaGwbnpvR/DyqfxfjxpjXVRVthQLgkwvcfDS5u3+8G9WSj1X1Ag/pTRg/QOeOno1Tq3ycEdrKsCUcOA==} + engines: {node: '>=20.0.0'} + '@aws-sdk/token-providers@3.1041.0': resolution: {integrity: sha512-Th7kPI6YPtvJUcdznooXJMy+9rQWjmEF81LxaJssngBzuysK4a/x+l8kjm1zb7nYsUPbndnBdUnwng/3PLvtGw==} engines: {node: '>=20.0.0'} + '@aws-sdk/token-providers@3.1150.0': + resolution: {integrity: sha512-wDU36ofhabZYu+d2KSriyDbwzxNoaOp+4dG0p3qkabk7HeALR5nIWyQbjoyJZLn3iqWkv/xNdyUfbfevDVDzzg==} + engines: {node: '>=20.0.0'} + + '@aws-sdk/token-providers@3.1152.0': + resolution: {integrity: sha512-XcQlQFkIDOk4P1dF/ADQAjPK361mBChR/AJghM4my6SgDnsOX77Z7zCUtZfXXbQG4E+vpoWfbySzX/oKXcmV5w==} + engines: {node: '>=20.0.0'} + '@aws-sdk/types@3.973.8': resolution: {integrity: sha512-gjlAdtHMbtR9X5iIhVUvbVcy55KnznpC6bkDUWW9z915bi0ckdUr5cjf16Kp6xq0bP5HBD2xzgbL9F9Quv5vUw==} engines: {node: '>=20.0.0'} + '@aws-sdk/types@3.974.6': + resolution: {integrity: sha512-v/clNZzZnDxGyvpHMOGpJKVXFAExJzUNAAjaWGdcx8QAcXLGwTaOkw33p5SHAi0YAioK32xB3hWwOekRVfmfKg==} + engines: {node: '>=20.0.0'} + '@aws-sdk/util-arn-parser@3.972.3': resolution: {integrity: sha512-HzSD8PMFrvgi2Kserxuff5VitNq2sgf3w9qxmskKDiDTThWfVteJxuCS9JXiPIPtmCrp+7N9asfIaVhBFORllA==} engines: {node: '>=20.0.0'} @@ -637,10 +709,18 @@ packages: resolution: {integrity: sha512-PMYKKtJd70IsSG0yHrdAbxBr+ZWBKLvzFZfD3/urxgf6hXVMzuU5M+3MJ5G67RpOmLBu1fAUN65SbWuKUCOlAA==} engines: {node: '>=20.0.0'} + '@aws-sdk/xml-builder@3.972.41': + resolution: {integrity: sha512-ctjVSyCMegrWfXlx6VqzSBFI6UqmQ5ZlnfMhdLIiWmhoH8UAQxSCP5N3OpG7X3k4LnS7ou74C4mt20+bfTW2aQ==} + engines: {node: '>=20.0.0'} + '@aws/lambda-invoke-store@0.2.4': resolution: {integrity: sha512-iY8yvjE0y651BixKNPgmv1WrQc+GZ142sb0z4gYnChDDY2YqI4P/jsSopBWrKfAt7LOJAkOXt7rC/hms+WclQQ==} engines: {node: '>=18.0.0'} + '@aws/lambda-invoke-store@0.3.0': + resolution: {integrity: sha512-sl4Bm6yiMNYrZKkqqDFWN0UfnWhlS8ivKxrYl+6t0gCLrqr8y3B2IqZZbFRkfaVVp7C/baApyh71P+LeE1A2sQ==} + engines: {node: '>=18.0.0'} + '@babel/code-frame@7.29.0': resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==} engines: {node: '>=6.9.0'} @@ -1428,6 +1508,15 @@ packages: '@modelcontextprotocol/sdk': optional: true + '@google/genai@1.52.0': + resolution: {integrity: sha512-gwSvbpiN/17O9TbsqSsE/OzZcpv5Fo4RQjdngGgogtuB9RsyJ8ZHhX5KjHj1bp5N9snN2eK8LDGXSaWW2hof8Q==} + engines: {node: '>=20.0.0'} + peerDependencies: + '@modelcontextprotocol/sdk': ^1.25.2 + peerDependenciesMeta: + '@modelcontextprotocol/sdk': + optional: true + '@iarna/toml@2.2.5': resolution: {integrity: sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==} @@ -1561,12 +1650,23 @@ packages: engines: {node: '>=20.0.0'} deprecated: please use @earendil-works/pi-agent-core instead going forward + '@mariozechner/pi-agent-core@0.73.1': + resolution: {integrity: sha512-Y/KVOhuKSgRQgYBlwmRtO2gPkUcoavOSqGF9bpQIINvNZvc19k6Z1H3bFDTce3Vp5ApMmTsfLH3+tNvOg75fAQ==} + engines: {node: '>=20.0.0'} + deprecated: please use @earendil-works/pi-agent-core instead going forward + '@mariozechner/pi-ai@0.72.1': resolution: {integrity: sha512-mOq71Pjnu72xxzwrh52VIiNwt+/a+Wpa11k5segi01/zTZJt8eMDc5Q2z6GhczYMr5+6EpZ8T+BaeHqq0jk5ag==} engines: {node: '>=20.0.0'} deprecated: please use @earendil-works/pi-ai instead going forward hasBin: true + '@mariozechner/pi-ai@0.73.1': + resolution: {integrity: sha512-Jh4lXawZYuC83HzSIYuVum9NBqJD49i4JOt3H96cGW/924cwJMOyUs1Mv/e4QPzTXnzrqMoGviNQnvGgSu1LSg==} + engines: {node: '>=20.0.0'} + deprecated: please use @earendil-works/pi-ai instead going forward + hasBin: true + '@mariozechner/pi-coding-agent@0.72.1': resolution: {integrity: sha512-gKApiLfAYpvPnWThvwXrLjZIhsziSSUKBph7DHCy/1IomuIGN1MTxS/9ZtcuFqPy3/+VfEUOKegGlY6m+CRNlA==} engines: {node: '>=20.6.0'} @@ -1581,6 +1681,23 @@ packages: '@mistralai/mistralai@2.2.1': resolution: {integrity: sha512-uKU8CZmL2RzYKmplsU01hii4p3pe4HqJefpWNRWXm1Tcm0Sm4xXfwSLIy4k7ZCPlbETCGcp69E7hZs+WOJ5itQ==} + '@mistralai/mistralai@2.7.0': + resolution: {integrity: sha512-zCrx6MtNpcz+EL/Nqvg55QubSgmfwJfBmd3d3wSYfJGfnvlNnWcJYlxEW5xQpS3KR6A5qK9KUyRBwMDIWnyVGA==} + peerDependencies: + '@opentelemetry/api': ^1.9.0 + '@opentelemetry/exporter-trace-otlp-http': ^0.220.0 + '@opentelemetry/resources': ^2.9.0 + '@opentelemetry/sdk-trace-base': ^2.9.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true + '@opentelemetry/exporter-trace-otlp-http': + optional: true + '@opentelemetry/resources': + optional: true + '@opentelemetry/sdk-trace-base': + optional: true + '@napi-rs/lzma-linux-x64-gnu@1.5.1': resolution: {integrity: sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==} engines: {node: ^22.20 || ^24.12 || >=25} @@ -1626,6 +1743,10 @@ packages: resolution: {integrity: sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==} engines: {node: ^18.17.0 || >=20.5.0} + '@opentelemetry/semantic-conventions@1.43.0': + resolution: {integrity: sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==} + engines: {node: '>=14'} + '@oxc-project/types@0.127.0': resolution: {integrity: sha512-aIYXQBo4lCbO4z0R3FHeucQHpF46l2LbMdxRvqvuRuW2OxdnSkcng5B8+K12spgLDj93rtN3+J2Vac/TIO+ciQ==} @@ -1660,9 +1781,15 @@ packages: '@protobufjs/eventemitter@1.1.0': resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + '@protobufjs/eventemitter@1.1.1': + resolution: {integrity: sha512-vW1GmwMZNnL+gMRaovlh9yZX74kc+TTU3FObkkurpMaRtBfLP3ldjS9KQWlwZgraRE0+dheEEoAxdzcJQ8eXZg==} + '@protobufjs/fetch@1.1.0': resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + '@protobufjs/fetch@1.1.1': + resolution: {integrity: sha512-GpptLrs57adMSuHi3VNj0mAF8dwh36LMaYF6XyJ6JMWlVsc+t42tm1HSEDmOs3A8fC9yyeisgLhsTVQokOZ0zw==} + '@protobufjs/float@1.0.2': resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} @@ -1678,6 +1805,9 @@ packages: '@protobufjs/utf8@1.1.1': resolution: {integrity: sha512-oOAWABowe8EAbMyWKM0tYDKi8Yaox52D+HWZhAIJqQXbqe0xI/GV7FhLWqlEKreMkfDjshR5FKgi3mnle0h6Eg==} + '@protobufjs/utf8@1.1.2': + resolution: {integrity: sha512-b1UQwcEZ4yCnMCD8DAL1VlbvBJE9/IX4FTIp7BG1xYpf29SLazLSrqUkj4w7Y5y7cCVP6E5tcqqcI0xemPkHug==} + '@puppeteer/browsers@2.13.0': resolution: {integrity: sha512-46BZJYJjc/WwmKjsvDFykHtXrtomsCIrwYQPOP7VfMJoZY2bsDF9oROBABR3paDjDcmkUye1Pb1BqdcdiipaWA==} engines: {node: '>=18'} @@ -1964,10 +2094,18 @@ packages: resolution: {integrity: sha512-x7BlLbUFL8NWCGjMF9C+1N5cVCxcPa7g6Tv9B4A2luWx3be3oU8hQ96wIwxe/s7OhIzvoJH73HAUSg5JXVlEtQ==} engines: {node: '>=18.0.0'} + '@smithy/core@3.36.0': + resolution: {integrity: sha512-3hJiwG1F5t1SoXqp/yOCmYXziyx7ZVqF63S5W6YU201e/qwVaHPex+E/3vvyY9a3ORq/b+BydeNZpP2saQ9X2g==} + engines: {node: '>=18.0.0'} + '@smithy/credential-provider-imds@4.2.14': resolution: {integrity: sha512-Au28zBN48ZAoXdooGUHemuVBrkE+Ie6RPmGNIAJsFqj33Vhb6xAgRifUydZ2aY+M+KaMAETAlKk5NC5h1G7wpg==} engines: {node: '>=18.0.0'} + '@smithy/credential-provider-imds@4.5.2': + resolution: {integrity: sha512-A9uSdn72ozbRUSit0eib0TW7nXuNPlaeM0zcGkJ+nE6tFcSDbnmtwoxbTCFBukVQcszDAyvsd7+rTduPTXpygg==} + engines: {node: '>=18.0.0'} + '@smithy/eventstream-codec@4.2.14': resolution: {integrity: sha512-erZq0nOIpzfeZdCyzZjdJb4nVSKLUmSkaQUVkRGQTXs30gyUGeKnrYEg+Xe1W5gE3aReS7IgsvANwVPxSzY6Pw==} engines: {node: '>=18.0.0'} @@ -1992,6 +2130,10 @@ packages: resolution: {integrity: sha512-bXOvQzaSm6MnmLaWA1elgfQcAtN4UP3vXqV97bHuoOrHQOJiLT3ds6o9eo5bqd0TJfRFpzdGnDQdW3FACiAVdw==} engines: {node: '>=18.0.0'} + '@smithy/fetch-http-handler@5.8.0': + resolution: {integrity: sha512-ycSJu3tFAQ4v04CBB0agqFMVsSQ1iG3yw+SpgxRqKfaURpQD4CZ8Wn0zPMmSnOuTpTh65Vz+EA0rMrw089wvkA==} + engines: {node: '>=18.0.0'} + '@smithy/hash-node@4.2.14': resolution: {integrity: sha512-8ZBDY2DD4wr+GGjTpPtiglEsqr0lUP+KHqgZcWczFf6qeZ/YRjMIOoQWVQlmwu7EtxKTd8YXD8lblmYcpBIA1g==} engines: {node: '>=18.0.0'} @@ -2032,6 +2174,10 @@ packages: resolution: {integrity: sha512-S+gFjyo/weSVL0P1b9Ts8C/CwIfNCgUPikk3sl6QVsfE/uUuO+QsF+NsE/JkpvWqqyz1wg7HFdiaZuj5CoBMRg==} engines: {node: '>=18.0.0'} + '@smithy/node-http-handler@4.12.1': + resolution: {integrity: sha512-ThMkboGeONWXAelq9FvGsuJC4rOi+qyC4/zhUF58xYpxUg5sQKx2VXZYJmtNjr4dSuBJ1HeJXETQILCz3wOHvw==} + engines: {node: '>=18.0.0'} + '@smithy/node-http-handler@4.6.1': resolution: {integrity: sha512-iB+orM4x3xrr57X3YaXazfKnntl0LHlZB1kcXSGzMV1Tt0+YwEjGlbjk/44qEGtBzXAz6yFDzkYTKSV6Pj2HUg==} engines: {node: '>=18.0.0'} @@ -2064,6 +2210,10 @@ packages: resolution: {integrity: sha512-1D9Y/nmlVjCeSivCbhZ7hgEpmHyY1h0GvpSZt3l0xcD9JjmjVC1CHOozS6+Gh+/ldMH8JuJ6cujObQqfayAVFA==} engines: {node: '>=18.0.0'} + '@smithy/signature-v4@5.7.4': + resolution: {integrity: sha512-tHy0K0VtqNd5Y7Y41h0a0Lhh0L1GzC08dTWg0F7vRJWFtTENg7IZikf3wQkanYIRdb7ngoIPMTmqgUi401fEeQ==} + engines: {node: '>=18.0.0'} + '@smithy/smithy-client@4.12.13': resolution: {integrity: sha512-y/Pcj1V9+qG98gyu1gvftHB7rDpdh+7kIBIggs55yGm3JdtBV8GT8IFF3a1qxZ79QnaJHX9GXzvBG6tAd+czJA==} engines: {node: '>=18.0.0'} @@ -2072,6 +2222,10 @@ packages: resolution: {integrity: sha512-59b5HtSVrVR/eYNei3BUj3DCPKD/G7EtDDe7OEJE7i7FtQFugYo6MxbotS8mVJkLNVf8gYaAlEBwwtJ9HzhWSg==} engines: {node: '>=18.0.0'} + '@smithy/types@4.19.0': + resolution: {integrity: sha512-r7jh49VJxGerfAcTQA6gXcKc+98zOp/tqRwzYjgOE+iSQsP6cEU1hq2QzbuipmP68QtYdY9wKEhiCQZIzHgZ4Q==} + engines: {node: '>=18.0.0'} + '@smithy/url-parser@4.2.14': resolution: {integrity: sha512-p06BiBigJ8bTA3MgnOfCtDUWnAMY0YfedO/GRpmc7p+wg3KW8vbXy1xwSu5ASy0wV7rRYtlfZOIKH4XqfhjSQQ==} engines: {node: '>=18.0.0'} @@ -3441,6 +3595,10 @@ packages: resolution: {integrity: sha512-bTIgTsM2bWn3XklZISBTQX7ZSddGW+IO3bMdGaemHZ3tbqExMENHLx6kKZ/KlejgrMtj8q7wBItt51yegqalrA==} engines: {node: '>=18'} + gaxios@7.3.1: + resolution: {integrity: sha512-kB3rzJV7d9juLZh8/56QTXCwQfxyhdOMdyYk1HdQKFtF8TJTDTZQJtixWIwXdE9Jji91mC41DUNpjleo4L4eAQ==} + engines: {node: '>=18'} + gcp-metadata@8.1.2: resolution: {integrity: sha512-zV/5HKTfCeKWnxG0Dmrw51hEWFGfcF2xiXqcA3+J90WDuP0SvoiSO5ORvcBsifmx/FoIjgQN3oNOGaQ5PhLFkg==} engines: {node: '>=18'} @@ -3506,6 +3664,10 @@ packages: resolution: {integrity: sha512-e27Z6EThmVNNvtYASwQxose/G57rkRuaRbQyxM2bvYLLX/GqWZ5chWq2EBoUchJbCc57eC9ArzO5wMsEmWftCw==} engines: {node: '>=18'} + google-auth-library@10.9.1: + resolution: {integrity: sha512-i1ydyHrqcIxXkWh/uBmVkzCvIuq5yiK2ATndIe5XxKholrG/MTYP9xGYka4sQhrbIAgGjL2B6NOE7rFaiF3fXw==} + engines: {node: '>=18'} + google-logging-utils@1.1.3: resolution: {integrity: sha512-eAmLkjDjAFCVXg7A1unxHsLf961m6y17QFqXqAXGj/gVkKFrEICfStRfwUlGNfeCEjNRa32JEWOUTlYXPyyKvA==} engines: {node: '>=14'} @@ -4609,6 +4771,10 @@ packages: resolution: {integrity: sha512-M71sTMB146U3u0di3yup8iM+zv8yPRNQVr1KK4tyBitl3qFvEGucq/rGDRShD2rsJhtN02RJaJ7j5X5hmy8SJg==} engines: {node: '>=12.0.0'} + protobufjs@7.6.6: + resolution: {integrity: sha512-dYDWdjSl5RNb7SgPxGQcRU+GtvP7s2fpkrY0r432PcOIaZ0/rBcxEZnQN67iJhFuQiVw754JDoPruPCNdGsbjg==} + engines: {node: '>=12.0.0'} + proxy-agent@6.5.0: resolution: {integrity: sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A==} engines: {node: '>= 14'} @@ -5103,6 +5269,9 @@ packages: typebox@1.1.37: resolution: {integrity: sha512-jb7jp6KvOvvy5sd+11AfJ0/e0F0AS9RcOXd55oGi2ZnRHIGmFvrTaNF+ZidRmGBmmNTkM5KKl0Z37KzxJ+owEQ==} + typebox@1.4.2: + resolution: {integrity: sha512-eSoZzgSIyOKDtTH9MI7XMAxMaiXq7UiSFWarysN1ka66baTLDxAVdQ6WkWn6qDqsJFVrcjzvuP+CqHo9yrlQpg==} + typed-query-selector@2.12.2: resolution: {integrity: sha512-EOPFbyIub4ngnEdqi2yOcNeDLaX/0jcE1JoAXQDDMIthap7FoN795lc/SHfIq2d416VufXpM8z/lD+WRm2gfOQ==} @@ -5121,8 +5290,8 @@ packages: undici-types@8.9.0: resolution: {integrity: sha512-KTDyRTYX8sWmKXAikPHHSyc63CRPETMctyjKFupcC6OBLXT3xsN0e9aF7m+mIXutFWpUXuedtowG7iLOzp0kQg==} - undici@6.29.0: - resolution: {integrity: sha512-R+RODBqp6i2pPflGdq+xIOUkl+RNfGgHwoinecKu/JCuf2uO06cOKoDbI2P7Dn6KcswdKwrczbU6IYJ6K8X+wg==} + undici@6.29.1: + resolution: {integrity: sha512-EvRlUt/QqAEvXdQeRMYUfwOQsfzpDztykrG2owGEE/rBOBoYv9uF39ZzsNDh4lTFHhTr2XOZjKkYgueD12ZmGA==} engines: {node: '>=18.17'} undici@7.29.1: @@ -5448,6 +5617,18 @@ packages: utf-8-validate: optional: true + ws@8.22.0: + resolution: {integrity: sha512-Ydggc987+RO0AnWtZ/7Wq9FtNvcrL1b/RO0ud9mWjUPgDrsAAwQSF51sm2hm1XofbU/4jkpGEsLFsZZxU+1DOg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + xmlbuilder@15.1.1: resolution: {integrity: sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==} engines: {node: '>=8.0'} @@ -5525,6 +5706,9 @@ packages: zod@4.4.2: resolution: {integrity: sha512-IynmDyxsEsb9RKzO3J9+4SxXnl2FTFSzNBaKKaMV6tsSk0rw9gYw9gs+JFCq/qk2LCZ78KDwyj+Z289TijSkUw==} + zod@4.6.7: + resolution: {integrity: sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==} + zustand@5.0.12: resolution: {integrity: sha512-i77ae3aZq4dhMlRhJVCYgMLKuSiZAaUPAct2AksxQ+gOtimhGMdXljRT21P5BNpeT4kXlLIckvkPM029OljD7g==} engines: {node: '>=12.20.0'} @@ -5664,16 +5848,16 @@ snapshots: '@alloc/quick-lru@5.3.0': {} - '@anthropic-ai/sdk@0.91.1(zod@4.4.2)': + '@anthropic-ai/sdk@0.91.1(zod@4.6.7)': dependencies: json-schema-to-ts: 3.1.1 optionalDependencies: - zod: 4.4.2 + zod: 4.6.7 '@aws-crypto/crc32@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.973.8 + '@aws-sdk/types': 3.974.6 tslib: 2.8.1 '@aws-crypto/sha256-browser@5.2.0': @@ -5754,6 +5938,21 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/client-bedrock-runtime@3.1152.0': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/credential-provider-node': 3.972.86 + '@aws-sdk/eventstream-handler-node': 3.972.36 + '@aws-sdk/middleware-eventstream': 3.972.31 + '@aws-sdk/middleware-websocket': 3.972.56 + '@aws-sdk/token-providers': 3.1152.0 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/node-http-handler': 4.12.1 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/core@3.974.8': dependencies: '@aws-sdk/types': 3.973.8 @@ -5771,6 +5970,17 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 + '@aws-sdk/core@3.978.3': + dependencies: + '@aws-sdk/types': 3.974.6 + '@aws-sdk/xml-builder': 3.972.41 + '@aws/lambda-invoke-store': 0.3.0 + '@smithy/core': 3.36.0 + '@smithy/signature-v4': 5.7.4 + '@smithy/types': 4.19.0 + bowser: 2.14.1 + tslib: 2.8.1 + '@aws-sdk/credential-provider-env@3.972.34': dependencies: '@aws-sdk/core': 3.974.8 @@ -5779,6 +5989,14 @@ snapshots: '@smithy/types': 4.14.1 tslib: 2.8.1 + '@aws-sdk/credential-provider-env@3.972.74': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/credential-provider-http@3.972.36': dependencies: '@aws-sdk/core': 3.974.8 @@ -5792,6 +6010,16 @@ snapshots: '@smithy/util-stream': 4.5.25 tslib: 2.8.1 + '@aws-sdk/credential-provider-http@3.972.76': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/node-http-handler': 4.12.1 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/credential-provider-ini@3.972.38': dependencies: '@aws-sdk/core': 3.974.8 @@ -5811,19 +6039,44 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/credential-provider-ini@3.973.19': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/credential-provider-env': 3.972.74 + '@aws-sdk/credential-provider-http': 3.972.76 + '@aws-sdk/credential-provider-login': 3.972.81 + '@aws-sdk/credential-provider-process': 3.972.74 + '@aws-sdk/credential-provider-sso': 3.973.18 + '@aws-sdk/credential-provider-web-identity': 3.972.80 + '@aws-sdk/nested-clients': 3.997.48 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/credential-provider-imds': 4.5.2 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/credential-provider-login@3.972.38': dependencies: - '@aws-sdk/core': 3.974.8 + '@aws-sdk/core': 3.978.3 '@aws-sdk/nested-clients': 3.997.6 - '@aws-sdk/types': 3.973.8 + '@aws-sdk/types': 3.974.6 '@smithy/property-provider': 4.2.14 '@smithy/protocol-http': 5.3.14 '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 + '@smithy/types': 4.19.0 tslib: 2.8.1 transitivePeerDependencies: - aws-crt + '@aws-sdk/credential-provider-login@3.972.81': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/nested-clients': 3.997.48 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/credential-provider-node@3.972.39': dependencies: '@aws-sdk/credential-provider-env': 3.972.34 @@ -5841,6 +6094,20 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/credential-provider-node@3.972.86': + dependencies: + '@aws-sdk/credential-provider-env': 3.972.74 + '@aws-sdk/credential-provider-http': 3.972.76 + '@aws-sdk/credential-provider-ini': 3.973.19 + '@aws-sdk/credential-provider-process': 3.972.74 + '@aws-sdk/credential-provider-sso': 3.973.18 + '@aws-sdk/credential-provider-web-identity': 3.972.80 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/credential-provider-imds': 4.5.2 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/credential-provider-process@3.972.34': dependencies: '@aws-sdk/core': 3.974.8 @@ -5850,6 +6117,14 @@ snapshots: '@smithy/types': 4.14.1 tslib: 2.8.1 + '@aws-sdk/credential-provider-process@3.972.74': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/credential-provider-sso@3.972.38': dependencies: '@aws-sdk/core': 3.974.8 @@ -5863,6 +6138,16 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/credential-provider-sso@3.973.18': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/nested-clients': 3.997.48 + '@aws-sdk/token-providers': 3.1150.0 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/credential-provider-web-identity@3.972.38': dependencies: '@aws-sdk/core': 3.974.8 @@ -5875,6 +6160,15 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/credential-provider-web-identity@3.972.80': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/nested-clients': 3.997.48 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/eventstream-handler-node@3.972.14': dependencies: '@aws-sdk/types': 3.973.8 @@ -5882,6 +6176,13 @@ snapshots: '@smithy/types': 4.14.1 tslib: 2.8.1 + '@aws-sdk/eventstream-handler-node@3.972.36': + dependencies: + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/middleware-eventstream@3.972.10': dependencies: '@aws-sdk/types': 3.973.8 @@ -5889,6 +6190,13 @@ snapshots: '@smithy/types': 4.14.1 tslib: 2.8.1 + '@aws-sdk/middleware-eventstream@3.972.31': + dependencies: + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/middleware-host-header@3.972.10': dependencies: '@aws-sdk/types': 3.973.8 @@ -5912,15 +6220,15 @@ snapshots: '@aws-sdk/middleware-sdk-s3@3.972.37': dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/types': 3.973.8 + '@aws-sdk/core': 3.978.3 + '@aws-sdk/types': 3.974.6 '@aws-sdk/util-arn-parser': 3.972.3 - '@smithy/core': 3.23.17 + '@smithy/core': 3.36.0 '@smithy/node-config-provider': 4.3.14 '@smithy/protocol-http': 5.3.14 - '@smithy/signature-v4': 5.3.14 + '@smithy/signature-v4': 5.7.4 '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 + '@smithy/types': 4.19.0 '@smithy/util-config-provider': 4.2.2 '@smithy/util-middleware': 4.2.14 '@smithy/util-stream': 4.5.25 @@ -5953,6 +6261,27 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 + '@aws-sdk/middleware-websocket@3.972.56': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/signature-v4': 5.7.4 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + + '@aws-sdk/nested-clients@3.997.48': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/signature-v4-multi-region': 3.996.48 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/node-http-handler': 4.12.1 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/nested-clients@3.997.6': dependencies: '@aws-crypto/sha256-browser': 5.2.0 @@ -6008,10 +6337,17 @@ snapshots: '@aws-sdk/signature-v4-multi-region@3.996.25': dependencies: '@aws-sdk/middleware-sdk-s3': 3.972.37 - '@aws-sdk/types': 3.973.8 + '@aws-sdk/types': 3.974.6 '@smithy/protocol-http': 5.3.14 '@smithy/signature-v4': 5.3.14 - '@smithy/types': 4.14.1 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + + '@aws-sdk/signature-v4-multi-region@3.996.48': + dependencies: + '@aws-sdk/types': 3.974.6 + '@smithy/signature-v4': 5.7.4 + '@smithy/types': 4.19.0 tslib: 2.8.1 '@aws-sdk/token-providers@3.1041.0': @@ -6026,11 +6362,34 @@ snapshots: transitivePeerDependencies: - aws-crt + '@aws-sdk/token-providers@3.1150.0': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/nested-clients': 3.997.48 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + + '@aws-sdk/token-providers@3.1152.0': + dependencies: + '@aws-sdk/core': 3.978.3 + '@aws-sdk/nested-clients': 3.997.48 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/types@3.973.8': dependencies: '@smithy/types': 4.14.1 tslib: 2.8.1 + '@aws-sdk/types@3.974.6': + dependencies: + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws-sdk/util-arn-parser@3.972.3': dependencies: tslib: 2.8.1 @@ -6077,8 +6436,15 @@ snapshots: fast-xml-parser: 5.7.2 tslib: 2.8.1 + '@aws-sdk/xml-builder@3.972.41': + dependencies: + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@aws/lambda-invoke-store@0.2.4': {} + '@aws/lambda-invoke-store@0.3.0': {} + '@babel/code-frame@7.29.0': dependencies: '@babel/helper-validator-identifier': 7.28.5 @@ -6795,6 +7161,17 @@ snapshots: - supports-color - utf-8-validate + '@google/genai@1.52.0': + dependencies: + google-auth-library: 10.9.1 + p-retry: 4.6.2 + protobufjs: 7.6.6 + ws: 8.22.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + '@iarna/toml@2.2.5': {} '@iconify-json/simple-icons@1.2.78': @@ -6920,10 +7297,10 @@ snapshots: std-env: 3.10.0 yoctocolors: 2.1.2 - '@mariozechner/pi-agent-core@0.72.1(ws@8.20.0)(zod@4.4.2)': + '@mariozechner/pi-agent-core@0.72.1(ws@8.22.0)(zod@4.6.7)': dependencies: - '@mariozechner/pi-ai': 0.72.1(ws@8.20.0)(zod@4.4.2) - typebox: 1.1.37 + '@mariozechner/pi-ai': 0.72.1(ws@8.22.0)(zod@4.6.7) + typebox: 1.4.2 transitivePeerDependencies: - '@modelcontextprotocol/sdk' - aws-crt @@ -6933,19 +7310,35 @@ snapshots: - ws - zod - '@mariozechner/pi-ai@0.72.1(ws@8.20.0)(zod@4.4.2)': + '@mariozechner/pi-agent-core@0.73.1(ws@8.22.0)(zod@4.6.7)': + dependencies: + '@mariozechner/pi-ai': 0.73.1(ws@8.22.0)(zod@4.6.7) + typebox: 1.4.2 + transitivePeerDependencies: + - '@modelcontextprotocol/sdk' + - '@opentelemetry/api' + - '@opentelemetry/exporter-trace-otlp-http' + - '@opentelemetry/resources' + - '@opentelemetry/sdk-trace-base' + - bufferutil + - supports-color + - utf-8-validate + - ws + - zod + + '@mariozechner/pi-ai@0.72.1(ws@8.22.0)(zod@4.6.7)': dependencies: - '@anthropic-ai/sdk': 0.91.1(zod@4.4.2) + '@anthropic-ai/sdk': 0.91.1(zod@4.6.7) '@aws-sdk/client-bedrock-runtime': 3.1041.0 '@google/genai': 1.51.0 '@mistralai/mistralai': 2.2.1 chalk: 5.6.2 - openai: 6.26.0(ws@8.20.0)(zod@4.4.2) + openai: 6.26.0(ws@8.22.0)(zod@4.6.7) partial-json: 0.1.7 proxy-agent: 6.5.0 typebox: 1.1.37 undici: 7.29.1 - zod-to-json-schema: 3.25.2(zod@4.4.2) + zod-to-json-schema: 3.25.2(zod@4.6.7) transitivePeerDependencies: - '@modelcontextprotocol/sdk' - aws-crt @@ -6955,11 +7348,36 @@ snapshots: - ws - zod - '@mariozechner/pi-coding-agent@0.72.1(ws@8.20.0)(zod@4.4.2)': + '@mariozechner/pi-ai@0.73.1(ws@8.22.0)(zod@4.6.7)': + dependencies: + '@anthropic-ai/sdk': 0.91.1(zod@4.6.7) + '@aws-sdk/client-bedrock-runtime': 3.1152.0 + '@google/genai': 1.52.0 + '@mistralai/mistralai': 2.7.0 + chalk: 5.6.2 + openai: 6.26.0(ws@8.22.0)(zod@4.6.7) + partial-json: 0.1.7 + proxy-agent: 6.5.0 + typebox: 1.4.2 + undici: 7.29.1 + zod-to-json-schema: 3.25.2(zod@4.6.7) + transitivePeerDependencies: + - '@modelcontextprotocol/sdk' + - '@opentelemetry/api' + - '@opentelemetry/exporter-trace-otlp-http' + - '@opentelemetry/resources' + - '@opentelemetry/sdk-trace-base' + - bufferutil + - supports-color + - utf-8-validate + - ws + - zod + + '@mariozechner/pi-coding-agent@0.72.1(ws@8.22.0)(zod@4.6.7)': dependencies: '@mariozechner/jiti': 2.6.5 - '@mariozechner/pi-agent-core': 0.72.1(ws@8.20.0)(zod@4.4.2) - '@mariozechner/pi-ai': 0.72.1(ws@8.20.0)(zod@4.4.2) + '@mariozechner/pi-agent-core': 0.72.1(ws@8.22.0)(zod@4.6.7) + '@mariozechner/pi-ai': 0.72.1(ws@8.22.0)(zod@4.6.7) '@mariozechner/pi-tui': 0.72.1 '@silvia-odwyer/photon-node': 0.3.4 chalk: 5.6.2 @@ -7008,6 +7426,16 @@ snapshots: - bufferutil - utf-8-validate + '@mistralai/mistralai@2.7.0': + dependencies: + '@opentelemetry/semantic-conventions': 1.43.0 + ws: 8.22.0 + zod: 4.6.7 + zod-to-json-schema: 3.25.2(zod@4.6.7) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + '@napi-rs/lzma-linux-x64-gnu@1.5.1': optional: true @@ -7050,6 +7478,8 @@ snapshots: dependencies: semver: 7.8.5 + '@opentelemetry/semantic-conventions@1.43.0': {} + '@oxc-project/types@0.127.0': {} '@peculiar/asn1-schema@2.10.0': @@ -7085,11 +7515,17 @@ snapshots: '@protobufjs/eventemitter@1.1.0': {} + '@protobufjs/eventemitter@1.1.1': {} + '@protobufjs/fetch@1.1.0': dependencies: '@protobufjs/aspromise': 1.1.2 '@protobufjs/inquire': 1.1.1 + '@protobufjs/fetch@1.1.1': + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/float@1.0.2': {} '@protobufjs/inquire@1.1.1': {} @@ -7100,6 +7536,8 @@ snapshots: '@protobufjs/utf8@1.1.1': {} + '@protobufjs/utf8@1.1.2': {} + '@puppeteer/browsers@2.13.0': dependencies: debug: 4.4.3 @@ -7311,6 +7749,11 @@ snapshots: '@smithy/uuid': 1.1.2 tslib: 2.8.1 + '@smithy/core@3.36.0': + dependencies: + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@smithy/credential-provider-imds@4.2.14': dependencies: '@smithy/node-config-provider': 4.3.14 @@ -7319,6 +7762,12 @@ snapshots: '@smithy/url-parser': 4.2.14 tslib: 2.8.1 + '@smithy/credential-provider-imds@4.5.2': + dependencies: + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@smithy/eventstream-codec@4.2.14': dependencies: '@aws-crypto/crc32': 5.2.0 @@ -7357,6 +7806,12 @@ snapshots: '@smithy/util-base64': 4.3.2 tslib: 2.8.1 + '@smithy/fetch-http-handler@5.8.0': + dependencies: + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@smithy/hash-node@4.2.14': dependencies: '@smithy/types': 4.14.1 @@ -7426,6 +7881,12 @@ snapshots: '@smithy/types': 4.14.1 tslib: 2.8.1 + '@smithy/node-http-handler@4.12.1': + dependencies: + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@smithy/node-http-handler@4.6.1': dependencies: '@smithy/protocol-http': 5.3.14 @@ -7474,6 +7935,12 @@ snapshots: '@smithy/util-utf8': 4.2.2 tslib: 2.8.1 + '@smithy/signature-v4@5.7.4': + dependencies: + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 + tslib: 2.8.1 + '@smithy/smithy-client@4.12.13': dependencies: '@smithy/core': 3.23.17 @@ -7488,6 +7955,10 @@ snapshots: dependencies: tslib: 2.8.1 + '@smithy/types@4.19.0': + dependencies: + tslib: 2.8.1 + '@smithy/url-parser@4.2.14': dependencies: '@smithy/querystring-parser': 4.2.14 @@ -9147,6 +9618,14 @@ snapshots: transitivePeerDependencies: - supports-color + gaxios@7.3.1: + dependencies: + extend: 3.0.2 + https-proxy-agent: 7.0.6 + node-fetch: 3.3.2 + transitivePeerDependencies: + - supports-color + gcp-metadata@8.1.2: dependencies: gaxios: 7.1.4 @@ -9255,6 +9734,17 @@ snapshots: transitivePeerDependencies: - supports-color + google-auth-library@10.9.1: + dependencies: + base64-js: 1.5.1 + ecdsa-sig-formatter: 1.0.11 + gaxios: 7.3.1 + gcp-metadata: 8.1.2 + google-logging-utils: 1.1.3 + jws: 4.0.1 + transitivePeerDependencies: + - supports-color + google-logging-utils@1.1.3: {} gopd@1.2.0: {} @@ -10250,7 +10740,7 @@ snapshots: semver: 7.8.5 tar: 7.5.22 tinyglobby: 0.2.17 - undici: 6.29.0 + undici: 6.29.1 which: 6.0.1 node-int64@0.4.0: {} @@ -10288,10 +10778,10 @@ snapshots: regex: 6.1.0 regex-recursion: 6.0.2 - openai@6.26.0(ws@8.20.0)(zod@4.4.2): + openai@6.26.0(ws@8.22.0)(zod@4.6.7): optionalDependencies: - ws: 8.20.0 - zod: 4.4.2 + ws: 8.22.0 + zod: 4.6.7 ora@5.4.1: dependencies: @@ -10515,6 +11005,20 @@ snapshots: '@types/node': 22.20.5 long: 5.3.2 + protobufjs@7.6.6: + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/base64': 1.1.2 + '@protobufjs/codegen': 2.0.5 + '@protobufjs/eventemitter': 1.1.1 + '@protobufjs/fetch': 1.1.1 + '@protobufjs/float': 1.0.2 + '@protobufjs/path': 1.1.2 + '@protobufjs/pool': 1.1.0 + '@protobufjs/utf8': 1.1.2 + '@types/node': 22.20.5 + long: 5.3.2 + proxy-agent@6.5.0: dependencies: agent-base: 7.1.4 @@ -11121,6 +11625,8 @@ snapshots: typebox@1.1.37: {} + typebox@1.4.2: {} + typed-query-selector@2.12.2: {} typescript@6.0.3: {} @@ -11132,7 +11638,7 @@ snapshots: undici-types@8.9.0: optional: true - undici@6.29.0: {} + undici@6.29.1: {} undici@7.29.1: {} @@ -11487,6 +11993,8 @@ snapshots: ws@8.20.0: {} + ws@8.22.0: {} + xmlbuilder@15.1.1: {} y18n@5.0.8: {} @@ -11552,10 +12060,16 @@ snapshots: dependencies: zod: 4.4.2 + zod-to-json-schema@3.25.2(zod@4.6.7): + dependencies: + zod: 4.6.7 + zod@3.25.76: {} zod@4.4.2: {} + zod@4.6.7: {} + zustand@5.0.12(@types/react@19.3.0)(react@19.3.0)(use-sync-external-store@1.6.0(react@19.3.0)): optionalDependencies: '@types/react': 19.3.0 From db3a307a774d887bea69ce63d371015851cd8fd7 Mon Sep 17 00:00:00 2001 From: Sun-sunshine06 Date: Tue, 20 Oct 2026 17:59:40 +0800 Subject: [PATCH 2/8] fix(deps): migrate pi to maintained secure packages Signed-off-by: Sun-sunshine06 --- .changeset/align-pi-packages.md | 2 +- .github/dependabot.yml | 2 +- .github/prompts/codex-pr-review.md | 2 +- CLAUDE.md | 2 +- README.md | 2 +- README.zh-CN.md | 2 +- apps/desktop/electron.vite.config.ts | 8 +- apps/desktop/package.json | 6 +- .../src/main/generation-native-cancel.test.ts | 8 +- .../ipc/generate.workspace-rename.test.ts | 4 +- apps/desktop/src/main/migration/v01-to-v02.ts | 2 +- package.json | 3 +- packages/core/package.json | 6 +- packages/core/src/active-messages.test.ts | 4 +- packages/core/src/active-messages.ts | 2 +- packages/core/src/agent-session.test.ts | 2 +- packages/core/src/agent-session.ts | 8 +- .../src/agent.active-message-retry.test.ts | 8 +- packages/core/src/agent.design-loop.test.ts | 8 +- .../core/src/agent.native-lifecycle.test.ts | 8 +- packages/core/src/agent.test.ts | 6 +- packages/core/src/agent.ts | 8 +- packages/core/src/context-budget.test.ts | 2 +- packages/core/src/context-budget.ts | 4 +- packages/core/src/context-prune.test.ts | 2 +- packages/core/src/context-prune.ts | 2 +- packages/core/src/context-window.test.ts | 2 +- packages/core/src/context-window.ts | 2 +- packages/core/src/design-context.test.ts | 2 +- packages/core/src/design-context.ts | 2 +- packages/core/src/memory.test.ts | 2 +- packages/core/src/memory.ts | 2 +- packages/core/src/tools/ask.ts | 2 +- .../core/src/tools/decompose-to-ui-kit.ts | 2 +- packages/core/src/tools/done.ts | 2 +- .../core/src/tools/generate-image-asset.ts | 2 +- packages/core/src/tools/inspect-workspace.ts | 2 +- packages/core/src/tools/preview.test.ts | 4 +- packages/core/src/tools/preview.ts | 4 +- packages/core/src/tools/scaffold.ts | 2 +- packages/core/src/tools/set-title.ts | 2 +- packages/core/src/tools/set-todos.ts | 2 +- packages/core/src/tools/skill.ts | 2 +- packages/core/src/tools/text-editor.ts | 2 +- packages/core/src/tools/tweaks.ts | 2 +- .../core/src/tools/verify-ui-kit-parity.ts | 2 +- .../src/tools/verify-ui-kit-visual-parity.ts | 2 +- packages/core/src/tools/web-research.ts | 2 +- packages/providers/package.json | 2 +- packages/providers/src/index.test.ts | 2 +- packages/providers/src/index.ts | 4 +- pnpm-lock.yaml | 1682 +++++------------ renovate.json | 2 +- website/architecture.md | 2 +- 54 files changed, 508 insertions(+), 1347 deletions(-) diff --git a/.changeset/align-pi-packages.md b/.changeset/align-pi-packages.md index 1e0c42b62..c90f6463e 100644 --- a/.changeset/align-pi-packages.md +++ b/.changeset/align-pi-packages.md @@ -4,4 +4,4 @@ "@open-codesign/desktop": patch --- -Keep the pi agent, model, and coding-agent packages on the same compatible version. +Migrate the pi agent, model, and coding-agent packages together to the maintained namespace and version 0.79.0, which fixes extension loading, credential-file, and HTML-export security issues. Require a fixed Undici 8.x release and Node.js 22.19.0 or newer. diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 62a780fee..83624acbf 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -17,7 +17,7 @@ updates: groups: pi: patterns: - - "@mariozechner/pi-*" + - "@earendil-works/pi-*" typescript: patterns: - typescript diff --git a/.github/prompts/codex-pr-review.md b/.github/prompts/codex-pr-review.md index 2ecca1d1b..9efd4baa8 100644 --- a/.github/prompts/codex-pr-review.md +++ b/.github/prompts/codex-pr-review.md @@ -26,7 +26,7 @@ Open CoDesign is an open-source AI design tool — Electron desktop app that tur **Project constraints:** - ≤ 30 prod dependencies - Shipped app/runtime dependencies and copied/bundled assets must be MIT-compatible permissive. Workflow-only CI/release actions may use copyleft licenses when they are not vendored or distributed and their outputs are ordinary metadata/manifests. -- All LLM calls via `@mariozechner/pi-ai` (no direct provider SDK imports in app code) +- All LLM calls via `@earendil-works/pi-ai` (no direct provider SDK imports in app code) - No silent fallbacks for user-visible failure, data loss, auth/security decisions, or persisted state. Best-effort cleanup, optional discovery, and non-critical listing paths may degrade quietly when the UI still presents a truthful state. diff --git a/CLAUDE.md b/CLAUDE.md index b53877e64..277629eda 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -31,7 +31,7 @@ These are project-level commitments, not preferences: - **Commits**: Conventional Commits, enforced by commitlint. - **Versioning**: Changesets. Don't hand-edit `CHANGELOG.md`. - **Node**: 22 LTS (pinned via `.nvmrc` + `engines`). -- **Model layer**: All LLM calls go through `@mariozechner/pi-ai`. Don't import provider SDKs directly in app code; if pi-ai lacks a feature, add it to `packages/providers` as a thin extension. +- **Model layer**: All LLM calls go through `@earendil-works/pi-ai`. Don't import provider SDKs directly in app code; if pi-ai lacks a feature, add it to `packages/providers` as a thin extension. ### Frontend stack (locked) diff --git a/README.md b/README.md index 42cf0261d..0df184422 100644 --- a/README.md +++ b/README.md @@ -378,7 +378,7 @@ Have a different priority in mind? [Open an issue](https://github.com/OpenCowork ## Built on - Electron + React 19 + Vite 6 + Tailwind v4 -- `@mariozechner/pi-ai` and `pi-coding-agent` (model/provider and agent-loop primitives) +- `@earendil-works/pi-ai` and `pi-coding-agent` (model/provider and agent-loop primitives) - `electron-builder` ## Reporting issues diff --git a/README.zh-CN.md b/README.zh-CN.md index 406af3d98..f3b1881c5 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -303,7 +303,7 @@ v0.2 已经把 Open CoDesign 从一次性生成器升级成一个本地设计 ag ## 基于这些技术构建 - Electron + React 19 + Vite 6 + Tailwind v4 -- `@mariozechner/pi-ai` 与 `pi-coding-agent`(模型 / provider 与 agent loop 基础能力) +- `@earendil-works/pi-ai` 与 `pi-coding-agent`(模型 / provider 与 agent loop 基础能力) - `electron-builder` ## 社群 diff --git a/apps/desktop/electron.vite.config.ts b/apps/desktop/electron.vite.config.ts index ec943b5b0..5cc2a6da7 100644 --- a/apps/desktop/electron.vite.config.ts +++ b/apps/desktop/electron.vite.config.ts @@ -17,9 +17,9 @@ const WORKSPACE_PACKAGES = [ '@open-codesign/ui', ]; const BUNDLED_RUNTIME_PACKAGES = [ - '@mariozechner/pi-agent-core', - '@mariozechner/pi-ai', - '@mariozechner/pi-coding-agent', + '@earendil-works/pi-agent-core', + '@earendil-works/pi-ai', + '@earendil-works/pi-coding-agent', 'electron-log', 'electron-log/main', 'electron-updater', @@ -62,7 +62,7 @@ export default defineConfig({ input: { index: resolve(__dirname, 'src/main/index.ts') }, treeshake: { moduleSideEffects: (id) => - !id.includes('/node_modules/@mariozechner/pi-coding-agent/dist/'), + !id.includes('/node_modules/@earendil-works/pi-coding-agent/dist/'), }, external: ['electron', 'puppeteer-core'], plugins: [copyPromptSections()], diff --git a/apps/desktop/package.json b/apps/desktop/package.json index b590bcc1d..5b997200b 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -28,9 +28,9 @@ "undici": "^7.29.1" }, "devDependencies": { - "@mariozechner/pi-agent-core": "^0.73.1", - "@mariozechner/pi-ai": "^0.73.1", - "@mariozechner/pi-coding-agent": "^0.73.1", + "@earendil-works/pi-agent-core": "^0.79.0", + "@earendil-works/pi-ai": "^0.79.0", + "@earendil-works/pi-coding-agent": "^0.79.0", "@open-codesign/artifacts": "workspace:*", "@open-codesign/core": "workspace:*", "@open-codesign/exporters": "workspace:*", diff --git a/apps/desktop/src/main/generation-native-cancel.test.ts b/apps/desktop/src/main/generation-native-cancel.test.ts index 1df88f8a8..1134ba630 100644 --- a/apps/desktop/src/main/generation-native-cancel.test.ts +++ b/apps/desktop/src/main/generation-native-cancel.test.ts @@ -2,8 +2,8 @@ import { EventEmitter } from 'node:events'; import { mkdtemp, rm } from 'node:fs/promises'; import { tmpdir } from 'node:os'; import { join } from 'node:path'; -import type { AgentOptions, StreamFn } from '@mariozechner/pi-agent-core'; -import { type AssistantMessage, createAssistantMessageEventStream } from '@mariozechner/pi-ai'; +import type { AgentOptions, StreamFn } from '@earendil-works/pi-agent-core'; +import { type AssistantMessage, createAssistantMessageEventStream } from '@earendil-works/pi-ai'; import { generateViaAgent } from '@open-codesign/core'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { @@ -24,8 +24,8 @@ const native = vi.hoisted(() => ({ stream: vi.fn(), windows: [] as Electron.BrowserWindow[], })); -vi.mock('@mariozechner/pi-agent-core', async (importOriginal) => { - const actual = await importOriginal(); +vi.mock('@earendil-works/pi-agent-core', async (importOriginal) => { + const actual = await importOriginal(); return { ...actual, Agent: class extends actual.Agent { diff --git a/apps/desktop/src/main/ipc/generate.workspace-rename.test.ts b/apps/desktop/src/main/ipc/generate.workspace-rename.test.ts index 3d4000a9e..4005d6e27 100644 --- a/apps/desktop/src/main/ipc/generate.workspace-rename.test.ts +++ b/apps/desktop/src/main/ipc/generate.workspace-rename.test.ts @@ -1,8 +1,8 @@ import { mkdir, readdir, readFile, rm, symlink, writeFile } from 'node:fs/promises'; import os from 'node:os'; import path from 'node:path'; -import { Agent } from '@mariozechner/pi-agent-core'; -import { createAssistantMessageEventStream, getModel } from '@mariozechner/pi-ai'; +import { Agent } from '@earendil-works/pi-agent-core'; +import { createAssistantMessageEventStream, getModel } from '@earendil-works/pi-ai'; import type { Design } from '@open-codesign/shared'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; diff --git a/apps/desktop/src/main/migration/v01-to-v02.ts b/apps/desktop/src/main/migration/v01-to-v02.ts index 966fb7bdf..0f4dc05db 100644 --- a/apps/desktop/src/main/migration/v01-to-v02.ts +++ b/apps/desktop/src/main/migration/v01-to-v02.ts @@ -1,6 +1,6 @@ import { existsSync, mkdirSync, renameSync, writeFileSync } from 'node:fs'; import path from 'node:path'; -import type { Message, Usage } from '@mariozechner/pi-ai'; +import type { Message, Usage } from '@earendil-works/pi-ai'; import { SessionManager } from '@open-codesign/core'; import { normalizeDesignFilePath } from '../snapshots-db'; import { prepareWorkspaceWriteContent } from '../workspace-file-content'; diff --git a/package.json b/package.json index d1bd20af9..27696c88b 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "url": "https://github.com/OpenCoworkAI/open-codesign/issues" }, "engines": { - "node": ">=22" + "node": ">=22.19.0" }, "packageManager": "pnpm@10.33.4", "scripts": { @@ -38,6 +38,7 @@ "overrides": { "@xmldom/xmldom@<0.8.15": "0.8.15", "pptxgenjs@4.0.1>image-size": "-", + "undici@>=8.0.0 <8.10.2": "8.10.2", "fast-xml-parser@<5.7.0": ">=5.7.0", "vitepress>vite": "6.4.2", "esbuild@<0.25.0": ">=0.25.0" diff --git a/packages/core/package.json b/packages/core/package.json index e44d28bee..a47fe4106 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -13,9 +13,9 @@ "test": "vitest run --passWithNoTests" }, "dependencies": { - "@mariozechner/pi-agent-core": "^0.73.1", - "@mariozechner/pi-ai": "^0.73.1", - "@mariozechner/pi-coding-agent": "^0.73.1", + "@earendil-works/pi-agent-core": "^0.79.0", + "@earendil-works/pi-ai": "^0.79.0", + "@earendil-works/pi-coding-agent": "^0.79.0", "@open-codesign/providers": "workspace:*", "@open-codesign/shared": "workspace:*", "@sinclair/typebox": "^0.34.49" diff --git a/packages/core/src/active-messages.test.ts b/packages/core/src/active-messages.test.ts index 9b68e290b..5e00effb6 100644 --- a/packages/core/src/active-messages.test.ts +++ b/packages/core/src/active-messages.test.ts @@ -1,9 +1,9 @@ -import { Agent, type AgentMessage } from '@mariozechner/pi-agent-core'; +import { Agent, type AgentMessage } from '@earendil-works/pi-agent-core'; import { type AssistantMessage, createAssistantMessageEventStream, getModel, -} from '@mariozechner/pi-ai'; +} from '@earendil-works/pi-ai'; import type { ActiveRunMessageInputV1, ActiveRunMessageV1 } from '@open-codesign/shared'; import { Type } from '@sinclair/typebox'; import { describe, expect, it, vi } from 'vitest'; diff --git a/packages/core/src/active-messages.ts b/packages/core/src/active-messages.ts index 36fc5fb2c..0bcf53528 100644 --- a/packages/core/src/active-messages.ts +++ b/packages/core/src/active-messages.ts @@ -1,4 +1,4 @@ -import type { Agent, AgentEvent, AgentMessage } from '@mariozechner/pi-agent-core'; +import type { Agent, AgentEvent, AgentMessage } from '@earendil-works/pi-agent-core'; import { type ActiveRunMessageInputV1, type ActiveRunMessageV1, diff --git a/packages/core/src/agent-session.test.ts b/packages/core/src/agent-session.test.ts index 9bef1614d..1ef1703f8 100644 --- a/packages/core/src/agent-session.test.ts +++ b/packages/core/src/agent-session.test.ts @@ -1,7 +1,7 @@ import { mkdtempSync, rmSync } from 'node:fs'; import { tmpdir } from 'node:os'; import path from 'node:path'; -import { AuthStorage } from '@mariozechner/pi-coding-agent'; +import { AuthStorage } from '@earendil-works/pi-coding-agent'; import { describe, expect, it } from 'vitest'; import { createCodesignSession } from './agent-session.js'; diff --git a/packages/core/src/agent-session.ts b/packages/core/src/agent-session.ts index fdca04b70..77ed549e1 100644 --- a/packages/core/src/agent-session.ts +++ b/packages/core/src/agent-session.ts @@ -1,5 +1,5 @@ /** - * v0.2 agent-session wrapper around `@mariozechner/pi-coding-agent`. + * v0.2 agent-session wrapper around `@earendil-works/pi-coding-agent`. * * Spike result (docs/spike-pi-results.md, 2026-04-24): * pi-coding-agent satisfies all v0.2 hard needs (bash hook, session @@ -13,7 +13,7 @@ */ import path from 'node:path'; -import type { Api, Model } from '@mariozechner/pi-ai'; +import type { Api, Model } from '@earendil-works/pi-ai'; import { type AgentSession, type AuthStorage, @@ -25,7 +25,7 @@ import { isToolCallEventType, ModelRegistry, SessionManager, -} from '@mariozechner/pi-coding-agent'; +} from '@earendil-works/pi-coding-agent'; export interface PermissionDecision { /** Allow this command to run. */ @@ -95,4 +95,4 @@ export async function createCodesignSession(options: CreateSessionOptions): Prom return { session: result.session, result, sessionFile }; } -export { AuthStorage, ModelRegistry, SessionManager } from '@mariozechner/pi-coding-agent'; +export { AuthStorage, ModelRegistry, SessionManager } from '@earendil-works/pi-coding-agent'; diff --git a/packages/core/src/agent.active-message-retry.test.ts b/packages/core/src/agent.active-message-retry.test.ts index 02dad4bc4..9004e1d6e 100644 --- a/packages/core/src/agent.active-message-retry.test.ts +++ b/packages/core/src/agent.active-message-retry.test.ts @@ -1,5 +1,5 @@ -import type { Agent, AgentMessage, AgentOptions, StreamFn } from '@mariozechner/pi-agent-core'; -import { type AssistantMessage, createAssistantMessageEventStream } from '@mariozechner/pi-ai'; +import type { Agent, AgentMessage, AgentOptions, StreamFn } from '@earendil-works/pi-agent-core'; +import { type AssistantMessage, createAssistantMessageEventStream } from '@earendil-works/pi-ai'; import type { ActiveRunMessageV1 } from '@open-codesign/shared'; import { beforeEach, describe, expect, it, vi } from 'vitest'; import { ActiveRunMessages } from './active-messages'; @@ -10,8 +10,8 @@ const native = vi.hoisted(() => ({ agents: [] as Agent[], })); -vi.mock('@mariozechner/pi-agent-core', async (importOriginal) => { - const actual = await importOriginal(); +vi.mock('@earendil-works/pi-agent-core', async (importOriginal) => { + const actual = await importOriginal(); return { ...actual, Agent: class extends actual.Agent { diff --git a/packages/core/src/agent.design-loop.test.ts b/packages/core/src/agent.design-loop.test.ts index c8cdb0c0a..bd82783fe 100644 --- a/packages/core/src/agent.design-loop.test.ts +++ b/packages/core/src/agent.design-loop.test.ts @@ -1,8 +1,8 @@ import { mkdtempSync, readdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs'; import { tmpdir } from 'node:os'; import { join } from 'node:path'; -import type { Agent, AgentMessage, AgentOptions, StreamFn } from '@mariozechner/pi-agent-core'; -import { type AssistantMessage, createAssistantMessageEventStream } from '@mariozechner/pi-ai'; +import type { Agent, AgentMessage, AgentOptions, StreamFn } from '@earendil-works/pi-agent-core'; +import { type AssistantMessage, createAssistantMessageEventStream } from '@earendil-works/pi-ai'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { generateViaAgent } from './agent'; import type { GenerateInput } from './index'; @@ -13,8 +13,8 @@ import type { TextEditorFsCallbacks } from './tools/text-editor'; const native = vi.hoisted(() => ({ stream: vi.fn(), agents: [] as Agent[] })); // Substitute only pi's streaming boundary; Agent scheduling, tools and recovery are real. -vi.mock('@mariozechner/pi-agent-core', async (importOriginal) => { - const actual = await importOriginal(); +vi.mock('@earendil-works/pi-agent-core', async (importOriginal) => { + const actual = await importOriginal(); return { ...actual, Agent: class extends actual.Agent { diff --git a/packages/core/src/agent.native-lifecycle.test.ts b/packages/core/src/agent.native-lifecycle.test.ts index b89635ef1..6ce0343d2 100644 --- a/packages/core/src/agent.native-lifecycle.test.ts +++ b/packages/core/src/agent.native-lifecycle.test.ts @@ -1,8 +1,8 @@ import { mkdtempSync, readdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs'; import { tmpdir } from 'node:os'; import { join } from 'node:path'; -import type { Agent, AgentMessage, AgentOptions, StreamFn } from '@mariozechner/pi-agent-core'; -import { type AssistantMessage, createAssistantMessageEventStream } from '@mariozechner/pi-ai'; +import type { Agent, AgentMessage, AgentOptions, StreamFn } from '@earendil-works/pi-agent-core'; +import { type AssistantMessage, createAssistantMessageEventStream } from '@earendil-works/pi-ai'; import type { ActiveRunMessageV1 } from '@open-codesign/shared'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { ActiveRunMessages } from './active-messages'; @@ -16,8 +16,8 @@ import type { TextEditorFsCallbacks } from './tools/text-editor'; const native = vi.hoisted(() => ({ stream: vi.fn(), agents: [] as Agent[] })); // Substitute only pi's streaming boundary; Agent scheduling, tools and recovery are real. -vi.mock('@mariozechner/pi-agent-core', async (importOriginal) => { - const actual = await importOriginal(); +vi.mock('@earendil-works/pi-agent-core', async (importOriginal) => { + const actual = await importOriginal(); return { ...actual, Agent: class extends actual.Agent { diff --git a/packages/core/src/agent.test.ts b/packages/core/src/agent.test.ts index 5ccc26e1d..362319a4b 100644 --- a/packages/core/src/agent.test.ts +++ b/packages/core/src/agent.test.ts @@ -1,7 +1,7 @@ import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs'; import { tmpdir } from 'node:os'; import path from 'node:path'; -import type { AgentEvent, AgentMessage, AgentOptions } from '@mariozechner/pi-agent-core'; +import type { AgentEvent, AgentMessage, AgentOptions } from '@earendil-works/pi-agent-core'; import type { LoadedSkill, ModelRef, @@ -95,7 +95,7 @@ interface AgentScript { let scriptedAgent: AgentScript = { assistantText: '' }; -vi.mock('@mariozechner/pi-agent-core', () => { +vi.mock('@earendil-works/pi-agent-core', () => { class MockAgent { clearAllQueues(): void {} steer(): void {} @@ -310,7 +310,7 @@ vi.mock('./skills/loader.js', async () => { const streamSimpleMock = vi.hoisted(() => vi.fn()); -vi.mock('@mariozechner/pi-ai', () => ({ +vi.mock('@earendil-works/pi-ai', () => ({ streamSimple: streamSimpleMock, getModel: (provider: string, modelId: string) => ({ id: modelId, diff --git a/packages/core/src/agent.ts b/packages/core/src/agent.ts index a50fa2cf5..8e351893d 100644 --- a/packages/core/src/agent.ts +++ b/packages/core/src/agent.ts @@ -1,7 +1,7 @@ /** * Agent runtime wrapper — the live generate path in v0.2. * - * Routes a `generate()`-shaped request through `@mariozechner/pi-agent-core` + * Routes a `generate()`-shaped request through `@earendil-works/pi-agent-core` * with the v0.2 design tool set (set_title, set_todos, * str_replace_based_edit_tool, done, generate_image_asset, skill, scaffold, * preview, tweaks, ask — see `defaultTools` below). Streams `turn_start` / @@ -26,13 +26,13 @@ import { type AgentMessage, type AgentTool, type AgentToolResult, -} from '@mariozechner/pi-agent-core'; +} from '@earendil-works/pi-agent-core'; import { type ImageContent as PiAiImageContent, type Message as PiAiMessage, type Model as PiAiModel, streamSimple, -} from '@mariozechner/pi-ai'; +} from '@earendil-works/pi-ai'; import type { RetryDecision, RetryReason } from '@open-codesign/providers'; import { classifyError, @@ -127,7 +127,7 @@ import { makeWebResearchTools, WEB_RESEARCH_GUIDANCE } from './tools/web-researc /** Local mirror of the assistant message shape that pi-agent-core emits (via * pi-ai). Declared here so this file does not take a direct dependency on - * `@mariozechner/pi-ai`'s types; keep this shape in lockstep with the real + * `@earendil-works/pi-ai`'s types; keep this shape in lockstep with the real * pi-ai `AssistantMessage` whenever pi-agent-core is upgraded. */ interface PiAssistantMessage { role: 'assistant'; diff --git a/packages/core/src/context-budget.test.ts b/packages/core/src/context-budget.test.ts index 6ea253493..5816c9790 100644 --- a/packages/core/src/context-budget.test.ts +++ b/packages/core/src/context-budget.test.ts @@ -1,4 +1,4 @@ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; import { describe, expect, it } from 'vitest'; import { planContextBudget } from './context-budget.js'; diff --git a/packages/core/src/context-budget.ts b/packages/core/src/context-budget.ts index f018f7d44..dee6011ba 100644 --- a/packages/core/src/context-budget.ts +++ b/packages/core/src/context-budget.ts @@ -1,5 +1,5 @@ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; -import { estimateTokens } from '@mariozechner/pi-coding-agent'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; +import { estimateTokens } from '@earendil-works/pi-coding-agent'; import { CodesignError, ERROR_CODES } from '@open-codesign/shared'; /** pi's estimate for one image (`estimateTokens` counts images in tool results as 1,200 tokens). */ diff --git a/packages/core/src/context-prune.test.ts b/packages/core/src/context-prune.test.ts index c19d850fa..b02266d87 100644 --- a/packages/core/src/context-prune.test.ts +++ b/packages/core/src/context-prune.test.ts @@ -1,4 +1,4 @@ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; import { describe, expect, it, vi } from 'vitest'; import { buildTransformContext } from './context-prune.js'; import type { CoreLogger } from './logger.js'; diff --git a/packages/core/src/context-prune.ts b/packages/core/src/context-prune.ts index a9485681f..676d4971a 100644 --- a/packages/core/src/context-prune.ts +++ b/packages/core/src/context-prune.ts @@ -42,7 +42,7 @@ * blocks. */ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; import { type CoreLogger, NOOP_LOGGER } from './logger.js'; const TEXT_BLOCK_LIMIT = 8 * 1024; diff --git a/packages/core/src/context-window.test.ts b/packages/core/src/context-window.test.ts index c774a0a57..3465f42ef 100644 --- a/packages/core/src/context-window.test.ts +++ b/packages/core/src/context-window.test.ts @@ -6,7 +6,7 @@ const catalog: Record> = { google: [{ id: 'gemini-2.5-pro', contextWindow: 1_048_576 }], }; -vi.mock('@mariozechner/pi-ai', () => ({ +vi.mock('@earendil-works/pi-ai', () => ({ getProviders: () => Object.keys(catalog), getModels: (provider: string) => catalog[provider] ?? [], })); diff --git a/packages/core/src/context-window.ts b/packages/core/src/context-window.ts index 634df499d..4785506f7 100644 --- a/packages/core/src/context-window.ts +++ b/packages/core/src/context-window.ts @@ -1,4 +1,4 @@ -import { getModels, getProviders, type KnownProvider } from '@mariozechner/pi-ai'; +import { getModels, getProviders, type KnownProvider } from '@earendil-works/pi-ai'; import { normalizeGeminiModelId } from '@open-codesign/providers'; import type { ModelRef } from '@open-codesign/shared'; diff --git a/packages/core/src/design-context.test.ts b/packages/core/src/design-context.test.ts index 1f809187f..94581fc93 100644 --- a/packages/core/src/design-context.test.ts +++ b/packages/core/src/design-context.test.ts @@ -1,4 +1,4 @@ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; import { CompletionLengthError } from '@open-codesign/providers'; import type { ChatMessageRow, diff --git a/packages/core/src/design-context.ts b/packages/core/src/design-context.ts index ed90ec558..3d68c086f 100644 --- a/packages/core/src/design-context.ts +++ b/packages/core/src/design-context.ts @@ -1,4 +1,4 @@ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; import { CompletionLengthError, completeWithRetry, diff --git a/packages/core/src/memory.test.ts b/packages/core/src/memory.test.ts index 35bbcbe8f..6c2cf6aa8 100644 --- a/packages/core/src/memory.test.ts +++ b/packages/core/src/memory.test.ts @@ -1,4 +1,4 @@ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; import { describe, expect, it } from 'vitest'; import { formatMemoryContext, diff --git a/packages/core/src/memory.ts b/packages/core/src/memory.ts index ab7e41e3d..5c6d827ec 100644 --- a/packages/core/src/memory.ts +++ b/packages/core/src/memory.ts @@ -8,7 +8,7 @@ * - DesignSessionBrief is a compact JSONL cache derived from these sources. */ -import type { AgentMessage } from '@mariozechner/pi-agent-core'; +import type { AgentMessage } from '@earendil-works/pi-agent-core'; import { completeWithRetry } from '@open-codesign/providers'; import type { ChatMessage, ModelRef, ReasoningLevel, WireApi } from '@open-codesign/shared'; import { remapProviderError } from './errors.js'; diff --git a/packages/core/src/tools/ask.ts b/packages/core/src/tools/ask.ts index f4b269226..00c36e625 100644 --- a/packages/core/src/tools/ask.ts +++ b/packages/core/src/tools/ask.ts @@ -1,4 +1,4 @@ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { type Static, Type } from '@sinclair/typebox'; /** diff --git a/packages/core/src/tools/decompose-to-ui-kit.ts b/packages/core/src/tools/decompose-to-ui-kit.ts index 30cba02bc..fe33a67dd 100644 --- a/packages/core/src/tools/decompose-to-ui-kit.ts +++ b/packages/core/src/tools/decompose-to-ui-kit.ts @@ -12,7 +12,7 @@ * ui_kits//README.md handoff notes for downstream coding agent */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { Type } from '@sinclair/typebox'; import { type CoreLogger, NOOP_LOGGER } from '../logger.js'; import type { TextEditorFsCallbacks } from './text-editor'; diff --git a/packages/core/src/tools/done.ts b/packages/core/src/tools/done.ts index c4867b6a7..d1b68573f 100644 --- a/packages/core/src/tools/done.ts +++ b/packages/core/src/tools/done.ts @@ -14,7 +14,7 @@ * self-heals via `str_replace_based_edit_tool` and calls `done` again. */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { DEFAULT_SOURCE_ENTRY, LEGACY_SOURCE_ENTRY, validateDesignMd } from '@open-codesign/shared'; import { Type } from '@sinclair/typebox'; import type { TextEditorFsCallbacks } from './text-editor.js'; diff --git a/packages/core/src/tools/generate-image-asset.ts b/packages/core/src/tools/generate-image-asset.ts index a0126a97c..b5c2c277b 100644 --- a/packages/core/src/tools/generate-image-asset.ts +++ b/packages/core/src/tools/generate-image-asset.ts @@ -1,4 +1,4 @@ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { DEFAULT_SOURCE_ENTRY } from '@open-codesign/shared'; import { Type } from '@sinclair/typebox'; import { type CoreLogger, NOOP_LOGGER } from '../logger.js'; diff --git a/packages/core/src/tools/inspect-workspace.ts b/packages/core/src/tools/inspect-workspace.ts index 2f7180079..7ff5761c8 100644 --- a/packages/core/src/tools/inspect-workspace.ts +++ b/packages/core/src/tools/inspect-workspace.ts @@ -1,4 +1,4 @@ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { Type } from '@sinclair/typebox'; export interface InspectWorkspaceFileInput { diff --git a/packages/core/src/tools/preview.test.ts b/packages/core/src/tools/preview.test.ts index 20df600eb..0263a4774 100644 --- a/packages/core/src/tools/preview.test.ts +++ b/packages/core/src/tools/preview.test.ts @@ -1,9 +1,9 @@ -import { Agent } from '@mariozechner/pi-agent-core'; +import { Agent } from '@earendil-works/pi-agent-core'; import { type AssistantMessage, createAssistantMessageEventStream, getModel, -} from '@mariozechner/pi-ai'; +} from '@earendil-works/pi-ai'; import { CodesignError } from '@open-codesign/shared'; import { describe, expect, it, vi } from 'vitest'; import { diff --git a/packages/core/src/tools/preview.ts b/packages/core/src/tools/preview.ts index 44fba6724..a258c45b7 100644 --- a/packages/core/src/tools/preview.ts +++ b/packages/core/src/tools/preview.ts @@ -1,5 +1,5 @@ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; -import type { ImageContent, TextContent } from '@mariozechner/pi-ai'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; +import type { ImageContent, TextContent } from '@earendil-works/pi-ai'; import { CodesignError, ERROR_CODES } from '@open-codesign/shared'; import { type Static, Type } from '@sinclair/typebox'; import { Value } from '@sinclair/typebox/value'; diff --git a/packages/core/src/tools/scaffold.ts b/packages/core/src/tools/scaffold.ts index 68c56a161..ea181b7a1 100644 --- a/packages/core/src/tools/scaffold.ts +++ b/packages/core/src/tools/scaffold.ts @@ -1,6 +1,6 @@ import { lstat, mkdir, readFile, writeFile } from 'node:fs/promises'; import path from 'node:path'; -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { normalizeLegacyEditmodeBlock } from '@open-codesign/shared'; import { withWorkspaceFileWriter } from '@open-codesign/shared/workspace-file-lock'; import { Type } from '@sinclair/typebox'; diff --git a/packages/core/src/tools/set-title.ts b/packages/core/src/tools/set-title.ts index f58430f80..b2d817000 100644 --- a/packages/core/src/tools/set-title.ts +++ b/packages/core/src/tools/set-title.ts @@ -13,7 +13,7 @@ * punctuation is stripped before the event fires. */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { Type } from '@sinclair/typebox'; const SetTitleParams = Type.Object({ diff --git a/packages/core/src/tools/set-todos.ts b/packages/core/src/tools/set-todos.ts index 4bbc4f815..47a848900 100644 --- a/packages/core/src/tools/set-todos.ts +++ b/packages/core/src/tools/set-todos.ts @@ -12,7 +12,7 @@ * already consumes (`args.items: Array<{text, checked}>`). */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { Type } from '@sinclair/typebox'; const SetTodosParams = Type.Object({ diff --git a/packages/core/src/tools/skill.ts b/packages/core/src/tools/skill.ts index d8483a3aa..72c05bcd5 100644 --- a/packages/core/src/tools/skill.ts +++ b/packages/core/src/tools/skill.ts @@ -1,6 +1,6 @@ import { lstat, readdir, readFile } from 'node:fs/promises'; import path from 'node:path'; -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { CodesignError, ERROR_CODES } from '@open-codesign/shared'; import { Type } from '@sinclair/typebox'; diff --git a/packages/core/src/tools/text-editor.ts b/packages/core/src/tools/text-editor.ts index a8f75738b..e23105cde 100644 --- a/packages/core/src/tools/text-editor.ts +++ b/packages/core/src/tools/text-editor.ts @@ -10,7 +10,7 @@ * package must NOT depend on apps/desktop). */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { DEFAULT_SOURCE_ENTRY } from '@open-codesign/shared'; import { Type } from '@sinclair/typebox'; diff --git a/packages/core/src/tools/tweaks.ts b/packages/core/src/tools/tweaks.ts index 03ede4d1a..532ca58a7 100644 --- a/packages/core/src/tools/tweaks.ts +++ b/packages/core/src/tools/tweaks.ts @@ -14,7 +14,7 @@ * scanner results neither register controls nor bind values to the preview. */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { type EditmodeTokens, type EditmodeTokenValue, diff --git a/packages/core/src/tools/verify-ui-kit-parity.ts b/packages/core/src/tools/verify-ui-kit-parity.ts index 33018221e..557b1731a 100644 --- a/packages/core/src/tools/verify-ui-kit-parity.ts +++ b/packages/core/src/tools/verify-ui-kit-parity.ts @@ -16,7 +16,7 @@ * own turn so it can self-correct before calling done. */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { Type } from '@sinclair/typebox'; import { type CoreLogger, NOOP_LOGGER } from '../logger.js'; import type { TextEditorFsCallbacks } from './text-editor'; diff --git a/packages/core/src/tools/verify-ui-kit-visual-parity.ts b/packages/core/src/tools/verify-ui-kit-visual-parity.ts index 462e07c56..38e520fee 100644 --- a/packages/core/src/tools/verify-ui-kit-visual-parity.ts +++ b/packages/core/src/tools/verify-ui-kit-visual-parity.ts @@ -28,7 +28,7 @@ * status="unavailable" and the agent falls back to verify_ui_kit_parity. */ -import type { AgentTool, AgentToolResult } from '@mariozechner/pi-agent-core'; +import type { AgentTool, AgentToolResult } from '@earendil-works/pi-agent-core'; import { Type } from '@sinclair/typebox'; import { type CoreLogger, NOOP_LOGGER } from '../logger.js'; import type { TextEditorFsCallbacks } from './text-editor'; diff --git a/packages/core/src/tools/web-research.ts b/packages/core/src/tools/web-research.ts index ed51482be..f696a409c 100644 --- a/packages/core/src/tools/web-research.ts +++ b/packages/core/src/tools/web-research.ts @@ -1,4 +1,4 @@ -import type { AgentTool } from '@mariozechner/pi-agent-core'; +import type { AgentTool } from '@earendil-works/pi-agent-core'; import { EvidenceInputSchema, type ResearchHost } from '@open-codesign/shared'; import { type TSchema, Type } from '@sinclair/typebox'; diff --git a/packages/providers/package.json b/packages/providers/package.json index cb53e20fc..023398782 100644 --- a/packages/providers/package.json +++ b/packages/providers/package.json @@ -14,7 +14,7 @@ "test": "vitest run --passWithNoTests" }, "dependencies": { - "@mariozechner/pi-ai": "^0.73.1", + "@earendil-works/pi-ai": "^0.79.0", "@open-codesign/shared": "workspace:*" }, "devDependencies": { diff --git a/packages/providers/src/index.test.ts b/packages/providers/src/index.test.ts index 6293bca81..974889e0f 100644 --- a/packages/providers/src/index.test.ts +++ b/packages/providers/src/index.test.ts @@ -4,7 +4,7 @@ import { afterEach, describe, expect, it, vi } from 'vitest'; const getModelMock = vi.fn(); const completeSimpleMock = vi.fn(); -vi.mock('@mariozechner/pi-ai', () => ({ +vi.mock('@earendil-works/pi-ai', () => ({ getModel: (...args: unknown[]) => getModelMock(...args), completeSimple: (...args: unknown[]) => completeSimpleMock(...args), })); diff --git a/packages/providers/src/index.ts b/packages/providers/src/index.ts index b36755be9..e73dfc438 100644 --- a/packages/providers/src/index.ts +++ b/packages/providers/src/index.ts @@ -1,5 +1,5 @@ /** - * Wrappers around @mariozechner/pi-ai that fill capability gaps documented + * Wrappers around @earendil-works/pi-ai that fill capability gaps documented * in docs/research/05-pi-ai-boundary.md. App code MUST go through this * package - never import a provider SDK directly. * @@ -378,7 +378,7 @@ export async function complete( // keeps the prefixed form so provider/model UX stays in sync with /models. const effectiveModelId = normalizeGeminiModelId(model.modelId, opts.baseUrl); - const pi = (await import('@mariozechner/pi-ai')) as unknown as { + const pi = (await import('@earendil-works/pi-ai')) as unknown as { getModel: (provider: string, modelId: string) => PiModel | undefined; completeSimple: ( model: PiModel, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 56093c686..5b9beeb95 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7,6 +7,7 @@ settings: overrides: '@xmldom/xmldom@<0.8.15': 0.8.15 pptxgenjs@4.0.1>image-size: '-' + undici@>=8.0.0 <8.10.2: 8.10.2 fast-xml-parser@<5.7.0: '>=5.7.0' vitepress>vite: 6.4.2 esbuild@<0.25.0: '>=0.25.0' @@ -75,15 +76,15 @@ importers: specifier: ^7.29.1 version: 7.29.1 devDependencies: - '@mariozechner/pi-agent-core': - specifier: ^0.73.1 - version: 0.73.1(ws@8.20.0)(zod@4.4.2) - '@mariozechner/pi-ai': - specifier: ^0.73.1 - version: 0.73.1(ws@8.20.0)(zod@4.4.2) - '@mariozechner/pi-coding-agent': - specifier: ^0.73.1 - version: 0.73.1(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-agent-core': + specifier: ^0.79.0 + version: 0.79.10(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-ai': + specifier: ^0.79.0 + version: 0.79.10(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-coding-agent': + specifier: ^0.79.0 + version: 0.79.10(ws@8.20.0)(zod@4.4.2) '@open-codesign/artifacts': specifier: workspace:* version: link:../../packages/artifacts @@ -179,7 +180,7 @@ importers: version: 7.3.6(@types/node@22.20.5)(jiti@2.7.0)(lightningcss@1.33.0)(tsx@4.22.3)(yaml@2.9.0) vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@22.20.5)(happy-dom@20.9.0)(vite@7.3.6(@types/node@22.20.5)(jiti@2.7.0)(lightningcss@1.33.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@22.20.5)(happy-dom@20.9.0)(vite@7.3.6(@types/node@22.20.5)(jiti@2.7.0)(lightningcss@1.33.0)(tsx@4.22.3)(yaml@2.9.0)) zip-lib: specifier: ^1.0.4 version: 1.3.2 @@ -201,19 +202,19 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/core: dependencies: - '@mariozechner/pi-agent-core': - specifier: ^0.73.1 - version: 0.73.1(ws@8.20.0)(zod@4.4.2) - '@mariozechner/pi-ai': - specifier: ^0.73.1 - version: 0.73.1(ws@8.20.0)(zod@4.4.2) - '@mariozechner/pi-coding-agent': - specifier: ^0.73.1 - version: 0.73.1(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-agent-core': + specifier: ^0.79.0 + version: 0.79.10(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-ai': + specifier: ^0.79.0 + version: 0.79.10(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-coding-agent': + specifier: ^0.79.0 + version: 0.79.10(ws@8.20.0)(zod@4.4.2) '@open-codesign/providers': specifier: workspace:* version: link:../providers @@ -229,7 +230,7 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/exporters: dependencies: @@ -260,7 +261,7 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@22.20.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@22.20.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@22.20.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@22.20.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/i18n: dependencies: @@ -285,13 +286,13 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/providers: dependencies: - '@mariozechner/pi-ai': - specifier: ^0.73.1 - version: 0.73.1(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-ai': + specifier: ^0.79.0 + version: 0.79.10(ws@8.20.0)(zod@4.4.2) '@open-codesign/shared': specifier: workspace:* version: link:../shared @@ -301,7 +302,7 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/runtime: dependencies: @@ -314,7 +315,7 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/shared: dependencies: @@ -330,7 +331,7 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/templates: dependencies: @@ -346,7 +347,7 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) packages/ui: dependencies: @@ -389,7 +390,7 @@ importers: version: 6.0.3 vitest: specifier: ^4.1.12 - version: 4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) + version: 4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) website: devDependencies: @@ -497,10 +498,6 @@ packages: zod: optional: true - '@aws-crypto/crc32@5.2.0': - resolution: {integrity: sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==} - engines: {node: '>=16.0.0'} - '@aws-crypto/sha256-browser@5.2.0': resolution: {integrity: sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==} @@ -514,132 +511,88 @@ packages: '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} - '@aws-sdk/client-bedrock-runtime@3.1041.0': - resolution: {integrity: sha512-1QehYO3jhdvNQ5mOKtwIiNV04y4aywaNZw9HzCp7SSYCX4yy+AGXc2hhYjCiMDUvQPIELuvbR8MXw81NGAj8ZQ==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/core@3.974.8': - resolution: {integrity: sha512-njR2qoG6ZuB0kvAS2FyICsFZJ6gmCcf2X/7JcD14sUvGDm26wiZ5BrA6LOiUxKFEF+IVe7kdroxyE00YlkiYsw==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/credential-provider-env@3.972.34': - resolution: {integrity: sha512-XT0jtf8Fw9JE6ppsQeoNnZRiG+jqRixMT1v1ZR17G60UvVdsQmTG8nbEyHuEPfMxDXEhfdARaM/XiEhca4lGHQ==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/credential-provider-http@3.972.36': - resolution: {integrity: sha512-DPoGWfy7J7RKxvbf5kOKIGQkD2ek3dbKgzKIGrnLuvZBz5myU+Im/H6pmc14QcnFbqHMqxvtWSgRDSJW3qXLQg==} + '@aws-sdk/client-bedrock-runtime@3.1048.0': + resolution: {integrity: sha512-u+NT61JZEkRFtpL0CAw1N1dwxnaLgwVXQl/zjJxTGgLyS/jTIdg2SdoEoCTHxgDyCnqa1HEi9QOoE9/pYRNpOQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-ini@3.972.38': - resolution: {integrity: sha512-oDzUBu2MGJFgoar05sPMCwSrhw44ASyccrHzj66vO69OZqi7I6hZZxXfuPLC8OCzW7C+sU+bI73XHij41yekgQ==} + '@aws-sdk/core@3.978.4': + resolution: {integrity: sha512-JvGp6y9sPX8FSs2K/EmFMZcUfdkHxqGE45+oxwGC75OIh50j2e4cbx7zcR3BwNs2DSGqJdBja5h6Vy89iIDmRQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-login@3.972.38': - resolution: {integrity: sha512-g1NosS8qe4OF++G2UFCM5ovSkgipC7YYor5KCWatG0UoMSO5YFj9C8muePlyVmOBV/WTI16Jo3/s1NUo/o1Bww==} + '@aws-sdk/credential-provider-env@3.972.75': + resolution: {integrity: sha512-nc8Epg98PcYoKNx0VFlwtmZSCP+tuJ1FLWqpslET/gp4h/WYuULSJqtxppM6ywKKDdzNJPvLD7ceRfmxm3Qdxw==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-node@3.972.39': - resolution: {integrity: sha512-HEswDQyxUtadoZ/bJsPPENHg7R0Lzym5LuMksJeHvqhCOpP+rtkDLKI4/ZChH4w3cf5kG8n6bZuI8PzajoiqMg==} + '@aws-sdk/credential-provider-http@3.972.77': + resolution: {integrity: sha512-KkYFdIQwuw9IOHfEzK78slxmVWuhcm1w6YgE3V3WVxAeRRj9q5J9jlwzpY/oszWxd4SD96FTFkDdRGBdMFF2Mw==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-process@3.972.34': - resolution: {integrity: sha512-T3IFs4EVmVi1dVN5RciFnklCANSzvrQd/VuHY9ThHSQmYkTogjcGkoJEr+oNUPQZnso52183088NqysMPji1/Q==} + '@aws-sdk/credential-provider-ini@3.973.20': + resolution: {integrity: sha512-OSl2R/0zLkoeKEIy6oP2tu/bsSdY+DGgro2eOffMD2CcP8POv7rS14FY5Jzc5bjnqB1G9wv/aM1akHC2mdlhZw==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-sso@3.972.38': - resolution: {integrity: sha512-5ZxG+t0+3Q3QPh8KEjX6syskhgNf7I0MN7oGioTf6Lm1NTjfP7sIcYGNsthXC2qR8vcD3edNZwCr2ovfSSWuRA==} + '@aws-sdk/credential-provider-login@3.972.82': + resolution: {integrity: sha512-8jyDPtf1WPxeQ/5xlNpyxAD6P7YKwkYeNk8B2vFEDwkPWDvb7c3tQJG5/jbNWbF2yTMIH9tDTueBkdfovYIAPw==} engines: {node: '>=20.0.0'} - '@aws-sdk/credential-provider-web-identity@3.972.38': - resolution: {integrity: sha512-lYHFF30DGI20jZcYX8cm6Ns0V7f1dDN6g/MBDLTyD/5iw+bXs3yBr2iAiHDkx4RFU5JgsnZvCHYKiRVPRdmOgw==} + '@aws-sdk/credential-provider-node@3.972.87': + resolution: {integrity: sha512-TKj2C0x4IMPSSOAlmeryX8fCPvvPS2pFJz2ikV9IGqyh6Ehsg4leMalCTVfV2rvMTrlGAe7X7nK0HZ3P0KZR9g==} engines: {node: '>=20.0.0'} - '@aws-sdk/eventstream-handler-node@3.972.14': - resolution: {integrity: sha512-m4X56gxG76/CKfxNVbOFuYwnAZcHgS6HOH8lgp15HoGHIAVTcZfZrXvcYzJFOMLEJgVn+JHBu6EiNV+xSNXXFg==} + '@aws-sdk/credential-provider-process@3.972.75': + resolution: {integrity: sha512-ZNm8T/HJNhpS8MikDVAsym8QyUSUuOUGiCkmI3TTya7G6xhOgfRLd2iK91HhQQyvRM36eo6Xm845hHVyfToA2w==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-eventstream@3.972.10': - resolution: {integrity: sha512-QUqLs7Af1II9X4fCRAu+EGHG3KHyOp4RkuLhRKoA3NuFlh6TL8i+zXBl8w2LUxqm44B/Kom45hgSlwA1SpTsXQ==} + '@aws-sdk/credential-provider-sso@3.973.19': + resolution: {integrity: sha512-qHGDAGesyWtRw3BapyFkYSUzVNrC1CWPS6+S2lf/MLMEkWB2gR3Bl6imVHy1nhImXKS+gcuUDzbu39BnsHJc1Q==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-host-header@3.972.10': - resolution: {integrity: sha512-IJSsIMeVQ8MMCPbuh1AbltkFhLBLXn7aejzfX5YKT/VLDHn++Dcz8886tXckE+wQssyPUhaXrJhdakO2VilRhg==} + '@aws-sdk/credential-provider-web-identity@3.972.81': + resolution: {integrity: sha512-nHkgkMIC6NHgqfI6UAQq5cCS4bUkNxkT+r9fXCq/X4IKfX/DHGZ8UM3T4b78OXpWK5OlzEzN4kxwyax0W/MUCA==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-logger@3.972.10': - resolution: {integrity: sha512-OOuGvvz1Dm20SjZo5oEBePFqxt5nf8AwkNDSyUHvD9/bfNASmstcYxFAHUowy4n6Io7mWUZ04JURZwSBvyQanQ==} + '@aws-sdk/eventstream-handler-node@3.972.37': + resolution: {integrity: sha512-vU0v4d6anhLqBCpPq7Q7hD2Av3/5qOR5O30Ze8ALLysgB3iMQTPHQ/P2aTgfrY2ZjnVJUCi7NiTSNqa1mDF+5w==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-recursion-detection@3.972.11': - resolution: {integrity: sha512-+zz6f79Kj9V5qFK2P+D8Ehjnw4AhphAlCAsPjUqEcInA9umtSSKMrHbSagEeOIsDNuvVrH98bjRHcyQukTrhaQ==} + '@aws-sdk/middleware-eventstream@3.972.32': + resolution: {integrity: sha512-D3ayeW/K2lTQI8+SyzDvAKfM3N4SFJjfgqeHbS3DOZmmQebZyve6WUyJiqOKqeOxmIcFxTzpSdsijnRF035J3g==} engines: {node: '>=20.0.0'} - '@aws-sdk/middleware-sdk-s3@3.972.37': - resolution: {integrity: sha512-Km7M+i8DrLArVzrid1gfxeGhYHBd3uxvE77g0s5a52zPSVosxzQBnJ0gwWb6NIp/DOk8gsBMhi7V+cpJG0ndTA==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/middleware-user-agent@3.972.38': - resolution: {integrity: sha512-iz+B29TXcAZsJpwB+AwG/TTGA5l/VnmMZ2UxtiySOZjI6gCdmviXPwdgzcmuazMy16rXoPY4mYCGe7zdNKfx5A==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/middleware-websocket@3.972.16': - resolution: {integrity: sha512-86+S9oCyRVGzoMRpQhxkArp7kD2K75GPmaNevd9B6EyNhWoNvnCZZ3WbgN4j7ZT+jvtvBCGZvI2XHsWZJ+BRIg==} + '@aws-sdk/middleware-websocket@3.972.57': + resolution: {integrity: sha512-mPNUOedufUwZXISOEySSP7l7owyY0Ypp1ajsd1GsB4E5Vpaf8NtfmmNygyPPeGPsRZ1sOcS90aAhQ03yPy/pFg==} engines: {node: '>= 14.0.0'} - '@aws-sdk/nested-clients@3.997.6': - resolution: {integrity: sha512-WBDnqatJl+kGObpfmfSxqnXeYTu3Me8wx8WCtvoxX3pfWrrTv8I4WTMSSs7PZqcRcVh8WeUKMgGFjMG+52SR1w==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/region-config-resolver@3.972.13': - resolution: {integrity: sha512-CvJ2ZIjK/jVD/lbOpowBVElJyC1YxLTIJ13yM0AEo0t2v7swOzGjSA6lJGH+DwZXQhcjUjoYwc8bVYCX5MDr1A==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/signature-v4-multi-region@3.996.25': - resolution: {integrity: sha512-+CMIt3e1VzlklAECmG+DtP1sV8iKq25FuA0OKpnJ4KA0kxUtd7CgClY7/RU6VzJBQwbN4EJ9Ue6plvqx1qGadw==} + '@aws-sdk/nested-clients@3.997.49': + resolution: {integrity: sha512-zjqIqzTYLRKhT7TPJDUreK9vG9PjhmnfLCaTaqArkRT7j+Ogl0tuXB7MpSd8rlRfRT+xTOeyNFWaOfyNcf51hg==} engines: {node: '>=20.0.0'} - '@aws-sdk/token-providers@3.1041.0': - resolution: {integrity: sha512-Th7kPI6YPtvJUcdznooXJMy+9rQWjmEF81LxaJssngBzuysK4a/x+l8kjm1zb7nYsUPbndnBdUnwng/3PLvtGw==} + '@aws-sdk/signature-v4-multi-region@3.996.48': + resolution: {integrity: sha512-cFDXfEbXaGwbnpvR/DyqfxfjxpjXVRVthQLgkwvcfDS5u3+8G9WSj1X1Ag/pTRg/QOeOno1Tq3ycEdrKsCUcOA==} engines: {node: '>=20.0.0'} - '@aws-sdk/types@3.973.8': - resolution: {integrity: sha512-gjlAdtHMbtR9X5iIhVUvbVcy55KnznpC6bkDUWW9z915bi0ckdUr5cjf16Kp6xq0bP5HBD2xzgbL9F9Quv5vUw==} + '@aws-sdk/token-providers@3.1048.0': + resolution: {integrity: sha512-k0y/GcuesuSfWyUM0WamrGyeZmltRYaPbHO82UDA6mZ/doB+FOHKutikPAtSXMn/hDz970cF+iRuuiYO9VEbAA==} engines: {node: '>=20.0.0'} - '@aws-sdk/util-arn-parser@3.972.3': - resolution: {integrity: sha512-HzSD8PMFrvgi2Kserxuff5VitNq2sgf3w9qxmskKDiDTThWfVteJxuCS9JXiPIPtmCrp+7N9asfIaVhBFORllA==} + '@aws-sdk/token-providers@3.1153.0': + resolution: {integrity: sha512-6bKJ2OfLboxhzeJ3hBDeB8L6emCYf9DfdrjBAharLrY42J1RV/6jA6G8jvfNghzID8Yb40BdSY7jQMtWx9Ot0Q==} engines: {node: '>=20.0.0'} - '@aws-sdk/util-endpoints@3.996.8': - resolution: {integrity: sha512-oOZHcRDihk5iEe5V25NVWg45b3qEA8OpHWVdU/XQh8Zj4heVPAJqWvMphQnU7LkufmUo10EpvFPZuQMiFLJK3g==} - engines: {node: '>=20.0.0'} - - '@aws-sdk/util-format-url@3.972.10': - resolution: {integrity: sha512-DEKiHNJVtNxdyTeQspzY+15Po/kHm6sF0Cs4HV9Q2+lplB63+DrvdeiSoOSdWEWAoO2RcY1veoXVDz2tWxWCgQ==} + '@aws-sdk/types@3.974.6': + resolution: {integrity: sha512-v/clNZzZnDxGyvpHMOGpJKVXFAExJzUNAAjaWGdcx8QAcXLGwTaOkw33p5SHAi0YAioK32xB3hWwOekRVfmfKg==} engines: {node: '>=20.0.0'} '@aws-sdk/util-locate-window@3.965.5': resolution: {integrity: sha512-WhlJNNINQB+9qtLtZJcpQdgZw3SCDCpXdUJP7cToGwHbCWCnRckGlc6Bx/OhWwIYFNAn+FIydY8SZ0QmVu3xTQ==} engines: {node: '>=20.0.0'} - '@aws-sdk/util-user-agent-browser@3.972.10': - resolution: {integrity: sha512-FAzqXvfEssGdSIz8ejatan0bOdx1qefBWKF/gWmVBXIP1HkS7v/wjjaqrAGGKvyihrXTXW00/2/1nTJtxpXz7g==} - - '@aws-sdk/util-user-agent-node@3.973.24': - resolution: {integrity: sha512-ZWwlkjcIp7cEL8ZfTpTAPNkwx25p7xol0xlKoWVVf22+nsjwmLcHYtTPjIV1cSpmB/b6DaK4cb1fSkvCXHgRdw==} - engines: {node: '>=20.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - - '@aws-sdk/xml-builder@3.972.22': - resolution: {integrity: sha512-PMYKKtJd70IsSG0yHrdAbxBr+ZWBKLvzFZfD3/urxgf6hXVMzuU5M+3MJ5G67RpOmLBu1fAUN65SbWuKUCOlAA==} + '@aws-sdk/xml-builder@3.972.41': + resolution: {integrity: sha512-ctjVSyCMegrWfXlx6VqzSBFI6UqmQ5ZlnfMhdLIiWmhoH8UAQxSCP5N3OpG7X3k4LnS7ou74C4mt20+bfTW2aQ==} engines: {node: '>=20.0.0'} - '@aws/lambda-invoke-store@0.2.4': - resolution: {integrity: sha512-iY8yvjE0y651BixKNPgmv1WrQc+GZ142sb0z4gYnChDDY2YqI4P/jsSopBWrKfAt7LOJAkOXt7rC/hms+WclQQ==} + '@aws/lambda-invoke-store@0.3.0': + resolution: {integrity: sha512-sl4Bm6yiMNYrZKkqqDFWN0UfnWhlS8ivKxrYl+6t0gCLrqr8y3B2IqZZbFRkfaVVp7C/baApyh71P+LeE1A2sQ==} engines: {node: '>=18.0.0'} '@babel/code-frame@7.29.0': @@ -804,9 +757,6 @@ packages: cpu: [x64] os: [win32] - '@borewit/text-codec@0.2.2': - resolution: {integrity: sha512-DDaRehssg1aNrH4+2hnj1B7vnUGEjU6OIlyRdkMd0aUdIUvKXrJfXsy8LVtXAy7DRvYVluWbMspsRhz2lcW0mQ==} - '@changesets/apply-release-plan@7.1.1': resolution: {integrity: sha512-9qPCm/rLx/xoOFXIHGB229+4GOL76S4MC+7tyOuTsR6+1jYlfFDQORdvwR5hDA6y4FL2BPt3qpbcQIS+dW85LA==} @@ -889,6 +839,24 @@ packages: search-insights: optional: true + '@earendil-works/pi-agent-core@0.79.10': + resolution: {integrity: sha512-XKxgdjhcPuyjrthCOFSgfzT3xZ1uBrJ1IMVDxci1to6hIN6BIg9J5iY8q0pGXK1DLgATLP23da+1UyZLwA360Q==} + engines: {node: '>=22.19.0'} + + '@earendil-works/pi-ai@0.79.10': + resolution: {integrity: sha512-9jR23tOl0BIUdQMn70Gr72xYBpM7Xgl9Lyv7gAnU1USfkNRuYG/f/edLl+n/Dp/RafDW3JI4DF7y/GhgkORuew==} + engines: {node: '>=22.19.0'} + hasBin: true + + '@earendil-works/pi-coding-agent@0.79.10': + resolution: {integrity: sha512-YxaRhmgyDTvLDdGVbe7YzTHV80oL5mX5odg6EhGHz3w5Wu1Ix8DCw7bhtiOBLGQNFRcknia0zPmVWIj30XP1EA==} + engines: {node: '>=22.19.0'} + hasBin: true + + '@earendil-works/pi-tui@0.79.10': + resolution: {integrity: sha512-FUVOjDn1DVwM1uHD5MNYboXQrXjIDbSt+BQ3py7nQWCY62tKfxgiM1OBMxTcwRWLfSdZHUPpV0hm1loIdUJnPw==} + engines: {node: '>=22.19.0'} + '@electron-internal/extract-zip@1.0.5': resolution: {integrity: sha512-+bqFCP98pLI0Tt0XQo1TmlXtwjWchISndDOxCkEcIuUgXWpBnLyRI+2DU+mesvnMMX6L1XDqYNA0lXNDHd/yiA==} engines: {node: '>=22.12.0'} @@ -1424,8 +1392,8 @@ packages: '@fontsource-variable/jetbrains-mono@5.2.8': resolution: {integrity: sha512-WBA9elru6Jdp5df2mES55wuOO0WIrn3kpXnI4+W2ek5u3ZgLS9XS4gmIlcQhiZOWEKl95meYdvK7xI+ETLCq/Q==} - '@google/genai@1.51.0': - resolution: {integrity: sha512-vTZZF3CSimN7cn2zsLpW2p5WF0eZa5Gz69ITMPCNHpPrDlAstOfGifSfi0p/s9Z9400f7xJRkgvkQNrcM7pJ6w==} + '@google/genai@1.52.0': + resolution: {integrity: sha512-gwSvbpiN/17O9TbsqSsE/OzZcpv5Fo4RQjdngGgogtuB9RsyJ8ZHhX5KjHj1bp5N9snN2eK8LDGXSaWW2hof8Q==} engines: {node: '>=20.0.0'} peerDependencies: '@modelcontextprotocol/sdk': ^1.25.2 @@ -1489,98 +1457,81 @@ packages: '@manypkg/get-packages@1.1.3': resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} - '@mariozechner/clipboard-darwin-arm64@0.3.2': - resolution: {integrity: sha512-uBf6K7Je1ihsgvmWxA8UCGCeI+nbRVRXoarZdLjl6slz94Zs1tNKFZqx7aCI5O1i3e0B6ja82zZ06BWrl0MCVw==} + '@mariozechner/clipboard-darwin-arm64@0.3.9': + resolution: {integrity: sha512-BfgV7vCEWZwJwZJw03r6bP5+tf0iI/ANuQYCxi9RNn7FrWB3yzGuMKCrNLRl6V761vXRdL8+OqZ0wd4TqlsNOQ==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@mariozechner/clipboard-darwin-universal@0.3.2': - resolution: {integrity: sha512-mxSheKTW2U9LsBdXy0SdmdCAE5HqNS9QUmpNHLnfJ+SsbFKALjEZc5oRrVMXxGQSirDvYf5bjmRyT0QYYonnlg==} + '@mariozechner/clipboard-darwin-universal@0.3.9': + resolution: {integrity: sha512-BGGR4iA9Z2shAjI65eI5xtyb3LYNlDW9X3gxKxDbqtbnREohsrqznov6zpKoIrsRWpzlYVEdKphS7ksJ0/ndSQ==} engines: {node: '>= 10'} os: [darwin] - '@mariozechner/clipboard-darwin-x64@0.3.2': - resolution: {integrity: sha512-U1BcVEoidvwIp95+HJswSW+xr28EQiHR7rZjH6pn8Sja5yO4Yoe3yCN0Zm8Lo72BbSOK/fTSq0je7CJpaPCspg==} + '@mariozechner/clipboard-darwin-x64@0.3.9': + resolution: {integrity: sha512-4kURmCbS6nt8uYhtmWpUcJWyPHfmAr5dTpXD1nO3pIfa+TSQ9DbrGOYCKH+aEFW47XhQ4Vp8ZTszie+wfFvDKg==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@mariozechner/clipboard-linux-arm64-gnu@0.3.2': - resolution: {integrity: sha512-BsinwG3yWTIjdgNCxsFlip7LkfwPk+ruw/aFCXHUg/fb5XC/Ksp+YMQ7u0LUtiKzIv/7LMXgZInJQH6gxbAaqQ==} + '@mariozechner/clipboard-linux-arm64-gnu@0.3.9': + resolution: {integrity: sha512-g59OkUGP2DDfCOIKypHeYgv2M55u/cKvXa5dSxFbEJ34XvIQMdcVmpKCkGUro3ZgefXiGVdwguvTMQGpHWzIXw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] libc: [glibc] - '@mariozechner/clipboard-linux-arm64-musl@0.3.2': - resolution: {integrity: sha512-0/Gi5Xq2V6goXBop19ePoHvXsmJD9SzFlO3S+d6+T2b+BlPcpOu3Oa0wTjl+cZrLAAEzA86aPNBI+VVAFDFPKw==} + '@mariozechner/clipboard-linux-arm64-musl@0.3.9': + resolution: {integrity: sha512-AGuJdgKsmJdm4Pych7kv3sqe591ERRaAHW3xjLooiFzn8J+PxUyof++7YZrB5Y5tpnTO+K18Og3taj2NpluCRQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] libc: [musl] - '@mariozechner/clipboard-linux-riscv64-gnu@0.3.2': - resolution: {integrity: sha512-2AFFiXB24qf0zOZsxI1GJGb9wQGlOJyN6UwoXqmKS3dpQi/l6ix30IzDDA4c4ZcCcx4D+9HLYXhC1w7Sov8pXA==} + '@mariozechner/clipboard-linux-riscv64-gnu@0.3.9': + resolution: {integrity: sha512-DXBEAiuMpk7dhS1a9NzNxVAFi1vaKoPu7rQNgY8LIDLGrK3lnIp3nT10DUum+PKVJoJppIP+NAA8IZe4DMNDPw==} engines: {node: '>= 10'} cpu: [riscv64] os: [linux] libc: [glibc] - '@mariozechner/clipboard-linux-x64-gnu@0.3.2': - resolution: {integrity: sha512-v6fVnsn7WMGg73Dab8QMwyFce7tzGfgEixKgzLP8f1GJqkJZi5zO4k4FOHzSgUufgLil63gnxvMpjWkgfeQN7A==} + '@mariozechner/clipboard-linux-x64-gnu@0.3.9': + resolution: {integrity: sha512-WORrMLd6EpElEME7JRKfSaY34nW1P5LbdgK5YNCS1ncG2LqmITsSMEJ8nh2mpvxb3TxqbOOKgY7k9eMJYlW9Mw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] libc: [glibc] - '@mariozechner/clipboard-linux-x64-musl@0.3.2': - resolution: {integrity: sha512-xVUtnoMQ8v2JVyfJLKKXACA6avdnchdbBkTsZs8BgJQo29qwCp5NIHAUO8gbJ40iaEGToW5RlmVk2M9V0HsHEw==} + '@mariozechner/clipboard-linux-x64-musl@0.3.9': + resolution: {integrity: sha512-/DHn+1DrfL6oRaPPWXaOKvonFFrni666fxd+zFqiQEfvBH0tsHVWjq9iqBk0oDp0qaPA72lIMy5BptxISBEhZQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] libc: [musl] - '@mariozechner/clipboard-win32-arm64-msvc@0.3.2': - resolution: {integrity: sha512-AEgg95TNi8TGgak2wSXZkXKCvAUTjWoU1Pqb0ON7JHrX78p616XUFNTJohtIon3e0w6k0pYPZeCuqRCza/Tqeg==} + '@mariozechner/clipboard-win32-arm64-msvc@0.3.9': + resolution: {integrity: sha512-O5FHD3ErkMwMhNzAfu3ggy0ug4z7btZuoQgwwxlzPrwV2bxlD6WDpqBY4NCgICAgZdDKdp+loUEKVAVt8aYnhQ==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@mariozechner/clipboard-win32-x64-msvc@0.3.2': - resolution: {integrity: sha512-tGRuYpZwDOD7HBrCpyRuhGnHHSCknELvqwKKUG4JSfSB7JIU7LKRh6zx6fMUOQd8uISK35TjFg5UcNih+vJhFA==} + '@mariozechner/clipboard-win32-x64-msvc@0.3.9': + resolution: {integrity: sha512-ihQC3EufqEY81vhXBgVBtK4prL+wc62zJsSvxrgz7K1hsdt6OObz6v9p3Rn1OG3GJksTTKMJF0u/guMISHPhSA==} engines: {node: '>= 10'} cpu: [x64] os: [win32] - '@mariozechner/clipboard@0.3.5': - resolution: {integrity: sha512-D3F+UrU9CR7roJt0zDLp6Oc+4/KlLDIrN4frH+6V90SJNW2KKUec1oCQIPaaDjCqeOsQyX9dyqYbImIQIM45PA==} + '@mariozechner/clipboard@0.3.9': + resolution: {integrity: sha512-ABnA53mdfkGZwOFUdZNv2S0CWGO/EIuPj8Vv9xmBFmSYg/qFc7ihO6q5FcQjvoE67kZpWkEc4AhD6B/os04yuA==} engines: {node: '>= 10'} - '@mariozechner/pi-agent-core@0.73.1': - resolution: {integrity: sha512-Y/KVOhuKSgRQgYBlwmRtO2gPkUcoavOSqGF9bpQIINvNZvc19k6Z1H3bFDTce3Vp5ApMmTsfLH3+tNvOg75fAQ==} - engines: {node: '>=20.0.0'} - deprecated: please use @earendil-works/pi-agent-core instead going forward - - '@mariozechner/pi-ai@0.73.1': - resolution: {integrity: sha512-Jh4lXawZYuC83HzSIYuVum9NBqJD49i4JOt3H96cGW/924cwJMOyUs1Mv/e4QPzTXnzrqMoGviNQnvGgSu1LSg==} - engines: {node: '>=20.0.0'} - deprecated: please use @earendil-works/pi-ai instead going forward - hasBin: true - - '@mariozechner/pi-coding-agent@0.73.1': - resolution: {integrity: sha512-gXQh3SaZmWTfVMc4Ao5+LGbVeKvzyO7tolok0nLsZgq9nGjZx/EEU3NM8C+qUnB4Nvs2rswG5qOVgLzQkq0fHQ==} - engines: {node: '>=20.6.0'} - deprecated: please use @earendil-works/pi-coding-agent instead going forward - hasBin: true - - '@mariozechner/pi-tui@0.73.1': - resolution: {integrity: sha512-ybVsRnUbzQRtbocltJ2OXb2QogrO67N2BlUyKjZz9BHcZYiDJtNkcKQockxDjsVvDc0uBCLDX6iZJoBElBd8fw==} - engines: {node: '>=20.0.0'} - deprecated: please use @earendil-works/pi-tui instead going forward - - '@mistralai/mistralai@2.2.1': - resolution: {integrity: sha512-uKU8CZmL2RzYKmplsU01hii4p3pe4HqJefpWNRWXm1Tcm0Sm4xXfwSLIy4k7ZCPlbETCGcp69E7hZs+WOJ5itQ==} + '@mistralai/mistralai@2.2.6': + resolution: {integrity: sha512-W8pX7zHxjJvMIpw8JMxeJEleapXX0Q9NPszdNzqkM3MIEoIGPObdodujj+WHteXEvGfaP/AMwlNyRfEzSY6dQQ==} + peerDependencies: + '@opentelemetry/api': ^1.9.0 + peerDependenciesMeta: + '@opentelemetry/api': + optional: true '@napi-rs/lzma-linux-x64-gnu@1.5.1': resolution: {integrity: sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==} @@ -1604,9 +1555,6 @@ packages: resolution: {integrity: sha512-X5XaVWZIBCT7HHZGm5I7ZQXDwLG+bGXuSrMQAW+7Zvl87h1kmc1ZB1VSRJcpUfoUrGQp4Fkoxm5kZ+Ms+aW+eA==} engines: {node: '>= 20.19.0'} - '@nodable/entities@2.1.0': - resolution: {integrity: sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==} - '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -1627,6 +1575,14 @@ packages: resolution: {integrity: sha512-/xGlezI6xfGO9NwuJlnwz/K14qD1kCSAGtacBHnGzeAIuJGazcp45KP5NuyARXoKb7cwulAGWVsbeSxdG/cb0Q==} engines: {node: ^18.17.0 || >=20.5.0} + '@opentelemetry/api@1.9.0': + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} + + '@opentelemetry/semantic-conventions@1.43.0': + resolution: {integrity: sha512-eSYWTm620tTk45EKSedaUL8MFYI8hW164hIXsgIHyxu3VobUB3fFCu5t0hQby6OoWRPsG1KkKUG2M5UadiLiVg==} + engines: {node: '>=14'} + '@oxc-project/types@0.127.0': resolution: {integrity: sha512-aIYXQBo4lCbO4z0R3FHeucQHpF46l2LbMdxRvqvuRuW2OxdnSkcng5B8+K12spgLDj93rtN3+J2Vac/TIO+ciQ==} @@ -1957,194 +1913,46 @@ packages: resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} engines: {node: '>=10'} - '@smithy/config-resolver@4.4.17': - resolution: {integrity: sha512-TzDZcAnhTyAHbXVxWZo7/tEcrIeFq20IBk8So3OLOetWpR8EwY/yEqBMBFaJMeyEiREDq4NfEl+qO3OAUD+vbQ==} - engines: {node: '>=18.0.0'} - - '@smithy/core@3.23.17': - resolution: {integrity: sha512-x7BlLbUFL8NWCGjMF9C+1N5cVCxcPa7g6Tv9B4A2luWx3be3oU8hQ96wIwxe/s7OhIzvoJH73HAUSg5JXVlEtQ==} - engines: {node: '>=18.0.0'} - - '@smithy/credential-provider-imds@4.2.14': - resolution: {integrity: sha512-Au28zBN48ZAoXdooGUHemuVBrkE+Ie6RPmGNIAJsFqj33Vhb6xAgRifUydZ2aY+M+KaMAETAlKk5NC5h1G7wpg==} - engines: {node: '>=18.0.0'} - - '@smithy/eventstream-codec@4.2.14': - resolution: {integrity: sha512-erZq0nOIpzfeZdCyzZjdJb4nVSKLUmSkaQUVkRGQTXs30gyUGeKnrYEg+Xe1W5gE3aReS7IgsvANwVPxSzY6Pw==} - engines: {node: '>=18.0.0'} - - '@smithy/eventstream-serde-browser@4.2.14': - resolution: {integrity: sha512-8IelTCtTctWRbb+0Dcy+C0aICh1qa0qWXqgjcXDmMuCvPJRnv26hiDZoAau2ILOniki65mCPKqOQs/BaWvO4CQ==} - engines: {node: '>=18.0.0'} - - '@smithy/eventstream-serde-config-resolver@4.3.14': - resolution: {integrity: sha512-sqHiHpYRYo3FJlaIxD1J8PhbcmJAm7IuM16mVnwSkCToD7g00IBZzKuiLNMGmftULmEUX6/UAz8/NN5uMP8bVA==} - engines: {node: '>=18.0.0'} - - '@smithy/eventstream-serde-node@4.2.14': - resolution: {integrity: sha512-Ht/8BuGlKfFTy0H3+8eEu0vdpwGztCnaLLXtpXNdQqiR7Hj4vFScU3T436vRAjATglOIPjJXronY+1WxxNLSiw==} + '@smithy/core@3.36.0': + resolution: {integrity: sha512-3hJiwG1F5t1SoXqp/yOCmYXziyx7ZVqF63S5W6YU201e/qwVaHPex+E/3vvyY9a3ORq/b+BydeNZpP2saQ9X2g==} engines: {node: '>=18.0.0'} - '@smithy/eventstream-serde-universal@4.2.14': - resolution: {integrity: sha512-lWyt4T2XQZUZgK3tQ3Wn0w3XBvZsK/vjTuJl6bXbnGZBHH0ZUSONTYiK9TgjTTzU54xQr3DRFwpjmhp0oLm3gg==} + '@smithy/credential-provider-imds@4.5.2': + resolution: {integrity: sha512-A9uSdn72ozbRUSit0eib0TW7nXuNPlaeM0zcGkJ+nE6tFcSDbnmtwoxbTCFBukVQcszDAyvsd7+rTduPTXpygg==} engines: {node: '>=18.0.0'} - '@smithy/fetch-http-handler@5.3.17': - resolution: {integrity: sha512-bXOvQzaSm6MnmLaWA1elgfQcAtN4UP3vXqV97bHuoOrHQOJiLT3ds6o9eo5bqd0TJfRFpzdGnDQdW3FACiAVdw==} - engines: {node: '>=18.0.0'} - - '@smithy/hash-node@4.2.14': - resolution: {integrity: sha512-8ZBDY2DD4wr+GGjTpPtiglEsqr0lUP+KHqgZcWczFf6qeZ/YRjMIOoQWVQlmwu7EtxKTd8YXD8lblmYcpBIA1g==} - engines: {node: '>=18.0.0'} - - '@smithy/invalid-dependency@4.2.14': - resolution: {integrity: sha512-c21qJiTSb25xvvOp+H2TNZzPCngrvl5vIPqPB8zQ/DmJF4QWXO19x1dWfMJZ6wZuuWUPPm0gV8C0cU3+ifcWuw==} + '@smithy/fetch-http-handler@5.8.0': + resolution: {integrity: sha512-ycSJu3tFAQ4v04CBB0agqFMVsSQ1iG3yw+SpgxRqKfaURpQD4CZ8Wn0zPMmSnOuTpTh65Vz+EA0rMrw089wvkA==} engines: {node: '>=18.0.0'} '@smithy/is-array-buffer@2.2.0': resolution: {integrity: sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==} engines: {node: '>=14.0.0'} - '@smithy/is-array-buffer@4.2.2': - resolution: {integrity: sha512-n6rQ4N8Jj4YTQO3YFrlgZuwKodf4zUFs7EJIWH86pSCWBaAtAGBFfCM7Wx6D2bBJ2xqFNxGBSrUWswT3M0VJow==} - engines: {node: '>=18.0.0'} - - '@smithy/middleware-content-length@4.2.14': - resolution: {integrity: sha512-xhHq7fX4/3lv5NHxLUk3OeEvl0xZ+Ek3qIbWaCL4f9JwgDZEclPBElljaZCAItdGPQl/kSM4LPMOpy1MYgprpw==} - engines: {node: '>=18.0.0'} - - '@smithy/middleware-endpoint@4.4.32': - resolution: {integrity: sha512-ZZkgyjnJppiZbIm6Qbx92pbXYi1uzenIvGhBSCDlc7NwuAkiqSgS75j1czAD25ZLs2FjMjYy1q7gyRVWG6JA0Q==} - engines: {node: '>=18.0.0'} - - '@smithy/middleware-retry@4.5.7': - resolution: {integrity: sha512-bRt6ZImqVSeTk39Nm81K20ObIiAZ3WefY7G6+iz/0tZjs4dgRRjvRX2sgsH+zi6iDCRR/aQvQofLKxxz4rPBZg==} - engines: {node: '>=18.0.0'} - - '@smithy/middleware-serde@4.2.20': - resolution: {integrity: sha512-Lx9JMO9vArPtiChE3wbEZ5akMIDQpWQtlu90lhACQmNOXcGXRbaDywMHDzuDZ2OkZzP+9wQfZi3YJT9F67zTQQ==} - engines: {node: '>=18.0.0'} - - '@smithy/middleware-stack@4.2.14': - resolution: {integrity: sha512-2dvkUKLuFdKsCRmOE4Mn63co0Djtsm+JMh0bYZQupN1pJwMeE8FmQmRLLzzEMN0dnNi7CDCYYH8F0EVwWiPBeA==} - engines: {node: '>=18.0.0'} - - '@smithy/node-config-provider@4.3.14': - resolution: {integrity: sha512-S+gFjyo/weSVL0P1b9Ts8C/CwIfNCgUPikk3sl6QVsfE/uUuO+QsF+NsE/JkpvWqqyz1wg7HFdiaZuj5CoBMRg==} + '@smithy/node-http-handler@4.12.1': + resolution: {integrity: sha512-ThMkboGeONWXAelq9FvGsuJC4rOi+qyC4/zhUF58xYpxUg5sQKx2VXZYJmtNjr4dSuBJ1HeJXETQILCz3wOHvw==} engines: {node: '>=18.0.0'} - '@smithy/node-http-handler@4.6.1': - resolution: {integrity: sha512-iB+orM4x3xrr57X3YaXazfKnntl0LHlZB1kcXSGzMV1Tt0+YwEjGlbjk/44qEGtBzXAz6yFDzkYTKSV6Pj2HUg==} + '@smithy/node-http-handler@4.7.3': + resolution: {integrity: sha512-/jPhevcTFPMVl6KNjbaI47iOg1zxC7IsnX4PQDGVZKMFceOXtB8IEYaB7a9VvkP/3oC60WzTeKocvSI7vLT0vA==} engines: {node: '>=18.0.0'} - '@smithy/property-provider@4.2.14': - resolution: {integrity: sha512-WuM31CgfsnQ/10i7NYr0PyxqknD72Y5uMfUMVSniPjbEPceiTErb4eIqJQ+pdxNEAUEWrewrGjIRjVbVHsxZiQ==} + '@smithy/signature-v4@5.7.4': + resolution: {integrity: sha512-tHy0K0VtqNd5Y7Y41h0a0Lhh0L1GzC08dTWg0F7vRJWFtTENg7IZikf3wQkanYIRdb7ngoIPMTmqgUi401fEeQ==} engines: {node: '>=18.0.0'} - '@smithy/protocol-http@5.3.14': - resolution: {integrity: sha512-dN5F8kHx8RNU0r+pCwNmFZyz6ChjMkzShy/zup6MtkRmmix4vZzJdW+di7x//b1LiynIev88FM18ie+wwPcQtQ==} - engines: {node: '>=18.0.0'} - - '@smithy/querystring-builder@4.2.14': - resolution: {integrity: sha512-XYA5Z0IqTeF+5XDdh4BBmSA0HvbgVZIyv4cmOoUheDNR57K1HgBp9ukUMx3Cr3XpDHHpLBnexPE3LAtDsZkj2A==} - engines: {node: '>=18.0.0'} - - '@smithy/querystring-parser@4.2.14': - resolution: {integrity: sha512-hr+YyqBD23GVvRxGGrcc/oOeNlK3PzT5Fu4dzrDXxzS1LpFiuL2PQQqKPs87M79aW7ziMs+nvB3qdw77SqE7Lw==} - engines: {node: '>=18.0.0'} - - '@smithy/service-error-classification@4.3.1': - resolution: {integrity: sha512-aUQuDGh760ts/8MU+APjIZhlLPKhIIfqyzZaJikLEIMrdxFvxuLYD0WxWzaYWpmLbQlXDe9p7EWM3HsBe0K6Gw==} - engines: {node: '>=18.0.0'} - - '@smithy/shared-ini-file-loader@4.4.9': - resolution: {integrity: sha512-495/V2I15SHgedSJoDPD23JuSfKAp726ZI1V0wtjB07Wh7q/0tri/0e0DLefZCHgxZonrGKt/OCTpAtP1wE1kQ==} - engines: {node: '>=18.0.0'} - - '@smithy/signature-v4@5.3.14': - resolution: {integrity: sha512-1D9Y/nmlVjCeSivCbhZ7hgEpmHyY1h0GvpSZt3l0xcD9JjmjVC1CHOozS6+Gh+/ldMH8JuJ6cujObQqfayAVFA==} - engines: {node: '>=18.0.0'} - - '@smithy/smithy-client@4.12.13': - resolution: {integrity: sha512-y/Pcj1V9+qG98gyu1gvftHB7rDpdh+7kIBIggs55yGm3JdtBV8GT8IFF3a1qxZ79QnaJHX9GXzvBG6tAd+czJA==} - engines: {node: '>=18.0.0'} - - '@smithy/types@4.14.1': - resolution: {integrity: sha512-59b5HtSVrVR/eYNei3BUj3DCPKD/G7EtDDe7OEJE7i7FtQFugYo6MxbotS8mVJkLNVf8gYaAlEBwwtJ9HzhWSg==} - engines: {node: '>=18.0.0'} - - '@smithy/url-parser@4.2.14': - resolution: {integrity: sha512-p06BiBigJ8bTA3MgnOfCtDUWnAMY0YfedO/GRpmc7p+wg3KW8vbXy1xwSu5ASy0wV7rRYtlfZOIKH4XqfhjSQQ==} - engines: {node: '>=18.0.0'} - - '@smithy/util-base64@4.3.2': - resolution: {integrity: sha512-XRH6b0H/5A3SgblmMa5ErXQ2XKhfbQB+Fm/oyLZ2O2kCUrwgg55bU0RekmzAhuwOjA9qdN5VU2BprOvGGUkOOQ==} - engines: {node: '>=18.0.0'} - - '@smithy/util-body-length-browser@4.2.2': - resolution: {integrity: sha512-JKCrLNOup3OOgmzeaKQwi4ZCTWlYR5H4Gm1r2uTMVBXoemo1UEghk5vtMi1xSu2ymgKVGW631e2fp9/R610ZjQ==} - engines: {node: '>=18.0.0'} - - '@smithy/util-body-length-node@4.2.3': - resolution: {integrity: sha512-ZkJGvqBzMHVHE7r/hcuCxlTY8pQr1kMtdsVPs7ex4mMU+EAbcXppfo5NmyxMYi2XU49eqaz56j2gsk4dHHPG/g==} + '@smithy/types@4.19.0': + resolution: {integrity: sha512-r7jh49VJxGerfAcTQA6gXcKc+98zOp/tqRwzYjgOE+iSQsP6cEU1hq2QzbuipmP68QtYdY9wKEhiCQZIzHgZ4Q==} engines: {node: '>=18.0.0'} '@smithy/util-buffer-from@2.2.0': resolution: {integrity: sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==} engines: {node: '>=14.0.0'} - '@smithy/util-buffer-from@4.2.2': - resolution: {integrity: sha512-FDXD7cvUoFWwN6vtQfEta540Y/YBe5JneK3SoZg9bThSoOAC/eGeYEua6RkBgKjGa/sz6Y+DuBZj3+YEY21y4Q==} - engines: {node: '>=18.0.0'} - - '@smithy/util-config-provider@4.2.2': - resolution: {integrity: sha512-dWU03V3XUprJwaUIFVv4iOnS1FC9HnMHDfUrlNDSh4315v0cWyaIErP8KiqGVbf5z+JupoVpNM7ZB3jFiTejvQ==} - engines: {node: '>=18.0.0'} - - '@smithy/util-defaults-mode-browser@4.3.49': - resolution: {integrity: sha512-a5bNrdiONYB/qE2BuKegvUMd/+ZDwdg4vsNuuSzYE8qs2EYAdK9CynL+Rzn29PbPiUqoz/cbpRbcLzD5lEevHw==} - engines: {node: '>=18.0.0'} - - '@smithy/util-defaults-mode-node@4.2.54': - resolution: {integrity: sha512-g1cvrJvOnzeJgEdf7AE4luI7gp6L8weE0y9a9wQUSGtjb8QRHDbCJYuE4Sy0SD9N8RrnNPFsPltAz/OSoBR9Zw==} - engines: {node: '>=18.0.0'} - - '@smithy/util-endpoints@3.4.2': - resolution: {integrity: sha512-a55Tr+3OKld4TTtnT+RhKOQHyPxm3j/xL4OR83WBUhLJaKDS9dnJ7arRMOp3t31dcLhApwG9bgvrRXBHlLdIkg==} - engines: {node: '>=18.0.0'} - - '@smithy/util-hex-encoding@4.2.2': - resolution: {integrity: sha512-Qcz3W5vuHK4sLQdyT93k/rfrUwdJ8/HZ+nMUOyGdpeGA1Wxt65zYwi3oEl9kOM+RswvYq90fzkNDahPS8K0OIg==} - engines: {node: '>=18.0.0'} - - '@smithy/util-middleware@4.2.14': - resolution: {integrity: sha512-1Su2vj9RYNDEv/V+2E+jXkkwGsgR7dc4sfHn9Z7ruzQHJIEni9zzw5CauvRXlFJfmgcqYP8fWa0dkh2Q2YaQyw==} - engines: {node: '>=18.0.0'} - - '@smithy/util-retry@4.3.8': - resolution: {integrity: sha512-LUIxbTBi+OpvXpg91poGA6BdyoleMDLnfXjVDqyi2RvZmTveY5loE/FgYUBCR5LU2BThW2SoZRh8dTIIy38IPw==} - engines: {node: '>=18.0.0'} - - '@smithy/util-stream@4.5.25': - resolution: {integrity: sha512-/PFpG4k8Ze8Ei+mMKj3oiPICYekthuzePZMgZbCqMiXIHHf4n2aZ4Ps0aSRShycFTGuj/J6XldmC0x0DwednIA==} - engines: {node: '>=18.0.0'} - - '@smithy/util-uri-escape@4.2.2': - resolution: {integrity: sha512-2kAStBlvq+lTXHyAZYfJRb/DfS3rsinLiwb+69SstC9Vb0s9vNWkRwpnj918Pfi85mzi42sOqdV72OLxWAISnw==} - engines: {node: '>=18.0.0'} - '@smithy/util-utf8@2.3.0': resolution: {integrity: sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==} engines: {node: '>=14.0.0'} - '@smithy/util-utf8@4.2.2': - resolution: {integrity: sha512-75MeYpjdWRe8M5E3AW0O4Cx3UadweS+cwdXjwYGBW5h/gxxnbeZ877sLPX/ZJA9GVTlL/qG0dXP29JWFCD1Ayw==} - engines: {node: '>=18.0.0'} - - '@smithy/uuid@1.1.2': - resolution: {integrity: sha512-O/IEdcCUKkubz60tFbGA7ceITTAJsty+lBjNoorP4Z6XRqaFb/OjQjZODophEcuq68nKm6/0r+6/lLQ+XVpk8g==} - engines: {node: '>=18.0.0'} - '@standard-schema/spec@1.1.0': resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} @@ -2274,13 +2082,6 @@ packages: peerDependencies: '@testing-library/dom': '>=7.21.4' - '@tokenizer/inflate@0.4.1': - resolution: {integrity: sha512-2mAv+8pkG6GIZiF1kNg1jAjh27IDxEPKwdGul3snfztFerfPGI1LjDezZp3i7BElXompqEtPmoPx6c2wgtWsOA==} - engines: {node: '>=18'} - - '@tokenizer/token@0.3.0': - resolution: {integrity: sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==} - '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} @@ -2377,9 +2178,6 @@ packages: '@types/mdurl@2.0.0': resolution: {integrity: sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==} - '@types/mime-types@2.1.4': - resolution: {integrity: sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==} - '@types/ms@2.1.0': resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} @@ -2631,9 +2429,6 @@ packages: resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} engines: {node: '>=12'} - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - app-builder-bin@5.0.0-alpha.12: resolution: {integrity: sha512-j87o0j6LqPL3QRr8yid6c+Tt5gC7xNfYo6uQIQkorAC6MpeayVMZrEDzKmJJ/Hlv7EnOQpaRm53k6ktDYZyB6w==} @@ -2812,10 +2607,6 @@ packages: resolution: {integrity: sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==} engines: {node: 20 || >=22} - brace-expansion@5.0.5: - resolution: {integrity: sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==} - engines: {node: 18 || 20 || >=22} - braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -2937,11 +2728,6 @@ packages: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} engines: {node: '>=8'} - cli-highlight@2.1.11: - resolution: {integrity: sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==} - engines: {node: '>=8.0.0', npm: '>=5.0.0'} - hasBin: true - cli-spinners@2.9.2: resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} engines: {node: '>=6'} @@ -2950,9 +2736,6 @@ packages: resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} engines: {node: '>=8'} - cliui@7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} - cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} engines: {node: '>=12'} @@ -3342,13 +3125,6 @@ packages: fast-uri@3.1.8: resolution: {integrity: sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==} - fast-xml-builder@1.1.5: - resolution: {integrity: sha512-4TJn/8FKLeslLAH3dnohXqE3QSoxkhvaMzepOIZytwJXZO69Bfz0HBdDHzOTOon6G59Zrk6VQ2bEiv1t61rfkA==} - - fast-xml-parser@5.7.2: - resolution: {integrity: sha512-P7oW7tLbYnhOLQk/Gv7cZgzgMPP/XN03K02/Jy6Y/NHzyIAIpxuZIM/YqAkfiXFPxA2CTm7NtCijK9EDu09u2w==} - hasBin: true - fastq@1.20.3: resolution: {integrity: sha512-XKv5nnLs6nLF71NgiKJLIZFLkPyIEuOselLG7ujZnGrRfQK8HpvY+WqKhAJUAdLomwVHErVS4LfxFlPq0/FTAw==} @@ -3368,10 +3144,6 @@ packages: resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} engines: {node: ^12.20 || >= 14.13} - file-type@21.3.4: - resolution: {integrity: sha512-Ievi/yy8DS3ygGvT47PjSfdFoX+2isQueoYP1cntFW1JLYAuS4GD7NUPGg4zv2iZfV52uDyk5w5Z0TdpRS6Q1g==} - engines: {node: '>=20'} - filelist@1.0.6: resolution: {integrity: sha512-5giy2PkLYY1cP39p17Ech+2xlpTRL9HLspOfEgm0L6CwBXBTgsK5ou0JtzYuepxkaQ/tvhCFIJ5uXo0OrM2DxA==} @@ -3460,8 +3232,8 @@ packages: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - get-east-asian-width@1.5.0: - resolution: {integrity: sha512-CQ+bEO+Tva/qlmw24dCejulK5pMzVnUOFOijVogd3KQs07HnRIgp8TGipvCCRT06xeYEbpbgwaCxglFyiuIcmA==} + get-east-asian-width@1.6.0: + resolution: {integrity: sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==} engines: {node: '>=18'} get-intrinsic@1.3.0: @@ -3815,9 +3587,6 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - koffi@2.16.1: - resolution: {integrity: sha512-0Ie6CfD026dNfWSosDw9dPxPzO9Rlyo0N8m5r05S8YjytIpuilzMFDMY4IDy/8xQsTwpuVinhncD+S8n3bcYZQ==} - lazy-val@1.0.5: resolution: {integrity: sha512-0/BnGCCfyUMkBpeDgWihanIAF9JmZhHBgUhEqzvf+adhNGLoP6TaiI5oF8oyb3I45P+PcnrqihSf01M0l0G5+Q==} @@ -4043,9 +3812,9 @@ packages: markdown-table@3.0.4: resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} - marked@15.0.12: - resolution: {integrity: sha512-8dD6FusOQSrpv9Z1rdNMdlSgQOIP880DHqnohobOmYLElGEqAL/JvxvuxZO16r4HtjTlfPRDC1hbvxC9dPN2nA==} - engines: {node: '>= 18'} + marked@18.0.5: + resolution: {integrity: sha512-S6GcvALHg6K4ohtu4E7x0a1AqhAjp6cV8KhLSyN9qVapnzJkusVBxZRcIU9AeYsbe6P1hKDusSbEOzGyyuce6w==} + engines: {node: '>= 20'} hasBin: true matcher@3.0.0: @@ -4197,18 +3966,10 @@ packages: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} - mime-db@1.54.0: - resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} - engines: {node: '>= 0.6'} - mime-types@2.1.35: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} - mime-types@3.0.2: - resolution: {integrity: sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==} - engines: {node: '>=18'} - mime@2.6.0: resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} engines: {node: '>=4.0.0'} @@ -4297,9 +4058,6 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.19: resolution: {integrity: sha512-Y2tUNy4ouw6tq5oDSKeQYGOyhkUBhNOcGV/02KC+6kd9eDGqdZd++mjMiIDilrBYvjEnCYvVtsuHCuP+okSfug==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -4371,10 +4129,6 @@ packages: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} engines: {node: '>= 0.4'} @@ -4468,15 +4222,6 @@ packages: parse-entities@4.0.2: resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} - parse5-htmlparser2-tree-adapter@6.0.1: - resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==} - - parse5@5.1.1: - resolution: {integrity: sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==} - - parse5@6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - parse5@8.0.1: resolution: {integrity: sha512-z1e/HMG90obSGeidlli3hj7cbocou0/wa5HacvI3ASx34PecNjNQeaHNo5WIZpWofN9kgkqV1q5YvXe3F0FoPw==} @@ -4487,10 +4232,6 @@ packages: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} - path-expression-matcher@1.5.0: - resolution: {integrity: sha512-cbrerZV+6rvdQrrD+iGMcZFEiiSrbv9Tfdkvnusy6y0x0GKBXREFg/Y65GhIfm0tnLntThhzCnfKwp1WRjeCyQ==} - engines: {node: '>=14.0.0'} - path-is-absolute@1.0.1: resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} engines: {node: '>=0.10.0'} @@ -4825,6 +4566,11 @@ packages: engines: {node: '>=10'} hasBin: true + semver@7.8.0: + resolution: {integrity: sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==} + engines: {node: '>=10'} + hasBin: true + semver@7.8.5: resolution: {integrity: sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==} engines: {node: '>=10'} @@ -4959,13 +4705,6 @@ packages: resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} engines: {node: '>=4'} - strnum@2.2.3: - resolution: {integrity: sha512-oKx6RUCuHfT3oyVjtnrmn19H1SiCqgJSg+54XqURKp5aCMbrXrhLjRN9TjuwMjiYstZ0MzDrHqkGZ5dFTKd+zg==} - - strtok3@10.3.5: - resolution: {integrity: sha512-ki4hZQfh5rX0QDLLkOCj+h+CVNkqmp/CMf8v8kZpkNVK6jGQooMytqzLZYUVYIZcFZ6yDB70EfD8POcFXiF5oA==} - engines: {node: '>=18'} - style-to-js@1.1.21: resolution: {integrity: sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ==} @@ -5025,13 +4764,6 @@ packages: text-decoder@1.2.7: resolution: {integrity: sha512-vlLytXkeP4xvEq2otHeJfSQIRyWxo/oZGEbXrtEEF9Hnmrdly59sUbzZ/QgyWuLYHctCHxFF4tRQZNQ9k60ExQ==} - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - tiny-async-pool@1.3.0: resolution: {integrity: sha512-01EAw5EDrcVrdgyCLgoSPvqznC0sVxDSVeiOz09FUpjh71G79VCqneOr+xvt7T1r76CF6ZZfPjHorN2+d+3mqA==} @@ -5064,10 +4796,6 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - token-types@6.1.2: - resolution: {integrity: sha512-dRXchy+C0IgK8WPC6xvCHFRIWYUbqqdEIKPaKo/AcTUNzwLTK6AH7RjdLWsEZcAN/TBdtfUw3PYEgPr5VPr6ww==} - engines: {node: '>=14.16'} - trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} @@ -5096,8 +4824,8 @@ packages: resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} engines: {node: '>=10'} - typebox@1.1.37: - resolution: {integrity: sha512-jb7jp6KvOvvy5sd+11AfJ0/e0F0AS9RcOXd55oGi2ZnRHIGmFvrTaNF+ZidRmGBmmNTkM5KKl0Z37KzxJ+owEQ==} + typebox@1.1.38: + resolution: {integrity: sha512-pZ0aQPmMmXoUvSbeuWf/Hzsc+avNw/Zd6VeE8CFgkVGWyuHPJvqeJJDeJqLve+K70LvjYIoleGcoJHPT17cWoA==} typed-query-selector@2.12.2: resolution: {integrity: sha512-EOPFbyIub4ngnEdqi2yOcNeDLaX/0jcE1JoAXQDDMIthap7FoN795lc/SHfIq2d416VufXpM8z/lD+WRm2gfOQ==} @@ -5107,10 +4835,6 @@ packages: engines: {node: '>=14.17'} hasBin: true - uint8array-extras@1.5.0: - resolution: {integrity: sha512-rvKSBiC5zqCCiDZ9kAOszZcDvdAHwwIKJG33Ykj43OKcWsnmcBRL09YTU4nOeHZ8Y2a7l1MgTd08SBe9A8Qj6A==} - engines: {node: '>=18'} - undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} @@ -5128,6 +4852,10 @@ packages: resolution: {integrity: sha512-RYONW2MeafgYlkVOKYKkA/Ag7BmXqgIWCa8t1m0JcxrQg9pI9lEqRhAOruOBCbAohOa/gkCF+iPi9hrgvTzu6Q==} engines: {node: '>=20.18.1'} + undici@8.10.2: + resolution: {integrity: sha512-/y4/bH9YNU5hi9NIrpOuvGXFcxrj3CMrV+/AYpowAYTpHn8gX/XPFjNy766FPoYY0miQhdW977JFWKGNhBdwyQ==} + engines: {node: '>=22.19.0'} + unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -5185,10 +4913,6 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - uuid@14.0.0: - resolution: {integrity: sha512-Qo+uWgilfSmAhXCMav1uYFynlQO7fMFiMVZsQqZRMIXp0O7rR7qjkj+cPvBHLgBqi960QCoo/PH2/6ZtVqKvrg==} - hasBin: true - verror@1.10.1: resolution: {integrity: sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==} engines: {node: '>=0.6.0'} @@ -5470,18 +5194,10 @@ packages: engines: {node: '>= 14.6'} hasBin: true - yargs-parser@20.2.9: - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} - engines: {node: '>=10'} - yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} - yargs@16.2.2: - resolution: {integrity: sha512-Nt9ZJjXTv5R8MHbqby/wXQ6Gi0Bb3TcYZkR1bzuL4yB2OxWPkXknz513gEF0GoA6tn00UpbPvERW8rzCuWCA6w==} - engines: {node: '>=10'} - yargs@17.7.3: resolution: {integrity: sha512-GZtjxm/J/4TSxuL3FNYjCmLktBTnIw/rVmKSIyKeYAZpmJB2ig9VauCC5xsa82GNKVKDAqpOn3KVzNt0zmrU0g==} engines: {node: '>=12'} @@ -5660,18 +5376,12 @@ snapshots: optionalDependencies: zod: 4.4.2 - '@aws-crypto/crc32@5.2.0': - dependencies: - '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.973.8 - tslib: 2.8.1 - '@aws-crypto/sha256-browser@5.2.0': dependencies: '@aws-crypto/sha256-js': 5.2.0 '@aws-crypto/supports-web-crypto': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.973.8 + '@aws-sdk/types': 3.974.6 '@aws-sdk/util-locate-window': 3.965.5 '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 @@ -5679,7 +5389,7 @@ snapshots: '@aws-crypto/sha256-js@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.973.8 + '@aws-sdk/types': 3.974.6 tslib: 2.8.1 '@aws-crypto/supports-web-crypto@5.2.0': @@ -5688,386 +5398,197 @@ snapshots: '@aws-crypto/util@5.2.0': dependencies: - '@aws-sdk/types': 3.973.8 + '@aws-sdk/types': 3.974.6 '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 - '@aws-sdk/client-bedrock-runtime@3.1041.0': + '@aws-sdk/client-bedrock-runtime@3.1048.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.974.8 - '@aws-sdk/credential-provider-node': 3.972.39 - '@aws-sdk/eventstream-handler-node': 3.972.14 - '@aws-sdk/middleware-eventstream': 3.972.10 - '@aws-sdk/middleware-host-header': 3.972.10 - '@aws-sdk/middleware-logger': 3.972.10 - '@aws-sdk/middleware-recursion-detection': 3.972.11 - '@aws-sdk/middleware-user-agent': 3.972.38 - '@aws-sdk/middleware-websocket': 3.972.16 - '@aws-sdk/region-config-resolver': 3.972.13 - '@aws-sdk/token-providers': 3.1041.0 - '@aws-sdk/types': 3.973.8 - '@aws-sdk/util-endpoints': 3.996.8 - '@aws-sdk/util-user-agent-browser': 3.972.10 - '@aws-sdk/util-user-agent-node': 3.973.24 - '@smithy/config-resolver': 4.4.17 - '@smithy/core': 3.23.17 - '@smithy/eventstream-serde-browser': 4.2.14 - '@smithy/eventstream-serde-config-resolver': 4.3.14 - '@smithy/eventstream-serde-node': 4.2.14 - '@smithy/fetch-http-handler': 5.3.17 - '@smithy/hash-node': 4.2.14 - '@smithy/invalid-dependency': 4.2.14 - '@smithy/middleware-content-length': 4.2.14 - '@smithy/middleware-endpoint': 4.4.32 - '@smithy/middleware-retry': 4.5.7 - '@smithy/middleware-serde': 4.2.20 - '@smithy/middleware-stack': 4.2.14 - '@smithy/node-config-provider': 4.3.14 - '@smithy/node-http-handler': 4.6.1 - '@smithy/protocol-http': 5.3.14 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - '@smithy/url-parser': 4.2.14 - '@smithy/util-base64': 4.3.2 - '@smithy/util-body-length-browser': 4.2.2 - '@smithy/util-body-length-node': 4.2.3 - '@smithy/util-defaults-mode-browser': 4.3.49 - '@smithy/util-defaults-mode-node': 4.2.54 - '@smithy/util-endpoints': 3.4.2 - '@smithy/util-middleware': 4.2.14 - '@smithy/util-retry': 4.3.8 - '@smithy/util-stream': 4.5.25 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/core@3.974.8': - dependencies: - '@aws-sdk/types': 3.973.8 - '@aws-sdk/xml-builder': 3.972.22 - '@smithy/core': 3.23.17 - '@smithy/node-config-provider': 4.3.14 - '@smithy/property-provider': 4.2.14 - '@smithy/protocol-http': 5.3.14 - '@smithy/signature-v4': 5.3.14 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - '@smithy/util-base64': 4.3.2 - '@smithy/util-middleware': 4.2.14 - '@smithy/util-retry': 4.3.8 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - - '@aws-sdk/credential-provider-env@3.972.34': - dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/types': 3.973.8 - '@smithy/property-provider': 4.2.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@aws-sdk/credential-provider-http@3.972.36': - dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/types': 3.973.8 - '@smithy/fetch-http-handler': 5.3.17 - '@smithy/node-http-handler': 4.6.1 - '@smithy/property-provider': 4.2.14 - '@smithy/protocol-http': 5.3.14 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - '@smithy/util-stream': 4.5.25 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/credential-provider-node': 3.972.87 + '@aws-sdk/eventstream-handler-node': 3.972.37 + '@aws-sdk/middleware-eventstream': 3.972.32 + '@aws-sdk/middleware-websocket': 3.972.57 + '@aws-sdk/token-providers': 3.1048.0 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/node-http-handler': 4.12.1 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-ini@3.972.38': - dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/credential-provider-env': 3.972.34 - '@aws-sdk/credential-provider-http': 3.972.36 - '@aws-sdk/credential-provider-login': 3.972.38 - '@aws-sdk/credential-provider-process': 3.972.34 - '@aws-sdk/credential-provider-sso': 3.972.38 - '@aws-sdk/credential-provider-web-identity': 3.972.38 - '@aws-sdk/nested-clients': 3.997.6 - '@aws-sdk/types': 3.973.8 - '@smithy/credential-provider-imds': 4.2.14 - '@smithy/property-provider': 4.2.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/credential-provider-login@3.972.38': + '@aws-sdk/core@3.978.4': dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/nested-clients': 3.997.6 - '@aws-sdk/types': 3.973.8 - '@smithy/property-provider': 4.2.14 - '@smithy/protocol-http': 5.3.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/credential-provider-node@3.972.39': - dependencies: - '@aws-sdk/credential-provider-env': 3.972.34 - '@aws-sdk/credential-provider-http': 3.972.36 - '@aws-sdk/credential-provider-ini': 3.972.38 - '@aws-sdk/credential-provider-process': 3.972.34 - '@aws-sdk/credential-provider-sso': 3.972.38 - '@aws-sdk/credential-provider-web-identity': 3.972.38 - '@aws-sdk/types': 3.973.8 - '@smithy/credential-provider-imds': 4.2.14 - '@smithy/property-provider': 4.2.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 + '@aws-sdk/types': 3.974.6 + '@aws-sdk/xml-builder': 3.972.41 + '@aws/lambda-invoke-store': 0.3.0 + '@smithy/core': 3.36.0 + '@smithy/signature-v4': 5.7.4 + '@smithy/types': 4.19.0 + bowser: 2.14.1 tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/credential-provider-process@3.972.34': + '@aws-sdk/credential-provider-env@3.972.75': dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/types': 3.973.8 - '@smithy/property-provider': 4.2.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-sso@3.972.38': + '@aws-sdk/credential-provider-http@3.972.77': dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/nested-clients': 3.997.6 - '@aws-sdk/token-providers': 3.1041.0 - '@aws-sdk/types': 3.973.8 - '@smithy/property-provider': 4.2.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/node-http-handler': 4.12.1 + '@smithy/types': 4.19.0 tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/credential-provider-web-identity@3.972.38': - dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/nested-clients': 3.997.6 - '@aws-sdk/types': 3.973.8 - '@smithy/property-provider': 4.2.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 + '@aws-sdk/credential-provider-ini@3.973.20': + dependencies: + '@aws-sdk/core': 3.978.4 + '@aws-sdk/credential-provider-env': 3.972.75 + '@aws-sdk/credential-provider-http': 3.972.77 + '@aws-sdk/credential-provider-login': 3.972.82 + '@aws-sdk/credential-provider-process': 3.972.75 + '@aws-sdk/credential-provider-sso': 3.973.19 + '@aws-sdk/credential-provider-web-identity': 3.972.81 + '@aws-sdk/nested-clients': 3.997.49 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/credential-provider-imds': 4.5.2 + '@smithy/types': 4.19.0 tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/eventstream-handler-node@3.972.14': + '@aws-sdk/credential-provider-login@3.972.82': dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/eventstream-codec': 4.2.14 - '@smithy/types': 4.14.1 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/nested-clients': 3.997.49 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/middleware-eventstream@3.972.10': - dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 + '@aws-sdk/credential-provider-node@3.972.87': + dependencies: + '@aws-sdk/credential-provider-env': 3.972.75 + '@aws-sdk/credential-provider-http': 3.972.77 + '@aws-sdk/credential-provider-ini': 3.973.20 + '@aws-sdk/credential-provider-process': 3.972.75 + '@aws-sdk/credential-provider-sso': 3.973.19 + '@aws-sdk/credential-provider-web-identity': 3.972.81 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/credential-provider-imds': 4.5.2 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/middleware-host-header@3.972.10': + '@aws-sdk/credential-provider-process@3.972.75': dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/middleware-logger@3.972.10': + '@aws-sdk/credential-provider-sso@3.973.19': dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/types': 4.14.1 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/nested-clients': 3.997.49 + '@aws-sdk/token-providers': 3.1153.0 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/middleware-recursion-detection@3.972.11': + '@aws-sdk/credential-provider-web-identity@3.972.81': dependencies: - '@aws-sdk/types': 3.973.8 - '@aws/lambda-invoke-store': 0.2.4 - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@aws-sdk/middleware-sdk-s3@3.972.37': - dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/types': 3.973.8 - '@aws-sdk/util-arn-parser': 3.972.3 - '@smithy/core': 3.23.17 - '@smithy/node-config-provider': 4.3.14 - '@smithy/protocol-http': 5.3.14 - '@smithy/signature-v4': 5.3.14 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - '@smithy/util-config-provider': 4.2.2 - '@smithy/util-middleware': 4.2.14 - '@smithy/util-stream': 4.5.25 - '@smithy/util-utf8': 4.2.2 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/nested-clients': 3.997.49 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/middleware-user-agent@3.972.38': + '@aws-sdk/eventstream-handler-node@3.972.37': dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/types': 3.973.8 - '@aws-sdk/util-endpoints': 3.996.8 - '@smithy/core': 3.23.17 - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 - '@smithy/util-retry': 4.3.8 - tslib: 2.8.1 - - '@aws-sdk/middleware-websocket@3.972.16': - dependencies: - '@aws-sdk/types': 3.973.8 - '@aws-sdk/util-format-url': 3.972.10 - '@smithy/eventstream-codec': 4.2.14 - '@smithy/eventstream-serde-browser': 4.2.14 - '@smithy/fetch-http-handler': 5.3.17 - '@smithy/protocol-http': 5.3.14 - '@smithy/signature-v4': 5.3.14 - '@smithy/types': 4.14.1 - '@smithy/util-base64': 4.3.2 - '@smithy/util-hex-encoding': 4.2.2 - '@smithy/util-utf8': 4.2.2 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/nested-clients@3.997.6': + '@aws-sdk/middleware-eventstream@3.972.32': dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.974.8 - '@aws-sdk/middleware-host-header': 3.972.10 - '@aws-sdk/middleware-logger': 3.972.10 - '@aws-sdk/middleware-recursion-detection': 3.972.11 - '@aws-sdk/middleware-user-agent': 3.972.38 - '@aws-sdk/region-config-resolver': 3.972.13 - '@aws-sdk/signature-v4-multi-region': 3.996.25 - '@aws-sdk/types': 3.973.8 - '@aws-sdk/util-endpoints': 3.996.8 - '@aws-sdk/util-user-agent-browser': 3.972.10 - '@aws-sdk/util-user-agent-node': 3.973.24 - '@smithy/config-resolver': 4.4.17 - '@smithy/core': 3.23.17 - '@smithy/fetch-http-handler': 5.3.17 - '@smithy/hash-node': 4.2.14 - '@smithy/invalid-dependency': 4.2.14 - '@smithy/middleware-content-length': 4.2.14 - '@smithy/middleware-endpoint': 4.4.32 - '@smithy/middleware-retry': 4.5.7 - '@smithy/middleware-serde': 4.2.20 - '@smithy/middleware-stack': 4.2.14 - '@smithy/node-config-provider': 4.3.14 - '@smithy/node-http-handler': 4.6.1 - '@smithy/protocol-http': 5.3.14 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - '@smithy/url-parser': 4.2.14 - '@smithy/util-base64': 4.3.2 - '@smithy/util-body-length-browser': 4.2.2 - '@smithy/util-body-length-node': 4.2.3 - '@smithy/util-defaults-mode-browser': 4.3.49 - '@smithy/util-defaults-mode-node': 4.2.54 - '@smithy/util-endpoints': 3.4.2 - '@smithy/util-middleware': 4.2.14 - '@smithy/util-retry': 4.3.8 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/region-config-resolver@3.972.13': - dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/config-resolver': 4.4.17 - '@smithy/node-config-provider': 4.3.14 - '@smithy/types': 4.14.1 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/signature-v4-multi-region@3.996.25': + '@aws-sdk/middleware-websocket@3.972.57': dependencies: - '@aws-sdk/middleware-sdk-s3': 3.972.37 - '@aws-sdk/types': 3.973.8 - '@smithy/protocol-http': 5.3.14 - '@smithy/signature-v4': 5.3.14 - '@smithy/types': 4.14.1 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/signature-v4': 5.7.4 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/token-providers@3.1041.0': + '@aws-sdk/nested-clients@3.997.49': dependencies: - '@aws-sdk/core': 3.974.8 - '@aws-sdk/nested-clients': 3.997.6 - '@aws-sdk/types': 3.973.8 - '@smithy/property-provider': 4.2.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/signature-v4-multi-region': 3.996.48 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/fetch-http-handler': 5.8.0 + '@smithy/node-http-handler': 4.12.1 + '@smithy/types': 4.19.0 tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - '@aws-sdk/types@3.973.8': + '@aws-sdk/signature-v4-multi-region@3.996.48': dependencies: - '@smithy/types': 4.14.1 + '@aws-sdk/types': 3.974.6 + '@smithy/signature-v4': 5.7.4 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/util-arn-parser@3.972.3': + '@aws-sdk/token-providers@3.1048.0': dependencies: + '@aws-sdk/core': 3.978.4 + '@aws-sdk/nested-clients': 3.997.49 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/util-endpoints@3.996.8': + '@aws-sdk/token-providers@3.1153.0': dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/types': 4.14.1 - '@smithy/url-parser': 4.2.14 - '@smithy/util-endpoints': 3.4.2 + '@aws-sdk/core': 3.978.4 + '@aws-sdk/nested-clients': 3.997.49 + '@aws-sdk/types': 3.974.6 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/util-format-url@3.972.10': + '@aws-sdk/types@3.974.6': dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/querystring-builder': 4.2.14 - '@smithy/types': 4.14.1 + '@smithy/types': 4.19.0 tslib: 2.8.1 '@aws-sdk/util-locate-window@3.965.5': dependencies: tslib: 2.8.1 - '@aws-sdk/util-user-agent-browser@3.972.10': + '@aws-sdk/xml-builder@3.972.41': dependencies: - '@aws-sdk/types': 3.973.8 - '@smithy/types': 4.14.1 - bowser: 2.14.1 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@aws-sdk/util-user-agent-node@3.973.24': - dependencies: - '@aws-sdk/middleware-user-agent': 3.972.38 - '@aws-sdk/types': 3.973.8 - '@smithy/node-config-provider': 4.3.14 - '@smithy/types': 4.14.1 - '@smithy/util-config-provider': 4.2.2 - tslib: 2.8.1 - - '@aws-sdk/xml-builder@3.972.22': - dependencies: - '@nodable/entities': 2.1.0 - '@smithy/types': 4.14.1 - fast-xml-parser: 5.7.2 - tslib: 2.8.1 - - '@aws/lambda-invoke-store@0.2.4': {} + '@aws/lambda-invoke-store@0.3.0': {} '@babel/code-frame@7.29.0': dependencies: @@ -6233,8 +5754,6 @@ snapshots: '@biomejs/cli-win32-x64@2.4.15': optional: true - '@borewit/text-codec@0.2.2': {} - '@changesets/apply-release-plan@7.1.1': dependencies: '@changesets/config': 3.1.4 @@ -6407,6 +5926,76 @@ snapshots: transitivePeerDependencies: - '@algolia/client-search' + '@earendil-works/pi-agent-core@0.79.10(ws@8.20.0)(zod@4.4.2)': + dependencies: + '@earendil-works/pi-ai': 0.79.10(ws@8.20.0)(zod@4.4.2) + ignore: 7.0.5 + typebox: 1.1.38 + yaml: 2.9.0 + transitivePeerDependencies: + - '@modelcontextprotocol/sdk' + - bufferutil + - supports-color + - utf-8-validate + - ws + - zod + + '@earendil-works/pi-ai@0.79.10(ws@8.20.0)(zod@4.4.2)': + dependencies: + '@anthropic-ai/sdk': 0.91.1(zod@4.4.2) + '@aws-sdk/client-bedrock-runtime': 3.1048.0 + '@google/genai': 1.52.0 + '@mistralai/mistralai': 2.2.6(@opentelemetry/api@1.9.0) + '@opentelemetry/api': 1.9.0 + '@smithy/node-http-handler': 4.7.3 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + openai: 6.26.0(ws@8.20.0)(zod@4.4.2) + partial-json: 0.1.7 + typebox: 1.1.38 + transitivePeerDependencies: + - '@modelcontextprotocol/sdk' + - bufferutil + - supports-color + - utf-8-validate + - ws + - zod + + '@earendil-works/pi-coding-agent@0.79.10(ws@8.20.0)(zod@4.4.2)': + dependencies: + '@earendil-works/pi-agent-core': 0.79.10(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-ai': 0.79.10(ws@8.20.0)(zod@4.4.2) + '@earendil-works/pi-tui': 0.79.10 + '@silvia-odwyer/photon-node': 0.3.4 + chalk: 5.6.2 + cross-spawn: 7.0.6 + diff: 8.0.4 + glob: 13.0.6 + highlight.js: 10.7.3 + hosted-git-info: 9.0.3 + ignore: 7.0.5 + jiti: 2.7.0 + minimatch: 10.2.5 + proper-lockfile: 4.1.2 + semver: 7.8.0 + typebox: 1.1.38 + undici: 8.10.2 + yaml: 2.9.0 + optionalDependencies: + '@mariozechner/clipboard': 0.3.9 + transitivePeerDependencies: + - '@modelcontextprotocol/sdk' + - bufferutil + - supports-color + - utf-8-validate + - ws + - zod + + '@earendil-works/pi-tui@0.79.10': + dependencies: + get-east-asian-width: 1.6.0 + marked: 18.0.5 + '@electron-internal/extract-zip@1.0.5': {} '@electron/asar@3.4.1': @@ -6775,7 +6364,7 @@ snapshots: '@fontsource-variable/jetbrains-mono@5.2.8': {} - '@google/genai@1.51.0': + '@google/genai@1.52.0': dependencies: google-auth-library: 10.6.2 p-retry: 4.6.2 @@ -6862,134 +6451,58 @@ snapshots: globby: 11.1.0 read-yaml-file: 1.1.0 - '@mariozechner/clipboard-darwin-arm64@0.3.2': + '@mariozechner/clipboard-darwin-arm64@0.3.9': optional: true - '@mariozechner/clipboard-darwin-universal@0.3.2': + '@mariozechner/clipboard-darwin-universal@0.3.9': optional: true - '@mariozechner/clipboard-darwin-x64@0.3.2': + '@mariozechner/clipboard-darwin-x64@0.3.9': optional: true - '@mariozechner/clipboard-linux-arm64-gnu@0.3.2': + '@mariozechner/clipboard-linux-arm64-gnu@0.3.9': optional: true - '@mariozechner/clipboard-linux-arm64-musl@0.3.2': + '@mariozechner/clipboard-linux-arm64-musl@0.3.9': optional: true - '@mariozechner/clipboard-linux-riscv64-gnu@0.3.2': + '@mariozechner/clipboard-linux-riscv64-gnu@0.3.9': optional: true - '@mariozechner/clipboard-linux-x64-gnu@0.3.2': + '@mariozechner/clipboard-linux-x64-gnu@0.3.9': optional: true - '@mariozechner/clipboard-linux-x64-musl@0.3.2': + '@mariozechner/clipboard-linux-x64-musl@0.3.9': optional: true - '@mariozechner/clipboard-win32-arm64-msvc@0.3.2': + '@mariozechner/clipboard-win32-arm64-msvc@0.3.9': optional: true - '@mariozechner/clipboard-win32-x64-msvc@0.3.2': + '@mariozechner/clipboard-win32-x64-msvc@0.3.9': optional: true - '@mariozechner/clipboard@0.3.5': - optionalDependencies: - '@mariozechner/clipboard-darwin-arm64': 0.3.2 - '@mariozechner/clipboard-darwin-universal': 0.3.2 - '@mariozechner/clipboard-darwin-x64': 0.3.2 - '@mariozechner/clipboard-linux-arm64-gnu': 0.3.2 - '@mariozechner/clipboard-linux-arm64-musl': 0.3.2 - '@mariozechner/clipboard-linux-riscv64-gnu': 0.3.2 - '@mariozechner/clipboard-linux-x64-gnu': 0.3.2 - '@mariozechner/clipboard-linux-x64-musl': 0.3.2 - '@mariozechner/clipboard-win32-arm64-msvc': 0.3.2 - '@mariozechner/clipboard-win32-x64-msvc': 0.3.2 - optional: true - - '@mariozechner/pi-agent-core@0.73.1(ws@8.20.0)(zod@4.4.2)': - dependencies: - '@mariozechner/pi-ai': 0.73.1(ws@8.20.0)(zod@4.4.2) - typebox: 1.1.37 - transitivePeerDependencies: - - '@modelcontextprotocol/sdk' - - aws-crt - - bufferutil - - supports-color - - utf-8-validate - - ws - - zod - - '@mariozechner/pi-ai@0.73.1(ws@8.20.0)(zod@4.4.2)': - dependencies: - '@anthropic-ai/sdk': 0.91.1(zod@4.4.2) - '@aws-sdk/client-bedrock-runtime': 3.1041.0 - '@google/genai': 1.51.0 - '@mistralai/mistralai': 2.2.1 - chalk: 5.6.2 - openai: 6.26.0(ws@8.20.0)(zod@4.4.2) - partial-json: 0.1.7 - proxy-agent: 6.5.0 - typebox: 1.1.37 - undici: 7.29.1 - zod-to-json-schema: 3.25.2(zod@4.4.2) - transitivePeerDependencies: - - '@modelcontextprotocol/sdk' - - aws-crt - - bufferutil - - supports-color - - utf-8-validate - - ws - - zod - - '@mariozechner/pi-coding-agent@0.73.1(ws@8.20.0)(zod@4.4.2)': - dependencies: - '@mariozechner/pi-agent-core': 0.73.1(ws@8.20.0)(zod@4.4.2) - '@mariozechner/pi-ai': 0.73.1(ws@8.20.0)(zod@4.4.2) - '@mariozechner/pi-tui': 0.73.1 - '@silvia-odwyer/photon-node': 0.3.4 - chalk: 5.6.2 - cli-highlight: 2.1.11 - diff: 8.0.4 - extract-zip: 2.0.1 - file-type: 21.3.4 - glob: 13.0.6 - hosted-git-info: 9.0.3 - ignore: 7.0.5 - jiti: 2.7.0 - marked: 15.0.12 - minimatch: 10.2.6 - proper-lockfile: 4.1.2 - strip-ansi: 7.2.0 - typebox: 1.1.37 - undici: 7.29.1 - uuid: 14.0.0 - yaml: 2.9.0 + '@mariozechner/clipboard@0.3.9': optionalDependencies: - '@mariozechner/clipboard': 0.3.5 - transitivePeerDependencies: - - '@modelcontextprotocol/sdk' - - aws-crt - - bufferutil - - supports-color - - utf-8-validate - - ws - - zod - - '@mariozechner/pi-tui@0.73.1': - dependencies: - '@types/mime-types': 2.1.4 - chalk: 5.6.2 - get-east-asian-width: 1.5.0 - marked: 15.0.12 - mime-types: 3.0.2 - optionalDependencies: - koffi: 2.16.1 + '@mariozechner/clipboard-darwin-arm64': 0.3.9 + '@mariozechner/clipboard-darwin-universal': 0.3.9 + '@mariozechner/clipboard-darwin-x64': 0.3.9 + '@mariozechner/clipboard-linux-arm64-gnu': 0.3.9 + '@mariozechner/clipboard-linux-arm64-musl': 0.3.9 + '@mariozechner/clipboard-linux-riscv64-gnu': 0.3.9 + '@mariozechner/clipboard-linux-x64-gnu': 0.3.9 + '@mariozechner/clipboard-linux-x64-musl': 0.3.9 + '@mariozechner/clipboard-win32-arm64-msvc': 0.3.9 + '@mariozechner/clipboard-win32-x64-msvc': 0.3.9 + optional: true - '@mistralai/mistralai@2.2.1': + '@mistralai/mistralai@2.2.6(@opentelemetry/api@1.9.0)': dependencies: + '@opentelemetry/semantic-conventions': 1.43.0 ws: 8.20.0 zod: 4.4.2 zod-to-json-schema: 3.25.2(zod@4.4.2) + optionalDependencies: + '@opentelemetry/api': 1.9.0 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -7008,8 +6521,6 @@ snapshots: '@noble/hashes@2.4.0': {} - '@nodable/entities@2.1.0': {} - '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -7036,6 +6547,10 @@ snapshots: dependencies: semver: 7.8.5 + '@opentelemetry/api@1.9.0': {} + + '@opentelemetry/semantic-conventions@1.43.0': {} + '@oxc-project/types@0.127.0': {} '@peculiar/asn1-schema@2.10.0': @@ -7275,222 +6790,46 @@ snapshots: '@sindresorhus/is@4.6.0': {} - '@smithy/config-resolver@4.4.17': - dependencies: - '@smithy/node-config-provider': 4.3.14 - '@smithy/types': 4.14.1 - '@smithy/util-config-provider': 4.2.2 - '@smithy/util-endpoints': 3.4.2 - '@smithy/util-middleware': 4.2.14 - tslib: 2.8.1 - - '@smithy/core@3.23.17': - dependencies: - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 - '@smithy/url-parser': 4.2.14 - '@smithy/util-base64': 4.3.2 - '@smithy/util-body-length-browser': 4.2.2 - '@smithy/util-middleware': 4.2.14 - '@smithy/util-stream': 4.5.25 - '@smithy/util-utf8': 4.2.2 - '@smithy/uuid': 1.1.2 - tslib: 2.8.1 - - '@smithy/credential-provider-imds@4.2.14': - dependencies: - '@smithy/node-config-provider': 4.3.14 - '@smithy/property-provider': 4.2.14 - '@smithy/types': 4.14.1 - '@smithy/url-parser': 4.2.14 - tslib: 2.8.1 - - '@smithy/eventstream-codec@4.2.14': - dependencies: - '@aws-crypto/crc32': 5.2.0 - '@smithy/types': 4.14.1 - '@smithy/util-hex-encoding': 4.2.2 - tslib: 2.8.1 - - '@smithy/eventstream-serde-browser@4.2.14': - dependencies: - '@smithy/eventstream-serde-universal': 4.2.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/eventstream-serde-config-resolver@4.3.14': - dependencies: - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/eventstream-serde-node@4.2.14': - dependencies: - '@smithy/eventstream-serde-universal': 4.2.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/eventstream-serde-universal@4.2.14': + '@smithy/core@3.36.0': dependencies: - '@smithy/eventstream-codec': 4.2.14 - '@smithy/types': 4.14.1 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@smithy/fetch-http-handler@5.3.17': + '@smithy/credential-provider-imds@4.5.2': dependencies: - '@smithy/protocol-http': 5.3.14 - '@smithy/querystring-builder': 4.2.14 - '@smithy/types': 4.14.1 - '@smithy/util-base64': 4.3.2 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@smithy/hash-node@4.2.14': + '@smithy/fetch-http-handler@5.8.0': dependencies: - '@smithy/types': 4.14.1 - '@smithy/util-buffer-from': 4.2.2 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - - '@smithy/invalid-dependency@4.2.14': - dependencies: - '@smithy/types': 4.14.1 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 '@smithy/is-array-buffer@2.2.0': dependencies: tslib: 2.8.1 - '@smithy/is-array-buffer@4.2.2': - dependencies: - tslib: 2.8.1 - - '@smithy/middleware-content-length@4.2.14': - dependencies: - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/middleware-endpoint@4.4.32': - dependencies: - '@smithy/core': 3.23.17 - '@smithy/middleware-serde': 4.2.20 - '@smithy/node-config-provider': 4.3.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 - '@smithy/url-parser': 4.2.14 - '@smithy/util-middleware': 4.2.14 - tslib: 2.8.1 - - '@smithy/middleware-retry@4.5.7': - dependencies: - '@smithy/core': 3.23.17 - '@smithy/node-config-provider': 4.3.14 - '@smithy/protocol-http': 5.3.14 - '@smithy/service-error-classification': 4.3.1 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - '@smithy/util-middleware': 4.2.14 - '@smithy/util-retry': 4.3.8 - '@smithy/uuid': 1.1.2 - tslib: 2.8.1 - - '@smithy/middleware-serde@4.2.20': - dependencies: - '@smithy/core': 3.23.17 - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/middleware-stack@4.2.14': - dependencies: - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/node-config-provider@4.3.14': - dependencies: - '@smithy/property-provider': 4.2.14 - '@smithy/shared-ini-file-loader': 4.4.9 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/node-http-handler@4.6.1': + '@smithy/node-http-handler@4.12.1': dependencies: - '@smithy/protocol-http': 5.3.14 - '@smithy/querystring-builder': 4.2.14 - '@smithy/types': 4.14.1 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@smithy/property-provider@4.2.14': + '@smithy/node-http-handler@4.7.3': dependencies: - '@smithy/types': 4.14.1 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@smithy/protocol-http@5.3.14': + '@smithy/signature-v4@5.7.4': dependencies: - '@smithy/types': 4.14.1 + '@smithy/core': 3.36.0 + '@smithy/types': 4.19.0 tslib: 2.8.1 - '@smithy/querystring-builder@4.2.14': - dependencies: - '@smithy/types': 4.14.1 - '@smithy/util-uri-escape': 4.2.2 - tslib: 2.8.1 - - '@smithy/querystring-parser@4.2.14': - dependencies: - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/service-error-classification@4.3.1': - dependencies: - '@smithy/types': 4.14.1 - - '@smithy/shared-ini-file-loader@4.4.9': - dependencies: - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/signature-v4@5.3.14': - dependencies: - '@smithy/is-array-buffer': 4.2.2 - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 - '@smithy/util-hex-encoding': 4.2.2 - '@smithy/util-middleware': 4.2.14 - '@smithy/util-uri-escape': 4.2.2 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - - '@smithy/smithy-client@4.12.13': - dependencies: - '@smithy/core': 3.23.17 - '@smithy/middleware-endpoint': 4.4.32 - '@smithy/middleware-stack': 4.2.14 - '@smithy/protocol-http': 5.3.14 - '@smithy/types': 4.14.1 - '@smithy/util-stream': 4.5.25 - tslib: 2.8.1 - - '@smithy/types@4.14.1': - dependencies: - tslib: 2.8.1 - - '@smithy/url-parser@4.2.14': - dependencies: - '@smithy/querystring-parser': 4.2.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/util-base64@4.3.2': - dependencies: - '@smithy/util-buffer-from': 4.2.2 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - - '@smithy/util-body-length-browser@4.2.2': - dependencies: - tslib: 2.8.1 - - '@smithy/util-body-length-node@4.2.3': + '@smithy/types@4.19.0': dependencies: tslib: 2.8.1 @@ -7499,82 +6838,11 @@ snapshots: '@smithy/is-array-buffer': 2.2.0 tslib: 2.8.1 - '@smithy/util-buffer-from@4.2.2': - dependencies: - '@smithy/is-array-buffer': 4.2.2 - tslib: 2.8.1 - - '@smithy/util-config-provider@4.2.2': - dependencies: - tslib: 2.8.1 - - '@smithy/util-defaults-mode-browser@4.3.49': - dependencies: - '@smithy/property-provider': 4.2.14 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/util-defaults-mode-node@4.2.54': - dependencies: - '@smithy/config-resolver': 4.4.17 - '@smithy/credential-provider-imds': 4.2.14 - '@smithy/node-config-provider': 4.3.14 - '@smithy/property-provider': 4.2.14 - '@smithy/smithy-client': 4.12.13 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/util-endpoints@3.4.2': - dependencies: - '@smithy/node-config-provider': 4.3.14 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/util-hex-encoding@4.2.2': - dependencies: - tslib: 2.8.1 - - '@smithy/util-middleware@4.2.14': - dependencies: - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/util-retry@4.3.8': - dependencies: - '@smithy/service-error-classification': 4.3.1 - '@smithy/types': 4.14.1 - tslib: 2.8.1 - - '@smithy/util-stream@4.5.25': - dependencies: - '@smithy/fetch-http-handler': 5.3.17 - '@smithy/node-http-handler': 4.6.1 - '@smithy/types': 4.14.1 - '@smithy/util-base64': 4.3.2 - '@smithy/util-buffer-from': 4.2.2 - '@smithy/util-hex-encoding': 4.2.2 - '@smithy/util-utf8': 4.2.2 - tslib: 2.8.1 - - '@smithy/util-uri-escape@4.2.2': - dependencies: - tslib: 2.8.1 - '@smithy/util-utf8@2.3.0': dependencies: '@smithy/util-buffer-from': 2.2.0 tslib: 2.8.1 - '@smithy/util-utf8@4.2.2': - dependencies: - '@smithy/util-buffer-from': 4.2.2 - tslib: 2.8.1 - - '@smithy/uuid@1.1.2': - dependencies: - tslib: 2.8.1 - '@standard-schema/spec@1.1.0': {} '@szmarczak/http-timer@4.0.6': @@ -7682,15 +6950,6 @@ snapshots: dependencies: '@testing-library/dom': 10.4.1 - '@tokenizer/inflate@0.4.1': - dependencies: - debug: 4.4.3 - token-types: 6.1.2 - transitivePeerDependencies: - - supports-color - - '@tokenizer/token@0.3.0': {} - '@tootallnate/quickjs-emscripten@0.23.0': {} '@turbo/darwin-64@2.9.14': @@ -7792,8 +7051,6 @@ snapshots: '@types/mdurl@2.0.0': {} - '@types/mime-types@2.1.4': {} - '@types/ms@2.1.0': {} '@types/node@12.20.55': {} @@ -8087,8 +7344,6 @@ snapshots: ansi-styles@6.2.3: {} - any-promise@1.3.0: {} - app-builder-bin@5.0.0-alpha.12: {} app-builder-lib@26.15.3(dmg-builder@26.15.3(electron-builder-squirrel-windows@26.8.1))(electron-builder-squirrel-windows@26.8.1): @@ -8311,10 +7566,6 @@ snapshots: dependencies: balanced-match: 4.0.4 - brace-expansion@5.0.5: - dependencies: - balanced-match: 4.0.4 - braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -8471,15 +7722,6 @@ snapshots: dependencies: restore-cursor: 3.1.0 - cli-highlight@2.1.11: - dependencies: - chalk: 4.1.2 - highlight.js: 10.7.3 - mz: 2.7.0 - parse5: 5.1.1 - parse5-htmlparser2-tree-adapter: 6.0.1 - yargs: 16.2.2 - cli-spinners@2.9.2: {} cli-truncate@2.1.0: @@ -8488,12 +7730,6 @@ snapshots: string-width: 4.2.3 optional: true - cliui@7.0.4: - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - cliui@8.0.1: dependencies: string-width: 4.2.3 @@ -9002,17 +8238,6 @@ snapshots: fast-uri@3.1.8: {} - fast-xml-builder@1.1.5: - dependencies: - path-expression-matcher: 1.5.0 - - fast-xml-parser@5.7.2: - dependencies: - '@nodable/entities': 2.1.0 - fast-xml-builder: 1.1.5 - path-expression-matcher: 1.5.0 - strnum: 2.2.3 - fastq@1.20.3: dependencies: reusify: 1.1.0 @@ -9030,15 +8255,6 @@ snapshots: node-domexception: 1.0.0 web-streams-polyfill: 3.3.3 - file-type@21.3.4: - dependencies: - '@tokenizer/inflate': 0.4.1 - strtok3: 10.3.5 - token-types: 6.1.2 - uint8array-extras: 1.5.0 - transitivePeerDependencies: - - supports-color - filelist@1.0.6: dependencies: minimatch: 5.1.9 @@ -9151,7 +8367,7 @@ snapshots: get-caller-file@2.0.5: {} - get-east-asian-width@1.5.0: {} + get-east-asian-width@1.6.0: {} get-intrinsic@1.3.0: dependencies: @@ -9554,9 +8770,6 @@ snapshots: dependencies: json-buffer: 3.0.1 - koffi@2.16.1: - optional: true - lazy-val@1.0.5: {} lie@3.3.0: @@ -9728,7 +8941,7 @@ snapshots: markdown-table@3.0.4: {} - marked@15.0.12: {} + marked@18.0.5: {} matcher@3.0.0: dependencies: @@ -10090,16 +9303,10 @@ snapshots: mime-db@1.52.0: {} - mime-db@1.54.0: {} - mime-types@2.1.35: dependencies: mime-db: 1.52.0 - mime-types@3.0.2: - dependencies: - mime-db: 1.54.0 - mime@2.6.0: {} mimic-fn@2.1.0: {} @@ -10110,7 +9317,7 @@ snapshots: minimatch@10.2.5: dependencies: - brace-expansion: 5.0.5 + brace-expansion: 5.0.12 minimatch@10.2.6: dependencies: @@ -10176,12 +9383,6 @@ snapshots: ms@2.1.3: {} - mz@2.7.0: - dependencies: - any-promise: 1.3.0 - object-assign: 4.1.1 - thenify-all: 1.6.0 - nanoid@3.3.19: {} nanoid@3.3.20: {} @@ -10255,8 +9456,6 @@ snapshots: normalize-url@6.1.0: {} - object-assign@4.1.1: {} - object-keys@1.1.1: optional: true @@ -10360,14 +9559,6 @@ snapshots: is-decimal: 2.0.1 is-hexadecimal: 2.0.1 - parse5-htmlparser2-tree-adapter@6.0.1: - dependencies: - parse5: 6.0.1 - - parse5@5.1.1: {} - - parse5@6.0.1: {} - parse5@8.0.1: dependencies: entities: 8.1.0 @@ -10376,8 +9567,6 @@ snapshots: path-exists@4.0.0: {} - path-expression-matcher@1.5.0: {} - path-is-absolute@1.0.1: {} path-key@3.1.1: {} @@ -10792,6 +9981,8 @@ snapshots: semver@7.7.4: {} + semver@7.8.0: {} + semver@7.8.5: {} serialize-error@7.0.1: @@ -10931,12 +10122,6 @@ snapshots: strip-bom@3.0.0: {} - strnum@2.2.3: {} - - strtok3@10.3.5: - dependencies: - '@tokenizer/token': 0.3.0 - style-to-js@1.1.21: dependencies: style-to-object: 1.0.14 @@ -11029,14 +10214,6 @@ snapshots: transitivePeerDependencies: - react-native-b4a - thenify-all@1.6.0: - dependencies: - thenify: 3.3.1 - - thenify@3.3.1: - dependencies: - any-promise: 1.3.0 - tiny-async-pool@1.3.0: dependencies: semver: 5.7.2 @@ -11064,12 +10241,6 @@ snapshots: dependencies: is-number: 7.0.0 - token-types@6.1.2: - dependencies: - '@borewit/text-codec': 0.2.2 - '@tokenizer/token': 0.3.0 - ieee754: 1.2.1 - trim-lines@3.0.1: {} trough@2.2.0: {} @@ -11100,14 +10271,12 @@ snapshots: type-fest@0.13.1: optional: true - typebox@1.1.37: {} + typebox@1.1.38: {} typed-query-selector@2.12.2: {} typescript@6.0.3: {} - uint8array-extras@1.5.0: {} - undici-types@6.21.0: {} undici-types@7.24.6: {} @@ -11119,6 +10288,8 @@ snapshots: undici@7.29.1: {} + undici@8.10.2: {} + unified@11.0.5: dependencies: '@types/unist': 3.0.3 @@ -11190,8 +10361,6 @@ snapshots: util-deprecate@1.0.2: {} - uuid@14.0.0: {} - verror@1.10.1: dependencies: assert-plus: 1.0.0 @@ -11323,7 +10492,7 @@ snapshots: - universal-cookie - yaml - vitest@4.1.12(@types/node@22.20.5)(happy-dom@20.9.0)(vite@7.3.6(@types/node@22.20.5)(jiti@2.7.0)(lightningcss@1.33.0)(tsx@4.22.3)(yaml@2.9.0)): + vitest@4.1.12(@opentelemetry/api@1.9.0)(@types/node@22.20.5)(happy-dom@20.9.0)(vite@7.3.6(@types/node@22.20.5)(jiti@2.7.0)(lightningcss@1.33.0)(tsx@4.22.3)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.12 '@vitest/mocker': 4.1.12(vite@7.3.6(@types/node@22.20.5)(jiti@2.7.0)(lightningcss@1.33.0)(tsx@4.22.3)(yaml@2.9.0)) @@ -11346,12 +10515,13 @@ snapshots: vite: 7.3.6(@types/node@22.20.5)(jiti@2.7.0)(lightningcss@1.33.0)(tsx@4.22.3)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: + '@opentelemetry/api': 1.9.0 '@types/node': 22.20.5 happy-dom: 20.9.0 transitivePeerDependencies: - msw - vitest@4.1.12(@types/node@22.20.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@22.20.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)): + vitest@4.1.12(@opentelemetry/api@1.9.0)(@types/node@22.20.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@22.20.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.12 '@vitest/mocker': 4.1.12(vite@8.0.10(@types/node@22.20.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) @@ -11374,12 +10544,13 @@ snapshots: vite: 8.0.10(@types/node@22.20.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: + '@opentelemetry/api': 1.9.0 '@types/node': 22.20.5 happy-dom: 20.9.0 transitivePeerDependencies: - msw - vitest@4.1.12(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)): + vitest@4.1.12(@opentelemetry/api@1.9.0)(@types/node@26.6.5)(happy-dom@20.9.0)(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.12 '@vitest/mocker': 4.1.12(vite@8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0)) @@ -11402,6 +10573,7 @@ snapshots: vite: 8.0.10(@types/node@26.6.5)(esbuild@0.28.2)(jiti@2.7.0)(tsx@4.22.3)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: + '@opentelemetry/api': 1.9.0 '@types/node': 26.6.5 happy-dom: 20.9.0 transitivePeerDependencies: @@ -11482,20 +10654,8 @@ snapshots: yaml@2.9.0: {} - yargs-parser@20.2.9: {} - yargs-parser@21.1.1: {} - yargs@16.2.2: - dependencies: - cliui: 7.0.4 - escalade: 3.2.0 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 20.2.9 - yargs@17.7.3: dependencies: cliui: 8.0.1 diff --git a/renovate.json b/renovate.json index d4868debe..cddfd0b0b 100644 --- a/renovate.json +++ b/renovate.json @@ -15,7 +15,7 @@ "automerge": false }, { - "matchPackageNames": ["@mariozechner/pi-ai", "@mariozechner/pi-coding-agent"], + "matchPackageNames": ["@earendil-works/pi-ai", "@earendil-works/pi-coding-agent"], "groupName": "pi-ai", "schedule": ["before 5am on monday"] }, diff --git a/website/architecture.md b/website/architecture.md index 417ea23be..49f56caa0 100644 --- a/website/architecture.md +++ b/website/architecture.md @@ -35,7 +35,7 @@ A bird's-eye view. Detailed module READMEs live in each `packages/*/README.md`. |---|---| | `apps/desktop` | Electron shell — main process owns disk, workspace files, JSONL sessions, IPC, and desktop integration. Renderer hosts React UI. No provider SDK logic here. | | `packages/core` | Generation orchestration. Prompt + design system + history → providers → artifact stream → events. | -| `packages/providers` | Wraps `@mariozechner/pi-ai` and adds the missing capabilities. App code never imports a provider SDK directly. | +| `packages/providers` | Wraps `@earendil-works/pi-ai` and adds the missing capabilities. App code never imports a provider SDK directly. | | `packages/runtime` | Sandbox preview. Iframe `srcdoc` + esbuild-wasm + import maps + overlay scripts for inline comments and sliders. | | `packages/ui` | Design tokens (CSS variables) + Radix-based primitives + Tailwind preset. | | `packages/artifacts` | Zod schemas for HTML / SVG / slide deck / asset bundle + `` streaming parser. | From c715f5b5b6137730e52c16e846918185f58dbcc7 Mon Sep 17 00:00:00 2001 From: Sun-sunshine06 Date: Tue, 20 Oct 2026 18:09:52 +0800 Subject: [PATCH 3/8] fix(core): complete controlled halts with maintained pi event semantics Signed-off-by: Sun-sunshine06 --- .../core/src/agent.native-lifecycle.test.ts | 20 +++++++- packages/core/src/agent.ts | 46 ++++++++++++++----- 2 files changed, 54 insertions(+), 12 deletions(-) diff --git a/packages/core/src/agent.native-lifecycle.test.ts b/packages/core/src/agent.native-lifecycle.test.ts index 6ce0343d2..9c603f1d3 100644 --- a/packages/core/src/agent.native-lifecycle.test.ts +++ b/packages/core/src/agent.native-lifecycle.test.ts @@ -3,7 +3,7 @@ import { tmpdir } from 'node:os'; import { join } from 'node:path'; import type { Agent, AgentMessage, AgentOptions, StreamFn } from '@earendil-works/pi-agent-core'; import { type AssistantMessage, createAssistantMessageEventStream } from '@earendil-works/pi-ai'; -import type { ActiveRunMessageV1 } from '@open-codesign/shared'; +import { type ActiveRunMessageV1, CodesignError, ERROR_CODES } from '@open-codesign/shared'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { ActiveRunMessages } from './active-messages'; import { generateViaAgent } from './agent'; @@ -491,6 +491,24 @@ describe('production generateViaAgent with installed pi', () => { native.agents[0]?.state.messages.filter((message) => message.role === 'user'), ).toHaveLength(1); }); + it('propagates an unrelated observer failure without treating it as a controlled halt', async () => { + seed(); + const failure = new CodesignError('Observer failed', ERROR_CODES.GENERATION_INCOMPLETE); + const onComplete = vi.fn(); + script([[todos()], 'Must not continue']); + await expect( + generateViaAgent(input, { + fs, + onComplete, + onEvent: (event) => { + if (event.type === 'turn_end') throw failure; + }, + }), + ).rejects.toBe(failure); + expect(native.stream).toHaveBeenCalledOnce(); + expect(onComplete).not.toHaveBeenCalled(); + }); + describe('repeated tool calls', () => { // Only the repeated call reads this file, so its view count is the number of executions. const PROBE = 'probe.txt'; diff --git a/packages/core/src/agent.ts b/packages/core/src/agent.ts index 8e351893d..f3dc0c916 100644 --- a/packages/core/src/agent.ts +++ b/packages/core/src/agent.ts @@ -1331,6 +1331,18 @@ async function generateViaAgentInternal( // original lets the post-agent branch rethrow it as-is, so the renderer // sees the same code the initial IPC-level resolution would emit. let capturedGetApiKeyError: unknown = null; + let turnBoundaryHalt: CodesignError | null = null; + const agentsWithEndEvent = new WeakSet(); + const forwardAgentEvent = (event: AgentEvent): void => { + deps.activeMessages?.handleEvent(event, () => { + resourceState.lastDone = null; + runProtocolState.todosSet = false; + lastDoneDetails = undefined; + doneProgress.errorRounds = 0; + toolLoopGuard.reset(); + }); + deps.onEvent?.(event); + }; const requestTimeoutMs = input.requestTimeoutMs; // Factory for creating agents with a given message history. Used for both @@ -1409,26 +1421,25 @@ async function generateViaAgentInternal( : {}), }); retryAgent.subscribe((event) => { - deps.activeMessages?.handleEvent(event, () => { - resourceState.lastDone = null; - runProtocolState.todosSet = false; - lastDoneDetails = undefined; - doneProgress.errorRounds = 0; - toolLoopGuard.reset(); - }); - deps.onEvent?.(event); + if (event.type === 'agent_end') agentsWithEndEvent.add(retryAgent); + forwardAgentEvent(event); if (event.type === 'turn_end') { assertNotCancelled(); // Agent does not expose the low-level shouldStopAfterTurn hook. Fail the // settled batch at its native event boundary, before pi drains queues. if (repairLimitReached()) { - throw new CodesignError('Done repair limit reached', ERROR_CODES.GENERATION_INCOMPLETE); + turnBoundaryHalt = new CodesignError( + 'Done repair limit reached', + ERROR_CODES.GENERATION_INCOMPLETE, + ); + throw turnBoundaryHalt; } if (toolLoop.halt !== null) { - throw new CodesignError( + turnBoundaryHalt = new CodesignError( formatToolLoopIncomplete(toolLoop.halt), ERROR_CODES.GENERATION_INCOMPLETE, ); + throw turnBoundaryHalt; } } }); @@ -1454,10 +1465,23 @@ async function generateViaAgentInternal( const target = agent; const abort = () => target.abort(); input.signal?.addEventListener('abort', abort, { once: true }); + let controlledHalt = false; try { assertNotCancelled(); - await run(); + try { + await run(); + } catch (err) { + // pi now propagates listener exceptions. Our own turn-boundary halt + // still needs transcript completion before the normal incomplete result. + if (err !== turnBoundaryHalt) throw err; + controlledHalt = true; + } await target.waitForIdle(); + if (controlledHalt && !agentsWithEndEvent.has(target)) { + // The subscriber exception also bypasses pi's native agent_end event. + agentsWithEndEvent.add(target); + forwardAgentEvent({ type: 'agent_end', messages: target.state.messages }); + } assertNotCancelled(); } finally { input.signal?.removeEventListener('abort', abort); From 483cbc4767643b401985eaeaf0e67103ca251c7e Mon Sep 17 00:00:00 2001 From: Sun-sunshine06 Date: Tue, 20 Oct 2026 19:10:37 +0800 Subject: [PATCH 4/8] fix(core): distinguish null observer failures from controlled halts Signed-off-by: Sun-sunshine06 --- .../core/src/agent.native-lifecycle.test.ts | 28 +++++++++++-------- packages/core/src/agent.ts | 2 +- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/packages/core/src/agent.native-lifecycle.test.ts b/packages/core/src/agent.native-lifecycle.test.ts index 9c603f1d3..d8903fe9f 100644 --- a/packages/core/src/agent.native-lifecycle.test.ts +++ b/packages/core/src/agent.native-lifecycle.test.ts @@ -491,22 +491,28 @@ describe('production generateViaAgent with installed pi', () => { native.agents[0]?.state.messages.filter((message) => message.role === 'user'), ).toHaveLength(1); }); - it('propagates an unrelated observer failure without treating it as a controlled halt', async () => { + it.each([ + new CodesignError('Observer failed', ERROR_CODES.GENERATION_INCOMPLETE), + null, + undefined, + ])('propagates unrelated observer failure %s without treating it as a controlled halt', async (failure) => { seed(); - const failure = new CodesignError('Observer failed', ERROR_CODES.GENERATION_INCOMPLETE); const onComplete = vi.fn(); + const ended: AgentEvent[] = []; script([[todos()], 'Must not continue']); - await expect( - generateViaAgent(input, { - fs, - onComplete, - onEvent: (event) => { - if (event.type === 'turn_end') throw failure; - }, - }), - ).rejects.toBe(failure); + const running = generateViaAgent(input, { + fs, + onComplete, + onEvent: (event) => { + if (event.type === 'agent_end') ended.push(event); + if (event.type === 'turn_end') throw failure; + }, + }); + if (failure instanceof Error) await expect(running).rejects.toBe(failure); + else await expect(running).rejects.toThrow(String(failure)); expect(native.stream).toHaveBeenCalledOnce(); expect(onComplete).not.toHaveBeenCalled(); + expect(ended).toHaveLength(0); }); describe('repeated tool calls', () => { diff --git a/packages/core/src/agent.ts b/packages/core/src/agent.ts index f3dc0c916..4fb3e4355 100644 --- a/packages/core/src/agent.ts +++ b/packages/core/src/agent.ts @@ -1473,7 +1473,7 @@ async function generateViaAgentInternal( } catch (err) { // pi now propagates listener exceptions. Our own turn-boundary halt // still needs transcript completion before the normal incomplete result. - if (err !== turnBoundaryHalt) throw err; + if (turnBoundaryHalt === null || err !== turnBoundaryHalt) throw err; controlledHalt = true; } await target.waitForIdle(); From 798c0a9aacdd60e0e520e517241ee899ab449a6a Mon Sep 17 00:00:00 2001 From: Sun-sunshine06 Date: Tue, 20 Oct 2026 19:13:57 +0800 Subject: [PATCH 5/8] test(core): import observer event type Signed-off-by: Sun-sunshine06 --- packages/core/src/agent.native-lifecycle.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/core/src/agent.native-lifecycle.test.ts b/packages/core/src/agent.native-lifecycle.test.ts index d8903fe9f..97ce12eec 100644 --- a/packages/core/src/agent.native-lifecycle.test.ts +++ b/packages/core/src/agent.native-lifecycle.test.ts @@ -7,7 +7,7 @@ import { type ActiveRunMessageV1, CodesignError, ERROR_CODES } from '@open-codes import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { ActiveRunMessages } from './active-messages'; import { generateViaAgent } from './agent'; -import type { GenerateInput } from './index'; +import type { AgentEvent, GenerateInput } from './index'; import type { AskResult } from './tools/ask'; import type { DoneDetails } from './tools/done'; import type { RunPreviewFn } from './tools/preview'; From 6e2609d8034965adec6b1d0ce42739d115705a2f Mon Sep 17 00:00:00 2001 From: Sun-sunshine06 Date: Tue, 20 Oct 2026 19:43:08 +0800 Subject: [PATCH 6/8] fix(deps): align bundled pi and desktop HTTP runtimes Signed-off-by: Sun-sunshine06 --- .changeset/align-pi-packages.md | 2 +- apps/desktop/package.json | 2 +- apps/desktop/src/main/undici-runtime.test.ts | 53 ++++++++++++++++++++ pnpm-lock.yaml | 7 +-- 4 files changed, 59 insertions(+), 5 deletions(-) create mode 100644 apps/desktop/src/main/undici-runtime.test.ts diff --git a/.changeset/align-pi-packages.md b/.changeset/align-pi-packages.md index c90f6463e..11e1a4e5f 100644 --- a/.changeset/align-pi-packages.md +++ b/.changeset/align-pi-packages.md @@ -4,4 +4,4 @@ "@open-codesign/desktop": patch --- -Migrate the pi agent, model, and coding-agent packages together to the maintained namespace and version 0.79.0, which fixes extension loading, credential-file, and HTML-export security issues. Require a fixed Undici 8.x release and Node.js 22.19.0 or newer. +Migrate the pi agent, model, and coding-agent packages together to the maintained 0.79.x releases (at least 0.79.0), which fix extension loading, credential-file, and HTML-export security issues. Align the application's HTTP runtime with pi's fixed Undici 8.10.2 release and require Node.js 22.19.0 or newer. diff --git a/apps/desktop/package.json b/apps/desktop/package.json index 5b997200b..87ba27d2b 100644 --- a/apps/desktop/package.json +++ b/apps/desktop/package.json @@ -25,7 +25,7 @@ "ms": "2.1.3", "parse5": "8.0.1", "puppeteer-core": "^24.42.0", - "undici": "^7.29.1" + "undici": "8.10.2" }, "devDependencies": { "@earendil-works/pi-agent-core": "^0.79.0", diff --git a/apps/desktop/src/main/undici-runtime.test.ts b/apps/desktop/src/main/undici-runtime.test.ts new file mode 100644 index 000000000..ff7d22325 --- /dev/null +++ b/apps/desktop/src/main/undici-runtime.test.ts @@ -0,0 +1,53 @@ +import { readFileSync, realpathSync } from 'node:fs'; +import { createServer } from 'node:http'; +import { createRequire } from 'node:module'; +import { getGlobalDispatcher } from 'undici'; +import { describe, expect, it, vi } from 'vitest'; +import { withTlsBypass } from './tls-override'; + +vi.mock('./logger', () => ({ + getLogger: () => ({ warn: vi.fn(), error: vi.fn() }), +})); + +describe('bundled pi HTTP runtime', () => { + it('uses the same installed Undici version as the application external', () => { + const appRequire = createRequire(import.meta.url); + const piRequire = createRequire( + realpathSync( + new URL('../../node_modules/@earendil-works/pi-coding-agent/package.json', import.meta.url), + ), + ); + const version = (from: ReturnType): string => { + const metadata = JSON.parse(readFileSync(from.resolve('undici/package.json'), 'utf8')) as { + version: string; + }; + return metadata.version; + }; + + // electron-vite resolves bundled pi's external production dependencies + // from the app. Checking the nested install alone misses a runtime mismatch. + expect(version(appRequire)).toBe(version(piRequire)); + }); + + it('bridges the app dispatcher to native fetch and restores it after a request', async () => { + const server = createServer((_request, response) => response.end('runtime-ok')); + await new Promise((resolve) => server.listen(0, '127.0.0.1', resolve)); + const original = getGlobalDispatcher(); + try { + const address = server.address(); + if (address === null || typeof address === 'string') throw new Error('Missing test port'); + const text = await withTlsBypass(true, async () => { + expect(getGlobalDispatcher()).not.toBe(original); + const response = await fetch(`http://127.0.0.1:${address.port}/`); + return response.text(); + }); + expect(text).toBe('runtime-ok'); + expect(getGlobalDispatcher()).toBe(original); + } finally { + server.closeAllConnections(); + await new Promise((resolve, reject) => { + server.close((error) => (error ? reject(error) : resolve())); + }); + } + }); +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5b9beeb95..fbef9d274 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -73,8 +73,8 @@ importers: specifier: ^24.42.0 version: 24.42.0 undici: - specifier: ^7.29.1 - version: 7.29.1 + specifier: 8.10.2 + version: 8.10.2 devDependencies: '@earendil-works/pi-agent-core': specifier: ^0.79.0 @@ -10286,7 +10286,8 @@ snapshots: undici@6.29.1: {} - undici@7.29.1: {} + undici@7.29.1: + optional: true undici@8.10.2: {} From 9721362583015ef2a998f2c763fcca608cfbba71 Mon Sep 17 00:00:00 2001 From: Sun-sunshine06 Date: Tue, 10 Nov 2026 14:25:37 +0800 Subject: [PATCH 7/8] test: assert retained source validation evidence --- .../components/SourceEditPanel.browser.test.ts | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/apps/desktop/src/renderer/src/components/SourceEditPanel.browser.test.ts b/apps/desktop/src/renderer/src/components/SourceEditPanel.browser.test.ts index 8165036d7..5f87a853c 100644 --- a/apps/desktop/src/renderer/src/components/SourceEditPanel.browser.test.ts +++ b/apps/desktop/src/renderer/src/components/SourceEditPanel.browser.test.ts @@ -1086,10 +1086,21 @@ describe('full FilesTab source edit browser + real IPC handlers over HTTP', () = }); // Hold across the overlay's 200 ms refresh to expose pre-submit mutation races. await saveText('Stable text', 'Must not save', 300); + // Selection refresh can replace the transient save message. Check retained + // validation evidence and the disabled control instead. + await expect.poll(validationReplies).toContainEqual( + expect.objectContaining({ + fieldStates: expect.arrayContaining([expect.objectContaining({ status: 'changed' })]), + }), + ); await page.waitForFunction(() => - document.querySelector('aside[aria-busy]')?.textContent?.includes('could not be verified'), + document + .querySelector('[aria-label="Save source definition: Text 1"]') + ?.hasAttribute('disabled'), + ); + expect(await page.$eval('aside[aria-busy]', (node) => node.textContent)).toContain( + 'changed from its source', ); - expect((await validationReplies()).length).toBeGreaterThan(0); expect(records.filter((record) => record.method === 'apply')).toHaveLength(0); expect(await disk()).toBe(previewOnlyFixture); await assertPreviewText('#between', 'Runtime changed'); From 848b50bbb753d9559bd29e876432a1d2d89f50ca Mon Sep 17 00:00:00 2001 From: Sun-sunshine06 Date: Tue, 10 Nov 2026 14:42:37 +0800 Subject: [PATCH 8/8] fix(deps): retain Undici 7 security floor for build tools --- package.json | 1 + pnpm-lock.yaml | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 87583bdb1..83d0f5570 100644 --- a/package.json +++ b/package.json @@ -40,6 +40,7 @@ "@xmldom/xmldom@<0.8.15": "0.8.15", "pptxgenjs@4.0.1>image-size": "-", "undici@>=8.0.0 <8.12.4": "8.12.4", + "undici@>=7.0.0 <7.30.1": "7.30.1", "fast-xml-parser@<5.7.0": ">=5.7.0", "vitepress>vite": "6.4.2", "esbuild@<0.25.0": ">=0.25.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 769866ae6..0095deeea 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,7 @@ overrides: '@xmldom/xmldom@<0.8.15': 0.8.15 pptxgenjs@4.0.1>image-size: '-' undici@>=8.0.0 <8.12.4: 8.12.4 + undici@>=7.0.0 <7.30.1: 7.30.1 fast-xml-parser@<5.7.0: '>=5.7.0' vitepress>vite: 6.4.2 esbuild@<0.25.0: '>=0.25.0' @@ -4877,8 +4878,8 @@ packages: resolution: {integrity: sha512-EvRlUt/QqAEvXdQeRMYUfwOQsfzpDztykrG2owGEE/rBOBoYv9uF39ZzsNDh4lTFHhTr2XOZjKkYgueD12ZmGA==} engines: {node: '>=18.17'} - undici@7.29.1: - resolution: {integrity: sha512-RYONW2MeafgYlkVOKYKkA/Ag7BmXqgIWCa8t1m0JcxrQg9pI9lEqRhAOruOBCbAohOa/gkCF+iPi9hrgvTzu6Q==} + undici@7.30.1: + resolution: {integrity: sha512-03KrMbjIFDWQR5RNPrSw3bd1r12JpyFQl9/yxjUbJtqkjmllqC5lFjZh6ujeuJCKr8EOQvRW872Oy/az+nLYxg==} engines: {node: '>=20.18.1'} undici@8.12.4: @@ -6074,7 +6075,7 @@ snapshots: semver: 7.8.5 sumchecker: 3.0.1 optionalDependencies: - undici: 7.29.1 + undici: 7.30.1 transitivePeerDependencies: - supports-color @@ -10324,7 +10325,7 @@ snapshots: undici@6.29.1: {} - undici@7.29.1: + undici@7.30.1: optional: true undici@8.12.4: {}