Skip to content

feat!: remove the Apple Containers backend - #127

Merged
bilby91 merged 2 commits into
mainfrom
feat/remove-applecontainer-backend
Aug 31, 2026
Merged

feat!: remove the Apple Containers backend#127
bilby91 merged 2 commits into
mainfrom
feat/remove-applecontainer-backend

Conversation

@bilby91

@bilby91 bilby91 commented Aug 31, 2026

Copy link
Copy Markdown
Member

Step 1 of the Docker-only cleanup, following #121 (CI jobs), #122 (README), #123/#124 (Podman + checkpoint/restore) and #125.

BREAKING. The backend was darwin/arm64-only, reached Apple's container stack through a cgo shim over a Swift package, and could never be built or exercised on Linux CI. Its CI jobs went in #121 and the README has documented Docker as the only backend since #122 — so this was ~3.7k lines of Go, C and Swift that nothing in CI compiles and nothing in the project claims to support.

62 files changed, 72 insertions(+), 7674 deletions(-)

Removed

Path What
runtime/applecontainer/ 22 files, incl. the shim.c / shim.h cgo layer
applecontainer-bridge/ the SwiftPM package and include/ac_bridge.h
cmd/devcontainer/runtime_applecontainer_{darwin_arm64,other}.go the CLI's backend constructor and its non-darwin stub
test/integration/applecontainer_*_test.go 8 suites
design/runtime-applecontainer.md the design record, plus its design/ index row
Makefile the bridge / bridge-clean targets and the test / test-integration dependency on them — neither target shells out to swift any more

Also: the .devcontainer/README.md note about needing a macOS checkout, the examples/applecontainer-spike/ ignore, and the .dap/review/engineering.md directives that described two backends and told the reviewer to skip the Swift bridge. (.gitignore's *.dylib stays — it's in the generic # Binaries block, not Apple-specific.)

The CLI keeps --runtime as the seam for wiring a future backend, but it now accepts only docker:

$ devcontainer --runtime applecontainer exec ...
error: unknown runtime "applecontainer" (want docker)

Everything else is comment-only: doc comments describing backend-agnostic behavior no longer cite Apple as the divergent implementation, and compose/plan_test.go's all-false capability fixture is renamed appleCapslimitedCaps (it was always runtime.Capabilities{}, never an Apple-specific profile — no assertion depended on the name).

Deliberately left in place

The Capabilities gating machinery. runtime/docker/compose_primitives.go:196-205 returns true for all six fields, and every field's doc comment records an Apple limitation — so with Apple gone, refuseBackendGated in compose/plan.go (64 lines) and the /etc/hosts fallback behind ServiceNameDNS in compose/orchestrator.go:225 (~100 lines incl. patchHostsFiles, containerIP, renderHostsBlock, appendHostsBlock) are unreachable. Two public error types are also left without a producer: runtime.BuilderUnavailableError and runtime.UnsupportedOptionError were only ever constructed by the Apple backend.

That is a separate concern and a separate decision — whether Capabilities() stays on the Runtime interface as the extension seam, or goes with the divergence it was built to describe — so it is deliberately not in this PR. The Apple citations in those comments are the record of why each flag exists, and deleting them here would erase the justification while the flags remain. Note this means the /etc/hosts path is now untested: its only coverage was applecontainer_compose_native_test.go, deleted above.

design/compose-native.md's Apple sections, for the reason design/README.md:10-15 gives: the records document the state of the world when written, the code is authoritative when they disagree, and probe results and rejected alternatives are kept because the reasoning is still useful. #124 applied the same rule — it deleted design/podman-backend.md with the code and left compose-native.md alone. The deleted runtime-applecontainer.md remains readable at tag v0.4.3.

Verification

  • make lint test green — golangci-lint: 0 issues; go vet clean under both the default and integration tags; gofmt clean.
  • go test -tags=integration -list still enumerates 37 integration tests (the Apple suites were darwin/arm64-gated, so Linux coverage is unchanged).
  • CLI checked by hand: --runtime applecontainer is refused as above, --runtime docker still reaches the runtime.

Summary by CodeRabbit

  • Breaking Changes
    • Removed the Apple Containers runtime and its associated command-line option.
    • Docker is now the only supported runtime backend.
    • Removed Apple Container build, execution, lifecycle, logging, networking, volume, image, and inspection support.
  • Chores
    • Removed related build targets and integration coverage.
  • Documentation
    • Updated setup guidance, runtime documentation, design records, and changelog to reflect Docker-only support.

The backend was darwin/arm64-only and reached Apple's `container` stack
through a cgo shim over a Swift package, so it could never be built or
exercised on Linux CI. Its CI jobs were removed in #121 and README has
documented Docker as the only backend since #122, leaving ~3.7k lines of
Go, C and Swift that nothing in CI compiles and nothing in the project
claims to support.

Removed:

  runtime/applecontainer (incl. shim.c / shim.h)
  applecontainer-bridge (SwiftPM package + ac_bridge.h)
  cmd/devcontainer/runtime_applecontainer_{darwin_arm64,other}.go
  test/integration/applecontainer_*_test.go (8 suites)
  design/runtime-applecontainer.md
  Makefile: the bridge / bridge-clean targets and the test /
    test-integration dependency on them

The CLI keeps --runtime as the seam for wiring a future backend, but it
now accepts only `docker`; `--runtime applecontainer` is refused with
`unknown runtime "applecontainer" (want docker)`.

Comment-only elsewhere: doc comments describing backend-agnostic
behavior no longer cite Apple as the divergent implementation, and
compose/plan_test.go's all-false capability fixture is renamed from
appleCaps to limitedCaps (it was always the zero value, not an
Apple-specific profile).

Deliberately left in place: the Capabilities gating machinery. Every
field's only false case was Apple, so the refusal branches in
Plan.Validate and the /etc/hosts fallback behind ServiceNameDNS are now
unreachable — but their Apple provenance comments are the record of why
each flag exists, and whether Capabilities() stays on the Runtime
interface is a separate decision. design/compose-native.md keeps its
Apple sections for the same reason design/README.md gives: those records
document the state of the world when written.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@bilby91
bilby91 marked this pull request as ready for review August 31, 2026 16:27
@coderabbitai

coderabbitai Bot commented Aug 31, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

  • Run on-demand review

On-demand reviews are free for the next 20 days. After that, they cost $0.25 per reviewed file.

Or wait 7 minutes for your next included review.

View limit details

Limit details: You’ve used all 2 included reviews currently available. Your 53 included PR review attempts over the past 7 days set your current allowance at 2 reviews per hour.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 9a88a1e6-9407-4938-97b0-695904c9051c

📥 Commits

Reviewing files that changed from the base of the PR and between a61738e and 9092268.

📒 Files selected for processing (1)
  • design/compose-native.md

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: fa680107-65b3-4c9f-8302-4fa33b524d17

📥 Commits

Reviewing files that changed from the base of the PR and between 6702fb2 and a61738e.

⛔ Files ignored due to path filters (1)
  • applecontainer-bridge/Package.resolved is excluded by !**/Package.resolved
📒 Files selected for processing (61)
  • .dap/review/engineering.md
  • .devcontainer/README.md
  • .gitignore
  • CHANGELOG.md
  • Makefile
  • applecontainer-bridge/.gitignore
  • applecontainer-bridge/Package.swift
  • applecontainer-bridge/Sources/ACBridge/Helpers.swift
  • applecontainer-bridge/Sources/ACBridge/bridge.swift
  • applecontainer-bridge/Sources/ACBridge/build.swift
  • applecontainer-bridge/Sources/ACBridge/exec.swift
  • applecontainer-bridge/Sources/ACBridge/inspect.swift
  • applecontainer-bridge/Sources/ACBridge/lifecycle.swift
  • applecontainer-bridge/Sources/ACBridge/list.swift
  • applecontainer-bridge/Sources/ACBridge/logs.swift
  • applecontainer-bridge/Sources/ACBridge/networks.swift
  • applecontainer-bridge/Sources/ACBridge/pull.swift
  • applecontainer-bridge/Sources/ACBridge/volumes.swift
  • applecontainer-bridge/include/ac_bridge.h
  • cmd/devcontainer/root.go
  • cmd/devcontainer/runtime_applecontainer_darwin_arm64.go
  • cmd/devcontainer/runtime_applecontainer_other.go
  • compose/errors.go
  • compose/orchestrator.go
  • compose/plan.go
  • compose/plan_test.go
  • design/README.md
  • design/runtime-applecontainer.md
  • engine.go
  • runtime/applecontainer/build_darwin_arm64.go
  • runtime/applecontainer/build_darwin_arm64_test.go
  • runtime/applecontainer/compose_primitives_darwin_arm64.go
  • runtime/applecontainer/doc.go
  • runtime/applecontainer/embed_darwin_arm64.go
  • runtime/applecontainer/envelope_test.go
  • runtime/applecontainer/exec_darwin_arm64.go
  • runtime/applecontainer/exec_darwin_arm64_test.go
  • runtime/applecontainer/inspect_darwin_arm64.go
  • runtime/applecontainer/inspect_darwin_arm64_test.go
  • runtime/applecontainer/lifecycle_darwin_arm64.go
  • runtime/applecontainer/lifecycle_darwin_arm64_test.go
  • runtime/applecontainer/logs_darwin_arm64.go
  • runtime/applecontainer/logs_darwin_arm64_test.go
  • runtime/applecontainer/pull_darwin_arm64.go
  • runtime/applecontainer/pull_darwin_arm64_test.go
  • runtime/applecontainer/runtime_darwin_arm64.go
  • runtime/applecontainer/runtime_darwin_arm64_test.go
  • runtime/applecontainer/runtime_unsupported.go
  • runtime/applecontainer/shim.c
  • runtime/applecontainer/shim.h
  • runtime/compose_primitives.go
  • runtime/errors.go
  • runtime/runtime.go
  • test/integration/applecontainer_build_source_test.go
  • test/integration/applecontainer_compose_native_test.go
  • test/integration/applecontainer_features_test.go
  • test/integration/applecontainer_image_metadata_test.go
  • test/integration/applecontainer_image_source_test.go
  • test/integration/applecontainer_shutdown_action_test.go
  • test/integration/applecontainer_uid_reconcile_test.go
  • test/integration/applecontainer_userenvprobe_test.go
💤 Files with no reviewable changes (47)
  • applecontainer-bridge/.gitignore
  • design/runtime-applecontainer.md
  • cmd/devcontainer/runtime_applecontainer_other.go
  • applecontainer-bridge/Sources/ACBridge/pull.swift
  • test/integration/applecontainer_compose_native_test.go
  • applecontainer-bridge/Sources/ACBridge/bridge.swift
  • applecontainer-bridge/Sources/ACBridge/logs.swift
  • runtime/applecontainer/build_darwin_arm64.go
  • runtime/applecontainer/doc.go
  • applecontainer-bridge/Sources/ACBridge/networks.swift
  • test/integration/applecontainer_shutdown_action_test.go
  • applecontainer-bridge/Sources/ACBridge/build.swift
  • runtime/applecontainer/runtime_unsupported.go
  • runtime/applecontainer/envelope_test.go
  • runtime/applecontainer/inspect_darwin_arm64_test.go
  • cmd/devcontainer/runtime_applecontainer_darwin_arm64.go
  • applecontainer-bridge/Sources/ACBridge/lifecycle.swift
  • runtime/applecontainer/shim.c
  • runtime/applecontainer/runtime_darwin_arm64_test.go
  • applecontainer-bridge/Sources/ACBridge/exec.swift
  • runtime/applecontainer/exec_darwin_arm64_test.go
  • applecontainer-bridge/Sources/ACBridge/inspect.swift
  • runtime/applecontainer/shim.h
  • runtime/applecontainer/lifecycle_darwin_arm64.go
  • runtime/applecontainer/logs_darwin_arm64.go
  • runtime/applecontainer/pull_darwin_arm64.go
  • test/integration/applecontainer_features_test.go
  • runtime/applecontainer/inspect_darwin_arm64.go
  • runtime/applecontainer/runtime_darwin_arm64.go
  • .gitignore
  • test/integration/applecontainer_build_source_test.go
  • runtime/applecontainer/logs_darwin_arm64_test.go
  • test/integration/applecontainer_userenvprobe_test.go
  • applecontainer-bridge/Sources/ACBridge/Helpers.swift
  • test/integration/applecontainer_uid_reconcile_test.go
  • runtime/applecontainer/pull_darwin_arm64_test.go
  • runtime/applecontainer/lifecycle_darwin_arm64_test.go
  • applecontainer-bridge/Package.swift
  • applecontainer-bridge/Sources/ACBridge/list.swift
  • runtime/applecontainer/embed_darwin_arm64.go
  • test/integration/applecontainer_image_metadata_test.go
  • applecontainer-bridge/Sources/ACBridge/volumes.swift
  • runtime/applecontainer/build_darwin_arm64_test.go
  • test/integration/applecontainer_image_source_test.go
  • applecontainer-bridge/include/ac_bridge.h
  • runtime/applecontainer/exec_darwin_arm64.go
  • runtime/applecontainer/compose_primitives_darwin_arm64.go

Included review availability: 0 reviews are currently available. Your included PR review attempts over the past 7 days set your current allowance at 2 reviews per hour.


📝 Walkthrough

Walkthrough

The pull request removes the Apple Container backend, Swift bridge, runtime implementation, integration tests, Makefile targets, and design record. CLI runtime selection, Compose capability tests, and runtime documentation now describe Docker-only or backend-neutral behavior.

Changes

Runtime backend removal

Layer / File(s) Summary
Docker-only selection and bridge removal
cmd/devcontainer/root.go, Makefile, applecontainer-bridge/*, runtime/applecontainer/*, test/integration/applecontainer_*
The CLI now accepts only docker. The Swift bridge, Apple Container runtime, related Makefile targets, and Apple Container integration suites were removed.
Compose capability validation
compose/errors.go, compose/orchestrator.go, compose/plan.go, compose/plan_test.go
Compose capability tests now use a generic limited backend. Comments no longer describe Apple-specific behavior.
Runtime and design documentation cleanup
.dap/review/engineering.md, .devcontainer/README.md, CHANGELOG.md, design/*, engine.go, runtime/*.go
Documentation now describes Docker-only or backend-neutral behavior. The changelog records the removed Apple Container components and related documentation.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Merge Risk: ⚪ Minimal · up to a6173

This change removes the unsupported Apple Containers backend and makes Docker the only accepted runtime; based on the reported checks, no actionable merge-blocking risk remains beyond normal review.

Poem

A rabbit watched the bridge depart,
While Docker stayed to run the cart.
The tests now speak in terms more plain,
The docs shed Apple’s old terrain.
“Hop onward,” said the rabbit bright. 🐇

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 9.09% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 11 functions across 9 files. (5 skipped: 5… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the primary breaking change: removal of the Apple Containers backend.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 9.09% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 11 functions across 9 files. (5 skipped: 5 unsupported.)

✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/remove-applecontainer-backend

Comment @coderabbitai help to get the list of available commands.

@dap-code-review-by-crunchloop dap-code-review-by-crunchloop Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review — head a61738e

Reviewed head a61738ed804495d4730a1eb9fa9117ec5440436f after checking out the PR; the range is one commit against merge base 6702fb2f2dbce8dbaab8c47603c83b2f58e3e60f and contains 65 changed paths (62 files reported by the PR metadata, with the deleted-tree accounting differing). Audited the Docker-only CLI selection, runtime interface and Docker implementation, compose orchestration callers, Makefile/CI references, deleted backend/bridge paths, and documentation links. Applied the base-commit .dap/review/engineering.md directives, plus CONTRIBUTING.md and the touched runtime/compose design records. No test or system code was executed. The base directive references PRD.md, but that path does not exist at the supplied directives SHA, so PRD-specific review was not available. Submitted the documentation consistency finding; no other concrete reachable regression was established. Coverage focused on D1, D10, D11, D13, and D14 as applicable; backend parity and Apple implementation behavior are removed rather than newly implemented, and runtime/integration execution was not performed.

Commented inline

  • [LOW] [D11] Deleting the Apple runtime record leaves broken references in the retained compose design — design/README.md:23

Verdict

ADVISORY — findings worth reading, none of them blocking.

Comment thread design/README.md
| [`runtime.md`](runtime.md) | The `runtime.Runtime` interface, the `Workspace` value object, the `Engine` layer, container-context substitution, and lifecycle idempotency. The boundary that makes a second backend possible. |
| [`runtime-applecontainer.md`](runtime-applecontainer.md) | The second `Runtime` backend: Apple's `container` stack on macOS via a cgo + Swift bridge. Daemon model, bridge ABI, version pinning, build constraints. |
| [`compose-native.md`](compose-native.md) | The runtime-agnostic compose orchestrator that drives any backend through `runtime.Runtime` primitives. Replaces (when opted in) the `docker compose` shell-out, and is what enables compose source on apple-container. |
| [`compose-native.md`](compose-native.md) | The runtime-agnostic compose orchestrator that drives any backend through `runtime.Runtime` primitives. Replaces (when opted in) the `docker compose` shell-out. |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[LOW] [D11] Deleting the Apple runtime record leaves broken references in the retained compose design

  • Witness: Command test -e design/runtime-applecontainer.md && echo present || echo absent; grep -nF 'runtime-applecontainer' design/compose-native.md | head -30 produced absent followed by references at design/compose-native.md:13, :54, :379, :403, :413, :522, :529, :931, and :1044. The PR deletes design/runtime-applecontainer.md while retaining design/compose-native.md, so these links and cross-references now point at a file that no longer exists.
  • Consumer: design/compose-native.md:13 and the other listed references are read by contributors as the retained architecture record; its companion link and cited sections can no longer be opened after this deletion.
  • Fix: Either retain the removed record as an explicitly historical document, or update design/compose-native.md to remove/replace every reference to design/runtime-applecontainer.md and its sections.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reference not resolving is real. But I don't think either remedy fits this repo's recorded convention, and I'd rather settle that before editing the retained record — evidence below.

design/README.md:10-15 sets the policy for this directory: the records "reflect the state of the world at the time they were written", "when a record disagrees with main, the code is authoritative", and sections that call out alternatives, probe results or "future work" are kept because the reasoning is still useful. Under that policy a companion citation inside a record is a historical reference, not a navigable link.

That is already how design/compose-native.md behaves, independent of this PR. The sentence you flagged spans :11-14, and its first citation is design/compose.md — which has never existed in this repo: git log --oneline --diff-filter=D -- design/compose.md returns nothing and test -e design/compose.md reports absent. design/status.md:971 is the same ("the breakdown lives in design/status.md once this design is approved"). So this document carried unresolvable design citations before this change; deleting the Apple record adds to that set rather than creating the condition.

Precedent for the handling: #124 deleted design/checkpoint-restore.md, design/podman-backend.md and design/compose-native-health.md along with the code they described, left design/compose-native.md untouched, and recorded in the CHANGELOG that all three "remain readable in git history at tag v0.4.3". This PR's CHANGELOG entry does the same for design/runtime-applecontainer.md.

On the two remedies specifically. Retaining the removed record as an explicitly historical document reverses the deletion this PR exists to make, and contradicts #124's handling of the identical situation. Rewriting the nine cited sections would edit the historical body of a retained record, which is what design/README.md tells contributors not to do — and the §8 / §10.1 / §11 citations carry information (which probe, which primitive mapping, which discipline was followed) that cannot be replaced without losing it.

If you consider the dangling-citation condition worth addressing on its own terms, the cheaper fix that fits the convention is the mechanism the repo already uses — the tag pointer: a single line in the compose-native.md header recording that the companion records it cites are not present in the tree, and the tag where the Apple one is readable. One site, covers all nine references plus the two that predate this PR, and leaves the historical prose intact. Say the word and I'll push that instead; I did not want to rewrite the record first and argue afterwards.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pushed the tag-pointer fix in 9092268 rather than leave this standing on the argument alone.

design/compose-native.md now carries one header note recording that the three companion records it cites are not in the tree — design/runtime-applecontainer.md, deleted here and readable at tag v0.4.3, plus design/compose.md and design/status.md, which never landed — and that references to them and their section numbers are historical citations. That covers all nine references you listed at a single site, plus the two that predated this PR, without editing the record's historical body. No other retained record cites a missing design file; I checked every cross-reference under design/.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Resolved — the reviewer verified this was fixed.

Verified: Verified at head 9092268: design/README.md no longer lists the deleted runtime-applecontainer.md row, and design/compose-native.md:8-16 explicitly labels references to that deleted record as historical citations rather than links. The retained references therefore no longer present broken navigable links.

The review comment above records what was claimed at the time, and is left unedited.

…itations

design/compose-native.md cites three companion records that are not in the
tree: design/runtime-applecontainer.md, deleted with the Apple Containers
backend in this PR, and design/compose.md / design/status.md, which were
named as companions but never landed (neither has a delete commit in git
history).

Adds one note in the header pointing at the tag where the Apple record is
readable and stating that references to all three — including their section
numbers — are historical citations rather than links.

This is the tag-pointer mechanism the CHANGELOG already uses for the records
#124 deleted, and it fixes all nine references at one site. Rewriting the
nine cited sections was the alternative; it would have edited the historical
body of a retained record, which design/README.md tells contributors not to
do, and the §8 / §10.1 / §11 citations carry which-probe and which-mapping
detail that a rewrite would lose.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

@dap-code-review-by-crunchloop dap-code-review-by-crunchloop Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review — head 9092268

Reviewed PR head 9092268, two commits and 63 files changed from base 6702fb2. Checked the Docker-only CLI wiring, removal of all Apple runtime/bridge/build/test paths, Makefile and documentation updates, retained Runtime/compose interfaces and callers, and searched the full HEAD for dangling Apple symbols or imports. Worked D1/R2, D10, D11/R5, D12, D13, and the relevant directive checks; the carried broken-design-reference finding was verified fixed and resolved. No new concrete findings survived reachability and caller checks. The base-directed CONTRIBUTING.md and design records were read; PRD.md is referenced by the directive but absent at the base commit. I did not execute tests, type-checks, builds, or services per review policy.

Verdict

CLEAN — this round found nothing.

@dap-code-review-by-crunchloop dap-code-review-by-crunchloop Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No open findings on 9092268.

Approved by DAP code review. The DAP Code Review check run remains the verdict of record; this approval is a projection of it for branch protection, and is dismissed if a finding reopens or a later head is not clean.

@bilby91
bilby91 merged commit b48b754 into main Aug 31, 2026
11 checks passed
@bilby91
bilby91 deleted the feat/remove-applecontainer-backend branch August 31, 2026 17:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant