{
  "record": {
    "schema": "flowrs.registry.record/1",
    "package": {
      "name": "board-pico-w",
      "version": "0.1.0",
      "kind": "board"
    },
    "hash": "sha256:d9c4ae03c6a38f95932967a88c4d6074189bed775a0d0b67a48d457a070ed504",
    "manifest": {
      "schema": "flowrs.package/1",
      "name": "board-pico-w",
      "version": "0.1.0",
      "kind": "board",
      "licence": "Apache-2.0",
      "description": "Raspberry Pi Pico W: the Pico's RP2040, UF2 flashing and header pins, none of them the GPIOs its CYW43439 radio takes.",
      "provides": [
        "rpi_pico_w"
      ],
      "data": "pico_w.json",
      "tests": [
        "the_board_reads_and_is_the_pico_w",
        "its_chip_and_flashing_are_the_picos",
        "its_pins_are_the_picos_and_none_is_the_radios",
        "the_harvested_catalogue_agrees"
      ],
      "needs": {
        "network": [],
        "filesystem": []
      },
      "ports": [
        {
          "of": "rpi_pico_w",
          "port": "adc",
          "output": false,
          "unit": "V"
        },
        {
          "of": "rpi_pico_w",
          "port": "gpio",
          "output": false,
          "unit": "none"
        },
        {
          "of": "rpi_pico_w",
          "port": "i2c",
          "output": false,
          "unit": "none"
        },
        {
          "of": "rpi_pico_w",
          "port": "spi",
          "output": false,
          "unit": "none"
        },
        {
          "of": "rpi_pico_w",
          "port": "uart",
          "output": false,
          "unit": "none"
        }
      ]
    },
    "conditions": [
      {
        "id": "compiles",
        "status": "passed",
        "how": [
          "observed"
        ],
        "detail": "it builds offline, confined, against flowRS's crates and lock (2 test binaries)"
      },
      {
        "id": "tests",
        "status": "passed",
        "how": [
          "observed"
        ],
        "detail": "4 passed, each binary confined (4 named in the manifest, all passed); 0 ignored; doc tests are not run"
      },
      {
        "id": "no_runtime_install",
        "status": "passed",
        "how": [
          "observed",
          "static"
        ],
        "detail": "no program started and nothing written outside its directories, built and run confined; every crate is one flowRS's lock pins; no process or library loading in its Rust (239 other denials, reads and lookups, recorded)"
      },
      {
        "id": "no_undeclared_network",
        "status": "passed",
        "how": [
          "observed",
          "static"
        ],
        "detail": "no socket and no name lookup, built and run with the network denied; no socket API or network crate in its Rust"
      },
      {
        "id": "units",
        "status": "passed",
        "how": [
          "observed",
          "static"
        ],
        "detail": "5 ports read from its code, each declared, each as the manifest says"
      }
    ],
    "toolchain": {
      "rustc": "rustc 1.99.1 (58cf8f9c3 2026-10-13)",
      "cargo": "cargo 1.99.1 (5f94df478 2026-08-27)",
      "host": "aarch64-apple-darwin",
      "sandbox": "seatbelt",
      "observation": "kernel reports read back (canary seen)"
    },
    "flowrs_commit": "448d1c56275905b7322e0eb9853a61ca0214ac67",
    "verified_at": "2026-10-31T13:55:21Z",
    "verifier": "flowrs-registry 0.1.0"
  },
  "signature": {
    "v": 2,
    "key": "dc5d537054e6ca29b068f7a4375d0e8140af371410bd357235a146ef44d94ed33b6dfbe9c7a7ac772ec9d9ddaae7ca7b8028c9e163e39bfef3192748d9dd4e9ec4e6a705462ab98fbf030e294f78eadadd10122b0bd93a146be65c19751d4ec6eabf441d7e841630c495b2d57f41283232c45b3b4bb774c41be1bce61d551264603a500f3f387950685e4576dc280247b88fcf4dec7ee268e4d487b127d0bf79fd7a9d337e51d2c29d981f3f1b89afffbabff3f20077a90af83de9b4e0c75793d7d988857556d556e7c137c3917468f1d3a09a2066145d371ddf0ac2c37372974741d4e442e02a3c5e4c5e41f7222a54b3b3727610118f93b3d5ffc2bd2d2f7f91c8335ec0f840bfc4de7a43575f3b2db7eecb6f9585a37fb5908493d024d74e63b2dc945ea2f18ce3c542cacc0d64abeea6cb301ca8b22dc8d3cc3b7ee1b0999b62d6e8221d2c6b7f527a16ddaf9a8fb8fd2d94d90f6f4e6738015d9fd0e9fd47ff80c3aea251b570ebd0f16cb917fa39d6adca0e5359ccae44a4f4668314c263d85c336bb01d981e87ba267655232b095ba02bfc402257a5a1832f2a55f18aa5e94a75add7c7b77ce763773d3f57e326e45a7aa5de1bd6e3ee0b2f87a565494732a5c9bc15f442358a44f5093f32b7e4ab176afde3af7eff0af88cf4ee1870616252e75c639b54e7f4ccda08c7139488356b71fedae03c6c30a767311a1a7170ee04423d3476c85102287cedfaa5935a3d69737903a479f3051b254e3e90b97802497ec4ce32a3798df2436a1ac684b41c661f395251a286ea179c6011b98fc6cf34fe2408a2968478e30bb06e62ac6477cd32d5d9d560f65c5ae9d0ff66721629f8c00f06ebd229b68ea17dfbedbc3f05cf6211e26c163eabd213127808fbef5ac91d7f7cf0da00a96a40af412860080c7c558ae1e820bd55b6be4dd2e2337bdd783a081863b89185e1d9c09595ad43b7a6aba9f37546ca8bcce7eb674e0077732839c9af8337c01f48b6b75faa9f3390052b3f8246b33140f88401adbaeaaf82f50c75cd6393c83f4e742888d6952dddca0114e114758c124dfb77121fd348bc83588155ff82ba1a5dea3cc9aeaee08c5d853b7ac6b6066efe849f731ceb5594027bf8d8dc7984924d901cee0e1dc3b097f7d4616c689f9b082bb8d88a13846afdd96206a09b6f208fb85d830d429da755e404a8d48d2d5df94ecfa19c1f7ac92b9f8e2d1fe515932571f96acb264209acc35ed3ae5ab790fbc9dcb2e30a7dfdd61c944e5e6930a0344b38697887dc68eed1574750003138fc181519a56598f53bb216e264d7a9ea990d87194798e62153189e7bb5c015bb4d0dca87d453a50b5cfe93e8929366d2f743c40074bbb88f9b62ce65676685db60a21ac41761b08e1d9a9604a10ac7e38cc90c7dd610c69d9751d77fb13b0eb91df5ecb145b48b85c039fecf576d65bb3c29ca5273e0d5bacf0c7ef1eb61a94cda9a1a2002ef69e62578069533d287d2efb01ded3e44961ae9ea096f90ecc95930c25a3db3e3a8a116b23e33126c932bd6f3e427d559d64272e03f94c1e3aeceed574aa4c2c5745ebe5ac61db1bc7b4ab199ec55fee156be6ae5ba44296074237f355e4df01d13a8a212fa731c6510d0c43a5fc338a3392272550a10a328cdb1409e9133bd0d79801bc6aa99e361930bee2946d2f7f705eb1be381fbdd6a0923cfc1778607577473344a3b85b67be5e31f5c2271abdccd74e7b149dece024919f358f6adbe46b76e74d8dc8a0ece0a0d278b1de87f67f0a7e6cf54f3cfd54c0a6a5b2143fd900d90c9be7626617ecabb8439c34ad2a4853a6593d51c48e11a31b442d18dab3b4bfec198115c0e1db747f1de7b708d0e95f3db3e8c2eb3baa23ad6d0312ee315a7c0de1bd852b1cb68d02334b8e3187ffe5cb5b6cd4b01a43329899db572f61d6e5dfe22c3862403bb5c836ecdee4206206ff549e1587f788a38c3af0a36db60e70bce08b7318470a0fc58efccf1e13a362b010a29df4c5ebbc8bbfeb26b35ab8aee6b46a223b9784467b9f5f864818e1d5d466d059a0cf7a3c41f5ac308d25a66c4c7611fcec595253a8159f0d0a2d34c7aaa1d6b27162046a95185b68121b81a618750f8ba84f401f217aeb664a66f6357bfc7b1702b6fd34ffe1a32010584c3a84468de88a92c93ab5bd840ba52cc8ea4e9a68ded4acfc624031ec2443287877886db6efc64af01f7bf80782f8c5b3dda3b4cb5c3425028d7ef7f8f4177d437a61787ad6b325cd79ddcc3bfd9e1092ef118524e6c7c745b28ba8407ced9055d48c7275e1caadb88ea67bfdbe66563603de244bd3740b82153df340cc70c6ca947d6da9eb126e627666370e266aab079582e633fbad606c1535e4a15a25acb5efd4ae0cfeb03eeeb01a52d1ac3a5486cde1a151f7950fd5b68df976e843ceaa4d1e7c1644fa82984ec7d8405c6950674c3c3eeeb8a28aba272a244b26a11e07935a1ae362b1b3ddf900006fccc7b798b1ee73c8d4ae2245fad870924c4ff82ca92befb3aa6c960a19983c77f9d563d6fd529600f19897359ff641cd8db26cf065375094b0508c822809dd888cb3de0248177825e042f759505459036177c9c2e38f81806fdd183579f135019492e1e05b64a28fee0a7f48903aa9bf4d3a5bc73f0b15db50e2ead4b03e09c84d5687a17b5f5dd59e84934a5793994d73f74ae58fdb78030888cf8bad5c6f22942b241d8ee50be649668b15571968c796afcb5f749787bced05678144b2185aee171244291d7caf3d6a3c89b82f0ba02166938",
    "key_id": "v2:fa1a50ef56073d416f25e62fa6c5e7ef069f20766a1ef48ea0ec91d241df89cf",
    "ed25519": "8bd3607f8a3fcdb65abc3e9f89615365456336dc9666af832bc39172fa59ea20d222551b071ff548d2350a1fa66543807bb62b5996ef229db76a7ed62ec06009",
    "ml_dsa_65": "46679ab44b6244910468dc6b83f0ddfb86898433c8a818898aa12774969f5fd00260d10e6b8b1304b5177a7c2f0c8274a2d092289575d7d22614164fd9d1f7ae844eec552168d3bf23ed0d18df424cb3209a8d561c187e5843dafb1666bdeb3b25e7d8d5af2f07a8b7615ee0b7d80aff4cb6794dbc7e33b397200b10234e05f2b2abcc86fab72892b406fe731ace7197dfb493ebf760545d2d6698e3a64b4e3c84ef1b67f31bdf4a0c228d152dcb0d7108fc07d96578e002a32cb36d98b5f8319cc69caf4245e77c142b1dfb3bff2fc934f729a965e899386c55f7e8db29253278e18c029a159bfee71fc5c9af40d074e2d28887b24a4efc6f1b62ce1b5cbe1943f72608717e48587406cfdea8f6fa86c801e2c02dbc67fd81a6ff939f4ec3766ba2ca698fbb97feec09fc71f05abf24df8b3e643663033558885e298b2a978b60db3635e356efca17a067aa510f953b4c9cac4f5ed3cf9b24a3e547e97683c36933719c7ff35fcba040a80cad483b9f810ac3dab062a7d2a663f0d0c85deef26f94a5f3ea7b68a8be7b17abb2d0ddffa2e3ba51a820f1f84f6319c4a62484e22925b69a583bfb369d7cf5fa889aa4fffbaf742f31da87c2c02cc7bf3b845f53bc8f8e94bbe6b43be8d306046ebd0e017ed8c0061e7e969e8ddca7848ce36f4fa043104224a76d27009381f7416c5538b23dffaf1cdc087acac3acdd5905fd7129e5be3e74ca2a318a6ab03b7da4d3e9a43ba884058bda1748859934cea71b97ceab86ab05a0d1d1073a91ba79c5f73b90dba2120e3278d27ba9302d16d3d1fd8635a741eba8159230f993a2dad75f4ba2f2d9394c7834734b64f3a0fd72df6a154f42894048692612856b96fa5f168108fd31edea80aad8ac47c1306d57112766aff203e523e845fc9f534d36b262f22ccc5ada3eff61612bc8d80cbd88e4c4c8c6f308f939a58aba274bcd96226bc1146781e45ebee7953ec89aef3a84ec724d3c7a6ed5b5c0db6df8b311241bf1d0aaeffe403c4acd3e532c2cbc94e10f57fea7d2202daeca7ac60689a555fa06f30ebfde766aaa00e25a4aa97dc1de013d17166f0e7f0449bae2c15e32b00bc921a74008748000e54e16a9cbc8c35db005b8b380e8ee315a2df284441bd73622ab9fb597c7baeabedd69243b40a4fd14899d82f3f23284d0d027d5e2521e73c8028f5e8d8f09b735761194b3b9f8a6a5a66034061c5943d639d93effebd7717a84b9a1ddb1318bb287f6ff0aec4ae212b0ddb92d4e04e6d06952ff4ebc27ceaaf32c10f125ec4a6a1c50c551b8415e6282512345ec8bd144c2e2cdda2d428865ed6f09246511b23cccbe961b1939a0ab13c1b7f053691e8d39abc8e10a5c327a93aab7fb89fc1adbdbd62680bb05233d3cd375aa6d8b70f9739732cdc31231749a4966cc9cb6144a7a139b974879194b53bde956bc9ca5162fd853e81afdf723004299d4a0bad095530ce2c025d9b3d3ca406b68ee6da8d9d286f7c8a20352ab5f2f08ace168ccb9a8c50519a998f4a53ea59c931e0443796a814adea5ea98159290b61c4e59037fd566cfdc5ad489d250da1e1f2e808319f5ce0dcdab7158ad8ad2c0f02bdce916f04204eb099f066aef8ccd79e447f2eb69f206afa2b0bb45cbbb1a6b6babcb7473b9dbf8927992c8c843e2f01df8c6b7e4569e1220d2698612eb0557496fbc13dc9ea6a776c37a0a8178c92936faafd6137f2a08848c6cc5f050212edf3b51fbcc5495e6e037575d1e91f967c3351428c92ff4e9f8cc49a700d74cd43c05ed3c4eeeed7a478d22a902d6410e6fe09a8298309c9f11f2fdadfe5db2f5829a5a0fc05d38c83ce7911293371d6289c38589ae0ad50c66c4affe421cbba63dc8cfd5f115cd6ffadf3efb5452c56db7e59b3a160de3755f42ba8fa7e70f345af7c859112d15425f52fa4e0f8a886f1e8dd0d48f50e52a8b6001d2e2157ca48c36b213661d73343136a6a841c5d6bf2d59b9643465f0c7ff1b4436f5427dc5cb54b02b8395c4659beee8f78b47e05f34f406b49c9215837d0e8c40da39454ad6ddc2cf7c418478e0268650b5c30b696ecdb1f82197253b5298fc324d9860471a7b77de56177e45971ab38077a5914ae44548d20f81f7cb62e84fe3505f74d545afa57f044832fb3f78c5632c876b0883307b9b6665af7f15a8b2242480b983c9f8ddd684fbdb9384a02b83fb50035a9c2fc0ad2520d0f135d86f6f608a58355bdf1b08bbaf241d30796afd92748d3d8e91ff92cf8b9136e90625ad7abdd12abe044b8ad047d4c651aadbf66b3fb762b95e793ba5d7cc57dc2294b388e4f73f0d31326721114abb817d5419d00cd73f7869282dad4b6af9ab25fa3e5cda7ba370428dd5ced5691f30f5d82e0d82b26fb7186719a047d92fd4ea5058142363960b610f54f48dfc994e03d172d6d55d8a6d10707ccedde905856921fd6e3a255d821560576e1c481287128468d420d1e6febd789e7156ea802ed05b0abea212e271229c2d55fce88f8f0bba034087dfa52b274f1a172a23287d9b5346557a5e6f6528fb6c5adafc61a6a60e1fd1a964b6e9f01a8bb2538c44b0da4e2d350e7fe3f1b83e4baebf557aa36ceabebec7771720f7c1b6b154a9095656f1e98315f240810dad90bb976de30870f58ba026b48d785c62256ed9963ac26f7470f6b53f2fb26f95e78d9bc428fbee3e8211fa639ce652776bc7a3110d6c933760cba96c10b66cc0e74458e22f2b1aff81a3c8646ae45bae2997c9b90fc3c6622c8c1a72f45b03fc1d98944da0cd98b08ce1d33e53a9dca2f9fe308bab3a1842c38d164e067053e4eb597fd6b5b82c321ac1f8f8b05dfdfbf3d6b279eca1e048f0a2693a6c8c7964c3f3d211d68e966f4777230709ede1a80d8aae5dfbcbb3c224705578fe3e672ca3b4bc35a95470e8da8884e7c984ae915b15804d39d421731fdc32f24628b887980dd8f6b844937591a5772c57c110341dbe091e85b2e648e1597178744968a9679b756ef4b9dd8fb138c449ed7d6abaa47579d0b7f838f7661b13a4ed3045311a3da3972651ced96b87b266156d330ba6e7736c07e29efe29ecae5fddef1c5dd4eb6f5666f62af4e0cd5ca46b1027f0f1a7fdac52e4fd62c308bf16776854c2c3eb7509bf82a906544c49557e44aca466879ba4ad001a1c7b517b5213cd98a123194a43e4ca1166e5ae92e539aee122579b2aa857ede9d7b58ec7a601fd621fa3075ee953cf0a40d57c28ca41ac28dcd68a9804f932edc895c9baa1fde1e688d8ffdc396ad158b2b93e5fb1c4edb6a203c0a08d5ff34d48dc772bf076bed236adc9d8109b20c590e65d2bfa94cc57cffdf591b99694997a2bfd47e91e5aeebdac931d5e0125e513046312810390e69090103bfd4326446f64ed354cdb48232c5b796077d13bd64ff40cdb8f6408a7e99146ccd2a0b23f9e37904f60380dbe6d2e447339effaa3b2d66302306878feddb03cd4d76377c2da8ba601ff52f8f67a60efa63bfa5acb7bbbfccea0f88a013ca343be662c10ab56c053f43da529d83432843cff2e7d71c32185ebd679b7fa1eebcad63b8c08751154dfb3353f621ee5028c771fa7ce076035e0c46bf2d4938af7147a2e9106683b1aa8323dc925d4bb7f8463cd85ff3f5612943f71218cdeb6900dc5050f90b1bd6ac03bb30184138b3a81e59983125f482a7eafc8a8a97c4a4d095913ce360c3d83c9d41f15795fd05a4b03130835162f47ab2133c57243da69299b349fba2e77cf68ef48bea1a11ce9bc7aa0f6db749a4e36af91b391506d6de33de0c14ef69e4df000be9c5ab3b5e128e624f49de385b74c828ad978b6cdfaa18d66ec3c16007206948a4225ed0fb94461e85becf0dddb93124d5374bf8422855d27edfe6ccff60e928960483dbbc0a87ad5049dd80d1be1e7d9d4c52bc9433f9190794eb5b562d6fb0ac66d8b66340db4758e9c0499a5b0795f1737c4611423fdaf07465b8bd78c3599003f5467a08d73b5e0cefede92de4e4ae63e035914a5b29122a276c68f86a1821190dce7d0093d6e7364a4305b2a20b40b5736c1484f9566cfe18af16c41ec9e18fe5f5db651acc709de6c7c8c2ee80756fe9c3760836a68054b48c00c0f3a3c214a82b2abf91c03d831f34b4feba1323702a99e2d0eb6ae7de8544e600bcfea3b256774c253d83e6938c70359ad1de4c30fce451134d2f260853f3ec7c8cd07412bbb34333bd98e8d638a660ab18a0370e28b79921140c012885ddd34378cb755de305ff05d4418d178a5dc302c1221ed1662205a92bef58aec5a45ab3d2a10853ad1aabfb99b51ab6783836ff35ced82bc764c42086df02e188bff0e7c23c56ede8fcff5e771cf3174a45cc777c95fa259128118b2fbd3a19ec7a487feee4c055d2b2f4442c123e666326577536339a2cbda4571962d849d7490001baede725f16f30cffc335029c6e7153568acbc3158e3f8a9d7a106959a4bd1bb8eaddfd7429889c5d25ad3e49807cff7dea92946e1e12d50293040f748cb4a0dfe7d3e01424a73a8e5b0b37a55cee4ff3d759216b5c0c717f6970e408bbbbd272981d7fa8b3b5c9f776df060a187b9fc3eefc071e4148515474dbe33b7899aab6bd244a8692cee0e2eafa00000000000000000000000000000709111a2029"
  }
}
