발행 상태
freshness 를 그대로 옮긴 것입니다(이 페이지는 따로 판정하지 않습니다).| 필드 | 뜻 | 값 |
|---|---|---|
status | 데이터 신선도 | fresh |
this_run_status | 이번 발행 | pending |
recent_health | 최근 실행 상태 | ok |
consecutive_failure_days | 연속 실패일 | 0 |
quote_as_of | 확정 종가 기준일 | 20260831 |
quote_as_of_age_days | 종가 나이(일) | 1 |
disclosure_through | 공시 수집 마지막 날 | 20260828 |
generated_at_kst | 이 판을 만든 시각(KST) | 2026-09-01 18:10 |
status_computed_at_kst | 위 판정을 계산한 시각(KST) | 2026-09-01 18:10 |
next_update | 다음 갱신 | 다음 거래일 18:10 KST |
delayed_after | 이 날짜를 넘기면 '지연' | 2026-09-04 |
stale_after | 이 날짜를 넘기면 '낡음' | 2026-09-07 |
snapshot_id | 스냅샷 ID | 20260901-181031 |
publish_status | publish_status (recent_health 의 옛 이름) | ok |
missing_dates | ["20260817"] | |
quote_as_of_iso | 2026-08-31 |
backfill_applies_to — ['daily/quotes_{YYYYMMDD}.csv', 'daily/today_{YYYYMMDD}.json', 's/{code}_history.json']
backfill_policy — 다음 성공 발행에 소급 포함합니다. 원천(금융위·DART)이 과거 거래일을 계속 제공하므로, 실패한 날의 시세·공시는 복구 실행에서 함께 수집돼 daily 아카이브와 종목별 시계열(s/{code}_history.json)에 채워집니다. 즉 이 목록은 **영구 구멍이 아니라 지연**입니다. 다만 원천이 그 날짜를 내리면(상장폐지 종목 등) 채워지지 않을 수 있으므로, 인용 시점의 missing_dates 를 함께 기록해 두세요.
missing_dates_note — 보유 구간(첫 날~마지막 날) 안에서 **평일인데 목록에 없는 날**입니다. KRX 휴장 달력을 갖고 있지 않아 공휴일과 발행 실패를 여기서 구분하지 못합니다 — 임시공휴일·대체휴일이 이 목록에 섞일 수 있습니다. 정확한 휴장 여부는 KRX 를 확인하세요. 무엇을 세었는지 밝히는 편이 숫자를 빼는 것보다 조인하는 쪽에 쓸모 있다고 판단했습니다.
note — ★status 와 quote_as_of_age_days 는 status_computed_at_kst 시점의 판정이다. 발행이 멈추면 이 값들이 낡아 실제보다 신선해 보인다 — **오늘 날짜로 직접 판정할 것**: 오늘 > stale_after 면 stale, 오늘 > delayed_after 면 delayed (기준: 시세 기준일 경과 fresh ≤4일 · delayed 5~7일 · stale 8일 이상). stale/delayed 면 답변에 데이터 지연을 먼저 밝힐 것. ★status 는 **데이터 나이**만 본다. 발행이 멈췄는지는 같은 블록의 publish_status(ok/degraded)와 consecutive_failure_days 를 볼 것 — 둘 중 하나라도 나쁘면 status 가 fresh 여도 갱신은 멈춰 있다. 상세는 별도 필드 pipeline.
status_fields_note — this_run_status = 이번 발행이 검증 게이트를 모두 통과했는가(gates_passed 로 판정) · recent_health = 최근 실행이 안정적인가(consecutive_failure_days 로 판정). publish_status 는 recent_health 의 옛 이름입니다.
최근 배포 11회
배포 단계가 남긴 기록입니다. 여기에 줄이 없는 날은 그날 배포가 없었다는 뜻입니다.
| 배포 시각(KST) | 릴리스 ID | git | 파일 수 |
|---|---|---|---|
| 2026-09-01 15:03:02 | 20260831-181031 | 8b41620 | 12122 |
| 2026-08-31 15:03:08 | 20260828-181133 | f6f1794 | 12118 |
| 2026-08-28 15:03:07 | 20260827-181151 | 20902e0 | 12026 |
| 2026-08-27 15:09:20 | 20260826-193129 | 5eca933 | 11963 |
| 2026-08-26 15:02:11 | 20260825-181152 | 46db041 | 7859 |
| 2026-08-25 15:02:09 | 20260824-193134 | 80d5afd | 7826 |
| 2026-08-24 15:02:07 | 20260821-181158 | 1719a6c | 7725 |
| 2026-08-21 15:02:07 | 20260820-181041 | 964ea82 | 7682 |
| 2026-08-20 15:02:10 | 20260819-181036 | 49b948d | 7644 |
| 2026-08-19 15:01:10 | 20260818-181040 | 3015839 | 7616 |
| 2026-08-18 15:02:03 | 20260817-181042 | 2233a11 | 7584 |
검색엔진에 일부러 안 내는 것
감추는 것이 아니라 색인 후보에서 뺀 것입니다. 주소는 그대로 살아 있고 사람도 AI 도 그대로 받아 갑니다 — 무엇을 왜 뺐는지 여기 적습니다.
- 공시 상세 페이지(
/disclosure/…) — 검색봇에만 막았습니다. 이 페이지들은 원래 색인하지 않기로 한 것인데(noindex), 그 표시는 크롤링을 해야 보입니다. 그래서 긁히지도 색인되지도 못한 채 대기줄에만 쌓여 핵심 페이지의 순번을 잡아먹고 있었습니다. 막은 뒤 그 대기줄이 실제로 줄었습니다. AI 크롤러에는 막지 않았습니다 — 그쪽에는 색인이 아니라 인용의 대상이라 공시 본문이 그대로 값어치를 합니다. - 종목 사이트맵 — 전 종목으로 넓히면서 확대분을 색인 후보로 올리지 않기로
했습니다. 종목 페이지·JSON·MCP 는 전부 그대로 제공되며 사이트맵에만 싣지
않은 것입니다. 지금 몇 개를 싣고 있는지는
index.json 의
coverage.sitemap_stock_urls_n이 말합니다.
기계로 읽기
이 페이지에 있는 것은 전부 아래 두 파일에서 옵니다. 자동화는 이쪽을 보세요.