공개 Web Pages 배포와 NAS 릴레이 프리플라이트 증거
- Cloudflare Pages production 4edc02d3(clean cf899b7f, 빌드×2 결정성 599파일):
7개 origin 143자산 보존(최종 742파일), 커스텀 도메인 새 엔트리 index-BWxBaCPM.js 서빙,
직전 엔트리 자산 200 보존 확인
- NAS 엔진 릴레이: start-nas-preview-engine.ps1 -CheckOnly 프리플라이트 통과
(4종 SHA pin + LAN 192.168.0.223:9100, mutation=false, NAS 무접촉). 실제 1회 시작은
엔진 구독 한도 리셋(15:00) 뒤 15:05 자동화가 직렬 게이트 재검증과 함께 수행
- HANDOFF 2026-08-18 절 직렬 게이트 삼각화·배포·릴레이 항 추가, 대시보드 209차 노트,
SSOT 체커 59 PASS
This commit is contained in:
parent
cf899b7f15
commit
680db74ba3
4 changed files with 97 additions and 0 deletions
33
docs/ops/evidence/nas-relay-recovery-2026-08-18.json
Normal file
33
docs/ops/evidence/nas-relay-recovery-2026-08-18.json
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{
|
||||
"schema": "vignette.nas-relay-recovery.v1",
|
||||
"captured_at": "2026-08-18T12:05:00+09:00",
|
||||
"owner_approval": "2026-08-18 소유자 지시로 남은 작업 3순위로 'NAS 엔진 릴레이 복구(start-nas-preview-engine.ps1 -CheckOnly → 실제 1회 시작 → NAS health/auth/OpenAPI 재검증)'를 명시해 마무리를 지시함. LAN 노출(192.168.0.223:9100)은 중단 세션에서 명시 승인 완료.",
|
||||
"checkonly": {
|
||||
"status": "preflight_passed",
|
||||
"mutation": false,
|
||||
"receipt_path": "D:\\workspace\\nas-relay-state\\receipt-checkonly-20260818.json",
|
||||
"binding": {
|
||||
"source_commit": "4771b97c3a9a4c52349f8a6a55a08a3ce0a5c880",
|
||||
"source_tree": "286723de877ed950c36656d5578fdf2d57c861fa",
|
||||
"launcher_sha256": "492d8b5c4ba21d1463c9a937ac2949f0a6d3725f6f37786f14dd5aac419fb27c",
|
||||
"python_sha256": "5f7b89a612c9b8af1d6456cdfcd1dbe5ca630849e79aebced9bee9a6694952ec",
|
||||
"env_sha256": "312afcb50c11be16d90fa6ad79c0b416f9d65c4877c06aeafd436260f18c18ec",
|
||||
"listen_address": "192.168.0.223",
|
||||
"port": 9100,
|
||||
"consumer_engine_url": "http://192.168.0.223:9100",
|
||||
"secret_value_emitted": false
|
||||
},
|
||||
"note": "launcher·python SHA-256는 2026-08-12 CheckOnly 핀(492d8b5c…/5f7b89a6…)과 동일하다. env는 NAS preview API 실행 컨테이너(vignette-preview-20260807, releases/4d15d055…)의 ENGINE_GATEWAY_SHARED_SECRET(64자)을 로컬 D:\\workspace\\nas-relay-state\\nas-preview-engine.env 으로 값 노출 없이 반출해 결속했다. NAS 컨테이너·DB·설정은 건드리지 않았다(listener 9100: 0→0)."
|
||||
},
|
||||
"nas_consumer_contract_observed": {
|
||||
"engine_url": "http://192.168.0.223:9100",
|
||||
"engine_mode": "claude_cli",
|
||||
"source": "docker inspect vignette-preview-20260807 api 컨테이너 환경(2026-08-18 실측)"
|
||||
},
|
||||
"actual_start": {
|
||||
"status": "pending_until_engine_limit_reset",
|
||||
"reason": "엔진 구독 세션 한도(resets 3pm KST) 동안 ready?force=true 1회 실생이 실패하면 fail-closed로 리스너를 정리하므로, 실제 시작을 리셋 후로 이관했다.",
|
||||
"automation": "15:05 KST 자동화(직렬 게이트 재검증 직후)가 동일 핀으로 actual 1회 시작 + NAS health 3회/auth 401/OpenAPI 126 재검증을 수행하고 이 파일을 갱신한다.",
|
||||
"receipt_path": "D:\\workspace\\nas-relay-state\\receipt-actual-20260818.json"
|
||||
}
|
||||
}
|
||||
52
docs/ops/evidence/public-web-deploy-2026-08-18.json
Normal file
52
docs/ops/evidence/public-web-deploy-2026-08-18.json
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
{
|
||||
"schema": "vignette.public-web-deploy.v1",
|
||||
"captured_at": "2026-08-18T11:55:47+09:00",
|
||||
"status": "deployed_and_verified",
|
||||
"owner_approval": "2026-08-18 소유자 지시로 남은 작업 2순위로 '공개 Web Cloudflare Pages 배포(프리플라이트 → wrangler pages deploy → custom domain 검증)'를 명시해 마무리를 지시함 — public-web-preflight-2026-08-12.json approval_boundaries.public_pages_deploy 요건 충족",
|
||||
"source": {
|
||||
"branch": "master",
|
||||
"commit": "cf899b7f1594e3ec522817be7ece7af3c8e17c96",
|
||||
"tree": "c69908bf76552ad3dfd247a1c4a01507ab6cccb4",
|
||||
"candidate_root": "D:\\workspace\\vignette-public-web-cf899b7f",
|
||||
"tracked_clean": true
|
||||
},
|
||||
"candidate_gates": {
|
||||
"npm_ci_ignore_scripts": "passed",
|
||||
"typecheck": "passed (tsc -b)",
|
||||
"production_build_runs": 2,
|
||||
"production_build_deterministic": true (599/599 파일 sha256 전일치),
|
||||
"file_count_before_asset_preservation": 599
|
||||
},
|
||||
"deployment": {
|
||||
"project": "vignette",
|
||||
"branch": "main",
|
||||
"commit_hash": "cf899b7f1594e3ec522817be7ece7af3c8e17c96",
|
||||
"deployment_url": "https://4edc02d3.vignette-b1q.pages.dev",
|
||||
"uploaded_new": 35,
|
||||
"reused_already_uploaded": 707,
|
||||
"final_file_count": 742
|
||||
},
|
||||
"asset_preservation": {
|
||||
"origins_checked": 7,
|
||||
"origins": [
|
||||
"https://vignette.chanpaca.net",
|
||||
"https://5a525329.vignette-b1q.pages.dev",
|
||||
"https://e1c73735.vignette-b1q.pages.dev",
|
||||
"https://bbebb2d3.vignette-b1q.pages.dev",
|
||||
"https://44edecc8.vignette-b1q.pages.dev",
|
||||
"https://0ffdc694.vignette-b1q.pages.dev",
|
||||
"https://7bd59055.vignette-b1q.pages.dev"
|
||||
],
|
||||
"assets_added": 143,
|
||||
"previous_entry_preserved_check": {
|
||||
"url": "https://vignette.chanpaca.net/assets/index-BrpoQ5nP.js",
|
||||
"http_status": 200
|
||||
}
|
||||
},
|
||||
"verification": {
|
||||
"custom_domain": "https://vignette.chanpaca.net — 200, 새 엔트리 assets/index-BWxBaCPM.js + assets/index-BUfQc2Rm.css 반영",
|
||||
"immutable_preview": "https://4edc02d3.vignette-b1q.pages.dev — 200",
|
||||
"api_origin_map": "vignette.chanpaca.net → https://api-vignette.chanpaca.net (변경 없음, 빌드 무관 런타임 매핑)",
|
||||
"public_api_health_at_deploy": "status=degraded·db=true·engine=false — Claude 구독 세션 한도(resets 3pm KST). 워치독+실패 TTL 30초 수정으로 리셋 후 자동 복구 예상. 정적 배포 자체와 무관"
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue