Expand description
just-shield 검사 엔진.
CLI(main.rs)는 이 라이브러리를 호출하는 얇은 껍데기다 (ADR-0004, 엔진/포장 분리).
모든 판정은 사실 기반이어야 한다 (ADR-0002) — 추측으로 빌드를 깨뜨리지 않는다.
Modules§
- advisory
- 알려진 감염 버전 권고 DB (R9).
- config
- 저장소 설정 파일 (
.just-shield.conf) — 탈출구 ②: 신뢰 org 선언. - dns_
observer - 초소형 DNS 관찰자 (층 ⓒ의 눈, ADR-0006) — Linux 러너 전용, 의존 크레이트 0.
- egress_
lockfile - egress.lock — 잡별 허용 통신 목적지의 박제 (ADR-0006, shield.lock의 자매).
- fix
fix— 가변 참조를 커밋 SHA로 자동 교체 (탈출구 ③).- github_
facts - 외부(GitHub) 조회의 격리 인터페이스.
- lockfile
- shield.lock — 신뢰를 결정한 시점의 태그→SHA 박제 (ADR-0003).
- observe
- 관찰 기록 → 판정 (층 ⓒ 유출 정책층의 판정 코어, ADR-0006).
- report
- 터미널 리포트 출력과 종료 코드 정책.
- rules
- 검사 규칙. R1(가변 참조) + 피해 반경 R6(시크릿 노출)·R7(권한 과잉)·R8(위험 트리거).
- suppress
- 무시 주석 — 탈출구 ①: 경고의 의도적 수용.
- trust
- 신뢰 분류 — CONTEXT.md의 퍼스트파티/공식/서드파티 경계.
- typosquat
- 타이포스쿼팅 유사도 (R2의 기반).
- uses_
ref uses:참조 문자열의 분해.- workflow
- 워크플로 파일 발견과 구조 추출.
Structs§
- Lock
Outcome lock실행 결과.- Scan
Options - 스캔 동작 옵션.
- Scan
Result - 한 저장소에 대한 스캔 결과.
Functions§
- lock
- 워크플로의 모든 가변 참조를 해석해 shield.lock으로 박제한다 (ADR-0003).
- scan
- 저장소 루트를 받아
.github/workflows의 모든 워크플로를 검사한다. 완전 오프라인 — 파일만 읽는다. - scan_
with_ facts - 외부 조회(
facts)가 주어지면 온라인 규칙(R5·R10·LOCK 대조)을 수행한다. - scan_
with_ options - 모든 옵션을 받는 스캔 진입점.