-
Notifications
You must be signed in to change notification settings - Fork 5
Comparing changes
Open a pull request
base repository: anoma/goose-lean
base: v0.3.0
head repository: anoma/goose-lean
compare: v0.3.1
- 14 commits
- 70 files changed
- 4 contributors
Commits on Sep 29, 2025
-
Configuration menu - View commit details
-
Copy full SHA for 4bb09c6 - Browse repository at this point
Copy the full SHA 4bb09c6View commit details
Commits on Sep 30, 2025
-
Configuration menu - View commit details
-
Copy full SHA for 9940d2b - Browse repository at this point
Copy the full SHA 9940d2bView commit details
Commits on Oct 2, 2025
-
Allow programs to call methods from different ecosystems. I've implemented a custom tactic so that the changes are transparent to the surface language for constructors, methods, destructors and upgrades. There are some things that need to be improved: 1. Only works if the `EcosystemIdEnum : FinEnum EcosystemId` is given explicitly and not inferred as an instance. We need to figure out how to properly reduce an expression with instance arguments in it. 2. Multimethods require the user to provide the ecosystem id explicitly in the code. In the future this should be automatized too. --------- Co-authored-by: Lukasz Czajka <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1b4e0a5 - Browse repository at this point
Copy the full SHA 1b4e0a5View commit details
Commits on Oct 6, 2025
-
- Adds surface layer for multi-methods: `defMultiMethod` - Re-adds some examples removed after v0.2.1: - KudosBank: - cheques: issue, deposit. - auctions: new, bid, end - Kudos: split, merge. - Updates `SUMMARY.md` with the new examplesConfiguration menu - View commit details
-
Copy full SHA for e4673e6 - Browse repository at this point
Copy the full SHA e4673e6View commit details -
docs: summary update - function invocation (#124)
- Updates the summary to explain the translation of function invocation. - Fixes some typos in the summary.
Configuration menu - View commit details
-
Copy full SHA for a2d581e - Browse repository at this point
Copy the full SHA a2d581eView commit details
Commits on Oct 7, 2025
-
fix: Require authorization from the check owner (#125)
When issuing a check, the signature should be from the owner of the check, not the bank
Configuration menu - View commit details
-
Copy full SHA for bd3e7de - Browse repository at this point
Copy the full SHA bd3e7deView commit details
Commits on Oct 10, 2025
-
fix: consistency of nested method calls (#127)
- Closes #104 - Adds a check in message RLs that created messages correspond to nested method calls. - Adds a check in message RLs that arguments to nested method calls have been correctly computed (by checking the created messages).
Configuration menu - View commit details
-
Copy full SHA for 8dc5f2b - Browse repository at this point
Copy the full SHA 8dc5f2bView commit details
Commits on Oct 17, 2025
-
fix: check consistency of sub-objects (#128)
- Closes #103 - Includes the resources corresponding to fetched objects in the action for the method (as consumed and created with no data modification). This ensures that the fetched objects data actually corresponds to the objects in the system.
Configuration menu - View commit details
-
Copy full SHA for f5d3d08 - Browse repository at this point
Copy the full SHA f5d3d08View commit details -
feat: move message logic to object RLs (#129)
- Moves message logic to object resource RLs. Now message resources have trivial (always true) RLs. - See https://forum.anoma.net/t/automatic-constraint-generation-and-dynamic-dispatch-in-goose/2363/3
Configuration menu - View commit details
-
Copy full SHA for eda1a1f - Browse repository at this point
Copy the full SHA eda1a1fView commit details
Commits on Oct 22, 2025
-
feat: Add runnable resource machine model (#126)
Major changes in this pr: 1. Implements a partial implementation of a resource machine simulator in `Anoma.Simulator.lean`. A simple example can be run with `lake exe Runner`. Currently it fails the balance check and the resource logic check. I believe it is better that we merge this now and try to fix these issues on a separate pr. 2. I've added a new `log` statement to the surface language. 3. `SomeType` also requires a `Hashable` instance for `type`. I've added a `Hashable` instance for many types. Minor changes: 1. Removes universe polymorphism from `Resource` and all the types that depend on it. I think this is worth it because it simplifies the codebase and we only used `Resource` at universe levels {1, 1} anyway. 4. Simplifies `Program.withRandomGen`. The caller is no longer responsible for returning the updated `StdGen`. 5. Adds the `Mix` monad for conveniently generating `Hashable` instances with do-notation. 6. `ComplianceUnit` now includes the `ComplianceWitness`. This is needed for the simulator. 7. I've removed the program statements that are not required for the current state of goose. E.g. `decrypt`, `generateIdentity`, `requestCommitment`, etc. --------- Co-authored-by: Łukasz Czajka <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: Lukasz Czajka <[email protected]>Configuration menu - View commit details
-
Copy full SHA for 567f384 - Browse repository at this point
Copy the full SHA 567f384View commit details -
- Authorization should take into account the whole content of the signed message when verifying the signature. - In AVM programs, we no longer store signatures but functions which produce signatures given message data. - Signatures are simplified by converting them into a list. Now a message can contain any number of signatures from unrestricted parties. The method invariant code checks if at least the right parties signed the message. --------- Co-authored-by: Copilot <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e4a01b9 - Browse repository at this point
Copy the full SHA e4a01b9View commit details
Commits on Nov 4, 2025
-
This PR fixes several bugs - mostly involving mismatches in “serialized” types. To make debugging easier, it changes the signature of the resource-logic function: it is now monadic, maintains a stack trace, and returns a descriptive error instead of simply `false` on failure. I also fixed the monadic version of the `check` macro, which was not working correctly. I had to rename it to `docheck` to avoid conflicts with the term-level `check`. Finally, I added a rather hacky mechanism, `mydefaultM`, to report the location of logic-function errors even when there is no explicit `failwith` clause. We should keep this for now but plan to remove it later. I've also added a tiny example - a program with a single constructor call - that runs on CI.
Configuration menu - View commit details
-
Copy full SHA for 7ea9317 - Browse repository at this point
Copy the full SHA 7ea9317View commit details
Commits on Nov 5, 2025
-
fix: Add check for recipients in the Message logic (#136)
fixes #133 --------- Co-authored-by: Łukasz Czajka <[email protected]> Co-authored-by: Copilot <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b0801c7 - Browse repository at this point
Copy the full SHA b0801c7View commit details
Commits on Dec 19, 2025
-
Summary updates for GOOSE v0.3.1. --------- Co-authored-by: Copilot <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for e66a7cb - Browse repository at this point
Copy the full SHA e66a7cbView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v0.3.0...v0.3.1