ephraimbuddy opened a new pull request, #75498: URL: https://github.com/apache/airflow/pull/75498
Manifest-backed versioned Dag bundles need durable storage for the release reference and immutable snapshots, plus coordination between publishers. Add an `ArtifactStore` interface and a shared-filesystem implementation as the storage layer for subsequent bundle lifecycle integration. The filesystem backend publishes references and verified snapshots atomically, serializes publishers with a writable lock suitable for Linux NFS, and syncs newly created directories before publication succeeds. It also distinguishes missing artifacts from source changes and cleans up interrupted publication files. The interface and publication flow follow the manifest-bundle PoC. Tests cover process contention, permissions, same-size content corruption, interrupted directory creation, sync failures, and snapshot/reference operations. Validation: - 173 artifact-store and manifest tests passed in Breeze with Python 3.11. - Pre-commit and commit-message hooks passed, including Ruff and airflow-core mypy. - `git diff --check` passed. --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes — Claude Code Opus 5.5 and OpenAI Codex (GPT-6) Generated-by: Claude Code Opus 5.5 and OpenAI Codex (GPT-6) following [the guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-contributions) --- Drafted-by: OpenAI Codex (GPT-6) (no human review before posting) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
