From 924eda67d8d89aa2daf58c289fe9726adff28a6e Mon Sep 17 00:00:00 2001 From: memosr Date: Thu, 13 Aug 2026 23:45:48 +0300 Subject: [PATCH] docs: note that the prototypes do not build with the current public toolchain The README tells readers to cd into a prototype and run `sforge test`, but that command fails on all five prototypes with the public toolchain: ssolc 0.8.31 rejects shielded types as mapping keys (Error 10109), and every prototype declares `mapping(saddress => ...)` (17 occurrences across 8 files). CI builds sforge from a local checkout (SFOUNDRY_ROOT=/home/azureuser/...), so the failure is not visible from the maintainer side. This only documents the current state and links the tracking issue; it does not touch any contract. The mapping-key question itself is a design decision for the team (see #10). --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index ceae66b..cad71fc 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,13 @@ If you've already [installed](https://docs.seismic.systems/onboarding/publish-yo sforge test ``` +> [!NOTE] +> **Known incompatibility with the current public toolchain.** `ssolc 0.8.31` rejects +> [shielded types as mapping keys](https://docs.seismic.systems/onchain/concepts/type-system), +> and all five prototypes declare `mapping(saddress => ...)` (17 occurrences across 8 files). +> `sforge build` and `sforge test` therefore fail out of the box with `Error (10109)`. +> Tracked in [#10](https://github.com/SeismicSystems/prototypes/issues/10). + ## Contributing 1. **Fork** this repository.