@almadar/std 17.0.3 → 17.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/behaviors/lolo/auth/atoms/std-dev-personas.lolo +27 -2
- package/behaviors/lolo/cli/atoms/std-orb-goldens.lolo +6 -3
- package/behaviors/lolo/cli/atoms/std-orb-lint-mem-handles.lolo +54 -34
- package/behaviors/lolo/cli/atoms/std-orb-lint-os-grants.lolo +4 -4
- package/behaviors/lolo/cli/atoms/std-orb-mcp.lolo +16 -21
- package/behaviors/lolo/cli/atoms/std-orb-serve.lolo +24 -4
- package/behaviors/lolo/codec/atoms/std-lolo-kotlin.lolo +26 -3
- package/behaviors/lolo/codec/atoms/std-lolo-python.lolo +15 -2
- package/behaviors/lolo/codec/atoms/std-lolo-rust.lolo +27 -2
- package/behaviors/lolo/codec/atoms/std-lolo-source.lolo +251 -60
- package/behaviors/lolo/codec/atoms/std-lolo-swift.lolo +24 -1
- package/behaviors/lolo/codec/atoms/std-lolo-typescript.lolo +24 -3
- package/behaviors/lolo/connect/atoms/std-meta-ads.lolo +4 -4
- package/behaviors/lolo/connect/atoms/std-stdio-lines.lolo +7 -4
- package/behaviors/lolo/connect/atoms/std-youtube.lolo +9 -9
- package/behaviors/lolo/dev/atoms/std-guest-session.lolo +122 -10
- package/behaviors/lolo/dev/atoms/std-mock-seed-marks.lolo +66 -0
- package/behaviors/lolo/dev/organisms/std-behavior-playground.lolo +5 -2
- package/behaviors/lolo/dev/organisms/std-launchpad.lolo +4 -3
- package/behaviors/lolo/gpu/atoms/std-gpu-compute.lolo +329 -0
- package/behaviors/lolo/net/atoms/std-http-client.lolo +4 -4
- package/behaviors/lolo/net/atoms/std-http-fetch.lolo +6 -6
- package/behaviors/lolo/net/atoms/std-npm-lookup.lolo +1 -1
- package/behaviors/lolo/net/atoms/std-npm-registry.lolo +2 -2
- package/behaviors/lolo/spec/auth/dev-personas.replay.goldens.json +263 -2
- package/behaviors/lolo/spec/cli/lint-all.lolo +1 -0
- package/behaviors/lolo/spec/cli/lint-item-action-event.replay.goldens.json +9 -9
- package/behaviors/lolo/spec/cli/lint-mem-handles.replay.goldens.json +3021 -1
- package/behaviors/lolo/spec/cli/lint-os-grants.replay.goldens.json +284 -12
- package/behaviors/lolo/spec/cli/mcp-server.replay.goldens.json +51 -55
- package/behaviors/lolo/spec/cli/orb-compile.replay.goldens.json +10 -4
- package/behaviors/lolo/spec/codec/lolo-kotlin.replay.goldens.json +7496 -7497
- package/behaviors/lolo/spec/codec/lolo-python.replay.goldens.json +341 -3
- package/behaviors/lolo/spec/codec/lolo-rust.replay.goldens.json +18931 -6142
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/compose-pair.lolo +44 -0
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/config-read.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/divide-default.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/divide-plain.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/get-past-end.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/list-call.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/list-plain.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/minus-binary.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/minus-unary.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/nested-let.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/no-machine.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/no-template.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/nth-past-end.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/nth-raw.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/ports-call.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/range-one.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/range-two.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/router-trio.lolo +88 -0
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/store-pair.lolo +62 -0
- package/behaviors/lolo/spec/codec/lolo-source.fixtures/string-literal.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.gen/knobs.py +27 -1
- package/behaviors/lolo/spec/codec/lolo-source.gen/src_assemble.in +54 -2
- package/behaviors/lolo/spec/codec/lolo-source.gen/src_finish.in +1 -1
- package/behaviors/lolo/spec/codec/lolo-source.gen/src_fold.in +24 -4
- package/behaviors/lolo/spec/codec/lolo-source.gen/src_head.in +8 -3
- package/behaviors/lolo/spec/codec/lolo-source.gen/src_prepare.in +6 -2
- package/behaviors/lolo/spec/codec/lolo-source.gen/src_trait.in +12 -2
- package/behaviors/lolo/spec/codec/lolo-source.parity/agent-step.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.parity/agent-step.server.lolo +1 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/chunk.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.parity/chunk.server.lolo +1 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/compose-pair.events.json +36 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/compose-pair.replay.goldens.json +91 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/cosine.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.parity/cosine.server.lolo +1 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/kotlin/compose-pair.kt +31 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/kotlin/router-trio.kt +31 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/kotlin/store-pair.kt +31 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/python/compose-pair.py +18 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/python/router-trio.py +18 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/python/store-pair.py +17 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/rust/compose-pair.rs +37 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/rust/router-trio.rs +37 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/rust/store-pair.rs +36 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/swift/compose-pair.swift +24 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/swift/router-trio.swift +24 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/swift/store-pair.swift +23 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/typescript/compose-pair.mts +24 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/typescript/router-trio.mts +24 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/drivers/typescript/store-pair.mts +22 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/recall-at-k.lolo +2 -1
- package/behaviors/lolo/spec/codec/lolo-source.parity/recall-at-k.server.lolo +1 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/router-trio.events.json +18 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/router-trio.replay.goldens.json +87 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/store-pair.events.json +58 -0
- package/behaviors/lolo/spec/codec/lolo-source.parity/store-pair.replay.goldens.json +238 -0
- package/behaviors/lolo/spec/codec/lolo-swift.replay.goldens.json +15599 -2204
- package/behaviors/lolo/spec/codec/lolo-typescript.replay.goldens.json +28930 -28929
- package/behaviors/lolo/spec/connect/bearer-api.replay.goldens.json +1 -1
- package/behaviors/lolo/spec/connect/esign.replay.goldens.json +3 -3
- package/behaviors/lolo/spec/connect/github.replay.goldens.json +13 -13
- package/behaviors/lolo/spec/connect/google-calendar.replay.goldens.json +2 -2
- package/behaviors/lolo/spec/connect/image.replay.goldens.json +1 -1
- package/behaviors/lolo/spec/connect/meta-ads.replay.goldens.json +2 -2
- package/behaviors/lolo/spec/connect/stdio-lines.replay.goldens.json +90 -0
- package/behaviors/lolo/spec/connect/twilio.replay.goldens.json +2 -2
- package/behaviors/lolo/spec/connect/youtube.replay.goldens.json +1 -1
- package/behaviors/lolo/spec/dev/guest-session.replay.goldens.json +824 -0
- package/behaviors/lolo/spec/dev/mock-seed-marks.replay.goldens.json +365 -0
- package/behaviors/lolo/spec/dev/verify-walk.replay.goldens.json +2 -1
- package/behaviors/lolo/spec/gpu/gpu-compute.replay.goldens.json +784 -0
- package/behaviors/lolo/spec/mem/mem-buffer.replay.goldens.json +97 -1
- package/behaviors/lolo/spec/ml/vector-write.goldens.json +1 -1
- package/behaviors/lolo/spec/ml/vector-write.replay.goldens.json +2 -2
- package/behaviors/lolo/spec/net/http-client-call-host.replay.goldens.json +3 -3
- package/behaviors/lolo/spec/net/http-client-env-host.replay.goldens.json +3 -3
- package/behaviors/lolo/spec/net/http-client.replay.goldens.json +56 -56
- package/behaviors/lolo/spec/net/http-fetch.replay.goldens.json +2 -2
- package/behaviors/lolo/spec/net/npm-lookup.replay.goldens.json +1 -1
- package/behaviors/lolo/spec/net/npm-registry.replay.goldens.json +2 -2
- package/behaviors/lolo/spec/net/server-declared-traits.replay.goldens.json +6 -3
- package/behaviors/lolo/spec/net/server-external-inputs.replay.goldens.json +16 -8
- package/behaviors/lolo/spec/net/server-retargeted-leg.replay.goldens.json +4 -2
- package/behaviors/lolo/spec/net/server-untargeted-discovery.replay.goldens.json +50 -45
- package/behaviors/lolo/spec/ops/llm-spend-board.replay.goldens.json +112 -16
- package/behaviors/lolo/spec/store/firestore-twin.replay.goldens.json +1 -1
- package/behaviors/lolo/spec/store/row-store-postgres.gen/record_real_sql.py +1 -1
- package/behaviors/lolo/spec/ui/game/fx-particles.replay.goldens.json +37 -0
- package/behaviors/lolo/ui/avl/atoms/std-avl-cosmic-zoom.lolo +2 -2
- package/behaviors/lolo/ui/game/atoms/std-fx-particles.lolo +10 -1
- package/behaviors/lolo/ui/game/atoms/ui-draw-fx-layer.lolo +4 -4
- package/behaviors/lolo/ui/game/organisms/std-arcade-board-3d.lolo +9 -9
- package/behaviors/lolo/ui/game/organisms/std-crew-board-2d.lolo +4 -4
- package/behaviors/lolo/ui/game/organisms/std-dungeon-board-2d.lolo +5 -5
- package/behaviors/lolo/ui/game/organisms/std-market-board-3d.lolo +9 -9
- package/behaviors/lolo/ui/game/organisms/std-objective-board-3d.lolo +9 -9
- package/behaviors/lolo/ui/game/organisms/std-platformer-board-2d.lolo +5 -5
- package/behaviors/lolo/ui/game/organisms/std-platformer-puzzle.lolo +4 -4
- package/behaviors/lolo/ui/game/organisms/std-survival-board-3d.lolo +9 -9
- package/behaviors/lolo/ui/game/organisms/std-tactics-board-2d.lolo +5 -5
- package/behaviors/lolo/ui/game/organisms/std-tactics-board-3d.lolo +9 -9
- package/behaviors/registry/auth/atoms/std-dev-personas.orb +1 -1
- package/behaviors/registry/cli/atoms/std-orb-goldens.orb +1 -1
- package/behaviors/registry/cli/atoms/std-orb-lint-mem-handles.orb +1 -1
- package/behaviors/registry/cli/atoms/std-orb-lint-os-grants.orb +1 -1
- package/behaviors/registry/cli/atoms/std-orb-mcp.orb +1 -1
- package/behaviors/registry/cli/atoms/std-orb-serve.orb +1 -1
- package/behaviors/registry/codec/atoms/std-lolo-kotlin.orb +1 -1
- package/behaviors/registry/codec/atoms/std-lolo-python.orb +1 -1
- package/behaviors/registry/codec/atoms/std-lolo-rust.orb +1 -1
- package/behaviors/registry/codec/atoms/std-lolo-source.orb +1 -1
- package/behaviors/registry/codec/atoms/std-lolo-swift.orb +1 -1
- package/behaviors/registry/codec/atoms/std-lolo-typescript.orb +1 -1
- package/behaviors/registry/connect/atoms/std-meta-ads.orb +1 -1
- package/behaviors/registry/connect/atoms/std-stdio-lines.orb +1 -1
- package/behaviors/registry/connect/atoms/std-youtube.orb +1 -1
- package/behaviors/registry/dev/atoms/std-guest-session.orb +1 -1
- package/behaviors/registry/dev/atoms/std-mock-seed-marks.orb +1 -0
- package/behaviors/registry/dev/organisms/std-behavior-playground.orb +37 -0
- package/behaviors/registry/dev/organisms/std-launchpad.orb +25 -0
- package/behaviors/registry/gpu/atoms/std-gpu-compute.orb +1 -0
- package/behaviors/registry/net/atoms/std-http-client.orb +1 -1
- package/behaviors/registry/net/atoms/std-http-fetch.orb +1 -1
- package/behaviors/registry/net/atoms/std-npm-lookup.orb +1 -1
- package/behaviors/registry/net/atoms/std-npm-registry.orb +1 -1
- package/behaviors/registry/spec/cli/lint-all.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/compose-pair.orb +1 -0
- package/behaviors/registry/spec/codec/lolo-source.fixtures/config-read.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/divide-default.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/divide-plain.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/get-past-end.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/list-call.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/list-plain.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/minus-binary.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/minus-unary.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/nested-let.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/no-machine.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/no-template.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/nth-past-end.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/nth-raw.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/ports-call.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/range-one.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/range-two.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.fixtures/router-trio.orb +1 -0
- package/behaviors/registry/spec/codec/lolo-source.fixtures/store-pair.orb +1 -0
- package/behaviors/registry/spec/codec/lolo-source.fixtures/string-literal.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/agent-step.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/agent-step.server.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/chunk.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/chunk.server.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/cosine.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/cosine.server.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/recall-at-k.orb +1 -1
- package/behaviors/registry/spec/codec/lolo-source.parity/recall-at-k.server.orb +1 -1
- package/behaviors/registry/ui/avl/atoms/std-avl-cosmic-zoom.orb +1 -1
- package/behaviors/registry/ui/game/atoms/std-fx-particles.orb +1 -1
- package/behaviors/registry/ui/game/atoms/ui-draw-fx-layer.orb +1 -1
- package/behaviors/registry/ui/game/organisms/std-arcade-board-3d.orb +20 -13
- package/behaviors/registry/ui/game/organisms/std-crew-board-2d.orb +9 -5
- package/behaviors/registry/ui/game/organisms/std-dungeon-board-2d.orb +17 -7
- package/behaviors/registry/ui/game/organisms/std-market-board-3d.orb +19 -15
- package/behaviors/registry/ui/game/organisms/std-objective-board-3d.orb +15 -12
- package/behaviors/registry/ui/game/organisms/std-platformer-board-2d.orb +17 -7
- package/behaviors/registry/ui/game/organisms/std-platformer-puzzle.orb +4 -0
- package/behaviors/registry/ui/game/organisms/std-survival-board-3d.orb +15 -12
- package/behaviors/registry/ui/game/organisms/std-tactics-board-2d.orb +13 -6
- package/behaviors/registry/ui/game/organisms/std-tactics-board-3d.orb +14 -12
- package/canonical-operators.json +1426 -103
- package/dist/{chunk-EK22WRB6.js → chunk-2UGHBVU2.js} +2 -2
- package/dist/{chunk-GDMH5T4J.js → chunk-3DK7GI2C.js} +2 -2
- package/dist/chunk-3MDASC5C.js +26 -0
- package/dist/{chunk-K5ZI27PB.js → chunk-3PHO4RRF.js} +1 -1
- package/dist/{chunk-7IEMMYM6.js → chunk-4MJCLAZW.js} +1 -1
- package/dist/{chunk-W4IEV4BY.js → chunk-55JPIL7A.js} +2 -2
- package/dist/{chunk-RUGBZTV3.js → chunk-66BLZLFI.js} +1 -1
- package/dist/{chunk-YWFISV7L.js → chunk-66RAJFOD.js} +1 -1
- package/dist/{chunk-JWOWWGNZ.js → chunk-6ED4SUC6.js} +1 -1
- package/dist/{chunk-LL7P6EII.js → chunk-6KFCHNE2.js} +2 -2
- package/dist/{chunk-GFBL2TW6.js → chunk-A4QB3Y6L.js} +1 -1
- package/dist/chunk-BVWMLS32.js +123 -0
- package/dist/{chunk-5KQCGSNC.js → chunk-CRKVDCY7.js} +1 -1
- package/dist/{chunk-WHQDLLC3.js → chunk-EKWEY4OJ.js} +1 -1
- package/dist/{chunk-Y3BRVNYK.js → chunk-EU22GCGV.js} +2 -2
- package/dist/{chunk-XQPYTDZ4.js → chunk-FB6PKNRS.js} +1 -1
- package/dist/{chunk-UX3MDFX6.js → chunk-FSVOJQLP.js} +1 -1
- package/dist/{chunk-LDBD2FBQ.js → chunk-GAKLBWBR.js} +1 -1
- package/dist/{chunk-C3IEMPRZ.js → chunk-GO3FKBV2.js} +2 -2
- package/dist/{chunk-LZSPEHSM.js → chunk-GPDTJHYY.js} +1 -1
- package/dist/{chunk-W5ABMOXU.js → chunk-JQBWLH5V.js} +1 -1
- package/dist/{chunk-63X6RNY6.js → chunk-KKW3JHTC.js} +1 -1
- package/dist/{chunk-5PLJE42Q.js → chunk-LF2EZVAM.js} +1 -1
- package/dist/{chunk-RXWBYWQB.js → chunk-LGCKOZP3.js} +2 -2
- package/dist/{chunk-JJEADYP7.js → chunk-LMZ6XJFB.js} +2 -2
- package/dist/{chunk-CWYSQZJU.js → chunk-M2YQNSAZ.js} +2 -2
- package/dist/{chunk-GNCKJV3P.js → chunk-MKWHYBIS.js} +1 -1
- package/dist/{chunk-ZB2CLGEG.js → chunk-MXBGYTYF.js} +1 -1
- package/dist/{chunk-UN76TRSK.js → chunk-NH6MXHZR.js} +41 -41
- package/dist/{chunk-II2VW7T6.js → chunk-ODBIX4DB.js} +1 -1
- package/dist/{chunk-3F3CNWOG.js → chunk-OYDQR6DT.js} +2 -2
- package/dist/{chunk-FVL6BT6L.js → chunk-PD6POR44.js} +1 -1
- package/dist/{chunk-U6USXZ5M.js → chunk-PHFT3QNS.js} +2 -2
- package/dist/{chunk-RJYKIZMS.js → chunk-PQZ6PVKG.js} +2 -2
- package/dist/{chunk-TQPQXCSZ.js → chunk-Q6NHXIOZ.js} +2 -2
- package/dist/{chunk-KYGWVCTM.js → chunk-QMDVYTB7.js} +1 -1
- package/dist/{chunk-XKTATY45.js → chunk-RW2KMSG5.js} +4 -4
- package/dist/{chunk-UHNSPTFT.js → chunk-SA2ZS24W.js} +1 -1
- package/dist/{chunk-6YPUQK36.js → chunk-SFWP4UMK.js} +2 -2
- package/dist/{chunk-ZZYLFHBU.js → chunk-TLNEQA4D.js} +1 -1
- package/dist/{chunk-RGTBRWWA.js → chunk-TOODE5AD.js} +2 -2
- package/dist/{chunk-QGWAHOFR.js → chunk-U57GY7SM.js} +2 -2
- package/dist/{chunk-FDJZKB7J.js → chunk-UIDQQJSX.js} +1 -1
- package/dist/{chunk-LLH3WXM3.js → chunk-UVFP2B7I.js} +1 -1
- package/dist/{chunk-4OF7727E.js → chunk-VEGZPCTZ.js} +2 -2
- package/dist/{chunk-73YUPNIT.js → chunk-VXN4V7LC.js} +1 -1
- package/dist/{chunk-4D3W6AAE.js → chunk-YHQVZWPG.js} +1 -1
- package/dist/{chunk-XXYBHYLM.js → chunk-YQO3TO66.js} +2 -2
- package/dist/{chunk-YZAYFR5A.js → chunk-ZSJ3GEOJ.js} +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +50 -50
- package/dist/modules/anim.js +2 -2
- package/dist/modules/array.js +2 -2
- package/dist/modules/auth.js +3 -3
- package/dist/modules/behavior.js +2 -2
- package/dist/modules/bit.js +2 -2
- package/dist/modules/browser.js +2 -2
- package/dist/modules/bytes.js +2 -2
- package/dist/modules/codec.js +3 -3
- package/dist/modules/composition.js +2 -2
- package/dist/modules/core.js +2 -2
- package/dist/modules/csv.js +2 -2
- package/dist/modules/ffi.js +3 -3
- package/dist/modules/format.js +2 -2
- package/dist/modules/geo.js +2 -2
- package/dist/modules/gpu.d.ts +12 -0
- package/dist/modules/gpu.js +3 -0
- package/dist/modules/grid.js +2 -2
- package/dist/modules/i18n.js +2 -2
- package/dist/modules/index.d.ts +1 -2
- package/dist/modules/index.js +45 -46
- package/dist/modules/json.js +2 -2
- package/dist/modules/kernel.js +3 -3
- package/dist/modules/kv.js +3 -3
- package/dist/modules/llm.js +2 -2
- package/dist/modules/math.js +2 -2
- package/dist/modules/mem.js +3 -3
- package/dist/modules/object.js +2 -2
- package/dist/modules/os-common.d.ts +1 -1
- package/dist/modules/os-common.js +2 -2
- package/dist/modules/os-desktop.js +3 -3
- package/dist/modules/os-dev.js +3 -3
- package/dist/modules/os-dir.js +3 -3
- package/dist/modules/os-env-stdio.js +3 -3
- package/dist/modules/os-fs.js +3 -3
- package/dist/modules/os-net.js +3 -3
- package/dist/modules/os-path.js +3 -3
- package/dist/modules/os-process.js +3 -3
- package/dist/modules/os-sys.js +3 -3
- package/dist/modules/os-time-users.js +3 -3
- package/dist/modules/os.js +13 -13
- package/dist/modules/path.js +2 -2
- package/dist/modules/prob.js +2 -2
- package/dist/modules/program.js +2 -2
- package/dist/modules/session.js +2 -2
- package/dist/modules/str.js +2 -2
- package/dist/modules/time.js +2 -2
- package/dist/modules/validate.js +2 -2
- package/dist/modules/vector.js +2 -2
- package/dist/modules/workspace.js +2 -2
- package/dist/modules/xml.js +2 -2
- package/dist/modules/yaml.js +2 -2
- package/dist/registry.d.ts +2 -2
- package/dist/registry.js +49 -49
- package/dist/{types-BA4LkhNJ.d.ts → types-CgiGhK6t.d.ts} +17 -3
- package/package.json +5 -5
- package/dist/chunk-F5TP25JA.js +0 -26
- package/dist/chunk-NE4WSTN7.js +0 -26
- package/dist/modules/trace.d.ts +0 -15
- package/dist/modules/trace.js +0 -2
- /package/dist/{chunk-SHSBTDDX.js → chunk-QUQ33UXH.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"typeContractVersion":1,"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}]},"name":"std-http-fetch","version":"1.0.0","description":"std-http-fetch — the HTTP client of a program that runs in a browser host, which has no sockets (spec/net/http-fetch.lolo). It answers the events std-http-client answers: HTTP_SEND { key, method, target, headers, body, stream } becomes one os/fetch of method, origin knob plus target, the headers and the body bytes (timeoutMs from the knob), and the host's raw status, headers and body come back as HTTP_REPLIED { key, status, headers, body } for any status (header names lower-cased, repeats joined with a comma and a space, as std-http-client). The origin knob must be declared in egress; the kernel answers an undeclared origin denied without asking the host. A request the atom will not write (method, header or target the patterns refuse, or a header naming framing or a credential) answers HTTP_FAILED kind refused, as std-http-client. A stream of sse or jsonl asks os/fetch with stream true: the host answers at the head, the body is read with os/recv on the handle (config.recvBytes at a time) and each complete frame is answered as HTTP_STREAM_EVENT { key, data, event, id } while the body is still arriving (the framing of std-http-client) The framing is std-http-frame, composed in this atom as the sibling trait FetchFrame: a program that asks for a stream composes FetchFrame beside this trait., then HTTP_REPLIED with an empty body when the body ends and the handle is closed. One stream is in flight per frame; a second HTTP_SEND meanwhile answers HTTP_FAILED kind refused. Any other stream answers HTTP_FAILED kind refused. A host failure keeps its kind denied or timeout, else io; a native host answers os/fetch unsupported, which is io here: a native program composes std-http-client instead. Nothing follows a redirect that the host's fetch does not.","orbitals":[{"name":"HttpFetchOrbital","id":"orb_0MD1Q9EFWM7YA0PPJJMXE0R2X5","uses":[{"from":"almadar-std/http-fetch","as":"Spec"},{"from":"std/behaviors/std-http-frame","as":"Frame"}],"entity":{"name":"HttpFetchFlight","id":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE","persistence":"runtime","fields":[{"nullable":false,"name":"id","type":"string","required":true},{"nullable":false,"name":"key","type":"string","default":"","description":"The key of the stream in flight."},{"nullable":false,"name":"stream","type":"string","default":"none","description":"none, sse or jsonl."},{"nullable":false,"name":"handle","type":"number","default":-1,"description":"The open streamed response, -1 when none."},{"nullable":false,"name":"dec","type":"bytes","default":"","description":"Body bytes read and not yet framed."},{"nullable":false,"name":"status","type":"number","default":0,"description":"The status of the streamed head."},{"nullable":false,"name":"headers","type":"array","default":[],"items":{"nullable":false,"type":"object","properties":{"name":{"nullable":false,"name":"name","type":"string","required":true},"value":{"nullable":false,"name":"value","type":"string","required":true}},"projectedFrom":{"type":"HttpHeader"}},"description":"The headers of the streamed head, names lower-cased."},{"nullable":false,"name":"total","type":"number","default":0,"description":"Body bytes read so far."},{"nullable":false,"name":"eof","type":"boolean","default":false,"description":"The body ended."},{"nullable":false,"name":"flushed","type":"boolean","default":false,"description":"The unterminated rest of the body was framed."}],"invariants":[[">=","@entity.total",0]]},"traits":[{"ref":"Frame.traits.HttpFrame","id":"trt_K3D277YS84CM2DCXCSD025Z9RY","name":"FetchFrame","listens":[{"event":"HF_FRAME","triggers":"FRAME_RUN","source":{"kind":"trait","trait":"HttpFetch"}}]},{"name":"HttpFetch","id":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB","effectRow":[{"kind":"emit","resource":"HF_AFTER"},{"kind":"emit","resource":"HF_FRAME"},{"kind":"emit","resource":"HF_FRAMED"},{"kind":"emit","resource":"HTTP_FAILED"},{"kind":"emit","resource":"HTTP_REPLIED"},{"kind":"emit","resource":"HTTP_STREAM_EVENT"},{"kind":"os/close"},{"kind":"os/fetch"},{"kind":"os/recv"},{"kind":"set","resource":"@entity.dec"},{"kind":"set","resource":"@entity.eof"},{"kind":"set","resource":"@entity.flushed"},{"kind":"set","resource":"@entity.handle"},{"kind":"set","resource":"@entity.headers"},{"kind":"set","resource":"@entity.key"},{"kind":"set","resource":"@entity.status"},{"kind":"set","resource":"@entity.stream"},{"kind":"set","resource":"@entity.total"}],"linkedEntity":"HttpFetchFlight","linkedEntityId":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE","entityRefIds":{"HttpFetchFlight":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE"},"emits":[{"event":"HTTP_REPLIED","eventId":"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF","description":"The response, of any status, whole.","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"body","type":"bytes","required":true}]},{"event":"HTTP_STREAM_EVENT","eventId":"evt_N4CK3059B1MNGJQD4YK6NA72ZW","description":"One complete frame of a streamed response (sse or jsonl).","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"data","type":"string","required":true},{"nullable":true,"name":"event","type":"string"},{"nullable":true,"name":"id","type":"string"}]},{"event":"HTTP_FAILED","eventId":"evt_P8637JGGT78D3NS4G9PHEEQVWN","description":"The call produced no response: kind refused (nothing sent), denied, timeout, encoding (a stream frame is not UTF-8) or io.","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]},{"event":"HF_HEAD","eventId":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","description":"Internal: the os/fetch answer of a streamed fetch, at the head.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":true,"name":"handle","type":"number"}]},{"event":"HF_HEAD_FAILED","eventId":"evt_CP9H1BH22AH156XPDZHPP5NBDD","description":"Internal: the os/fetch failure of a streamed fetch.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]},{"event":"HF_READ","eventId":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","description":"Internal: one os/recv answer of a streamed response.","tier":"internal","payloadSchema":[{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"eof","type":"boolean","required":true}]},{"event":"HF_IO_FAILED","eventId":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","description":"Internal: an os/recv of a streamed response failed.","tier":"internal","payloadSchema":[{"nullable":false,"name":"error","type":"string"},{"nullable":false,"name":"kind","type":"string"}]},{"event":"HF_FRAMED","eventId":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","description":"Internal: body bytes were read; frame a stream or read more.","tier":"internal","scope":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","description":"Internal: no frame is complete; read more or finish.","tier":"internal","scope":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"event":"HF_FRAME","eventId":"evt_SV29N9H57QJKVVR4RVK2AE1DK1","description":"Internal: the unframed stream bytes, for the framer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"final","type":"boolean","required":true}]},{"event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82","description":"Internal: the streamed response was closed.","tier":"internal"},{"event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","description":"Internal: the os/fetch answer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true}]},{"event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","description":"Internal: the os/fetch failure.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]}],"listens":[{"event":"FRAME_EVENT","triggers":"HF_FRAME_EVENT","triggersId":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","source":{"kind":"trait","trait":"FetchFrame","traitId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}},{"event":"FRAME_DRAINED","triggers":"HF_DRAINED","triggersId":"evt_NGZ60X63PE1V79SDTS5M39TF2V","source":{"kind":"trait","trait":"FetchFrame","traitId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}},{"event":"FRAME_FAILED","triggers":"HF_FRAME_FAILED","triggersId":"evt_CBV66CZV7AXKN9C547MF74MC23","source":{"kind":"trait","trait":"FetchFrame","traitId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}}],"stateMachine":{"states":[{"name":"ready","isInitial":true},{"name":"opening"},{"name":"streaming"}],"events":[{"key":"INIT","id":"evt_X88FR9PFD47PJ874HMAB410RPY","name":"Initialize"},{"key":"HTTP_SEND","id":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","name":"Http Send","description":"Make one HTTP call; answered HTTP_REPLIED or HTTP_FAILED, and with a stream each frame as HTTP_STREAM_EVENT first.","synonyms":"browser http client, fetch","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"method","type":"string","required":true},{"nullable":false,"name":"target","type":"string","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":false,"name":"stream","type":"string","required":true}],"listened":true},{"key":"HF_REPLIED","id":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","name":"Hf Replied","description":"Internal: the os/fetch answer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true}],"listened":true},{"key":"HF_FAILED","id":"evt_AJ07NBK596JMK850P91E35XKWK","name":"Hf Failed","description":"Internal: the os/fetch failure.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"HF_CLOSED","id":"evt_5D6VCFW26P13BA8J6GC0433Y82","name":"Hf Closed","description":"Internal: the streamed response was closed.","tier":"internal","listened":true},{"key":"HF_HEAD","id":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","name":"Hf Head","description":"Internal: the os/fetch answer of a streamed fetch, at the head.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":true,"name":"handle","type":"number"}],"listened":true},{"key":"HF_HEAD_FAILED","id":"evt_CP9H1BH22AH156XPDZHPP5NBDD","name":"Hf Head Failed","description":"Internal: the os/fetch failure of a streamed fetch.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"HF_IO_FAILED","id":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","name":"Hf Io Failed","description":"Internal: an os/recv of a streamed response failed.","tier":"internal","payloadSchema":[{"nullable":false,"name":"error","type":"string"},{"nullable":false,"name":"kind","type":"string"}],"listened":true},{"key":"HF_READ","id":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","name":"Hf Read","description":"Internal: one os/recv answer of a streamed response.","tier":"internal","payloadSchema":[{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"eof","type":"boolean","required":true}],"listened":true},{"key":"HF_FRAMED","id":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","name":"Hf Framed","description":"Internal: body bytes were read; frame a stream or read more.","tier":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"key":"HF_DRAINED","id":"evt_NGZ60X63PE1V79SDTS5M39TF2V","name":"Hf Drained","payloadSchema":[{"nullable":false,"name":"rest","type":"bytes","required":true}],"listened":true},{"key":"HF_FRAME_EVENT","id":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","name":"Hf Frame Event","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"data","type":"string","required":true},{"nullable":true,"name":"event","type":"string"},{"nullable":true,"name":"id","type":"string"}],"listened":true},{"key":"HF_FRAME_FAILED","id":"evt_CBV66CZV7AXKN9C547MF74MC23","name":"Hf Frame Failed","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"HF_AFTER","id":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","name":"Hf After","description":"Internal: no frame is complete; read more or finish.","tier":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"key":"HTTP_REPLIED","id":"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF","name":"Http Replied","description":"The response, of any status, whole.","tier":"primary","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"body","type":"bytes","required":true}]},{"key":"HTTP_STREAM_EVENT","id":"evt_N4CK3059B1MNGJQD4YK6NA72ZW","name":"Http Stream Event","description":"One complete frame of a streamed response (sse or jsonl).","tier":"primary","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"data","type":"string","required":true},{"nullable":true,"name":"event","type":"string"},{"nullable":true,"name":"id","type":"string"}]},{"key":"HTTP_FAILED","id":"evt_P8637JGGT78D3NS4G9PHEEQVWN","name":"Http Failed","description":"The call produced no response: kind refused (nothing sent), denied, timeout, encoding (a stream frame is not UTF-8) or io.","tier":"primary","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]},{"key":"HF_FRAME","id":"evt_SV29N9H57QJKVVR4RVK2AE1DK1","name":"Hf Frame","description":"Internal: the unframed stream bytes, for the framer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"final","type":"boolean","required":true}]}],"transitions":[{"from":"ready","to":"ready","event":"INIT","eventId":"evt_X88FR9PFD47PJ874HMAB410RPY"},{"from":"ready","to":"ready","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","guard":["not",["and",["validate/pattern","@payload.method","@config.tokenPattern"],["validate/pattern","@payload.target","@config.targetPattern"],["array/includes","@config.streams","@payload.stream"],["array/every","@payload.headers",["fn","h",["and",["validate/pattern","@h.name","@config.tokenPattern"],["validate/pattern","@h.value","@config.valuePattern"],["not",["array/includes","@config.framingHeaders",["str/lower","@h.name"]]],["not",["array/includes","@config.credentialHeaders",["str/lower","@h.name"]]]]]]]],"effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"the request cannot be written: a method, header, target or stream is not allowed, or a header names framing the fetch sets or carries a credential","kind":"refused"}]]},{"from":"ready","to":"ready","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","guard":["and",["=","@payload.stream","none"],["and",["validate/pattern","@payload.method","@config.tokenPattern"],["validate/pattern","@payload.target","@config.targetPattern"],["array/includes","@config.streams","@payload.stream"],["array/every","@payload.headers",["fn","h",["and",["validate/pattern","@h.name","@config.tokenPattern"],["validate/pattern","@h.value","@config.valuePattern"],["not",["array/includes","@config.framingHeaders",["str/lower","@h.name"]]],["not",["array/includes","@config.credentialHeaders",["str/lower","@h.name"]]]]]]]],"effects":[["os/fetch","@payload.method",["str/concat","@config.origin","@payload.target"],{"headers":"@payload.headers","body":"@payload.body","timeoutMs":"@config.timeoutMs"},{"key":"@payload.key","emit":{"success":"HF_REPLIED","failure":"HF_FAILED"}}]]},{"from":"ready","to":"opening","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","guard":["and",["!=","@payload.stream","none"],["and",["validate/pattern","@payload.method","@config.tokenPattern"],["validate/pattern","@payload.target","@config.targetPattern"],["array/includes","@config.streams","@payload.stream"],["array/every","@payload.headers",["fn","h",["and",["validate/pattern","@h.name","@config.tokenPattern"],["validate/pattern","@h.value","@config.valuePattern"],["not",["array/includes","@config.framingHeaders",["str/lower","@h.name"]]],["not",["array/includes","@config.credentialHeaders",["str/lower","@h.name"]]]]]]]],"effects":[["set","@entity.key","@payload.key"],["set","@entity.stream","@payload.stream"],["set","@entity.handle",-1],["set","@entity.dec",["bytes/from-string",""]],["set","@entity.total",0],["set","@entity.eof",false],["set","@entity.flushed",false],["os/fetch","@payload.method",["str/concat","@config.origin","@payload.target"],{"headers":"@payload.headers","body":"@payload.body","timeoutMs":"@config.timeoutMs","stream":true},{"key":"@payload.key","emit":{"success":"HF_HEAD","failure":"HF_HEAD_FAILED"}}]]},{"from":"ready","to":"ready","event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","effects":[["emit","HTTP_REPLIED",{"key":"@payload.key","status":"@payload.status","headers":["default",["object/fromEntries",["array/map","@payload.headers",["fn","h",[["str/lower","@h.name"],["str/join",["array/map",["array/filter","@payload.headers",["fn","g",["=",["str/lower","@g.name"],["str/lower","@h.name"]]]],["fn","g","@g.value"]],", "]]]]],{}],"body":"@payload.body"}]]},{"from":"ready","to":"ready","event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":["if",["or",["=","@payload.kind","denied"],["=","@payload.kind","timeout"]],"@payload.kind","io"]}]]},{"from":"ready","to":"ready","event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82"},{"from":"opening","to":"opening","event":"INIT","eventId":"evt_X88FR9PFD47PJ874HMAB410RPY"},{"from":"opening","to":"opening","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"a stream is in flight on this frame","kind":"refused"}]]},{"from":"opening","to":"opening","event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","effects":[["emit","HTTP_REPLIED",{"key":"@payload.key","status":"@payload.status","headers":["default",["object/fromEntries",["array/map","@payload.headers",["fn","h",[["str/lower","@h.name"],["str/join",["array/map",["array/filter","@payload.headers",["fn","g",["=",["str/lower","@g.name"],["str/lower","@h.name"]]]],["fn","g","@g.value"]],", "]]]]],{}],"body":"@payload.body"}]]},{"from":"opening","to":"opening","event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":["if",["or",["=","@payload.kind","denied"],["=","@payload.kind","timeout"]],"@payload.kind","io"]}]]},{"from":"opening","to":"opening","event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82"},{"from":"opening","to":"ready","event":"HF_HEAD","eventId":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","guard":["==","@payload.handle",null],"effects":[["emit","HTTP_FAILED",{"key":"@entity.key","error":"the host answered a streamed fetch with no handle","kind":"io"}]]},{"from":"opening","to":"streaming","event":"HF_HEAD","eventId":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","guard":["!=","@payload.handle",null],"effects":[["set","@entity.handle",["default","@payload.handle",-1]],["set","@entity.status","@payload.status"],["set","@entity.headers",["array/map","@payload.headers",["fn","h",{"name":["str/lower","@h.name"],"value":"@h.value"}]]],["os/recv","@payload.handle","@config.recvBytes",{"key":"read","emit":{"success":"HF_READ","failure":"HF_IO_FAILED"}}]]},{"from":"opening","to":"ready","event":"HF_HEAD_FAILED","eventId":"evt_CP9H1BH22AH156XPDZHPP5NBDD","effects":[["emit","HTTP_FAILED",{"key":"@entity.key","error":"@payload.error","kind":["if",["or",["=","@payload.kind","denied"],["=","@payload.kind","timeout"]],"@payload.kind","io"]}]]},{"from":"streaming","to":"streaming","event":"INIT","eventId":"evt_X88FR9PFD47PJ874HMAB410RPY"},{"from":"streaming","to":"streaming","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"a stream is in flight on this frame","kind":"refused"}]]},{"from":"streaming","to":"streaming","event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","effects":[["emit","HTTP_REPLIED",{"key":"@payload.key","status":"@payload.status","headers":["default",["object/fromEntries",["array/map","@payload.headers",["fn","h",[["str/lower","@h.name"],["str/join",["array/map",["array/filter","@payload.headers",["fn","g",["=",["str/lower","@g.name"],["str/lower","@h.name"]]]],["fn","g","@g.value"]],", "]]]]],{}],"body":"@payload.body"}]]},{"from":"streaming","to":"streaming","event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":["if",["or",["=","@payload.kind","denied"],["=","@payload.kind","timeout"]],"@payload.kind","io"]}]]},{"from":"streaming","to":"streaming","event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82"},{"from":"streaming","to":"ready","event":"HF_IO_FAILED","eventId":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["emit","HTTP_FAILED",{"key":"@entity.key","error":"@payload.error","kind":["if",["or",["=","@payload.kind","denied"],["=","@payload.kind","timeout"]],"@payload.kind","io"]}]]},{"from":"streaming","to":"streaming","event":"HF_READ","eventId":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","effects":[["set","@entity.dec",["bytes/concat",["@entity.dec","@payload.data"]]],["set","@entity.total",["+","@entity.total",["bytes/length","@payload.data"]]],["set","@entity.eof","@payload.eof"],["emit","HF_FRAMED",{"n":["+","@entity.total",["bytes/length","@entity.dec"]]}]]},{"from":"streaming","to":"streaming","event":"HF_FRAMED","eventId":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","guard":[">","@entity.total","@config.maxBody"],"effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["emit","HTTP_FAILED",{"key":"@entity.key","error":"the body is past the largest body","kind":"io"}]]},{"from":"streaming","to":"streaming","event":"HF_FRAMED","eventId":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","guard":["<=","@entity.total","@config.maxBody"],"effects":[["emit","HF_FRAME",{"key":"@entity.key","stream":"@entity.stream","data":"@entity.dec","final":false}]]},{"from":"streaming","to":"streaming","event":"HF_DRAINED","eventId":"evt_NGZ60X63PE1V79SDTS5M39TF2V","effects":[["set","@entity.dec","@payload.rest"],["emit","HF_AFTER",{"n":["+","@entity.total",["bytes/length","@entity.dec"]]}]]},{"from":"streaming","to":"streaming","event":"HF_FRAME_EVENT","eventId":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","effects":[["emit","HTTP_STREAM_EVENT",{"key":"@payload.key","data":"@payload.data","event":"@payload.event","id":"@payload.id"}]]},{"from":"streaming","to":"streaming","event":"HF_FRAME_FAILED","eventId":"evt_CBV66CZV7AXKN9C547MF74MC23","effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":"@payload.kind"}]]},{"from":"streaming","to":"streaming","event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","guard":["not","@entity.eof"],"effects":[["os/recv","@entity.handle","@config.recvBytes",{"key":"read","emit":{"success":"HF_READ","failure":"HF_IO_FAILED"}}]]},{"from":"streaming","to":"streaming","event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","guard":["and","@entity.eof",["not","@entity.flushed"],[">",["bytes/length","@entity.dec"],0]],"effects":[["set","@entity.flushed",true],["emit","HF_FRAME",{"key":"@entity.key","stream":"@entity.stream","data":"@entity.dec","final":true}]]},{"from":"streaming","to":"ready","event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","guard":["and","@entity.eof",["or","@entity.flushed",["=",["bytes/length","@entity.dec"],0]]],"effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["set","@entity.dec",["bytes/from-string",""]],["emit","HTTP_REPLIED",{"key":"@entity.key","status":"@entity.status","headers":["default",["object/fromEntries",["array/map","@entity.headers",["fn","h",["@h.name",["str/join",["array/map",["array/filter","@entity.headers",["fn","g",["=","@g.name","@h.name"]]],["fn","g","@g.value"]],", "]]]]],{}],"body":["bytes/from-string",""]}]]}]},"config":{"origin":{"nullable":false,"type":"url","default":"https://api.example.test","label":"Origin","description":"The scheme and host every request is made against (no trailing slash); declared in egress.","tier":"infra"},"timeoutMs":{"nullable":false,"type":"number","default":30000,"label":"Timeout","description":"The longest the host waits for the fetch to answer.","tier":"infra"},"tokenPattern":{"nullable":false,"type":"string","default":"^[!#$%&'*+.^_`|~0-9A-Za-z-]+$","label":"Token","description":"What a method or header name must match.","tier":"domain"},"valuePattern":{"nullable":false,"type":"string","default":"^[^\\x00-\\x08\\x0a-\\x1f\\x7f]*$","label":"Header value","description":"What a header value may hold: no control character other than a tab.","tier":"domain"},"targetPattern":{"nullable":false,"type":"string","default":"^/[^ \\x00-\\x20\\x7f]*$","label":"Target","description":"A request target: a slash and no space or control character.","tier":"domain"},"streams":{"nullable":false,"type":"[string]","default":["none","sse","jsonl"],"label":"Streams","description":"The stream framings a call may ask for.","tier":"domain","items":{"nullable":false,"type":"string"}},"recvBytes":{"nullable":false,"type":"number","default":16384,"label":"Read size","description":"The most bytes one os/recv of a streamed response takes.","tier":"infra"},"maxBody":{"nullable":false,"type":"number","default":67108864,"label":"Largest body","description":"A streamed body past this many bytes fails.","tier":"infra"},"credentialHeaders":{"nullable":false,"type":"[string]","default":["authorization","proxy-authorization","cookie","x-api-key"],"label":"Credential headers","description":"Header names that carry a credential. A payload never carries one: credentials ride a secret slot, so a call that sets one here is refused.","tier":"domain","items":{"nullable":false,"type":"string"}},"framingHeaders":{"nullable":false,"type":"[string]","default":["host","content-length","transfer-encoding","connection"],"label":"Framing headers","description":"Header names the fetch sets itself; a call that sets one is refused.","tier":"domain","items":{"nullable":false,"type":"string"}}},"dispatch":"client","sourceDeclaration":{"traitId":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB","fingerprint":"54d407c1e3105b464ab644c1da1950255836ded1131c05f88ea67d823fe0b575"}}],"pages":[{"name":"HttpFetchPage","id":"pag_PQ1JY8Z3BNHNTN3E2WM0CPQJY8","path":"","protocol":"boot","traits":[{"ref":"HttpFetch","refId":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},{"ref":"FetchFrame","refId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}]}],"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}]}}],"egress":["https://api.example.test"],"schemaVersion":1,"ledger":{"schemaVersion":1,"entries":{"ent_9MD0HJTDWX6YEQAT2Y5650E3CE":{"id":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE","kind":"entity","bakedName":"HttpFetchFlight","curName":"HttpFetchFlight","renames":[],"owner":"workspace"},"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8":{"id":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","kind":"event","bakedName":"HF_IO_FAILED","curName":"HF_IO_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_5D6VCFW26P13BA8J6GC0433Y82":{"id":"evt_5D6VCFW26P13BA8J6GC0433Y82","kind":"event","bakedName":"HF_CLOSED","curName":"HF_CLOSED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_5V5S9JFEB9Q5MQDD4HSR926E0P":{"id":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","kind":"event","bakedName":"HF_HEAD","curName":"HF_HEAD","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q":{"id":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","kind":"event","bakedName":"HTTP_SEND","curName":"HTTP_SEND","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_AJ07NBK596JMK850P91E35XKWK":{"id":"evt_AJ07NBK596JMK850P91E35XKWK","kind":"event","bakedName":"HF_FAILED","curName":"HF_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_CBV66CZV7AXKN9C547MF74MC23":{"id":"evt_CBV66CZV7AXKN9C547MF74MC23","kind":"event","bakedName":"HF_FRAME_FAILED","curName":"HF_FRAME_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_CP9H1BH22AH156XPDZHPP5NBDD":{"id":"evt_CP9H1BH22AH156XPDZHPP5NBDD","kind":"event","bakedName":"HF_HEAD_FAILED","curName":"HF_HEAD_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST":{"id":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","kind":"event","bakedName":"HF_FRAME_EVENT","curName":"HF_FRAME_EVENT","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF":{"id":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","kind":"event","bakedName":"HF_READ","curName":"HF_READ","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_N4CK3059B1MNGJQD4YK6NA72ZW":{"id":"evt_N4CK3059B1MNGJQD4YK6NA72ZW","kind":"event","bakedName":"HTTP_STREAM_EVENT","curName":"HTTP_STREAM_EVENT","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH":{"id":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","kind":"event","bakedName":"HF_FRAMED","curName":"HF_FRAMED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_NGZ60X63PE1V79SDTS5M39TF2V":{"id":"evt_NGZ60X63PE1V79SDTS5M39TF2V","kind":"event","bakedName":"HF_DRAINED","curName":"HF_DRAINED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_P8637JGGT78D3NS4G9PHEEQVWN":{"id":"evt_P8637JGGT78D3NS4G9PHEEQVWN","kind":"event","bakedName":"HTTP_FAILED","curName":"HTTP_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0":{"id":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","kind":"event","bakedName":"HF_REPLIED","curName":"HF_REPLIED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF":{"id":"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF","kind":"event","bakedName":"HTTP_REPLIED","curName":"HTTP_REPLIED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_SV29N9H57QJKVVR4RVK2AE1DK1":{"id":"evt_SV29N9H57QJKVVR4RVK2AE1DK1","kind":"event","bakedName":"HF_FRAME","curName":"HF_FRAME","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_T7PMXV03NK1TSXDFBFYAC1NWMK":{"id":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","kind":"event","bakedName":"HF_AFTER","curName":"HF_AFTER","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_X88FR9PFD47PJ874HMAB410RPY":{"id":"evt_X88FR9PFD47PJ874HMAB410RPY","kind":"event","bakedName":"INIT","curName":"INIT","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"orb_0MD1Q9EFWM7YA0PPJJMXE0R2X5":{"id":"orb_0MD1Q9EFWM7YA0PPJJMXE0R2X5","kind":"orbital","bakedName":"HttpFetchOrbital","curName":"HttpFetchOrbital","renames":[],"owner":"workspace"},"pag_PQ1JY8Z3BNHNTN3E2WM0CPQJY8":{"id":"pag_PQ1JY8Z3BNHNTN3E2WM0CPQJY8","kind":"page","bakedName":"HttpFetchPage","curName":"HttpFetchPage","renames":[],"owner":"workspace"},"trt_K3D277YS84CM2DCXCSD025Z9RY":{"id":"trt_K3D277YS84CM2DCXCSD025Z9RY","kind":"trait","bakedName":"FetchFrame","curName":"FetchFrame","renames":[],"owner":"workspace"},"trt_M2MAHXAQDHBPRMGX0KTJ283WWB":{"id":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB","kind":"trait","bakedName":"HttpFetch","curName":"HttpFetch","renames":[],"owner":"workspace"}}}}
|
|
1
|
+
{"typeContractVersion":1,"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}]},"name":"std-http-fetch","version":"1.0.0","description":"std-http-fetch — the HTTP client of a program that runs in a browser host, which has no sockets (spec/net/http-fetch.lolo). It answers the events std-http-client answers: HTTP_SEND { key, method, target, headers, body, stream } becomes one os/fetch of method, origin knob plus target, the headers and the body bytes (timeoutMs from the knob), and the host's raw status, headers and body come back as HTTP_REPLIED { key, status, headers, body } for any status (header names lower-cased, repeats joined with a comma and a space, as std-http-client). The origin knob must be declared in egress; the kernel answers an undeclared origin denied without asking the host. A request the atom will not write (method, header or target the patterns refuse, or a header naming framing or a credential) answers HTTP_FAILED kind refused, as std-http-client. A stream of sse or jsonl asks os/fetch with stream true: the host answers at the head, the body is read with os/recv on the handle (config.recvBytes at a time) and each complete frame is answered as HTTP_STREAM_EVENT { key, data, event, id } while the body is still arriving (the framing of std-http-client) The framing is std-http-frame, composed in this atom as the sibling trait FetchFrame: a program that asks for a stream composes FetchFrame beside this trait., then HTTP_REPLIED with an empty body when the body ends and the handle is closed. One stream is in flight per frame; a second HTTP_SEND meanwhile answers HTTP_FAILED kind refused. Any other stream answers HTTP_FAILED kind refused. A host failure keeps its kind denied or timeout, else io; a native host answers os/fetch unsupported, which is io here: a native program composes std-http-client instead. Nothing follows a redirect that the host's fetch does not.","orbitals":[{"name":"HttpFetchOrbital","id":"orb_0MD1Q9EFWM7YA0PPJJMXE0R2X5","uses":[{"from":"almadar-std/http-fetch","as":"Spec"},{"from":"std/behaviors/std-http-frame","as":"Frame"}],"entity":{"name":"HttpFetchFlight","id":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE","persistence":"runtime","fields":[{"nullable":false,"name":"id","type":"string","required":true},{"nullable":false,"name":"key","type":"string","default":"","description":"The key of the stream in flight."},{"nullable":false,"name":"stream","type":"string","default":"none","description":"none, sse or jsonl."},{"nullable":false,"name":"handle","type":"number","default":-1,"description":"The open streamed response, -1 when none."},{"nullable":false,"name":"dec","type":"bytes","default":"","description":"Body bytes read and not yet framed."},{"nullable":false,"name":"status","type":"number","default":0,"description":"The status of the streamed head."},{"nullable":false,"name":"headers","type":"array","default":[],"items":{"nullable":false,"type":"object","properties":{"name":{"nullable":false,"name":"name","type":"string","required":true},"value":{"nullable":false,"name":"value","type":"string","required":true}},"projectedFrom":{"type":"HttpHeader"}},"description":"The headers of the streamed head, names lower-cased."},{"nullable":false,"name":"total","type":"number","default":0,"description":"Body bytes read so far."},{"nullable":false,"name":"eof","type":"boolean","default":false,"description":"The body ended."},{"nullable":false,"name":"flushed","type":"boolean","default":false,"description":"The unterminated rest of the body was framed."}],"invariants":[[">=","@entity.total",0]]},"traits":[{"ref":"Frame.traits.HttpFrame","id":"trt_K3D277YS84CM2DCXCSD025Z9RY","name":"FetchFrame","listens":[{"event":"HF_FRAME","triggers":"FRAME_RUN","source":{"kind":"trait","trait":"HttpFetch"}}]},{"name":"HttpFetch","id":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB","effectRow":[{"kind":"emit","resource":"HF_AFTER"},{"kind":"emit","resource":"HF_FRAME"},{"kind":"emit","resource":"HF_FRAMED"},{"kind":"emit","resource":"HTTP_FAILED"},{"kind":"emit","resource":"HTTP_REPLIED"},{"kind":"emit","resource":"HTTP_STREAM_EVENT"},{"kind":"os/close"},{"kind":"os/fetch"},{"kind":"os/recv"},{"kind":"set","resource":"@entity.dec"},{"kind":"set","resource":"@entity.eof"},{"kind":"set","resource":"@entity.flushed"},{"kind":"set","resource":"@entity.handle"},{"kind":"set","resource":"@entity.headers"},{"kind":"set","resource":"@entity.key"},{"kind":"set","resource":"@entity.status"},{"kind":"set","resource":"@entity.stream"},{"kind":"set","resource":"@entity.total"}],"linkedEntity":"HttpFetchFlight","linkedEntityId":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE","entityRefIds":{"HttpFetchFlight":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE"},"emits":[{"event":"HTTP_REPLIED","eventId":"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF","description":"The response, of any status, whole.","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"body","type":"bytes","required":true}]},{"event":"HTTP_STREAM_EVENT","eventId":"evt_N4CK3059B1MNGJQD4YK6NA72ZW","description":"One complete frame of a streamed response (sse or jsonl).","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"data","type":"string","required":true},{"nullable":true,"name":"event","type":"string"},{"nullable":true,"name":"id","type":"string"}]},{"event":"HTTP_FAILED","eventId":"evt_P8637JGGT78D3NS4G9PHEEQVWN","description":"The call produced no response: kind refused (nothing sent), denied, unsupported (the host cannot fetch), timeout, encoding (a stream frame is not UTF-8) or io.","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]},{"event":"HF_HEAD","eventId":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","description":"Internal: the os/fetch answer of a streamed fetch, at the head.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":true,"name":"handle","type":"number"}]},{"event":"HF_HEAD_FAILED","eventId":"evt_CP9H1BH22AH156XPDZHPP5NBDD","description":"Internal: the os/fetch failure of a streamed fetch.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]},{"event":"HF_READ","eventId":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","description":"Internal: one os/recv answer of a streamed response.","tier":"internal","payloadSchema":[{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"eof","type":"boolean","required":true}]},{"event":"HF_IO_FAILED","eventId":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","description":"Internal: an os/recv of a streamed response failed.","tier":"internal","payloadSchema":[{"nullable":false,"name":"error","type":"string"},{"nullable":false,"name":"kind","type":"string"}]},{"event":"HF_FRAMED","eventId":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","description":"Internal: body bytes were read; frame a stream or read more.","tier":"internal","scope":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","description":"Internal: no frame is complete; read more or finish.","tier":"internal","scope":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"event":"HF_FRAME","eventId":"evt_SV29N9H57QJKVVR4RVK2AE1DK1","description":"Internal: the unframed stream bytes, for the framer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"final","type":"boolean","required":true}]},{"event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82","description":"Internal: the streamed response was closed.","tier":"internal"},{"event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","description":"Internal: the os/fetch answer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true}]},{"event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","description":"Internal: the os/fetch failure.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]}],"listens":[{"event":"FRAME_EVENT","triggers":"HF_FRAME_EVENT","triggersId":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","source":{"kind":"trait","trait":"FetchFrame","traitId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}},{"event":"FRAME_DRAINED","triggers":"HF_DRAINED","triggersId":"evt_NGZ60X63PE1V79SDTS5M39TF2V","source":{"kind":"trait","trait":"FetchFrame","traitId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}},{"event":"FRAME_FAILED","triggers":"HF_FRAME_FAILED","triggersId":"evt_CBV66CZV7AXKN9C547MF74MC23","source":{"kind":"trait","trait":"FetchFrame","traitId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}}],"stateMachine":{"states":[{"name":"ready","isInitial":true},{"name":"opening"},{"name":"streaming"}],"events":[{"key":"INIT","id":"evt_X88FR9PFD47PJ874HMAB410RPY","name":"Initialize"},{"key":"HTTP_SEND","id":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","name":"Http Send","description":"Make one HTTP call; answered HTTP_REPLIED or HTTP_FAILED, and with a stream each frame as HTTP_STREAM_EVENT first.","synonyms":"browser http client, fetch","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"method","type":"string","required":true},{"nullable":false,"name":"target","type":"string","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":false,"name":"stream","type":"string","required":true}],"listened":true},{"key":"HF_REPLIED","id":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","name":"Hf Replied","description":"Internal: the os/fetch answer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true}],"listened":true},{"key":"HF_FAILED","id":"evt_AJ07NBK596JMK850P91E35XKWK","name":"Hf Failed","description":"Internal: the os/fetch failure.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"HF_CLOSED","id":"evt_5D6VCFW26P13BA8J6GC0433Y82","name":"Hf Closed","description":"Internal: the streamed response was closed.","tier":"internal","listened":true},{"key":"HF_HEAD","id":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","name":"Hf Head","description":"Internal: the os/fetch answer of a streamed fetch, at the head.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":true,"name":"handle","type":"number"}],"listened":true},{"key":"HF_HEAD_FAILED","id":"evt_CP9H1BH22AH156XPDZHPP5NBDD","name":"Hf Head Failed","description":"Internal: the os/fetch failure of a streamed fetch.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string"},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"HF_IO_FAILED","id":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","name":"Hf Io Failed","description":"Internal: an os/recv of a streamed response failed.","tier":"internal","payloadSchema":[{"nullable":false,"name":"error","type":"string"},{"nullable":false,"name":"kind","type":"string"}],"listened":true},{"key":"HF_READ","id":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","name":"Hf Read","description":"Internal: one os/recv answer of a streamed response.","tier":"internal","payloadSchema":[{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"eof","type":"boolean","required":true}],"listened":true},{"key":"HF_FRAMED","id":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","name":"Hf Framed","description":"Internal: body bytes were read; frame a stream or read more.","tier":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"key":"HF_DRAINED","id":"evt_NGZ60X63PE1V79SDTS5M39TF2V","name":"Hf Drained","payloadSchema":[{"nullable":false,"name":"rest","type":"bytes","required":true}],"listened":true},{"key":"HF_FRAME_EVENT","id":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","name":"Hf Frame Event","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"data","type":"string","required":true},{"nullable":true,"name":"event","type":"string"},{"nullable":true,"name":"id","type":"string"}],"listened":true},{"key":"HF_FRAME_FAILED","id":"evt_CBV66CZV7AXKN9C547MF74MC23","name":"Hf Frame Failed","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"HF_AFTER","id":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","name":"Hf After","description":"Internal: no frame is complete; read more or finish.","tier":"internal","payloadSchema":[{"nullable":false,"name":"n","type":"number","required":true}]},{"key":"HTTP_REPLIED","id":"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF","name":"Http Replied","description":"The response, of any status, whole.","tier":"primary","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"body","type":"bytes","required":true}]},{"key":"HTTP_STREAM_EVENT","id":"evt_N4CK3059B1MNGJQD4YK6NA72ZW","name":"Http Stream Event","description":"One complete frame of a streamed response (sse or jsonl).","tier":"primary","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"data","type":"string","required":true},{"nullable":true,"name":"event","type":"string"},{"nullable":true,"name":"id","type":"string"}]},{"key":"HTTP_FAILED","id":"evt_P8637JGGT78D3NS4G9PHEEQVWN","name":"Http Failed","description":"The call produced no response: kind refused (nothing sent), denied, unsupported (the host cannot fetch), timeout, encoding (a stream frame is not UTF-8) or io.","tier":"primary","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}]},{"key":"HF_FRAME","id":"evt_SV29N9H57QJKVVR4RVK2AE1DK1","name":"Hf Frame","description":"Internal: the unframed stream bytes, for the framer.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"data","type":"bytes","required":true},{"nullable":false,"name":"final","type":"boolean","required":true}]}],"transitions":[{"from":"ready","to":"ready","event":"INIT","eventId":"evt_X88FR9PFD47PJ874HMAB410RPY"},{"from":"ready","to":"ready","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","guard":["not",["and",["validate/pattern","@payload.method","@config.tokenPattern"],["validate/pattern","@payload.target","@config.targetPattern"],["array/includes","@config.streams","@payload.stream"],["array/every","@payload.headers",["fn","h",["and",["validate/pattern","@h.name","@config.tokenPattern"],["validate/pattern","@h.value","@config.valuePattern"],["not",["array/includes","@config.framingHeaders",["str/lower","@h.name"]]],["not",["array/includes","@config.credentialHeaders",["str/lower","@h.name"]]]]]]]],"effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"the request cannot be written: a method, header, target or stream is not allowed, or a header names framing the fetch sets or carries a credential","kind":"refused"}]]},{"from":"ready","to":"ready","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","guard":["and",["=","@payload.stream","none"],["and",["validate/pattern","@payload.method","@config.tokenPattern"],["validate/pattern","@payload.target","@config.targetPattern"],["array/includes","@config.streams","@payload.stream"],["array/every","@payload.headers",["fn","h",["and",["validate/pattern","@h.name","@config.tokenPattern"],["validate/pattern","@h.value","@config.valuePattern"],["not",["array/includes","@config.framingHeaders",["str/lower","@h.name"]]],["not",["array/includes","@config.credentialHeaders",["str/lower","@h.name"]]]]]]]],"effects":[["os/fetch","@payload.method",["str/concat","@config.origin","@payload.target"],{"headers":"@payload.headers","body":"@payload.body","timeoutMs":"@config.timeoutMs"},{"key":"@payload.key","emit":{"success":"HF_REPLIED","failure":"HF_FAILED"}}]]},{"from":"ready","to":"opening","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","guard":["and",["!=","@payload.stream","none"],["and",["validate/pattern","@payload.method","@config.tokenPattern"],["validate/pattern","@payload.target","@config.targetPattern"],["array/includes","@config.streams","@payload.stream"],["array/every","@payload.headers",["fn","h",["and",["validate/pattern","@h.name","@config.tokenPattern"],["validate/pattern","@h.value","@config.valuePattern"],["not",["array/includes","@config.framingHeaders",["str/lower","@h.name"]]],["not",["array/includes","@config.credentialHeaders",["str/lower","@h.name"]]]]]]]],"effects":[["set","@entity.key","@payload.key"],["set","@entity.stream","@payload.stream"],["set","@entity.handle",-1],["set","@entity.dec",["bytes/from-string",""]],["set","@entity.total",0],["set","@entity.eof",false],["set","@entity.flushed",false],["os/fetch","@payload.method",["str/concat","@config.origin","@payload.target"],{"headers":"@payload.headers","body":"@payload.body","timeoutMs":"@config.timeoutMs","stream":true},{"key":"@payload.key","emit":{"success":"HF_HEAD","failure":"HF_HEAD_FAILED"}}]]},{"from":"ready","to":"ready","event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","effects":[["emit","HTTP_REPLIED",{"key":"@payload.key","status":"@payload.status","headers":["default",["object/fromEntries",["array/map","@payload.headers",["fn","h",[["str/lower","@h.name"],["str/join",["array/map",["array/filter","@payload.headers",["fn","g",["=",["str/lower","@g.name"],["str/lower","@h.name"]]]],["fn","g","@g.value"]],", "]]]]],{}],"body":"@payload.body"}]]},{"from":"ready","to":"ready","event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":["if",["array/includes",["denied","unsupported","timeout"],"@payload.kind"],"@payload.kind","io"]}]]},{"from":"ready","to":"ready","event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82"},{"from":"opening","to":"opening","event":"INIT","eventId":"evt_X88FR9PFD47PJ874HMAB410RPY"},{"from":"opening","to":"opening","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"a stream is in flight on this frame","kind":"refused"}]]},{"from":"opening","to":"opening","event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","effects":[["emit","HTTP_REPLIED",{"key":"@payload.key","status":"@payload.status","headers":["default",["object/fromEntries",["array/map","@payload.headers",["fn","h",[["str/lower","@h.name"],["str/join",["array/map",["array/filter","@payload.headers",["fn","g",["=",["str/lower","@g.name"],["str/lower","@h.name"]]]],["fn","g","@g.value"]],", "]]]]],{}],"body":"@payload.body"}]]},{"from":"opening","to":"opening","event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":["if",["array/includes",["denied","unsupported","timeout"],"@payload.kind"],"@payload.kind","io"]}]]},{"from":"opening","to":"opening","event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82"},{"from":"opening","to":"ready","event":"HF_HEAD","eventId":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","guard":["==","@payload.handle",null],"effects":[["emit","HTTP_FAILED",{"key":"@entity.key","error":"the host answered a streamed fetch with no handle","kind":"io"}]]},{"from":"opening","to":"streaming","event":"HF_HEAD","eventId":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","guard":["!=","@payload.handle",null],"effects":[["set","@entity.handle",["default","@payload.handle",-1]],["set","@entity.status","@payload.status"],["set","@entity.headers",["array/map","@payload.headers",["fn","h",{"name":["str/lower","@h.name"],"value":"@h.value"}]]],["os/recv","@payload.handle","@config.recvBytes",{"key":"read","emit":{"success":"HF_READ","failure":"HF_IO_FAILED"}}]]},{"from":"opening","to":"ready","event":"HF_HEAD_FAILED","eventId":"evt_CP9H1BH22AH156XPDZHPP5NBDD","effects":[["emit","HTTP_FAILED",{"key":"@entity.key","error":"@payload.error","kind":["if",["array/includes",["denied","unsupported","timeout"],"@payload.kind"],"@payload.kind","io"]}]]},{"from":"streaming","to":"streaming","event":"INIT","eventId":"evt_X88FR9PFD47PJ874HMAB410RPY"},{"from":"streaming","to":"streaming","event":"HTTP_SEND","eventId":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"a stream is in flight on this frame","kind":"refused"}]]},{"from":"streaming","to":"streaming","event":"HF_REPLIED","eventId":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","effects":[["emit","HTTP_REPLIED",{"key":"@payload.key","status":"@payload.status","headers":["default",["object/fromEntries",["array/map","@payload.headers",["fn","h",[["str/lower","@h.name"],["str/join",["array/map",["array/filter","@payload.headers",["fn","g",["=",["str/lower","@g.name"],["str/lower","@h.name"]]]],["fn","g","@g.value"]],", "]]]]],{}],"body":"@payload.body"}]]},{"from":"streaming","to":"streaming","event":"HF_FAILED","eventId":"evt_AJ07NBK596JMK850P91E35XKWK","effects":[["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":["if",["array/includes",["denied","unsupported","timeout"],"@payload.kind"],"@payload.kind","io"]}]]},{"from":"streaming","to":"streaming","event":"HF_CLOSED","eventId":"evt_5D6VCFW26P13BA8J6GC0433Y82"},{"from":"streaming","to":"ready","event":"HF_IO_FAILED","eventId":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["emit","HTTP_FAILED",{"key":"@entity.key","error":"@payload.error","kind":["if",["array/includes",["denied","unsupported","timeout"],"@payload.kind"],"@payload.kind","io"]}]]},{"from":"streaming","to":"streaming","event":"HF_READ","eventId":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","effects":[["set","@entity.dec",["bytes/concat",["@entity.dec","@payload.data"]]],["set","@entity.total",["+","@entity.total",["bytes/length","@payload.data"]]],["set","@entity.eof","@payload.eof"],["emit","HF_FRAMED",{"n":["+","@entity.total",["bytes/length","@entity.dec"]]}]]},{"from":"streaming","to":"streaming","event":"HF_FRAMED","eventId":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","guard":[">","@entity.total","@config.maxBody"],"effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["emit","HTTP_FAILED",{"key":"@entity.key","error":"the body is past the largest body","kind":"io"}]]},{"from":"streaming","to":"streaming","event":"HF_FRAMED","eventId":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","guard":["<=","@entity.total","@config.maxBody"],"effects":[["emit","HF_FRAME",{"key":"@entity.key","stream":"@entity.stream","data":"@entity.dec","final":false}]]},{"from":"streaming","to":"streaming","event":"HF_DRAINED","eventId":"evt_NGZ60X63PE1V79SDTS5M39TF2V","effects":[["set","@entity.dec","@payload.rest"],["emit","HF_AFTER",{"n":["+","@entity.total",["bytes/length","@entity.dec"]]}]]},{"from":"streaming","to":"streaming","event":"HF_FRAME_EVENT","eventId":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","effects":[["emit","HTTP_STREAM_EVENT",{"key":"@payload.key","data":"@payload.data","event":"@payload.event","id":"@payload.id"}]]},{"from":"streaming","to":"streaming","event":"HF_FRAME_FAILED","eventId":"evt_CBV66CZV7AXKN9C547MF74MC23","effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["emit","HTTP_FAILED",{"key":"@payload.key","error":"@payload.error","kind":"@payload.kind"}]]},{"from":"streaming","to":"streaming","event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","guard":["not","@entity.eof"],"effects":[["os/recv","@entity.handle","@config.recvBytes",{"key":"read","emit":{"success":"HF_READ","failure":"HF_IO_FAILED"}}]]},{"from":"streaming","to":"streaming","event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","guard":["and","@entity.eof",["not","@entity.flushed"],[">",["bytes/length","@entity.dec"],0]],"effects":[["set","@entity.flushed",true],["emit","HF_FRAME",{"key":"@entity.key","stream":"@entity.stream","data":"@entity.dec","final":true}]]},{"from":"streaming","to":"ready","event":"HF_AFTER","eventId":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","guard":["and","@entity.eof",["or","@entity.flushed",["=",["bytes/length","@entity.dec"],0]]],"effects":[["os/close","@entity.handle",{"key":"close","emit":{"success":"HF_CLOSED","failure":"HF_CLOSED"}}],["set","@entity.handle",-1],["set","@entity.dec",["bytes/from-string",""]],["emit","HTTP_REPLIED",{"key":"@entity.key","status":"@entity.status","headers":["default",["object/fromEntries",["array/map","@entity.headers",["fn","h",["@h.name",["str/join",["array/map",["array/filter","@entity.headers",["fn","g",["=","@g.name","@h.name"]]],["fn","g","@g.value"]],", "]]]]],{}],"body":["bytes/from-string",""]}]]}]},"config":{"origin":{"nullable":false,"type":"url","default":"https://api.example.test","label":"Origin","description":"The scheme and host every request is made against (no trailing slash); declared in egress.","tier":"infra"},"timeoutMs":{"nullable":false,"type":"number","default":30000,"label":"Timeout","description":"The longest the host waits for the fetch to answer.","tier":"infra"},"tokenPattern":{"nullable":false,"type":"string","default":"^[!#$%&'*+.^_`|~0-9A-Za-z-]+$","label":"Token","description":"What a method or header name must match.","tier":"domain"},"valuePattern":{"nullable":false,"type":"string","default":"^[^\\x00-\\x08\\x0a-\\x1f\\x7f]*$","label":"Header value","description":"What a header value may hold: no control character other than a tab.","tier":"domain"},"targetPattern":{"nullable":false,"type":"string","default":"^/[^ \\x00-\\x20\\x7f]*$","label":"Target","description":"A request target: a slash and no space or control character.","tier":"domain"},"streams":{"nullable":false,"type":"[string]","default":["none","sse","jsonl"],"label":"Streams","description":"The stream framings a call may ask for.","tier":"domain","items":{"nullable":false,"type":"string"}},"recvBytes":{"nullable":false,"type":"number","default":16384,"label":"Read size","description":"The most bytes one os/recv of a streamed response takes.","tier":"infra"},"maxBody":{"nullable":false,"type":"number","default":67108864,"label":"Largest body","description":"A streamed body past this many bytes fails.","tier":"infra"},"credentialHeaders":{"nullable":false,"type":"[string]","default":["authorization","proxy-authorization","cookie","x-api-key"],"label":"Credential headers","description":"Header names that carry a credential. A payload never carries one: credentials ride a secret slot, so a call that sets one here is refused.","tier":"domain","items":{"nullable":false,"type":"string"}},"framingHeaders":{"nullable":false,"type":"[string]","default":["host","content-length","transfer-encoding","connection"],"label":"Framing headers","description":"Header names the fetch sets itself; a call that sets one is refused.","tier":"domain","items":{"nullable":false,"type":"string"}}},"dispatch":"client","sourceDeclaration":{"traitId":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB","fingerprint":"40d6656464f9961bbb11aa45f6e8992f9d0d90c871cb2161b6f35af697aeb400"}}],"pages":[{"name":"HttpFetchPage","id":"pag_PQ1JY8Z3BNHNTN3E2WM0CPQJY8","path":"","protocol":"boot","traits":[{"ref":"HttpFetch","refId":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},{"ref":"FetchFrame","refId":"trt_K3D277YS84CM2DCXCSD025Z9RY"}]}],"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}]}}],"egress":["https://api.example.test"],"schemaVersion":1,"ledger":{"schemaVersion":1,"entries":{"ent_9MD0HJTDWX6YEQAT2Y5650E3CE":{"id":"ent_9MD0HJTDWX6YEQAT2Y5650E3CE","kind":"entity","bakedName":"HttpFetchFlight","curName":"HttpFetchFlight","renames":[],"owner":"workspace"},"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8":{"id":"evt_51YJ7RFM57T2KKAV2AR9ZGW8T8","kind":"event","bakedName":"HF_IO_FAILED","curName":"HF_IO_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_5D6VCFW26P13BA8J6GC0433Y82":{"id":"evt_5D6VCFW26P13BA8J6GC0433Y82","kind":"event","bakedName":"HF_CLOSED","curName":"HF_CLOSED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_5V5S9JFEB9Q5MQDD4HSR926E0P":{"id":"evt_5V5S9JFEB9Q5MQDD4HSR926E0P","kind":"event","bakedName":"HF_HEAD","curName":"HF_HEAD","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q":{"id":"evt_8GREZWCRWGCE80VN1F4FBXRZ2Q","kind":"event","bakedName":"HTTP_SEND","curName":"HTTP_SEND","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_AJ07NBK596JMK850P91E35XKWK":{"id":"evt_AJ07NBK596JMK850P91E35XKWK","kind":"event","bakedName":"HF_FAILED","curName":"HF_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_CBV66CZV7AXKN9C547MF74MC23":{"id":"evt_CBV66CZV7AXKN9C547MF74MC23","kind":"event","bakedName":"HF_FRAME_FAILED","curName":"HF_FRAME_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_CP9H1BH22AH156XPDZHPP5NBDD":{"id":"evt_CP9H1BH22AH156XPDZHPP5NBDD","kind":"event","bakedName":"HF_HEAD_FAILED","curName":"HF_HEAD_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST":{"id":"evt_H8YK9B9ZZMZZTDBSEA28QQZ9ST","kind":"event","bakedName":"HF_FRAME_EVENT","curName":"HF_FRAME_EVENT","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF":{"id":"evt_HCB5ZK3G1BR0NJ3KFZ46M6WZVF","kind":"event","bakedName":"HF_READ","curName":"HF_READ","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_N4CK3059B1MNGJQD4YK6NA72ZW":{"id":"evt_N4CK3059B1MNGJQD4YK6NA72ZW","kind":"event","bakedName":"HTTP_STREAM_EVENT","curName":"HTTP_STREAM_EVENT","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH":{"id":"evt_NGYKJ3KBQANVNBMTY3XN4G1HYH","kind":"event","bakedName":"HF_FRAMED","curName":"HF_FRAMED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_NGZ60X63PE1V79SDTS5M39TF2V":{"id":"evt_NGZ60X63PE1V79SDTS5M39TF2V","kind":"event","bakedName":"HF_DRAINED","curName":"HF_DRAINED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_P8637JGGT78D3NS4G9PHEEQVWN":{"id":"evt_P8637JGGT78D3NS4G9PHEEQVWN","kind":"event","bakedName":"HTTP_FAILED","curName":"HTTP_FAILED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0":{"id":"evt_QY6XBHJSMZCTFP0TNTA4AHVWG0","kind":"event","bakedName":"HF_REPLIED","curName":"HF_REPLIED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF":{"id":"evt_RKHQHKYZ6NFKAS1MJ21TJJTZRF","kind":"event","bakedName":"HTTP_REPLIED","curName":"HTTP_REPLIED","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_SV29N9H57QJKVVR4RVK2AE1DK1":{"id":"evt_SV29N9H57QJKVVR4RVK2AE1DK1","kind":"event","bakedName":"HF_FRAME","curName":"HF_FRAME","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_T7PMXV03NK1TSXDFBFYAC1NWMK":{"id":"evt_T7PMXV03NK1TSXDFBFYAC1NWMK","kind":"event","bakedName":"HF_AFTER","curName":"HF_AFTER","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"evt_X88FR9PFD47PJ874HMAB410RPY":{"id":"evt_X88FR9PFD47PJ874HMAB410RPY","kind":"event","bakedName":"INIT","curName":"INIT","renames":[],"owner":"workspace","parent":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB"},"orb_0MD1Q9EFWM7YA0PPJJMXE0R2X5":{"id":"orb_0MD1Q9EFWM7YA0PPJJMXE0R2X5","kind":"orbital","bakedName":"HttpFetchOrbital","curName":"HttpFetchOrbital","renames":[],"owner":"workspace"},"pag_PQ1JY8Z3BNHNTN3E2WM0CPQJY8":{"id":"pag_PQ1JY8Z3BNHNTN3E2WM0CPQJY8","kind":"page","bakedName":"HttpFetchPage","curName":"HttpFetchPage","renames":[],"owner":"workspace"},"trt_K3D277YS84CM2DCXCSD025Z9RY":{"id":"trt_K3D277YS84CM2DCXCSD025Z9RY","kind":"trait","bakedName":"FetchFrame","curName":"FetchFrame","renames":[],"owner":"workspace"},"trt_M2MAHXAQDHBPRMGX0KTJ283WWB":{"id":"trt_M2MAHXAQDHBPRMGX0KTJ283WWB","kind":"trait","bakedName":"HttpFetch","curName":"HttpFetch","renames":[],"owner":"workspace"}}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"typeContractVersion":1,"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"LookupDist":[{"nullable":true,"name":"tarball","type":"string"}],"LookupPackument":[{"nullable":false,"name":"versions","type":"Map<string,LookupVersionDoc>","items":{"nullable":true,"name":"","type":"LookupVersionDoc","projectedFrom":{"type":"LookupVersionDoc"}}},{"nullable":false,"name":"dist-tags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}],"LookupVersionDoc":[{"nullable":true,"name":"dist","type":"LookupDist","projectedFrom":{"type":"LookupDist"}}]},"name":"std-npm-lookup","version":"1.0.0","description":"std-npm-lookup — a read-only client of an npm-protocol registry (public npm or GitHub Packages; the origin is the registry knob and the bearer token is the token credential, both from config). GET only, never a write. One ask at a time; an ask during another answers NPM_LOOKUP_REFUSED npm_busy. NPM_LOOKUP { requestId, name, tag } reads the packument and answers NPM_LOOKED { requestId, name, versions (semver ascending), distTags, version } where version is the dist-tag tag points to (latest when tag is empty), empty when the package has no such tag, and tarballs maps each version to its tarball url, empty when the packument gives none or the url sits outside the registry origin; whether a version exists is its membership in versions. A reply is classified in NPM_LOOKUP_REFUSED.code: 401 and 403 are auth, 404 absent, 5xx unreachable, any other status unexpected; a transport failure is unreachable, an unset credential unconfigured.","orbitals":[{"name":"NpmLookupOrbital","id":"orb_H9VWCD63371HKNT9C78K9WGTJ3","uses":[{"from":"almadar-std/npm-lookup","as":"Spec"},{"from":"std/behaviors/std-http-client","as":"Http"},{"from":"std/behaviors/std-timeout","as":"Timeout"}],"entity":{"name":"NpmLookupAsk","id":"ent_XWTAVVENW2AY17HC1YZB0N5121","persistence":"runtime","fields":[{"nullable":false,"name":"id","type":"string","required":true},{"nullable":false,"name":"requestId","type":"string","default":"","description":"The caller's name for the ask in flight."},{"nullable":false,"name":"name","type":"string","default":"","description":"The package the ask in flight is about."},{"nullable":false,"name":"tag","type":"string","default":"","description":"The dist-tag whose version the ask wants; latest when empty."}]},"traits":[{"ref":"Http.traits.HttpClient","id":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X","name":"LookupHttp","config":{"host":{"type":"unknown","default":"registry.npmjs.org","wired":true},"port":{"type":"unknown","default":443,"wired":true},"tls":{"type":"unknown","default":true,"wired":true},"serverName":{"type":"unknown","default":"registry.npmjs.org","wired":true},"dynamicHost":{"type":"unknown","default":true,"wired":true},"credential":{"type":"unknown","default":"NPM_REGISTRY_TOKEN","wired":true}},"listens":[{"event":"NPM_LOOKUP_HTTP_SEND","triggers":"HTTP_SEND","source":{"kind":"trait","trait":"NpmLookup"}},{"event":"TIMED_OUT","triggers":"HTTP_CANCEL","payloadMapping":{"key":"@payload.key"},"source":{"kind":"trait","trait":"LookupTimeout"}}]},{"ref":"Timeout.traits.Timeout","id":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N","name":"LookupTimeout","config":{"timeoutMs":{"type":"unknown","default":20000,"wired":true},"cancelOnDeadline":{"type":"unknown","default":false,"wired":true}},"listens":[{"event":"NPM_LOOKUP_HTTP_SEND","triggers":"START","payloadMapping":{"key":["as","@payload.key","CallKey"]},"source":{"kind":"trait","trait":"NpmLookup"}},{"event":"HTTP_REPLIED","triggers":"SUCCEEDED","payloadMapping":{"key":["as","@payload.key","CallKey"]},"source":{"kind":"trait","trait":"LookupHttp"}},{"event":"HTTP_FAILED","triggers":"FAILED","payloadMapping":{"key":["as","@payload.key","CallKey"],"error":"@payload.error"},"source":{"kind":"trait","trait":"LookupHttp"}}]},{"name":"NpmLookup","id":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ","effectRow":[{"kind":"emit","resource":"NPM_LOOKED"},{"kind":"emit","resource":"NPM_LOOKUP_GET"},{"kind":"emit","resource":"NPM_LOOKUP_HTTP_SEND"},{"kind":"emit","resource":"NPM_LOOKUP_REFUSED"},{"kind":"set","resource":"@entity.name"},{"kind":"set","resource":"@entity.requestId"},{"kind":"set","resource":"@entity.tag"}],"linkedEntity":"NpmLookupAsk","linkedEntityId":"ent_XWTAVVENW2AY17HC1YZB0N5121","entityRefIds":{"NpmLookupAsk":"ent_XWTAVVENW2AY17HC1YZB0N5121"},"emits":[{"event":"NPM_LOOKED","eventId":"evt_TXGA3EQEF3Q7HP0X836FQYM7C6","description":"The package's published versions, semver ascending, its dist-tags, the version the asked tag points to, and each version's tarball url.","synonyms":"versions list, published versions, dist-tags, latest version, version exists","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"versions","type":"[string]","required":true,"items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"distTags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"version","type":"string","required":true},{"nullable":false,"name":"tarballs","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}]},{"event":"NPM_LOOKUP_REFUSED","eventId":"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ","description":"The lookup failed: code is auth, absent, unreachable, unexpected, unconfigured or npm_busy.","synonyms":"registry failed, 401, unauthorized, not found","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string"},{"nullable":false,"name":"code","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"error","type":"string","required":true}]},{"event":"NPM_LOOKUP_GET","eventId":"evt_PWS6Q87EE7Q73GX56PD2B385RM","description":"Internal: read the packument of the package in flight.","tier":"internal","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true}]},{"event":"NPM_LOOKUP_HTTP_SEND","eventId":"evt_13ABNG67MA3T5DPDP21306J5M7","description":"Internal: the registry read, for the HTTP client.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"method","type":"string","required":true},{"nullable":false,"name":"target","type":"string","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"host","type":"string"}]}],"listens":[{"event":"HTTP_REPLIED","triggers":"NPM_LOOKUP_PACKUMENT","triggersId":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","payloadMapping":{"status":"@payload.status","headers":"@payload.headers","body":["default",["bytes/to-string","@payload.body"],""]},"guard":["=","@payload.key","lookup"],"source":{"kind":"trait","trait":"LookupHttp","traitId":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X"}},{"event":"HTTP_FAILED","triggers":"NPM_LOOKUP_UNREACHABLE","triggersId":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","payloadMapping":{"error":"@payload.error","kind":"@payload.kind"},"guard":["=","@payload.key","lookup"],"source":{"kind":"trait","trait":"LookupHttp","traitId":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X"}},{"event":"TIMED_OUT","triggers":"NPM_LOOKUP_UNREACHABLE","triggersId":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","payloadMapping":{"error":["str/concat","timeout of ","@payload.timeoutMs","ms exceeded"],"kind":"timeout"},"guard":["=","@payload.key","lookup"],"source":{"kind":"trait","trait":"LookupTimeout","traitId":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N"}}],"stateMachine":{"states":[{"name":"idle","isInitial":true},{"name":"looking"}],"events":[{"key":"INIT","id":"evt_CKB8B5XM6ET37DD249J8258ZQB","name":"Initialize"},{"key":"NPM_LOOKUP","id":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","name":"Npm Lookup","description":"Read the package's published versions and dist-tags.","synonyms":"npm view, list versions, dist-tags, latest version, version exists","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"tag","type":"string"}],"listened":true},{"key":"NPM_LOOKUP_GET","id":"evt_PWS6Q87EE7Q73GX56PD2B385RM","name":"Npm Lookup Get","description":"Internal: read the packument of the package in flight.","tier":"internal","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true}]},{"key":"NPM_LOOKUP_PACKUMENT","id":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","name":"Npm Lookup Packument","payloadSchema":[{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"body","type":"string","required":true}],"listened":true},{"key":"NPM_LOOKUP_UNREACHABLE","id":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","name":"Npm Lookup Unreachable","payloadSchema":[{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"NPM_LOOKED","id":"evt_TXGA3EQEF3Q7HP0X836FQYM7C6","name":"Npm Looked","description":"The package's published versions, semver ascending, its dist-tags, the version the asked tag points to, and each version's tarball url.","synonyms":"versions list, published versions, dist-tags, latest version, version exists","tier":"primary","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"versions","type":"[string]","required":true,"items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"distTags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"version","type":"string","required":true},{"nullable":false,"name":"tarballs","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}]},{"key":"NPM_LOOKUP_REFUSED","id":"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ","name":"Npm Lookup Refused","description":"The lookup failed: code is auth, absent, unreachable, unexpected, unconfigured or npm_busy.","synonyms":"registry failed, 401, unauthorized, not found","tier":"primary","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string"},{"nullable":false,"name":"code","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"error","type":"string","required":true}]},{"key":"NPM_LOOKUP_HTTP_SEND","id":"evt_13ABNG67MA3T5DPDP21306J5M7","name":"Npm Lookup Http Send","description":"Internal: the registry read, for the HTTP client.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"method","type":"string","required":true},{"nullable":false,"name":"target","type":"string","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"host","type":"string"}]}],"transitions":[{"from":"idle","to":"idle","event":"INIT","eventId":"evt_CKB8B5XM6ET37DD249J8258ZQB"},{"from":"idle","to":"looking","event":"NPM_LOOKUP","eventId":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","effects":[["set","@entity.requestId","@payload.requestId"],["set","@entity.name","@payload.name"],["set","@entity.tag",["default","@payload.tag","latest"]],["emit","NPM_LOOKUP_GET",{"requestId":"@payload.requestId"}]]},{"from":"looking","to":"idle","event":"INIT","eventId":"evt_CKB8B5XM6ET37DD249J8258ZQB"},{"from":"looking","to":"looking","event":"NPM_LOOKUP","eventId":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@payload.requestId","name":"@payload.name","code":"npm_busy","status":0,"error":["str/concat","the registry is being asked about ","@entity.name"]}]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_GET","eventId":"evt_PWS6Q87EE7Q73GX56PD2B385RM","guard":["not",["str/startsWith","@config.registry","https://"]],"effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":"unconfigured","status":0,"error":"the registry knob must be an https:// origin"}]]},{"from":"looking","to":"looking","event":"NPM_LOOKUP_GET","eventId":"evt_PWS6Q87EE7Q73GX56PD2B385RM","guard":["str/startsWith","@config.registry","https://"],"effects":[["emit","NPM_LOOKUP_HTTP_SEND",{"key":"lookup","method":"GET","target":["str/concat","/",["str/slice","@entity.name",0,1],["str/encode-uri-component",["str/slice","@entity.name",1,["str/len","@entity.name"]]]],"headers":[{"name":"accept","value":"application/json"}],"body":["bytes/from-string",""],"stream":"none","host":["str/slice","@config.registry",8,["str/len","@config.registry"]]}]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_PACKUMENT","eventId":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","guard":["=","@payload.status",200],"effects":[["let",[["doc",["json/parse","@payload.body","LookupPackument"]]],["if",["=","@doc",null],["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":"unexpected","status":"@payload.status","error":["str/concat","the registry answered ","@entity.name"," with a packument that is not JSON"]}],["let",[["rows",["array/map",["object/keys",["object/get","@doc","versions",{}]],["fn","v",{"version":"@v","key":["let",[["parts",["str/split",["str/replace-pattern","@v","-.*$",""],"."]]],["if",["!=",["array/len","@parts"],3],null,["let",[["p0",["array/nth","@parts",0]],["p1",["array/nth","@parts",1]],["p2",["array/nth","@parts",2]]],["if",["and",["validate/required","@p0"],["and",["validate/required","@p1"],["validate/required","@p2"]]],["let",[["major",["str/to-number","@p0"]],["minor",["str/to-number","@p1"]],["patch",["str/to-number","@p2"]]],["if",["or",["=","@major",null],["=","@minor",null],["=","@patch",null]],null,["+",["*",1000000000000,"@major"],["*",1000000,"@minor"],"@patch"]]],null]]]]}]]]],["if",["array/some","@rows",["fn","r",["=","@r.key",null]]],["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":"unexpected","status":"@payload.status","error":["str/concat","the registry listed a version of ","@entity.name"," that is not semver"]}],["emit","NPM_LOOKED",{"requestId":"@entity.requestId","name":"@entity.name","versions":["array/map",["array/sort","@rows","key","asc"],["fn","r","@r.version"]],"distTags":["object/get","@doc","dist-tags",{}],"tarballs":["object/mapValues",["object/get","@doc","versions",{}],["fn","d",["if",["validate/required","@d"],["let",[["u",["object/get",["object/get","@d","dist",{}],"tarball",""]]],["if",["str/startsWith","@u","@config.registry"],"@u",""]],""]]],"version":["object/get",["object/get","@doc","dist-tags",{}],"@entity.tag",""]}]]]]]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_PACKUMENT","eventId":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","guard":["!=","@payload.status",200],"effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":["if",["or",["=","@payload.status",401],["=","@payload.status",403]],"auth",["if",["=","@payload.status",404],"absent",["if",[">=","@payload.status",500],"unreachable","unexpected"]]],"status":"@payload.status","error":["str/concat","the registry answered ","@payload.status"," for ","@entity.name"]}]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_UNREACHABLE","eventId":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":["if",["=","@payload.kind","denied"],"unconfigured","unreachable"],"status":0,"error":"@payload.error"}]]}]},"config":{"registry":{"nullable":false,"type":"url","default":"https://registry.npmjs.org","label":"Registry origin","description":"The registry origin (https://host, no trailing slash); the host must be granted in net. https://npm.pkg.github.com for GitHub Packages, whose composer sets the LookupHttp credential.","synonyms":"npm registry, github packages","tier":"infra"}},"sourceDeclaration":{"traitId":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ","fingerprint":"ce38d504ac0ef1eb70d757feb61c7d15bc726b9ad9702498f4adcfd9ba503239"}}],"pages":[{"name":"NpmLookupPage","id":"pag_0NB3VC4WAGE58215SEG09MGJTH","path":"","protocol":"boot","traits":[{"ref":"NpmLookup","refId":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},{"ref":"LookupHttp","refId":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X"},{"ref":"LookupTimeout","refId":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N"}]}],"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"LookupDist":[{"nullable":true,"name":"tarball","type":"string"}],"LookupPackument":[{"nullable":false,"name":"versions","type":"Map<string,LookupVersionDoc>","items":{"nullable":true,"name":"","type":"LookupVersionDoc","projectedFrom":{"type":"LookupVersionDoc"}}},{"nullable":false,"name":"dist-tags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}],"LookupVersionDoc":[{"nullable":true,"name":"dist","type":"LookupDist","projectedFrom":{"type":"LookupDist"}}]}}],"osGrants":{"fs":[],"exec":[],"net":[{"target":"registry.npmjs.org:443","kinds":["tcp"]},{"target":"*.npmjs.org:443","kinds":["tcp"]},{"target":"*.pkg.github.com:443","kinds":["tcp"]}],"env":[],"stdio":[],"sys":[],"desktop":[]},"schemaVersion":1,"ledger":{"schemaVersion":1,"entries":{"ent_XWTAVVENW2AY17HC1YZB0N5121":{"id":"ent_XWTAVVENW2AY17HC1YZB0N5121","kind":"entity","bakedName":"NpmLookupAsk","curName":"NpmLookupAsk","renames":[],"owner":"workspace"},"evt_13ABNG67MA3T5DPDP21306J5M7":{"id":"evt_13ABNG67MA3T5DPDP21306J5M7","kind":"event","bakedName":"NPM_LOOKUP_HTTP_SEND","curName":"NPM_LOOKUP_HTTP_SEND","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ":{"id":"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ","kind":"event","bakedName":"NPM_LOOKUP_REFUSED","curName":"NPM_LOOKUP_REFUSED","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_CKB8B5XM6ET37DD249J8258ZQB":{"id":"evt_CKB8B5XM6ET37DD249J8258ZQB","kind":"event","bakedName":"INIT","curName":"INIT","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_K4TY7RJ6N93AMVZDGY25CDQCQT":{"id":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","kind":"event","bakedName":"NPM_LOOKUP","curName":"NPM_LOOKUP","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_PWS6Q87EE7Q73GX56PD2B385RM":{"id":"evt_PWS6Q87EE7Q73GX56PD2B385RM","kind":"event","bakedName":"NPM_LOOKUP_GET","curName":"NPM_LOOKUP_GET","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_TXGA3EQEF3Q7HP0X836FQYM7C6":{"id":"evt_TXGA3EQEF3Q7HP0X836FQYM7C6","kind":"event","bakedName":"NPM_LOOKED","curName":"NPM_LOOKED","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC":{"id":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","kind":"event","bakedName":"NPM_LOOKUP_UNREACHABLE","curName":"NPM_LOOKUP_UNREACHABLE","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC":{"id":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","kind":"event","bakedName":"NPM_LOOKUP_PACKUMENT","curName":"NPM_LOOKUP_PACKUMENT","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"orb_H9VWCD63371HKNT9C78K9WGTJ3":{"id":"orb_H9VWCD63371HKNT9C78K9WGTJ3","kind":"orbital","bakedName":"NpmLookupOrbital","curName":"NpmLookupOrbital","renames":[],"owner":"workspace"},"pag_0NB3VC4WAGE58215SEG09MGJTH":{"id":"pag_0NB3VC4WAGE58215SEG09MGJTH","kind":"page","bakedName":"NpmLookupPage","curName":"NpmLookupPage","renames":[],"owner":"workspace"},"trt_WHD72YKS2DWH6JNPXBYCM85JXJ":{"id":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ","kind":"trait","bakedName":"NpmLookup","curName":"NpmLookup","renames":[],"owner":"workspace"},"trt_YHACMFTC3561JMDC2ZGGQ5PD8X":{"id":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X","kind":"trait","bakedName":"LookupHttp","curName":"LookupHttp","renames":[],"owner":"workspace"},"trt_ZXN02GETP5DB2Z57EJVBK8DF8N":{"id":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N","kind":"trait","bakedName":"LookupTimeout","curName":"LookupTimeout","renames":[],"owner":"workspace"}}}}
|
|
1
|
+
{"typeContractVersion":1,"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"LookupDist":[{"nullable":true,"name":"tarball","type":"string"}],"LookupPackument":[{"nullable":false,"name":"versions","type":"Map<string,LookupVersionDoc>","items":{"nullable":true,"name":"","type":"LookupVersionDoc","projectedFrom":{"type":"LookupVersionDoc"}}},{"nullable":false,"name":"dist-tags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}],"LookupVersionDoc":[{"nullable":true,"name":"dist","type":"LookupDist","projectedFrom":{"type":"LookupDist"}}]},"name":"std-npm-lookup","version":"1.0.0","description":"std-npm-lookup — a read-only client of an npm-protocol registry (public npm or GitHub Packages; the origin is the registry knob and the bearer token is the token credential, both from config). GET only, never a write. One ask at a time; an ask during another answers NPM_LOOKUP_REFUSED npm_busy. NPM_LOOKUP { requestId, name, tag } reads the packument and answers NPM_LOOKED { requestId, name, versions (semver ascending), distTags, version } where version is the dist-tag tag points to (latest when tag is empty), empty when the package has no such tag, and tarballs maps each version to its tarball url, empty when the packument gives none or the url sits outside the registry origin; whether a version exists is its membership in versions. A reply is classified in NPM_LOOKUP_REFUSED.code: 401 and 403 are auth, 404 absent, 5xx unreachable, any other status unexpected; a transport failure is unreachable, an unset credential unconfigured.","orbitals":[{"name":"NpmLookupOrbital","id":"orb_H9VWCD63371HKNT9C78K9WGTJ3","uses":[{"from":"almadar-std/npm-lookup","as":"Spec"},{"from":"std/behaviors/std-http-client","as":"Http"},{"from":"std/behaviors/std-timeout","as":"Timeout"}],"entity":{"name":"NpmLookupAsk","id":"ent_XWTAVVENW2AY17HC1YZB0N5121","persistence":"runtime","fields":[{"nullable":false,"name":"id","type":"string","required":true},{"nullable":false,"name":"requestId","type":"string","default":"","description":"The caller's name for the ask in flight."},{"nullable":false,"name":"name","type":"string","default":"","description":"The package the ask in flight is about."},{"nullable":false,"name":"tag","type":"string","default":"","description":"The dist-tag whose version the ask wants; latest when empty."}]},"traits":[{"ref":"Http.traits.HttpClient","id":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X","name":"LookupHttp","config":{"host":{"type":"unknown","default":"registry.npmjs.org","wired":true},"port":{"type":"unknown","default":443,"wired":true},"tls":{"type":"unknown","default":true,"wired":true},"serverName":{"type":"unknown","default":"registry.npmjs.org","wired":true},"dynamicHost":{"type":"unknown","default":true,"wired":true},"credential":{"type":"unknown","default":"NPM_REGISTRY_TOKEN","wired":true}},"listens":[{"event":"NPM_LOOKUP_HTTP_SEND","triggers":"HTTP_SEND","source":{"kind":"trait","trait":"NpmLookup"}},{"event":"TIMED_OUT","triggers":"HTTP_CANCEL","payloadMapping":{"key":"@payload.key"},"source":{"kind":"trait","trait":"LookupTimeout"}}]},{"ref":"Timeout.traits.Timeout","id":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N","name":"LookupTimeout","config":{"timeoutMs":{"type":"unknown","default":20000,"wired":true},"cancelOnDeadline":{"type":"unknown","default":false,"wired":true}},"listens":[{"event":"NPM_LOOKUP_HTTP_SEND","triggers":"START","payloadMapping":{"key":["as","@payload.key","CallKey"]},"source":{"kind":"trait","trait":"NpmLookup"}},{"event":"HTTP_REPLIED","triggers":"SUCCEEDED","payloadMapping":{"key":["as","@payload.key","CallKey"]},"source":{"kind":"trait","trait":"LookupHttp"}},{"event":"HTTP_FAILED","triggers":"FAILED","payloadMapping":{"key":["as","@payload.key","CallKey"],"error":"@payload.error"},"source":{"kind":"trait","trait":"LookupHttp"}}]},{"name":"NpmLookup","id":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ","effectRow":[{"kind":"emit","resource":"NPM_LOOKED"},{"kind":"emit","resource":"NPM_LOOKUP_GET"},{"kind":"emit","resource":"NPM_LOOKUP_HTTP_SEND"},{"kind":"emit","resource":"NPM_LOOKUP_REFUSED"},{"kind":"set","resource":"@entity.name"},{"kind":"set","resource":"@entity.requestId"},{"kind":"set","resource":"@entity.tag"}],"linkedEntity":"NpmLookupAsk","linkedEntityId":"ent_XWTAVVENW2AY17HC1YZB0N5121","entityRefIds":{"NpmLookupAsk":"ent_XWTAVVENW2AY17HC1YZB0N5121"},"emits":[{"event":"NPM_LOOKED","eventId":"evt_TXGA3EQEF3Q7HP0X836FQYM7C6","description":"The package's published versions, semver ascending, its dist-tags, the version the asked tag points to, and each version's tarball url.","synonyms":"versions list, published versions, dist-tags, latest version, version exists","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"versions","type":"[string]","required":true,"items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"distTags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"version","type":"string","required":true},{"nullable":false,"name":"tarballs","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}]},{"event":"NPM_LOOKUP_REFUSED","eventId":"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ","description":"The lookup failed: code is auth, absent, unreachable, unexpected, unconfigured or npm_busy.","synonyms":"registry failed, 401, unauthorized, not found","tier":"primary","scope":"external","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string"},{"nullable":false,"name":"code","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"error","type":"string","required":true}]},{"event":"NPM_LOOKUP_GET","eventId":"evt_PWS6Q87EE7Q73GX56PD2B385RM","description":"Internal: read the packument of the package in flight.","tier":"internal","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true}]},{"event":"NPM_LOOKUP_HTTP_SEND","eventId":"evt_13ABNG67MA3T5DPDP21306J5M7","description":"Internal: the registry read, for the HTTP client.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"method","type":"string","required":true},{"nullable":false,"name":"target","type":"string","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"host","type":"string"}]}],"listens":[{"event":"HTTP_REPLIED","triggers":"NPM_LOOKUP_PACKUMENT","triggersId":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","payloadMapping":{"status":"@payload.status","headers":"@payload.headers","body":["default",["bytes/to-string","@payload.body"],""]},"guard":["=","@payload.key","lookup"],"source":{"kind":"trait","trait":"LookupHttp","traitId":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X"}},{"event":"HTTP_FAILED","triggers":"NPM_LOOKUP_UNREACHABLE","triggersId":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","payloadMapping":{"error":"@payload.error","kind":"@payload.kind"},"guard":["=","@payload.key","lookup"],"source":{"kind":"trait","trait":"LookupHttp","traitId":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X"}},{"event":"TIMED_OUT","triggers":"NPM_LOOKUP_UNREACHABLE","triggersId":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","payloadMapping":{"error":["str/concat","timeout of ","@payload.timeoutMs","ms exceeded"],"kind":"timeout"},"guard":["=","@payload.key","lookup"],"source":{"kind":"trait","trait":"LookupTimeout","traitId":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N"}}],"stateMachine":{"states":[{"name":"idle","isInitial":true},{"name":"looking"}],"events":[{"key":"INIT","id":"evt_CKB8B5XM6ET37DD249J8258ZQB","name":"Initialize"},{"key":"NPM_LOOKUP","id":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","name":"Npm Lookup","description":"Read the package's published versions and dist-tags.","synonyms":"npm view, list versions, dist-tags, latest version, version exists","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"tag","type":"string"}],"listened":true},{"key":"NPM_LOOKUP_GET","id":"evt_PWS6Q87EE7Q73GX56PD2B385RM","name":"Npm Lookup Get","description":"Internal: read the packument of the package in flight.","tier":"internal","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true}]},{"key":"NPM_LOOKUP_PACKUMENT","id":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","name":"Npm Lookup Packument","payloadSchema":[{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"headers","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"body","type":"string","required":true}],"listened":true},{"key":"NPM_LOOKUP_UNREACHABLE","id":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","name":"Npm Lookup Unreachable","payloadSchema":[{"nullable":false,"name":"error","type":"string","required":true},{"nullable":false,"name":"kind","type":"string","required":true}],"listened":true},{"key":"NPM_LOOKED","id":"evt_TXGA3EQEF3Q7HP0X836FQYM7C6","name":"Npm Looked","description":"The package's published versions, semver ascending, its dist-tags, the version the asked tag points to, and each version's tarball url.","synonyms":"versions list, published versions, dist-tags, latest version, version exists","tier":"primary","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"versions","type":"[string]","required":true,"items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"distTags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}},{"nullable":false,"name":"version","type":"string","required":true},{"nullable":false,"name":"tarballs","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}]},{"key":"NPM_LOOKUP_REFUSED","id":"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ","name":"Npm Lookup Refused","description":"The lookup failed: code is auth, absent, unreachable, unexpected, unconfigured or npm_busy.","synonyms":"registry failed, 401, unauthorized, not found","tier":"primary","payloadSchema":[{"nullable":false,"name":"requestId","type":"string","required":true},{"nullable":false,"name":"name","type":"string"},{"nullable":false,"name":"code","type":"string","required":true},{"nullable":false,"name":"status","type":"number","required":true},{"nullable":false,"name":"error","type":"string","required":true}]},{"key":"NPM_LOOKUP_HTTP_SEND","id":"evt_13ABNG67MA3T5DPDP21306J5M7","name":"Npm Lookup Http Send","description":"Internal: the registry read, for the HTTP client.","tier":"internal","payloadSchema":[{"nullable":false,"name":"key","type":"string","required":true},{"nullable":false,"name":"method","type":"string","required":true},{"nullable":false,"name":"target","type":"string","required":true},{"nullable":false,"name":"headers","type":"[object]","required":true,"properties":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"items":{"nullable":false,"name":"","type":"HttpHeader","projectedFrom":{"type":"HttpHeader"}}},{"nullable":false,"name":"body","type":"bytes","required":true},{"nullable":false,"name":"stream","type":"string","required":true},{"nullable":false,"name":"host","type":"string"}]}],"transitions":[{"from":"idle","to":"idle","event":"INIT","eventId":"evt_CKB8B5XM6ET37DD249J8258ZQB"},{"from":"idle","to":"looking","event":"NPM_LOOKUP","eventId":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","effects":[["set","@entity.requestId","@payload.requestId"],["set","@entity.name","@payload.name"],["set","@entity.tag",["default","@payload.tag","latest"]],["emit","NPM_LOOKUP_GET",{"requestId":"@payload.requestId"}]]},{"from":"looking","to":"idle","event":"INIT","eventId":"evt_CKB8B5XM6ET37DD249J8258ZQB"},{"from":"looking","to":"looking","event":"NPM_LOOKUP","eventId":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@payload.requestId","name":"@payload.name","code":"npm_busy","status":0,"error":["str/concat","the registry is being asked about ","@entity.name"]}]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_GET","eventId":"evt_PWS6Q87EE7Q73GX56PD2B385RM","guard":["not",["str/startsWith","@config.registry","https://"]],"effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":"unconfigured","status":0,"error":"the registry knob must be an https:// origin"}]]},{"from":"looking","to":"looking","event":"NPM_LOOKUP_GET","eventId":"evt_PWS6Q87EE7Q73GX56PD2B385RM","guard":["str/startsWith","@config.registry","https://"],"effects":[["emit","NPM_LOOKUP_HTTP_SEND",{"key":"lookup","method":"GET","target":["str/concat","/",["str/slice","@entity.name",0,1],["str/encode-uri-component",["str/slice","@entity.name",1,["str/len","@entity.name"]]]],"headers":[{"name":"accept","value":"application/json"}],"body":["bytes/from-string",""],"stream":"none","host":["str/slice","@config.registry",8,["str/len","@config.registry"]]}]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_PACKUMENT","eventId":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","guard":["=","@payload.status",200],"effects":[["let",[["doc",["json/parse","@payload.body","LookupPackument"]]],["if",["=","@doc",null],["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":"unexpected","status":"@payload.status","error":["str/concat","the registry answered ","@entity.name"," with a packument that is not JSON"]}],["let",[["rows",["array/map",["object/keys",["object/get","@doc","versions",{}]],["fn","v",{"version":"@v","key":["let",[["parts",["str/split",["str/replace-pattern","@v","-.*$",""],"."]]],["if",["!=",["array/len","@parts"],3],null,["let",[["p0",["array/nth","@parts",0]],["p1",["array/nth","@parts",1]],["p2",["array/nth","@parts",2]]],["if",["and",["validate/required","@p0"],["and",["validate/required","@p1"],["validate/required","@p2"]]],["let",[["major",["str/to-number","@p0"]],["minor",["str/to-number","@p1"]],["patch",["str/to-number","@p2"]]],["if",["or",["=","@major",null],["=","@minor",null],["=","@patch",null]],null,["+",["*",1000000000000,"@major"],["*",1000000,"@minor"],"@patch"]]],null]]]]}]]]],["if",["array/some","@rows",["fn","r",["=","@r.key",null]]],["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":"unexpected","status":"@payload.status","error":["str/concat","the registry listed a version of ","@entity.name"," that is not semver"]}],["emit","NPM_LOOKED",{"requestId":"@entity.requestId","name":"@entity.name","versions":["array/map",["array/sort","@rows","key","asc"],["fn","r","@r.version"]],"distTags":["object/get","@doc","dist-tags",{}],"tarballs":["object/mapValues",["object/get","@doc","versions",{}],["fn","d",["if",["validate/required","@d"],["let",[["u",["object/get",["object/get","@d","dist",{}],"tarball",""]]],["if",["str/startsWith","@u","@config.registry"],"@u",""]],""]]],"version":["object/get",["object/get","@doc","dist-tags",{}],"@entity.tag",""]}]]]]]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_PACKUMENT","eventId":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","guard":["!=","@payload.status",200],"effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":["if",["or",["=","@payload.status",401],["=","@payload.status",403]],"auth",["if",["=","@payload.status",404],"absent",["if",[">=","@payload.status",500],"unreachable","unexpected"]]],"status":"@payload.status","error":["str/concat","the registry answered ","@payload.status"," for ","@entity.name"]}]]},{"from":"looking","to":"idle","event":"NPM_LOOKUP_UNREACHABLE","eventId":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","effects":[["emit","NPM_LOOKUP_REFUSED",{"requestId":"@entity.requestId","name":"@entity.name","code":["if",["array/includes",["denied","unsupported"],"@payload.kind"],"unconfigured","unreachable"],"status":0,"error":"@payload.error"}]]}]},"config":{"registry":{"nullable":false,"type":"url","default":"https://registry.npmjs.org","label":"Registry origin","description":"The registry origin (https://host, no trailing slash); the host must be granted in net. https://npm.pkg.github.com for GitHub Packages, whose composer sets the LookupHttp credential.","synonyms":"npm registry, github packages","tier":"infra"}},"sourceDeclaration":{"traitId":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ","fingerprint":"c7fa99eed17b2879c7c1690c1c628ecc04a79ed87896c09479c654aa3b4e66fa"}}],"pages":[{"name":"NpmLookupPage","id":"pag_0NB3VC4WAGE58215SEG09MGJTH","path":"","protocol":"boot","traits":[{"ref":"NpmLookup","refId":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},{"ref":"LookupHttp","refId":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X"},{"ref":"LookupTimeout","refId":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N"}]}],"types":{"HttpHeader":[{"nullable":false,"name":"name","type":"string","required":true},{"nullable":false,"name":"value","type":"string","required":true}],"LookupDist":[{"nullable":true,"name":"tarball","type":"string"}],"LookupPackument":[{"nullable":false,"name":"versions","type":"Map<string,LookupVersionDoc>","items":{"nullable":true,"name":"","type":"LookupVersionDoc","projectedFrom":{"type":"LookupVersionDoc"}}},{"nullable":false,"name":"dist-tags","type":"Map<string,string>","items":{"nullable":false,"name":"","type":"string"}}],"LookupVersionDoc":[{"nullable":true,"name":"dist","type":"LookupDist","projectedFrom":{"type":"LookupDist"}}]}}],"osGrants":{"fs":[],"exec":[],"net":[{"target":"registry.npmjs.org:443","kinds":["tcp"]},{"target":"*.npmjs.org:443","kinds":["tcp"]},{"target":"*.pkg.github.com:443","kinds":["tcp"]}],"env":[],"stdio":[],"sys":[],"desktop":[]},"schemaVersion":1,"ledger":{"schemaVersion":1,"entries":{"ent_XWTAVVENW2AY17HC1YZB0N5121":{"id":"ent_XWTAVVENW2AY17HC1YZB0N5121","kind":"entity","bakedName":"NpmLookupAsk","curName":"NpmLookupAsk","renames":[],"owner":"workspace"},"evt_13ABNG67MA3T5DPDP21306J5M7":{"id":"evt_13ABNG67MA3T5DPDP21306J5M7","kind":"event","bakedName":"NPM_LOOKUP_HTTP_SEND","curName":"NPM_LOOKUP_HTTP_SEND","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ":{"id":"evt_7XVMB5ZQ0JVG93V5D4XS4HQVGZ","kind":"event","bakedName":"NPM_LOOKUP_REFUSED","curName":"NPM_LOOKUP_REFUSED","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_CKB8B5XM6ET37DD249J8258ZQB":{"id":"evt_CKB8B5XM6ET37DD249J8258ZQB","kind":"event","bakedName":"INIT","curName":"INIT","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_K4TY7RJ6N93AMVZDGY25CDQCQT":{"id":"evt_K4TY7RJ6N93AMVZDGY25CDQCQT","kind":"event","bakedName":"NPM_LOOKUP","curName":"NPM_LOOKUP","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_PWS6Q87EE7Q73GX56PD2B385RM":{"id":"evt_PWS6Q87EE7Q73GX56PD2B385RM","kind":"event","bakedName":"NPM_LOOKUP_GET","curName":"NPM_LOOKUP_GET","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_TXGA3EQEF3Q7HP0X836FQYM7C6":{"id":"evt_TXGA3EQEF3Q7HP0X836FQYM7C6","kind":"event","bakedName":"NPM_LOOKED","curName":"NPM_LOOKED","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC":{"id":"evt_VPBY7XVCHRP8W5ADAT18EKZ3EC","kind":"event","bakedName":"NPM_LOOKUP_UNREACHABLE","curName":"NPM_LOOKUP_UNREACHABLE","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC":{"id":"evt_ZRXZSQHW4AY25DNGYVXQBRP1NC","kind":"event","bakedName":"NPM_LOOKUP_PACKUMENT","curName":"NPM_LOOKUP_PACKUMENT","renames":[],"owner":"workspace","parent":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ"},"orb_H9VWCD63371HKNT9C78K9WGTJ3":{"id":"orb_H9VWCD63371HKNT9C78K9WGTJ3","kind":"orbital","bakedName":"NpmLookupOrbital","curName":"NpmLookupOrbital","renames":[],"owner":"workspace"},"pag_0NB3VC4WAGE58215SEG09MGJTH":{"id":"pag_0NB3VC4WAGE58215SEG09MGJTH","kind":"page","bakedName":"NpmLookupPage","curName":"NpmLookupPage","renames":[],"owner":"workspace"},"trt_WHD72YKS2DWH6JNPXBYCM85JXJ":{"id":"trt_WHD72YKS2DWH6JNPXBYCM85JXJ","kind":"trait","bakedName":"NpmLookup","curName":"NpmLookup","renames":[],"owner":"workspace"},"trt_YHACMFTC3561JMDC2ZGGQ5PD8X":{"id":"trt_YHACMFTC3561JMDC2ZGGQ5PD8X","kind":"trait","bakedName":"LookupHttp","curName":"LookupHttp","renames":[],"owner":"workspace"},"trt_ZXN02GETP5DB2Z57EJVBK8DF8N":{"id":"trt_ZXN02GETP5DB2Z57EJVBK8DF8N","kind":"trait","bakedName":"LookupTimeout","curName":"LookupTimeout","renames":[],"owner":"workspace"}}}}
|