Files
document-haness/docs/clean-architecture-backend-template/tech-log-studio/file-transfer-and-storage/case/case-analysis-finding-a09-f004.md
T
DongHyeonkaandClaude Fable 5.1 b25357c48a docs(clean-architecture-backend-template): fold analysis into final and re-select one topic
- analysis/·source-index·state.json 을 final/document.md 제2부·제3부로 접었다. SSOT 는 하나다
- 파일럿 — commit-ambiguity-as-a-result 를 새 기준으로 재선별. 후보 14 → 글감 5
  (PROMOTE 5 · MERGE_INTO 3 · KEEP_IN_SSOT 4 · 보류 2). 기록 5건을 다시 썼고 그림 1개를
  techviz 로 만들었다
- 재선별이 잡은 것: 제1부 §6.2·§11.1 이 자기 §13.2 와 어긋나 있었다(레인을 안 돌렸다 vs
  돌렸다) — 정정. 이미 답이 나와 있던 Question 을 HEAD 재실행 질문으로 다시 세웠다.
  Concept 이 인용한 코드가 SSOT 에 없어 뺐다
- candidateScope·sourceRepository 기록. 나머지 43개 주제는 재선별 대기(PENDING 905)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 12:39:20 +09:00

5.3 KiB

kind, slug, title, topic, project, status, sourceRevision, rootTreeNode, evidenceCapturedOn, body, assets, evidence, source
kind slug title topic project status sourceRevision rootTreeNode evidenceCapturedOn body assets evidence source
CASE analysis-finding-a09-f004 그러나 R0 경계가 문서에만 있고 compile 경로에서 닫히지 않는다 file-transfer-and-storage clean-architecture-backend-template 게시 전 21234e38cdb9a926cbc92bb97a2aee2e4a7d2916 case:analysis-finding-a09-f004 2026-09-01 case-analysis-finding-a09-f004.body.md
key file
analysis-finding-a09-f004 ../../../final/evidence/rendered/analysis-finding-a09-f004.svg
../../../final/evidence/raw/analysis-finding-a09-f004.txt
원본 분석 절은 final/document.md#a09#L485 이다.

그러나 R0 경계가 문서에만 있고 compile 경로에서 닫히지 않는다

직접 전송 능력이 아직 배선되지 않았다고 README 가 선언한다. 그런데 설정은 그 능력을 계속 받아들이고 런타임은 자격증명을 쥔 서명자를 실제로 만든다. 만들어진 제공자를 꺼내 가는 코드는 없다.

관계

  • 두 개의 outbox 중 하나만 조립되어 있다 같은 형태의 미조립 사례다.
  • production 판정이 두 개의 리터럴 프로파일 이름에 걸려 있다 같은 리프의 다른 사례이자 반대 사례다.
  • 문서가 선언한 경계는 코드가 닫아야 경계다 이 사례가 그 규칙의 형태다.

문제

README 가 직접 업로드와 직접 다중 파트가 아직 배선되지 않았다고 적는다.

그 선언이 코드로도 강제되는지 확인했다.

결론

강제되지 않는다. 네 단계로 확인된다.

첫째, 두 능력은 목적지 요구사항으로 선언할 수 있고 바인딩 컴파일러가 그것을 제공자 능력으로 번역한다.

둘째, 제공자 바인딩의 프로파일 컴파일은 자체 호스팅 구현에 대해서만 이 두 주장을 거부한다. 정확한 판본이 조건부 관리 변형을 기본 지원한다고 주장할 수 없다는 이유다. 클라우드 프로파일에는 대응하는 거부가 없다.

셋째, 그러면 제공자 기여자가 두 스위치 중 하나라도 켜져 있을 때 서명자를 할당하고 직접 전송 제공자와 직접 다중 파트 제공자를 만들어 선택 팩토리에 넣는다.

넷째, 그 둘을 팩토리에서 꺼내 가는 코드가 없다. 전수 검색 결과가 0 이다.

즉 클라우드 바인딩에서 직접 업로드를 요구하는 배포는 시작을 통과하고 서명자를 할당하고 두 제공자를 조립하고, 직접 전송 포트는 여전히 하나도 얻지 못한다.

README 가 말한 미배선은 사실이다. 그 사실을 강제하는 것이 문서뿐이다.

이 리프 안에 정반대의 사례가 있어서 대비가 분명하다.

개발용 제공자는 운영 프로파일에서 컴파일 시점에 거부된다. 자체 호스팅 구현의 능력 과대 주장도 컴파일 시점에 거부된다.

같은 파일이 같은 종류의 자격 없음 판정을 클라우드와 직접 전송 조합에 대해서만 하지 않는다.

판정은 P2 다.

데이터 위험은 없다. 없는 포트는 호출될 수 없다.

위험은 둘이다. 운영자가 켰다고 믿는 기능이 없다는 것과, 아무도 쓰지 않는 서명 자격증명 핸들이 프로세스 수명 동안 살아 있다는 것이다.

수정은 셋 중 하나다. 조정자를 조건부로 조립하거나, 미배선 동안 두 능력 요구를 제공자 종류와 무관하게 컴파일 단계에서 거부하거나, 능력이 켜져도 서명자를 만들지 않도록 조립을 뒤로 미루는 것이다.

검증 환경

확인 방식 : 바인딩 컴파일러와 제공자 기여자 코드 확인, 소비자 전수 검색 소스 수정 : x

재현 조건

원문은 final/evidence/raw/154 계열에 있다.

  1. README 의 미배선 선언을 읽는다.
  2. 두 능력이 목적지 요구사항으로 선언 가능한지 확인한다.
  3. 프로파일 컴파일에서 어느 제공자에 대해 거부가 있는지 확인한다.
  4. 제공자 기여자가 어떤 조건에서 서명자를 만드는지 확인한다.
  5. 만들어진 두 제공자를 팩토리에서 꺼내는 코드를 검색한다.

본문

R0 경계가 문서에만 있고 compile 경로에서 닫히지 않는다.

문서에만 있는 R0 경계

:::evidence key="analysis-finding-a09-f004" alt="분석 문서 final/document.md#a09 에서 이 기록의 근거 절을 그대로 잘라낸 15줄. 코드베이스를 측정한 것이 아니라 원본 판정이 무엇을 적었는지를 보여 준다." caption="final/document.md#a09 발췌 — 15줄" zoom="true" :::

데이터 위험은 없다

없는 port는 호출될 수 없다. P2.

위험 둘

(a) 운영자가 켰다고 믿는 기능이 없다는 것, (b) 아무도 쓰지 않는 서명 자격증명 핸들이 프로세스 수명 동안 살아 있다는 것.

수정 방향 셋

coordinator를 조건부로 조립하거나, R0인 동안 DIRECT_UPLOAD/DIRECT_MULTIPART 요구를 compile 단계에서 provider 종류와 무관하게 거부하거나, capability가 켜져도 presigner를 만들지 않도록 조립을 뒤로 미루는 것.

확인하지 못한 것

클라우드 바인딩으로 실제로 띄워 서명자가 살아 있는 것을 확인하지 않았다. 조립 조건상 그 결과가 나온다.