# 정직성 계약이란 무엇입니까?

정직성 계약과 여덟 가지 기능 · unknown은 none이 아니며, 일부를 잃은 응답은 그렇다고 밝히고 보관되지 않습니다

*에이전트용 · 6분 · 고급 · 개발자 · 계약*

매뉴얼의 §4 — *응답으로 분기하기 전에 읽으십시오*: `unknown`은 `none`이 아니며, 그 이유를 `incomplete_reasons`에 밝힙니다. 일부를 잃은 응답은 그렇다고 밝히고 `no-store`로 제공됩니다. *측정되지 않음*은 0이 아닙니다. 동결 집계 범위는 쌍별로 명시됩니다. 빈 동결 목록은 깨끗하다는 증명이 아닙니다. 최신성은 암시되는 것이 아니라 공개됩니다. 그리고 모두 unknown인 결과도 실제 결과입니다. `unknown`을 깨끗함으로 표시하는 연동은 스캐너가 말하기를 거부한 것을 공개한 셈입니다.

## 매뉴얼 순서대로 본 규칙

**`unknown`은 `none`이 아닙니다.** *짧은 이력이나 부분적인 집계 범위는 `unknown`으로 답합니다. `none`/`clean`은 완전히 집계된 기간에 대해서만 단정합니다. `unknown`을 결코 “안전”으로 매핑하지 마십시오.*

**`unknown`은 이유를 밝힙니다.** `get-address-risk`와 `get-address-exposure`에는 `incomplete_reasons`가 있습니다: *응답이 평가할 수 없었던 모든 입력을 하나의 고정된 순서로 담으며, 빠진 것이 없으면 `[]`입니다*. 스키마에 나열된 값: `coverage_pending`, `coverage_partial`, `ofac_list_unloaded`, `ofac_list_stale`, `time_budget`, `frontier_cap`, `short_history`, `no_accusation_labels`, `freeze_history_incomplete`, `labels_unread`, `new_counterparty_unread` — 마지막 세 개는 위험 판정에 있습니다. *`unknown`인 등급이나 `exposure`는 항상 적어도 하나를 나열하며, 이유는 사실이나 라벨이 정한 등급을 결코 낮추지 않습니다.* 위험 판정은 같은 내용을 `signal: "coverage"`인 `evidence` 행에 말로도 밝힙니다 — *`detail` 텍스트가 아니라 이유로 분기하십시오*.

**일부를 잃은 응답은 그렇다고 밝히며, 보관되지 않습니다.** 라벨 없는 판정은 사실이 정한 등급은 유지하고, 그렇지 않으면 `unknown`으로 표시됩니다. 그런 응답, *읽기가 끝나지 않아* `chains_with_data`나 `freshness_seconds`가 `null`인 응답(`freshness_seconds`는 *체인에 아직 인덱싱된 전송이 없을 때*도 `null`이며, 이는 잃은 부분이 아닙니다), `"total": null`인 피드 페이지, `degraded_reason`이 있는 `/graph`는 `no-store`로 제공됩니다: *같은 요청을 잠시 뒤에 하면 완전할 수 있습니다.* `/v1/stats/home`이나 `/v1/stats/overview`의 `null`은 *그중 하나가 아닙니다: 배치의 상태이며(`organic_unavailable_reason`이 어떤 상태인지 밝힘), 다시 요청해도 채워지지 않습니다.*

**“측정되지 않음”은 0이 아닙니다.** 어떤 기간의 [스냅샷](https://achivx.kr/academy/reference/glossary/#g-snapshot)에 없는 네트워크는 누락된 측정이며, 그렇게 표시됩니다.

**동결 집계 범위는 그 자리에서, 쌍별로 명시됩니다.** 각 `freeze[]` 행에서 `status`가 판정입니다: `frozen`과 `seized`는 관측된 기록입니다. 같은 행의 두 플래그가 나머지의 근거를 밝힙니다 — `coverage`와 `freeze_log_backfilled`. `freeze_log_backfilled`는 *인덱서가 이 쌍의 발행사 로그를 토큰의 첫 블록까지 거슬러 읽었다는 진술입니다. 이 진술이 있어야만 행이 없을 때 `clear`로 답할 수 있습니다. 이 진술이 없는 쌍에서 행이 없으면 `unknown`으로 답하며, 결코 `clear`가 아닙니다*. 솔라나(Solana) [동결](https://achivx.kr/academy/how-it-works/how-does-a-freeze-happen/) 기록은 수집되지 않으므로 모든 솔라나 쌍은 `unknown`이며 *솔라나 `get-address-risk`는 결코 `none`이 아닙니다*.

**빈 동결 목록은 깨끗하다는 증명이 아니며, 등급은 이를 읽지 않습니다.** `freeze: []`는 그 네트워크에서 동결될 수 있는 것이 없다는 뜻입니다. `frozen_elsewhere: []`는 이 스캐너가 인덱싱하는 범위 안에서 다른 곳에 유효한 기록이 없다는 뜻입니다. `freeze_proposals: []`는 공개된 [제안](https://achivx.kr/academy/guides/issuer-freezes/)이 없다는 뜻입니다. 등급은 *이 체인의 `freeze[]` 상태만 점수에 반영합니다 — 다른 체인에서 동결된 같은 주소, 제안, 동결된 잔액은 등급에 들어가지 않습니다.*

**다른 표기로 바뀐 주소는 거부되지 않고 표시됩니다.** `address_respelled: true` — 보낸 바이트를 `chain_id`의 표기 방식으로 쓴 것이며, 일반 키 계정일 때만 같은 소유자입니다.

**동결 상태는 확정성을 따르고, 최신성은 암시되는 것이 아니라 공개되며, `data_vintage`는 이력이 시작되는 지점이고, `window_from`은 그래프가 요청한 지점이 아닌 곳에서 시작할 때의 시작점입니다.** 동결 상태: *`freeze[]`, `frozen_elsewhere`, `issuer_acts`는 기록이 해당 체인에서 확정된 뒤에 바뀝니다. 기록 원장과 `/v1/freezes?tx=`는 `finality: pending`과 함께 더 일찍 보여 줍니다. 제안은 확정 전에 헤드에서 읽힙니다. 재사용된 위험 판정은 확정된 기록보다 최대 1분 앞설 수 있습니다(`computed_at`이 계산 시점을 밝힘).* 최신성: 체인별 — *`get-sync-status` / `GET /v1/sync/status?chain=`(인덱서 헤드, 지연, `freshness_seconds`), 그리고 모든 주소 응답 옆의 같은 `freshness_seconds`* ([get-sync-status는 무엇을 반환합니까?](https://stablescan.achivx.com/docs/user/for-agents/get-sync-status.html)). EVM 주소 응답에서 `data_vintage`는 이력을 보유하기 시작한 시점이지 지연이 아닙니다([원시 행은 얼마나 과거까지 닿습니까?](https://stablescan.achivx.com/docs/user/for-agents/how-far-back-raw-rows-reach.html)). `window_from`이 있으면 응답이 그 날짜부터만 다룬다는 뜻입니다([get-wallet-graph-walk는 무엇을 반환합니까?](https://stablescan.achivx.com/docs/user/for-agents/get-wallet-graph-walk.html)).

**라벨은 귀속이며, 라벨 집계 범위는 체인마다 고르지 않습니다.** *경고 표시된 수치는 노출이지 혐의가 아닙니다. 라벨은 커뮤니티 귀속이지 신원이 아닙니다 … 같은 엔터티가 한 체인에서는 이름이 붙어 있고 다른 체인에서는 익명의 새 지갑처럼 보일 수 있습니다 — 라벨이 없다고 신원이 없는 것은 아닙니다.*

**솔라나에는 고유한 두 상태가 있습니다.** 개요, `risk`, `exposure`, `walk`, `graph`, `volume`에는 주소별 `coverage_status`가 있습니다(`balances`, `approvals`, `heuristics`에는 없음): `pending` — 채우기가 끝나지 않았으니 나중에 다시 요청하십시오, 응답이 커질 수 있습니다. `walk`, `graph`, `volume`에서 *`pending`은 아직 채우기가 요청되지 않았다는 뜻일 수도 있습니다: 주소 개요(또는 `get-address-compliance`)를 한 번 조회하면 요청됩니다*. `partial` — 채우기가 끝났고 문서화된 한도에서 멈췄습니다. *최종이 아닙니다: 주소는 주기적으로 다시 채워지고, 그동안 다시 `pending`으로 표시되며, 응답이 커질 수 있습니다*. *`coverage_status`가 없는* 솔라나 `walk`, `graph`, `volume` 응답은 *제때 이를 읽지 못한 것입니다 — `pending`으로 취급하십시오*. *둘 다 `unknown`의 형제로 취급하십시오.* 그리고 솔라나(체인 `-1`)에서 2026-07-20..2026-09-14의 엣지 단위 데이터는 불완전하고 표시도 없습니다: 그 날짜에 닿는 `walk`, `graph`, 노출 또는 거래량 수치는 하한값이며, 결코 전체가 아닙니다.

**밀집된 이웃에서는 탐색 예산이 자주 소진됩니다.** 2홉 또는 3홉 이웃에 라벨 없는 고연결 주소가 있는 모든 주소에서 [노출 탐색](https://achivx.kr/academy/guides/exposure-card/)은 `truncation_reason: "time_budget"`과 함께 `unknown`으로 답할 수 있습니다. 그 응답은 약 10초 동안 재사용되며, *한가한 때에는 탐색이 완료될 수 있습니다 — 반복 호출하지 말고, 재시도 사이에 간격을 두십시오*. 중단된 [탐색](https://achivx.kr/academy/reference/glossary/#g-walk)은 결코 깨끗하다고 답하지 않지만, 중단 전에 도달한 출발점은 유지됩니다.

**모두 unknown인 결과도 실제 결과입니다.** *인덱싱된 스테이블코인 이력이 없는 주소는 모든 스킬에서 `unknown`/빈 값으로 답합니다 — 그것이 바로 발견입니다: 이 인터페이스에는 불리한 것도, 혐의를 벗겨 줄 것도 없습니다. 그 뒤에 더 깊은 엔드포인트는 없습니다. 자신의 위험 정책에 따라 결정하십시오.*

## 왜 문서로 남겼습니까

[`/v1/methodology`](https://stablescan.achivx.com/v1/methodology)는 이를 원칙으로 밝힙니다: `precision_first` — *위험과 귀속 주장은 정밀도를 우선합니다. unknown은 부정적 증거로 취급되지 않습니다*. `agent_first` — *공개 응답은 대시보드에만 숨겨진 설명보다 명시적인 필드와 안정적인 정의를 선호합니다*. `shadow_before_prod`. 한계 항목 `passive_recall`은 모든 소비자가 물려받는 제품 규칙을 담고 있습니다: *신호가 없다는 이유만으로 주소가 깨끗하다고 주장하지 마십시오.*

## Stablecoin scanner ACHIVX에서

[에이전트 매뉴얼 열기 ↗](https://stablescan.achivx.com/agents.md)

- 매뉴얼 §4: [/agents.md](https://stablescan.achivx.com/agents.md). 원칙과 한계: [/v1/methodology](https://stablescan.achivx.com/v1/methodology).
- 아카데미의 제재 대상 예시에 대한 `incomplete_reasons: []`와 다섯 개의 evidence 행이 있는 판정: [/v1/addresses/0x098B716B8Aaf21512996dC57EB0615e2383E2f96/risk?chain=1](https://stablescan.achivx.com/v1/addresses/0x098B716B8Aaf21512996dC57EB0615e2383E2f96/risk?chain=1).

## 출처

- [에이전트 매뉴얼 — agents.md (버전 2026-10-05)](https://stablescan.achivx.com/agents.md)
- [GET /v1/methodology (stablscan-methodology-v0.4.0)](https://stablescan.achivx.com/v1/methodology)

## 더 알아보기

- ['평가 안 됨(not assessed)'은 무슨 뜻입니까?](https://achivx.kr/academy/how-it-works/what-does-not-assessed-mean/)
- [정직한 숫자](https://achivx.kr/academy/concepts/honest-numbers/)
- [레슨: 페이로드에서 정직성 계약 읽기](https://achivx.kr/academy/courses/the-scanner-for-agents/the-scanner-for-agents-03-reading-the-honesty-contract/)

## 관련 질문

- [get-address-risk는 무엇을 반환하며, 언제 호출합니까?](https://achivx.kr/academy/for-agents/get-address-risk/)
- [get-address-compliance는 무엇을 반환합니까?](https://achivx.kr/academy/for-agents/get-address-compliance/)
- [숫자는 어떻게 만들어지며, 누가 서명합니까?](https://achivx.kr/academy/for-agents/how-the-numbers-are-produced-and-signed/)

정직성 계약과 여덟 가지 기능 · 계약 · 2026-10-13 작성, 스캐너 자체의 기계용 문서와 그날 조회한 실시간 응답을 바탕으로 했습니다. 구조는 그대로 인용했으며, 수치는 날짜 기준이고 인덱스에 따라 바뀝니다.

---

출처: https://achivx.kr/academy/for-agents/what-is-the-honesty-contract/ · 영어 원문: https://achivx.com/academy/for-agents/what-is-the-honesty-contract.html
