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
f94aca9 to
58c806b
Compare
- Restructured perry-container-compose to a flat layout. - Implemented Kahn's algorithm for dependency resolution with rollback support. - Added robust container backend detection with liveness checks for Podman, Colima, Lima, etc. - Expanded perry-stdlib with FFI bridge, Sigstore/cosign verification, and runCapability. - Refined FFI bridge to prevent promise hangs on error. - Added production-ready Forgejo deployment example. - Integrated with perry-hir and perry-codegen. Co-authored-by: yumin-chen <10954839+yumin-chen@users.noreply.github.com>
- Addressed PR feedback: - Implemented rollback logic in ComposeEngine::up. - Added platform-specific liveness checks for container backends (colima, podman, lima). - Fixed FFI bridge promise hangs by ensuring error paths reject promises. - Resolved MutexGuard Send issues across await points. - Added Forgejo production example. - Verified compilation and ran integration/property tests. Co-authored-by: yumin-chen <10954839+yumin-chen@users.noreply.github.com>
58c806b to
3c1c1e6
Compare
- Added image operation FFI functions: pullImage, listImages, removeImage. - Added backend detection FFI: detectBackend. - Refined FFI error handling to ensure all paths correctly reject promises. - Fixed MutexGuard Send issues in orchestration engine. - Completed all tasks in the implementation plan. Co-authored-by: yumin-chen <10954839+yumin-chen@users.noreply.github.com>
3c1c1e6 to
30a27ae
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