Implement perry-container and perry-container-compose modules#1
Implement perry-container and perry-container-compose modules#1yumin-chen wants to merge 5 commits intofeat/container-composefrom
Conversation
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
8c07e3a to
5ae75c3
Compare
d0be721 to
093e7a0
Compare
093e7a0 to
bd88aba
Compare
0c01cf5 to
bd88aba
Compare
d3d0b0a to
7396c20
Compare
1258b4c to
bfededb
Compare
4b72520 to
4cda64d
Compare
247b2b9 to
74af827
Compare
This commit implements the canonical specification v1 for the Perry container and multi-service orchestration modules, incorporating feedback from senior review and addressing all identified gaps. Key improvements: - Aligned backend selection priority: apple/container is now #1 on Mac. - Standardised FFI symbols with the `js_container_compose_*` prefix and updated codegen dispatch for handle-based orchestration. - Implemented robust `StringHeader` pointer validation (> 0x1000). - Explicitly implemented Kahn's algorithm (BFS) for deterministic startup ordering and complete cycle reporting. - Refined resource management in `ComposeEngine::up` to be idempotent and ensure rollback only targets session-created resources. - Enforced image verification (Sigstore/cosign) and strict isolation constraints for Shell capabilities. - Full implementation and codegen wiring of the `build` feature. - Verified all changes with unit/property tests and clean builds.
b4136c9 to
16fa0bb
Compare
37b3cff to
97bd671
Compare
Implement the
perry/containerandperry/container-composeTypeScript modules backed by a refactoredperry-container-composeRust crate and an expandedperry-stdlibcontainer FFI bridge.Key changes:
perry-container-compose: Consolidated backend implementations into a singlebackend.rsfile, implementedContainerBackendandCliProtocoltraits, and added a multi-candidate backend probe sequence with platform-specific prioritization.compose.rsfor deterministic startup order, and provided full lifecycle management (up, down, start, stop, restart, ps, logs, exec)..envloading, and multi-file merging inyaml.rs.verification.rs, OCI-isolated sandboxed execution incapability.rs, and updated FFI bindings inmod.rs.perry-hir/src/ir.rsto allow native imports from TypeScript.perry-composeCLI binary.Verified with comprehensive unit tests and integration tests where applicable.
PR created automatically by Jules for task 4808062097019276876 started by @yumin-chen