@fased/fased 0.1.67 → 0.1.69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/README.md +20 -22
- package/config/sat-runtime.env +6 -2
- package/config/signer-protocol-v2.json +10 -0
- package/dist/agents/tools/wallet-action-tool.js +2 -0
- package/dist/agents/tools/wallet-tool.js +5 -3
- package/dist/brand.js +1 -1
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/cli/program/register.wallet.js +119 -5
- package/dist/commands/wallet.js +1286 -74
- package/dist/config/sat-runtime-ids.js +6 -1
- package/dist/control-ui/assets/{app-De8gTtZU.js → app-BLFLoFPk.js} +1526 -1526
- package/dist/control-ui/assets/{federation-DgA9e-Pn.js → federation-SGMAnM_8.js} +2 -2
- package/dist/control-ui/assets/{index-DYYBRBOS.js → index-S88kp5ZQ.js} +3 -3
- package/dist/control-ui/assets/{mining-Dg-3ll0F.js → mining-ClI8RW4u.js} +2 -2
- package/dist/control-ui/assets/{wallet-DvStR_AT.js → wallet-CRIhDQbW.js} +325 -156
- package/dist/control-ui/index.html +1 -1
- package/dist/control-ui/version.json +1 -1
- package/dist/gateway/server-http.js +394 -55
- package/dist/mining/mainnet-sync.js +67 -5
- package/dist/operator/operator-readiness.js +1 -1
- package/dist/plugin-sdk/{actions-DRu135h0.js → actions-B-Vwj64K.js} +3 -3
- package/dist/plugin-sdk/{allow-list-DyAxs4yw.js → allow-list-Bf45HfoP.js} +1 -1
- package/dist/plugin-sdk/{audio-preflight-Dq_rJtqH.js → audio-preflight-CS7Q_7-R.js} +26 -25
- package/dist/plugin-sdk/{audit-C5d2z5U1.js → audit-CUULWG22.js} +1 -1
- package/dist/plugin-sdk/{channel-access-configure-DaI5wevh.js → channel-access-configure-BoUsC-Ys.js} +1 -1
- package/dist/plugin-sdk/{channel-adapters.discord-BS4S4Svh.js → channel-adapters.discord-DSiR4X2Y.js} +1 -1
- package/dist/plugin-sdk/channel-plugin-common.d.ts +2 -2
- package/dist/plugin-sdk/channel-plugin-common.js +1 -1
- package/dist/plugin-sdk/{chunk-CyoyqpbG.js → chunk-CBpl-AiQ.js} +1 -1
- package/dist/plugin-sdk/{chunk-items-Dunoq4Er.js → chunk-items-BLBZNORg.js} +1 -1
- package/dist/plugin-sdk/command-status.js +26 -25
- package/dist/plugin-sdk/{commands-registry-BfqdEWdF.js → commands-registry-G5KXSi_y.js} +1 -1
- package/dist/plugin-sdk/{config-schema--vl89M7d.js → config-schema-BiBOUW89.js} +431 -125
- package/dist/plugin-sdk/device-pair.d.ts +1 -1
- package/dist/plugin-sdk/{diagnostic-DLL_zekv.js → diagnostic-sYs6Agr-.js} +1 -1
- package/dist/plugin-sdk/{directory-live-CSuYxdwk.js → directory-live-BXMpuYAF.js} +1 -1
- package/dist/plugin-sdk/{directory-live-Dw7ZgC9_.js → directory-live-Rn1BzPof.js} +1 -1
- package/dist/plugin-sdk/discord.d.ts +4 -4
- package/dist/plugin-sdk/discord.js +20 -20
- package/dist/plugin-sdk/{draft-stream-controls-BqchW1vi.js → draft-stream-controls-CMNdKSx-.js} +1 -1
- package/dist/plugin-sdk/{guilds-CDhRIX57.js → guilds-Dkwl0yHv.js} +1 -1
- package/dist/plugin-sdk/{handle-action-hvwapMKg.js → handle-action-CRdM6B-8.js} +15 -15
- package/dist/plugin-sdk/index.d.ts +15 -15
- package/dist/plugin-sdk/index.js +28 -27
- package/dist/plugin-sdk/{login-Ca583Okc.js → login-D7WnK8-P.js} +1 -1
- package/dist/plugin-sdk/{login-qr-CGciBSNP.js → login-qr-CRueOKZK.js} +2 -114
- package/dist/plugin-sdk/{markdown-tables-DCOXEUfZ.js → markdown-tables-d7GlUs5R.js} +1 -1
- package/dist/plugin-sdk/{media-CAdQF5TG.js → media-BAoaxCrt.js} +1 -1
- package/dist/plugin-sdk/{monitor-DrTy_4CL.js → monitor-WXdn4mR-.js} +34 -33
- package/dist/plugin-sdk/{monitor-CV1sr0p2.js → monitor-xzVAPbg2.js} +44 -43
- package/dist/plugin-sdk/{openresponses-http-BAjgURZa.js → openresponses-http-DnI1LFgq.js} +26 -25
- package/dist/plugin-sdk/{outbound-attachment-QqTnIhZL.js → outbound-attachment-CyXM3cAv.js} +1 -1
- package/dist/plugin-sdk/{outbound-BgVDdHxx.js → outbound-zB6llMGW.js} +6 -6
- package/dist/plugin-sdk/{pairing-message-BjIJYVvp.d.ts → pairing-message-CiTcdD6m.d.ts} +1 -1
- package/dist/plugin-sdk/{pairing-store-BChahgI2.js → pairing-store-B6J2C0vP.js} +1 -1
- package/dist/plugin-sdk/{pi-model-discovery-runtime-DxTMz_XF.js → pi-model-discovery-runtime-6JzLw9Gk.js} +1 -1
- package/dist/plugin-sdk/{probe-CJb5uR8B.js → probe-BM7Oe40M.js} +2 -2
- package/dist/plugin-sdk/{probe-l_whvGLY.js → probe-CMPksimh.js} +1 -1
- package/dist/plugin-sdk/{probe-BFroeK3g.js → probe-oVp12D6L.js} +1 -1
- package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +1 -1
- package/dist/plugin-sdk/{pw-ai-DlxqX6Es.js → pw-ai-DZYLDC-S.js} +1 -1
- package/dist/plugin-sdk/qr-image-B4MlMG4N.js +115 -0
- package/dist/plugin-sdk/{replies-ChYo5ZQM.js → replies-CY-V0Zob.js} +3 -3
- package/dist/plugin-sdk/{resolve-channels-87LZrFk_.js → resolve-channels-1HtDcMqh.js} +2 -2
- package/dist/plugin-sdk/{resolve-channels-_-nV-EK2.js → resolve-channels-CU72Qh2j.js} +1 -1
- package/dist/plugin-sdk/{resolve-outbound-target-D-KGgHJZ.js → resolve-outbound-target-nQSBVYz9.js} +2 -2
- package/dist/plugin-sdk/{resolve-route-C8tvQm8Z.js → resolve-route-Dufnu2cT.js} +1 -1
- package/dist/plugin-sdk/{resolve-users-DN9VQBwv.js → resolve-users-Bk_ss2vC.js} +1 -1
- package/dist/plugin-sdk/{resolve-users-V6dHh_2B.js → resolve-users-IevCOk4W.js} +2 -2
- package/dist/plugin-sdk/{runtime-2B9_WKoI.js → runtime-CXSQwMaR.js} +1 -1
- package/dist/plugin-sdk/{runtime-dependency-nup8niQL.js → runtime-dependency-DczkvPxn.js} +9 -9
- package/dist/plugin-sdk/sat-runtime.d.ts +105 -10
- package/dist/plugin-sdk/sat-runtime.js +26 -25
- package/dist/plugin-sdk/{send-DCO441U7.js → send-BXBS_mRK.js} +8 -8
- package/dist/plugin-sdk/{send-CFzGKJXo.js → send-D-HfKQZm.js} +4 -4
- package/dist/plugin-sdk/{send-B6KkGKZD.js → send-D1j12ZgX.js} +5 -5
- package/dist/plugin-sdk/{send-q9HXrSwK.js → send-DWKm6yay.js} +10 -10
- package/dist/plugin-sdk/{send-gDoGA-7e.js → send-Di1Jit3L.js} +7 -7
- package/dist/plugin-sdk/{skill-commands-FKEPLS7T.js → skill-commands-iJtvpqgb.js} +2 -2
- package/dist/plugin-sdk/{slack-DSC6T2KW.js → slack-CkIRVDUK.js} +45 -44
- package/dist/plugin-sdk/{slack-actions-DhbMcp8M.js → slack-actions-BzUEszJa.js} +10 -10
- package/dist/plugin-sdk/slack.d.ts +4 -4
- package/dist/plugin-sdk/slack.js +6 -6
- package/dist/plugin-sdk/{sticker-cache-C0l_5IKg.js → sticker-cache-Dpap5ce_.js} +2 -2
- package/dist/plugin-sdk/{tables-B3jr0Pvq.js → tables-_1W36GII.js} +2 -2
- package/dist/plugin-sdk/{targets-CtSbTxYX.js → targets-DDbNnLnB.js} +2 -2
- package/dist/plugin-sdk/{telegram-actions-BwGBIVDE.js → telegram-actions-Cewdga8H.js} +30 -29
- package/dist/plugin-sdk/telegram.d.ts +4 -4
- package/dist/plugin-sdk/telegram.js +3 -3
- package/dist/plugin-sdk/{thread-bindings.lifecycle-QbkNl-m6.js → thread-bindings.lifecycle-Y9T3CQGf.js} +3 -3
- package/dist/plugin-sdk/{thread-bindings.state-D9hg_M1c.js → thread-bindings.state-D2oOWDpv.js} +1 -1
- package/dist/plugin-sdk/{tmp-fased-dir-DXnGKKgi.d.ts → tmp-fased-dir-BSEHc8MQ.d.ts} +8 -2
- package/dist/plugin-sdk/{types-eG9aYqXF.d.ts → types-BakzIzGN.d.ts} +1 -1
- package/dist/plugin-sdk/{types-Cegc86EP.d.ts → types-CzF0YQqK.d.ts} +3 -3
- package/dist/plugin-sdk/{web-C_AH5PyB.js → web-DGWi7i3B.js} +33 -32
- package/dist/plugin-sdk/{whatsapp-actions-Bj_rOncr.js → whatsapp-actions-Blu9-eX-.js} +9 -9
- package/dist/plugin-sdk/{whatsapp-heartbeat-B1WHkJIg.js → whatsapp-heartbeat-DjmQM7hq.js} +2 -2
- package/dist/plugin-sdk/whatsapp.d.ts +9 -9
- package/dist/plugin-sdk/whatsapp.js +7 -7
- package/dist/plugin-sdk/{wsl-J-HscWxS.js → wsl-CTvIWvZz.js} +1 -1
- package/dist/plugin-sdk/{zod-schema.providers-core-FaYR6KdD.d.ts → zod-schema.providers-core-CIzCjXH9.d.ts} +61 -61
- package/dist/wallet/local-socket-signer-lifecycle.js +107 -3
- package/dist/wallet/local-socket-signer-protocol.js +97 -10
- package/dist/wallet/mining-wallet-retirement.js +256 -0
- package/dist/wallet/providers/local-socket-signer-adapter.js +10 -0
- package/dist/wallet/signer-network-admin.js +11 -118
- package/dist/wallet/signer-protocol-v2.generated.js +10 -0
- package/dist/wallet/solana-assets.js +9 -3
- package/dist/wallet/solana-rpc-read-fetch.js +65 -0
- package/dist/wallet/wallet-agent-selection.js +6 -10
- package/dist/wallet/wallet-provider-registry.js +70 -29
- package/dist/wallet/wallet-send-approvals.js +6 -2
- package/dist/wallet/wallet-status.js +63 -1
- package/dist/web/login-qr.js +1 -1
- package/dist/wizard/onboarding.js +86 -84
- package/dist/wizard/onboarding.wallet.js +10 -1
- package/extensions/acpx/package.json +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/fased-federation/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +12 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +2 -2
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +12 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +12 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/sat-mining/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/synology-chat/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +12 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +12 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +12 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +12 -0
- package/extensions/zalouser/package.json +1 -1
- package/install.sh +286 -107
- package/package.json +4 -2
- package/scripts/fased-managed-updater.mjs +10 -2
- package/scripts/install-fased-signerd.sh +4 -8
- package/scripts/install-managed-runtime.mjs +10 -7
- package/scripts/install-runtime-profile.sh +27 -0
- package/scripts/start-managed.sh +13 -1
- /package/dist/plugin-sdk/{active-listener-B_NMtgPL.js → active-listener-p9Ooc1qj.js} +0 -0
- /package/dist/plugin-sdk/{blocks-input-Bg-8S2pl.js → blocks-input-DiZaqaN7.js} +0 -0
- /package/dist/plugin-sdk/{channel-access-CcFRdRPO.js → channel-access-B0aZBSd2.js} +0 -0
- /package/dist/plugin-sdk/{channel-activity-DBDMQ3yI.js → channel-activity-F07DjroV.js} +0 -0
- /package/dist/plugin-sdk/{channel-core-CFRs8LPy.js → channel-core-DoF4X04L.js} +0 -0
- /package/dist/plugin-sdk/{client-pI228AVT.js → client-DLY-kWF_.js} +0 -0
- /package/dist/plugin-sdk/{command-poll-backoff-yJU83wEq.js → command-poll-backoff-NAePk3eL.js} +0 -0
- /package/dist/plugin-sdk/{date-time-uUevHscU.js → date-time-ChY_tHoG.js} +0 -0
- /package/dist/plugin-sdk/{draft-stream-loop-CrOPfV3F.js → draft-stream-loop-DMBwjjd1.js} +0 -0
- /package/dist/plugin-sdk/{fetch-BtmoPIlf.js → fetch-B0v6OTUZ.js} +0 -0
- /package/dist/plugin-sdk/{filesystem-manager-DoI8IBNF.js → filesystem-manager-BzuIJ9K9.js} +0 -0
- /package/dist/plugin-sdk/{gateway-registry-DZDsqicG.js → gateway-registry-Bgl2GFgy.js} +0 -0
- /package/dist/plugin-sdk/{inbound-context-DrAcXE0y.js → inbound-context-CQnfFFQ9.js} +0 -0
- /package/dist/plugin-sdk/{pi-model-discovery-BX_JLcEJ.js → pi-model-discovery-BHNVyRny.js} +0 -0
- /package/dist/plugin-sdk/{polls-DKQXVfJp.js → polls-DXd67TD8.js} +0 -0
- /package/dist/plugin-sdk/{proxy-DWpYcsvR.js → proxy-CLRUdShp.js} +0 -0
- /package/dist/plugin-sdk/{qmd-manager-CgRaTxUq.js → qmd-manager-B8Vnu0ND.js} +0 -0
- /package/dist/plugin-sdk/{render-e7fENCYH.js → render-DrBfVs0u.js} +0 -0
- /package/dist/plugin-sdk/{reply-reference-Bqk-7HXE.js → reply-reference-BnAk5Wjb.js} +0 -0
- /package/dist/plugin-sdk/{retry-policy-C6SjKjQA.js → retry-policy-CXh1owkc.js} +0 -0
- /package/dist/plugin-sdk/{sandbox-paths-Dx2lUqCu.js → sandbox-paths-Bzh1CuZc.js} +0 -0
- /package/dist/plugin-sdk/{session-DHD4ZKyG.js → session-iuGR_rdi.js} +0 -0
- /package/dist/plugin-sdk/{shared-CBgp_GBw.js → shared-D1AD2Ejn.js} +0 -0
- /package/dist/plugin-sdk/{target-errors-Ckufe179.js → target-errors-DfS1sLR9.js} +0 -0
- /package/dist/plugin-sdk/{tool-loop-detection-Bp8bPJLs.js → tool-loop-detection-sDZl27w7.js} +0 -0
- /package/dist/plugin-sdk/{ui-Be8cLHIS.js → ui-GQDYm_jw.js} +0 -0
- /package/dist/plugin-sdk/{with-timeout-ckWB8rTo.js → with-timeout-CVV8tytk.js} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fased/fased",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.69",
|
|
4
4
|
"description": "Fased Agent self-hosted AI gateway with channels, tools, plugins, and operator modules",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai-agent",
|
|
@@ -52,6 +52,7 @@
|
|
|
52
52
|
"scripts/migrate-hosted-signer-v2.mjs",
|
|
53
53
|
"scripts/fased-launcher-runtime.mjs",
|
|
54
54
|
"scripts/install-fased-signerd.sh",
|
|
55
|
+
"scripts/install-runtime-profile.sh",
|
|
55
56
|
"scripts/install-managed-runtime.mjs",
|
|
56
57
|
"scripts/managed-runtime-layout.mjs",
|
|
57
58
|
"scripts/hosted-release-manifest.mjs",
|
|
@@ -155,7 +156,7 @@
|
|
|
155
156
|
"check": "pnpm check:ci",
|
|
156
157
|
"check:ci": "pnpm signer:protocol:check && pnpm sat:signer-codecs:check && pnpm format:check && pnpm lint && pnpm lint:tmp:no-random-messaging && pnpm lint:tmp:channel-agnostic-boundaries && pnpm lint:tmp:no-raw-channel-fetch && pnpm lint:auth:no-pairing-store-group && pnpm lint:auth:pairing-account-scope && pnpm check:host-env-policy:swift",
|
|
157
158
|
"check:dependency-ownership": "node --import tsx scripts/dependency-ownership-report.ts --check",
|
|
158
|
-
"check:docs": "pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links",
|
|
159
|
+
"check:docs": "pnpm format:docs:check && pnpm lint:docs && pnpm docs:check-links && pnpm docs:check-product-contract",
|
|
159
160
|
"check:host-env-policy:swift": "node scripts/generate-host-env-security-policy-swift.mjs --check",
|
|
160
161
|
"check:loc": "node --import tsx scripts/check-ts-max-loc.ts --max 500",
|
|
161
162
|
"check:plugin-sdk:types": "tsc --noEmit --skipLibCheck --module NodeNext --moduleResolution NodeNext --target ES2023 scripts/smoke-plugin-sdk-types.ts",
|
|
@@ -176,6 +177,7 @@
|
|
|
176
177
|
"dev": "node scripts/run-node.mjs",
|
|
177
178
|
"docs:bin": "node scripts/build-docs-list.mjs",
|
|
178
179
|
"docs:check-links": "node scripts/docs-link-audit.mjs",
|
|
180
|
+
"docs:check-product-contract": "node scripts/docs-product-contract.mjs",
|
|
179
181
|
"docs:dev": "cd docs && mint dev",
|
|
180
182
|
"docs:list": "node scripts/docs-list.js",
|
|
181
183
|
"docs:spellcheck": "bash scripts/docs-spellcheck.sh",
|
|
@@ -291,7 +291,9 @@ async function downloadToFile(url, destination, timeoutMs) {
|
|
|
291
291
|
cache: "no-store",
|
|
292
292
|
});
|
|
293
293
|
if (!response.ok || !response.body) {
|
|
294
|
-
|
|
294
|
+
const error = new Error(`Download failed (${response.status}): ${url}`);
|
|
295
|
+
error.statusCode = response.status;
|
|
296
|
+
throw error;
|
|
295
297
|
}
|
|
296
298
|
await fsp.mkdir(path.dirname(destination), { recursive: true });
|
|
297
299
|
await pipeline(
|
|
@@ -3372,7 +3374,7 @@ async function updateManagedRuntime(options) {
|
|
|
3372
3374
|
try {
|
|
3373
3375
|
let unifiedRelease = null;
|
|
3374
3376
|
let unifiedReleasePath = null;
|
|
3375
|
-
|
|
3377
|
+
try {
|
|
3376
3378
|
unifiedReleasePath = path.join(temporaryRoot, "fased-hosted-release-v2.json");
|
|
3377
3379
|
await measureStage(timings, "unified release manifest", async () => {
|
|
3378
3380
|
await downloadToFile(
|
|
@@ -3387,6 +3389,12 @@ async function updateManagedRuntime(options) {
|
|
|
3387
3389
|
await readHostedReleaseManifestV2(unifiedReleasePath, { version: targetVersion })
|
|
3388
3390
|
).manifest;
|
|
3389
3391
|
});
|
|
3392
|
+
} catch (error) {
|
|
3393
|
+
if (existingManifest.profile === "hosting" || error?.statusCode !== 404) {
|
|
3394
|
+
throw error;
|
|
3395
|
+
}
|
|
3396
|
+
unifiedReleasePath = null;
|
|
3397
|
+
unifiedRelease = null;
|
|
3390
3398
|
}
|
|
3391
3399
|
const appArtifact = unifiedRelease?.application?.linux?.[arch]?.artifact;
|
|
3392
3400
|
const assetName =
|
|
@@ -206,12 +206,8 @@ echo "Installed signer enrollment launcher: $INSTALL_DIR/fased-signer-enroll"
|
|
|
206
206
|
echo "Installed signer policy launcher: $POLICY_LAUNCHER_PATH"
|
|
207
207
|
echo "Installed fail-closed policy templates: $POLICY_TEMPLATE_DIR"
|
|
208
208
|
cat <<EOF
|
|
209
|
-
Fresh signer-owned wallets
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
every REPLACE_WITH_ value.
|
|
214
|
-
3. $POLICY_LAUNCHER_PATH --initial-install --policy-file /absolute/path/to/policy.json
|
|
215
|
-
|
|
216
|
-
Enrollment never enables signing, and copying a template never applies it.
|
|
209
|
+
Fresh signer-owned wallets receive their versioned Agent, Mining, or Vault
|
|
210
|
+
baseline during normal wallet setup after the primary RPC is verified. Optional
|
|
211
|
+
authenticator enrollment and $POLICY_LAUNCHER_PATH remain available for advanced
|
|
212
|
+
owner-reviewed customization; copying a template never applies it.
|
|
217
213
|
EOF
|
|
@@ -220,15 +220,15 @@ export async function installManagedRuntime(params, dependencyOverrides = {}) {
|
|
|
220
220
|
...dependencyOverrides,
|
|
221
221
|
};
|
|
222
222
|
const paths = resolveManagedRuntimePaths(params);
|
|
223
|
+
const profile = normalizeManagedProfile(params.profile);
|
|
223
224
|
const existingManifest = readManagedInstallManifest(paths.manifestPath);
|
|
224
225
|
const version = await assertManagedRuntime(params.packageRoot);
|
|
225
226
|
const metadata = await readHostedRuntimeMetadata(params.packageRoot);
|
|
226
|
-
const hostedRelease =
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
) {
|
|
227
|
+
const hostedRelease =
|
|
228
|
+
profile === "hosting"
|
|
229
|
+
? await readHostedReleaseBinding(params.packageRoot, metadata, version)
|
|
230
|
+
: null;
|
|
231
|
+
if (profile === "hosting" && params.hostTransactionId && !hostedRelease) {
|
|
232
232
|
throw new Error(
|
|
233
233
|
"Maintained Hosting requires an attested unified app and signer release manifest.",
|
|
234
234
|
);
|
|
@@ -399,7 +399,10 @@ export async function rollbackManagedRuntime(params) {
|
|
|
399
399
|
const previousVersion = await assertManagedRuntime(previousRoot);
|
|
400
400
|
const currentVersion = await readPackageVersion(currentRoot);
|
|
401
401
|
const metadata = await readHostedRuntimeMetadata(previousRoot);
|
|
402
|
-
const hostedRelease =
|
|
402
|
+
const hostedRelease =
|
|
403
|
+
normalizeManagedProfile(manifest.profile) === "hosting"
|
|
404
|
+
? await readHostedReleaseBinding(previousRoot, metadata, previousVersion)
|
|
405
|
+
: null;
|
|
403
406
|
|
|
404
407
|
await atomicSymlink(currentRoot, paths.previousLink);
|
|
405
408
|
await atomicSymlink(previousRoot, paths.currentLink);
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
fased_supports_prebuilt_release_runtime() {
|
|
4
|
+
local os_name="$1"
|
|
5
|
+
local architecture="$2"
|
|
6
|
+
[[ "$os_name" == "Linux" ]] || return 1
|
|
7
|
+
case "$architecture" in
|
|
8
|
+
x86_64|amd64|aarch64|arm64) return 0 ;;
|
|
9
|
+
*) return 1 ;;
|
|
10
|
+
esac
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
fased_should_use_prebuilt_release_runtime() {
|
|
14
|
+
local profile="$1"
|
|
15
|
+
local source_requested="$2"
|
|
16
|
+
local source_env="$3"
|
|
17
|
+
local hosting_source_env="$4"
|
|
18
|
+
local os_name="$5"
|
|
19
|
+
local architecture="$6"
|
|
20
|
+
|
|
21
|
+
[[ "$source_requested" != "1" ]] || return 1
|
|
22
|
+
[[ "$source_env" != "1" ]] || return 1
|
|
23
|
+
if [[ "$profile" == "hosting" && "$hosting_source_env" == "1" ]]; then
|
|
24
|
+
return 1
|
|
25
|
+
fi
|
|
26
|
+
fased_supports_prebuilt_release_runtime "$os_name" "$architecture"
|
|
27
|
+
}
|
package/scripts/start-managed.sh
CHANGED
|
@@ -538,6 +538,12 @@ load_wallet_signer_env_from_config() {
|
|
|
538
538
|
|| [[ "$key" == "FASED_WALLET_SIGNER_STATE_DIR" ]] \
|
|
539
539
|
|| [[ "$key" == "FASED_WALLET_LOCAL_SIGNER_BIN" ]] \
|
|
540
540
|
|| [[ "$key" == "FASED_SAT_PROGRAM_ID" ]] \
|
|
541
|
+
|| [[ "$key" == "FASED_SAT_BOND_PROGRAM_ID" ]] \
|
|
542
|
+
|| [[ "$key" == "FASED_SAT_MINT_ADDRESS" ]] \
|
|
543
|
+
|| [[ "$key" == "FASED_SAT_MINT_PROGRAM_ID" ]] \
|
|
544
|
+
|| [[ "$key" == "FASED_SAT_RUNTIME_MANIFEST_PATH" ]] \
|
|
545
|
+
|| [[ "$key" == "FASED_SAT_RUNTIME_MANIFEST_SHA256" ]] \
|
|
546
|
+
|| [[ "$key" == "FASED_SAT_RUNTIME_MANIFEST_SIGNATURE_PATH" ]] \
|
|
541
547
|
|| [[ "$key" == "FASED_SAT_ENABLE_ALT_V0" ]] \
|
|
542
548
|
|| [[ "$key" =~ ^FASED_WALLET_LOCAL_SIGNER_(ROLE|DIRECT_SIGNING|CAPS_ENABLED|SOLANA_MAX_PER_TX|SOLANA_MAX_DAILY|SOLANA_ALLOW_PROGRAMS)(__[A-Za-z0-9_-]+)?$ ]]; then
|
|
543
549
|
export "$key=$value"
|
|
@@ -557,6 +563,12 @@ load_wallet_signer_env_from_config() {
|
|
|
557
563
|
or . == "FASED_WALLET_SIGNER_STATE_DIR"
|
|
558
564
|
or . == "FASED_WALLET_LOCAL_SIGNER_BIN"
|
|
559
565
|
or . == "FASED_SAT_PROGRAM_ID"
|
|
566
|
+
or . == "FASED_SAT_BOND_PROGRAM_ID"
|
|
567
|
+
or . == "FASED_SAT_MINT_ADDRESS"
|
|
568
|
+
or . == "FASED_SAT_MINT_PROGRAM_ID"
|
|
569
|
+
or . == "FASED_SAT_RUNTIME_MANIFEST_PATH"
|
|
570
|
+
or . == "FASED_SAT_RUNTIME_MANIFEST_SHA256"
|
|
571
|
+
or . == "FASED_SAT_RUNTIME_MANIFEST_SIGNATURE_PATH"
|
|
560
572
|
or . == "FASED_SAT_ENABLE_ALT_V0"
|
|
561
573
|
or test("^FASED_WALLET_LOCAL_SIGNER_(ROLE|DIRECT_SIGNING|CAPS_ENABLED|SOLANA_MAX_PER_TX|SOLANA_MAX_DAILY|SOLANA_ALLOW_PROGRAMS)(__[A-Za-z0-9_-]+)?$")
|
|
562
574
|
)
|
|
@@ -574,7 +586,7 @@ load_wallet_signer_env_file() {
|
|
|
574
586
|
# Older signer.env files may contain Node-era key/passphrase variables. Import only
|
|
575
587
|
# the non-custody settings required by the native signer, never every wallet variable.
|
|
576
588
|
source <(
|
|
577
|
-
grep -E '^export FASED_WALLET_(SOLANA_RPC_URL(__[A-Za-z0-9_-]+)?|CHAINS|SIGNER_STATE_DIR|WEBAUTHN_(RP_ID|ORIGINS)|LOCAL_SIGNER_(SOCKET|CONTROL_SOCKET|STATE_DB|MASTER_KEY|BIN|ROLE|DIRECT_SIGNING|CAPS_ENABLED|SOLANA_MAX_PER_TX|SOLANA_MAX_DAILY|SOLANA_ALLOW_PROGRAMS)(__[A-Za-z0-9_-]+)?)=' "$SIGNERD_ENV_FILE" || true
|
|
589
|
+
grep -E '^export (FASED_WALLET_(SOLANA_RPC_URL(__[A-Za-z0-9_-]+)?|CHAINS|SIGNER_STATE_DIR|WEBAUTHN_(RP_ID|ORIGINS)|LOCAL_SIGNER_(SOCKET|CONTROL_SOCKET|STATE_DB|MASTER_KEY|BIN|ROLE|DIRECT_SIGNING|CAPS_ENABLED|SOLANA_MAX_PER_TX|SOLANA_MAX_DAILY|SOLANA_ALLOW_PROGRAMS)(__[A-Za-z0-9_-]+)?)|FASED_SAT_(PROGRAM_ID|BOND_PROGRAM_ID|MINT_ADDRESS|MINT_PROGRAM_ID|RUNTIME_MANIFEST_(PATH|SHA256|SIGNATURE_PATH)))=' "$SIGNERD_ENV_FILE" || true
|
|
578
590
|
)
|
|
579
591
|
set +a
|
|
580
592
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/plugin-sdk/{command-poll-backoff-yJU83wEq.js → command-poll-backoff-NAePk3eL.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/plugin-sdk/{tool-loop-detection-Bp8bPJLs.js → tool-loop-detection-sDZl27w7.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|