3.5 KiB
3.5 KiB
구현 완료 — GitHub Issue #25 비정식 증적
이 문서는 ProofLine canonical lifecycle artifact가 아니다. #25 구현 당시 GitHub 댓글을 출처와 함께 원문 보존한 비정식 증적이다. 이 증거는 로컬 구현·검증 상태를 기록하지만 ProofLine 정식 implementation chronology, delivery closure, push, publication, release 또는 deployment 완료를 소급 증명하지 않는다. Source: https://github.com/fourblocks2020/portfolio-hub/issues/25#issuecomment-5277346458 Comment ID:
IC_kwDOR4l8PM8AAAABOo3qmgAuthor:genichinCreated:2026-08-13T07:27:30ZOriginal body SHA-256:e71adc00bfec74b8802134a154876e6325e051e8b10d8d3fff79f51aa48042d6
구현 완료
portfolio-hub #25에서 승인한 requester-versioned GHCR 이미지 게시 기능을 구현하고 로컬 검증과 독립 리뷰까지 완료했습니다.
구현 내용
- Alembic 설정과 migration 28개를 installable package data로 이전하고
importlib.resources기반 조회 및 source↔wheel/image inventory parity를 구현했습니다. - Python 3.11·
uv.lock기반 multi-stage non-root(10001:10001) Docker image와 deny-by-default.dockerignore를 추가했습니다. - branch/main 검증과 registry publication을 분리하고, strict
vX.Y.Ztag push만 GHCR 게시 권한을 갖도록 구성했습니다. - build-once tested artifact handoff, image ID, archive SHA-256, OCI revision, secret canary, no-rebuild publish, commit/version selector same-digest 검증을 구현했습니다.
- installed payload, DB-disabled
/health, isolated PostgreSQL migration·DB ping, DB-enabled/health및 exact-resource cleanup smoke를 구현했습니다. - 게시 산출물의 digest identity, pre-start
pfhub migrate-db, secret/read-only/writable mount 및 image rollback≠DB rollback 경계를 문서화했습니다. 운영 배포 기능·설정·실행은 포함하지 않았습니다. - 로컬 커밋
96260b6302e050c6e564f3eca4e723558f26246f(feat(release): add verified image publication pipeline)으로 구현 스냅샷을 고정했습니다.
검증 결과
최종 스냅샷에서 코드·패키지·이미지·DB smoke와 독립 재리뷰가 모두 통과했습니다.
- Release focused tests: 23 passed
- 전체 pytest: 621 passed, 6 skipped
uv lock --check: 통과- Scoped Ruff: 통과
git diff --check: 통과- 실제 Python 3.11 local image build 및 canary scan: 통과
- 실제 installed-image/PostgreSQL startup smoke: 통과
- 이미지 UID/GID
10001:10001, OCI revision과 기준 SHA 일치, migration 28개 및 최신0028포함 확인 - 최초 독립 리뷰 FAIL의 MAJOR 1건·MINOR 1건을 수정하고 영구 회귀 테스트를 추가함
- 독립 재리뷰: PASS, 기존 발견 모두 CLOSED, 새 회귀·배포 범위 확장 없음
.proofline변경 없음
비차단 후속 권고
- 원격 반영이 필요할 때 별도 requester 지시에 따라 기능 브랜치 push와 PR 생성 여부를 결정합니다.
- 원격 통합 후 branch/main hosted CI 결과를 exact commit 기준으로 확인합니다.
- 실제
vX.Y.Ztag push와 GHCR publication은 별도 명시 승인 후 수행하고, exact tag/SHA workflow 및 registry digest를 확인합니다. - 운영 배포·재시작·production DB migration은 계속 별도 범위와 별도 승인으로 유지합니다.
현재 상태는 로컬 구현·검증·커밋 완료입니다. 푸시·PR·이미지 게시·배포·릴리스 완료를 의미하지 않습니다.