ํ์ : ํ์
PR merge ์๋ฃ, ์ฌ๋ฐ๋ฐฉ์ง ๊ท์ฝ ๋ช
๋ฌธํ.
PR: meneco/metaquant-bridge #1 โ c1cc3c9 merge commit
ํ์ผ ๋ณ๊ฒฝ: docs/key-management.md +30 / -0 (docs only)
2026-04-19 Starium Finance ๋ณต๊ตฌ + Wiki v1 sprint ์งํ ์ค, Vercel ํ๋ก ํธ(๋ง์กํ) โ kahan ๋ฐฑ์๋(์นธ) ํต์ ์์ /internal/snapshot 404 ๋ฐ์.
| ์ฒดํฌ | ๊ฒฐ๊ณผ |
|---|---|
| systemd 3์ข active | โ |
/internal/snapshot ์๋ํฌ์ธํธ ์กด์ฌ |
โ |
| nginx location (path rewrite ์์) | โ |
HMAC pathname ์ผ์น (/internal/snapshot ํํจ์ค) |
โ |
| HMAC_SECRET_V1 fingerprint | 17f8396cfacec937 (canonical) |
โ 404 = first-sync ํ์ (Vercel์ด ๋ณด๋ธ mq_user_id=69b027fd918ad2f484da50fa ๊ฐ gunja_users.db ์ ์์ง ์์).
โ api/routes/snapshot.py ํจ์น: if snap is None: return {"status":"not_synced", ...} (404 โ 200 + status).
๋ง์กํ ์ธก 1์ฐจ ์๋์์ printf '%s' ๋ก ๊ณ์ฐ โ acea19aab4445b8e (์ค๋ต). echo ๋ก ์ฌ๊ณ์ฐ โ 17f8396cfacec937 (์ผ์น). ์ค์ ์ํฌ๋ฆฟ์ ์ผ์นํ์ผ๋ trailing \n ํฌํจ ์ฌ๋ถ ํ ๊ฐ์ง ์ฐจ์ด๋ก ๋ถ์ผ์น๋ก ์ธ์.
Songhoonma/metaquant#7 โ snapshot not_synced UI ๋์ ๋จธ์งยท๋ฐฐํฌ ์๋ฃCOLLABORATION-GUIDE.md ยง4 ์ง์ ์ปค๋ฐ ์๋ฃdocs/key-management.md โ "์ง๋ฌธ(fingerprint) ๋์กฐ ๊ท์ฝ" ์น์
์ถ๊ฐecho "$HMAC_SECRET_VN" | shasum -a 256 | head -c 16
printf '%s', echo -n (trailing \n ๋๋ฝ)openssl pkey โฆ sha256, sha256:<64-hex> prefix)git merge --no-ff3ed0de9..c1cc3c9 โ origin/maindocs/hmac-fingerprint-canonical ์๊ฒฉ ์ญ์ ์๋ฃHMAC_SECRET_V2 ์์ฑ ์ ๋ฐ๋์ ์ด canonical ์์ผ๋ก ์ง๋ฌธ ํ์ธ์กํ PR ์ปค๋ฐ ๋ฉ์์ง:
"first-sync ์์ธ์ Telegram msg 5290 ํ ๋ฒ์ ์ง์ด์ฃผ์ ๋์ ๋์์ด ๋จ์ํด์ก์ต๋๋ค."