From f7b92abb3cfe982908aad443939bbd80d495e4d4 Mon Sep 17 00:00:00 2001 From: Teakowa Date: Sun, 6 Sep 2026 13:36:56 +0800 Subject: [PATCH] fix(deps): consume workshop-rs 0.1.19 Refs wrightkit/wright#245 Refs wrightkit/workshop-rs#144 --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- crates/opy-cli/tests/cli.rs | 2 +- crates/opy-rs/src/compiler/mod.rs | 6 +++--- crates/opy-rs/tests/differential-expectations.json | 2 +- docs/opy/compatibility-baseline.md | 2 +- tools/overpy/compiler-expectations.json | 6 +++--- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7f07dc4..ce9347a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -627,9 +627,9 @@ dependencies = [ [[package]] name = "workshop-rs" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb4bf40de43a94ed84485f9db7102fb6f0696bf883c245214338d17c11197540" +checksum = "6c5eda33a9b8a8c38ee6e1ed5a8382e24519984ce94db68dabb2dd6071a95b6c" dependencies = [ "serde", "serde_json", diff --git a/Cargo.toml b/Cargo.toml index 0126451..c0dbb88 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,7 +14,7 @@ opy-rs = { path = "crates/opy-rs", version = "0.1.19" } libquickjs-ng-sys = "0.13.0" serde = "1" serde_json = "1" -workshop-rs = "=0.1.18" +workshop-rs = "=0.1.19" [workspace.lints.rust] unsafe_op_in_unsafe_fn = "deny" diff --git a/crates/opy-cli/tests/cli.rs b/crates/opy-cli/tests/cli.rs index 8d4c424..cc9a99f 100644 --- a/crates/opy-cli/tests/cli.rs +++ b/crates/opy-cli/tests/cli.rs @@ -115,7 +115,7 @@ fn compile_json_reports_success_identity_and_normalized_output() { + "\n" ); assert_eq!(json["compiler"]["name"], "opy-rs"); - assert_eq!(json["catalog"]["implementation-version"], "0.1.18"); + assert_eq!(json["catalog"]["implementation-version"], "0.1.19"); assert!(json.get("compatibility").is_none()); } diff --git a/crates/opy-rs/src/compiler/mod.rs b/crates/opy-rs/src/compiler/mod.rs index 7c4cacb..079638c 100644 --- a/crates/opy-rs/src/compiler/mod.rs +++ b/crates/opy-rs/src/compiler/mod.rs @@ -1,6 +1,6 @@ //! OPY-to-Workshop integration, kept behind the `opy-rs` library boundary. //! -//! This module pins the released `workshop-rs` v0.1.18 contract, checks the OPY +//! This module pins the released `workshop-rs` v0.1.19 contract, checks the OPY //! manifest links against the canonical catalog, and lowers the supported OPY //! program structure into canonical WIR before validation and deterministic //! Workshop emission. @@ -20,7 +20,7 @@ pub mod reconstruct; mod integration_tests; /// The exact released dependency contract consumed by this crate. -pub const WORKSHOP_RS_VERSION: &str = "0.1.18"; +pub const WORKSHOP_RS_VERSION: &str = "0.1.19"; const TRANSLATION_HELPER_NAME: &str = "__overpyTranslationHelper__"; @@ -6950,7 +6950,7 @@ mod tests { assert_eq!(rule.span.unwrap().file.index(), 0); assert_eq!(rule.name_span.unwrap().start.line, 2); assert!(artifact.emitted.contains("Disable Inspector Recording;")); - assert_eq!(artifact.catalog_identity.implementation_version, "0.1.18"); + assert_eq!(artifact.catalog_identity.implementation_version, "0.1.19"); } #[test] diff --git a/crates/opy-rs/tests/differential-expectations.json b/crates/opy-rs/tests/differential-expectations.json index e413465..5104993 100644 --- a/crates/opy-rs/tests/differential-expectations.json +++ b/crates/opy-rs/tests/differential-expectations.json @@ -63,7 +63,7 @@ {"fixture": "synthetic/hud-subheader", "nativeStatus": "success", "classification": "match", "ruleNames": true, "evidence": ["oracle:synthetic/hud-subheader/oracle.json", "provenance:synthetic/hud-subheader/fixture.json", "test:opy-rs::compiler::integration_tests::hud::hud_subheader_matches_the_pinned_canonical_wir"], "note": "The shared hudSubheader action resolves and lowers to canonical Create HUD Text WIR with its argument and visibility contract."}, {"fixture": "synthetic/hud-visibility", "nativeStatus": "success", "classification": "match", "ruleNames": true, "evidence": ["oracle:synthetic/hud-visibility/oracle.json", "provenance:synthetic/hud-visibility/fixture.json", "test:opy-rs::compiler::integration_tests::hud_visibility::never_maps_to_visible_never_in_canonical_wir"], "note": "The OPY SpecVisibility.NEVER spelling resolves and lowers to the canonical VISIBLE_NEVER enum member."}, {"fixture": "synthetic/control-flow-lowering", "nativeStatus": "success", "classification": "match", "ruleNames": false, "evidence": ["oracle:synthetic/control-flow-lowering/oracle.json", "implementation-invariant:control-flow-lowering-hir"], "note": "The #47 control-flow slice resolves in the source implementation and its native lowered WIR is directly equivalent to the pinned oracle."}, - {"fixture": "synthetic/switch-break-unsupported", "nativeStatus": "success", "classification": "match", "ruleNames": false, "evidence": ["oracle:synthetic/switch-break-unsupported/oracle.json", "test:opy-rs::compiler-nested-switch-break-diagnostic"], "note": "Negative #47 probe: the source implementation and pinned oracle accept the nested conditional switch-break HIR, while the compiler rejects the form because OPY has no lossless lowering to the canonical workshop-rs v0.1.18 control-flow contract."}, + {"fixture": "synthetic/switch-break-unsupported", "nativeStatus": "success", "classification": "match", "ruleNames": false, "evidence": ["oracle:synthetic/switch-break-unsupported/oracle.json", "test:opy-rs::compiler-nested-switch-break-diagnostic"], "note": "Negative #47 probe: the source implementation and pinned oracle accept the nested conditional switch-break HIR, while the compiler rejects the form because OPY has no lossless lowering to the canonical workshop-rs v0.1.19 control-flow contract."}, {"fixture": "synthetic/switch-order", "nativeStatus": "success", "classification": "match", "ruleNames": true, "evidence": ["oracle:synthetic/switch-order/oracle.json", "implementation-invariant:authored-switch-order"], "note": "The #47 default-before-case probe preserves authored arm order and fallthrough in the source implementation, and the native lowered WIR is directly equivalent to the pinned oracle."}, {"fixture": "synthetic/switch-structured-target", "nativeStatus": "success", "classification": "match", "ruleNames": true, "evidence": ["oracle:synthetic/switch-structured-target/oracle.json", "implementation-invariant:structured-switch-source-order"], "note": "The #47 structured switch probe preserves nested if/while actions and authored case/default target order in the source implementation, and the native lowered WIR is directly equivalent to the pinned oracle."}, {"fixture": "synthetic/switch-multiple-break", "nativeStatus": "success", "classification": "match", "ruleNames": true, "evidence": ["oracle:synthetic/switch-multiple-break/oracle.json", "test:opy-rs::compiler::integration_tests::control_flow::multiple_switch_breaks_match_independent_semantic_oracle", "test:opy-rs::compiler::integration_tests::control_flow::pinned_overpy_switch_action_trace"], "note": "The source implementation preserves the multi-break source; the compiler lowers its direct case-local breaks through canonical Workshop control flow, and the pinned OverPy action trace independently checks case selection, break, default, and fallthrough behavior."}, diff --git a/docs/opy/compatibility-baseline.md b/docs/opy/compatibility-baseline.md index 64ba43d..92bcf0c 100644 --- a/docs/opy/compatibility-baseline.md +++ b/docs/opy/compatibility-baseline.md @@ -44,7 +44,7 @@ For each category the following dimensions are distinguished: (names, members, enums, call semantics); * **Compilation**: standalone compile/emission through the `workshop-rs` backend succeeds with reference-equivalent semantics. The bounded #35 -vertical slice is now evidenced through workshop-rs v0.1.18; the remaining +vertical slice is now evidenced through workshop-rs v0.1.19; the remaining surface is **lowering-dependent** and stays inventory-only until later #8 work; * **Tooling/analysis**: `check`/`analyze`/`lint`/`inspect` and language diff --git a/tools/overpy/compiler-expectations.json b/tools/overpy/compiler-expectations.json index cf1ec4c..3a71666 100644 --- a/tools/overpy/compiler-expectations.json +++ b/tools/overpy/compiler-expectations.json @@ -384,7 +384,7 @@ "test:opy-rs::compiler::integration_tests::control_flow::nested_switch_break_is_source_attributed_when_not_representable" ], "owner": "workshop-rs#123", - "note": "The released workshop-rs v0.1.18 contract provides native Break, Skip, and Skip If calls, but this nested conditional switch-break shape still has no lossless OPY-owned lowering and remains explicitly rejected.", + "note": "The released workshop-rs v0.1.19 contract provides native Break, Skip, and Skip If calls, but this nested conditional switch-break shape still has no lossless OPY-owned lowering and remains explicitly rejected.", "failureClass": "integration", "diagnosticCode": "unsupported-integration-surface" }, @@ -454,7 +454,7 @@ "provenance:real-world/overpy-cake/fixture.json" ], "owner": "workshop-rs#124", - "note": "The released workshop-rs v0.1.18 catalog resolves `Visible To` through the canonical call-signature domain, so the native WIR can be compared directly with the pinned oracle; remaining arithmetic and implicit-value lowering differences keep this real-world case an explicit compiler gap.", + "note": "The released workshop-rs v0.1.19 catalog resolves `Visible To` through the canonical call-signature domain, so the native WIR can be compared directly with the pinned oracle; remaining arithmetic and implicit-value lowering differences keep this real-world case an explicit compiler gap.", "semanticEquivalent": false }, { @@ -600,7 +600,7 @@ "provenance:synthetic/chase-condition-agentlab/fixture.json" ], "owner": "workshop-rs#124", - "note": "The released workshop-rs v0.1.18 catalog resolves `None` through the canonical call-signature domain, so the native WIR can be compared directly with the pinned oracle.", + "note": "The released workshop-rs v0.1.19 catalog resolves `None` through the canonical call-signature domain, so the native WIR can be compared directly with the pinned oracle.", "semanticEquivalent": true }, {