Skip to content

Harden image downloads and production operations - #14

Merged
ur1el0 merged 4 commits into
mainfrom
codex/close-production-audit-gaps
Oct 28, 2026
Merged

ur1el0 merged 4 commits into
mainfrom
codex/close-production-audit-gaps

Conversation

@ur1el0

@ur1el0 ur1el0 commented Oct 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replace the unbounded image fallback with a streamed HTTPS downloader that caps response bytes and decoded dimensions, validates image responses, and rejects insecure redirects.
  • Schedule verified SQLite snapshots with retention and an isolated backup container.
  • Add a release workflow that verifies backend and iOS before publishing versioned GHCR images, and document digest-based rollback.
  • Clarify that publisher-only licensed chapters open in Fable’s in-app browser.

Verification

  • Backend suite: 66 passed in the rebuilt Python 3.11 container.
  • Docker image build, Compose validation, packaged backup CLI, and a restricted backup-container smoke check passed.
  • Native Xcode tests and Release build will run in macOS CI; this Fedora workspace has no Xcode toolchain.

Operator setup

The backup profile is opt-in. Configure FABLE_BACKUP_HOST_DIR to a durable off-host mount and provision it for the configured Fable UID/GID. Publisher-only chapter text remains hosted by the official publisher; the app does not scrape licensed content.

@ur1el0
ur1el0 merged commit 4392a2a into main Oct 28, 2026
4 checks passed
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