Generics & variance, algebraic-effect handlers, and documentation comments#167
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Large feature branch landing three language subsystems plus tooling/CI hardening. All CI checks were run locally and pass (see below).
crates/osprey-types/src/variance.rs,crates/osprey-ast/src/generics.rs,crates/osprey-codegen/src/effect_generics.rs; specdocs/specs/plan0015-generics-and-variance.md. New must-reject cases inexamples/failscompilation/variance_*andgeneric_effect_*.crates/osprey-ast/src/resume.rsand handler/resume codegen; plan0016-algebraic-effects-and-handlers.md. Reject casesmultishot_resume_rejected,resume_in_arm_lambda.crates/osprey-ast/src/doc.rs+ parsercrates/osprey-syntax/src/docparse.rs; spec0026-DocumentationComments.md, plan0018-documentation-comments.md.fiber/fiber_determinism,fiber/fiber_exact_replica,basics/json/json_document_query(.osp/.ospmltwins), registered in the example manifest.osprey_ast::walk_eachcollection-walker (backing the freevars/effects/analysis visitors), astore_taghelper inaggregate.rs,nested/map_of_kindlowering helpers;.deslop.tomlgate held at 6.10% with genuine dedup (measured 6.06%).Test plan (run locally, in CI order)
cargo fmt --all --check,cargo clippy --workspace --all-targets -- -D warnings— cleancargo build --release --workspace,cargo test --workspace— 0 failuresPASS=142 FAIL=0 NOEXP=0,FC_OKnpm run test:shipwright— manifest validmake lint— deslop6.10% (ok);make test— all crates over coverage thresholds, extension 95.13%;make build_runtime_wasm+ compile/validate/smoke +diff_wasm_examples.sh—PASS=47 FAIL=0 SKIP=2676 passedtest.sh— pass (run against a locally-started server; the Docker daemon was unavailable on the prep host, so the container-packaging layer will be exercised by CI)