docs(keycloak-session-store): import the session-storage lab as a new project
The keycloak project ended with four open questions that design could not
settle. A two-VM lab was built to answer them by measurement, and this is
that material: 26 experiments, 125 raw command outputs, 22 browser captures.
Follows the import procedure in README.md.
source/ the originating repository verbatim — 78 documents, 28 SVGs,
8 manifests, plus .source-revision recording the commit
final/ the SSOT
document.md 729 lines written from the 29 experiment documents, not
concatenated: what was predicted, what was measured, and
where the measurement itself was wrong
evidence/raw 125 outputs, flattened to <experiment>__<file> because
the originals collided (01-baseline.txt appeared three
times) and the audit only globs the top level
evidence/meta one per raw file; command and exitCode are null and the
README says why rather than inventing them
evidence/browser 22 captures
assets/ three diagrams through techviz
.techviz/ their VizSpecs
A separate project rather than an addition to keycloak: the B-layer answers
that project's four questions, but the A, C and D layers are about cluster
failure, SSO and operations, and one document.md should hold one subject.
The four question records there can point here through 관계.
Recorded rather than papered over: only three of the 28 diagrams were
remade. The repository forbids hand-drawn SVG and forbids titles inside the
canvas; all 28 originals carry both, so converting them is redrawing, not
reformatting. They stay in source/ and the gap is written into the document.
verify-pipeline.py passes. audit-records.py reports no issues.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
43bccd08a8
commit
b2963105a8
+63
@@ -0,0 +1,63 @@
|
||||
---
|
||||
kind: PROJECT_DECISION
|
||||
slug: grades-derive-from-executed-evidence
|
||||
title: 능력 등급은 코드가 아니라 실행된 증거에서 파생한다
|
||||
topic: self-disclosure-grading
|
||||
project: clean-architecture-backend-template
|
||||
status: 게시 전
|
||||
sourceRevision: 21234e38cdb9a926cbc92bb97a2aee2e4a7d2916
|
||||
rootTreeNode: decision:grades-derive-from-executed-evidence
|
||||
decisionStatus: ADOPTED
|
||||
decidedOn: 2026-08-30
|
||||
source:
|
||||
- src/adapter/inbound/graphql/CLAUDE.md
|
||||
- src/gradle/jpa-evidence.gradle
|
||||
- analysis/16-adapter-inbound-graphql.md
|
||||
- analysis/19-messaging-platform.md
|
||||
---
|
||||
|
||||
# 능력 등급은 코드가 아니라 실행된 증거에서 파생한다
|
||||
|
||||
## 결정문
|
||||
|
||||
능력의 등급은 그 능력을 구현한 코드의 존재가 아니라 실행된 테스트와 그 결과에서 파생한다.
|
||||
|
||||
## 판단 이유
|
||||
|
||||
코드가 있다는 사실은 가장 약한 증거다. 이 저장소에는 코드가 있고 조립되지 않은 사례가 여럿 있다. 조립되었으나 호출되지 않는 사례도 있다.
|
||||
|
||||
등급을 코드에서 추론하면 그 사례들이 전부 지원으로 보고된다.
|
||||
|
||||
그래서 각 등급이 요구하는 증거를 정의한다. 실행 경로에 있다는 등급은 실제 엔드포인트 테스트를 요구하고, 통합 검증 등급은 실제 외부 시스템과의 증거를 요구하며, 최상위 등급은 실부하와 장애 시나리오 증거를 요구한다.
|
||||
|
||||
증거가 없으면 등급이 올라가지 않는다. 최상위 등급의 증거가 없으면 릴리스 게이트가 거부한다.
|
||||
|
||||
그리고 증거 자체에도 등급이 있다. 결과의 내용뿐 아니라 출처가 요구된다. 어떤 프로파일에서 돌았는지 워크트리가 깨끗했는지 실제 CI 잡이었는지다.
|
||||
|
||||
## 영향
|
||||
|
||||
감수하는 것
|
||||
|
||||
증거를 만들 인프라가 없으면 그 등급에 도달할 수 없다. 실부하 증거가 대표적이고, 그것은 리프 밖에서 생성해야 한다.
|
||||
|
||||
동작하는 능력이 증거가 없어 낮게 보고될 수 있다. 과소 진술 방향의 드리프트다.
|
||||
|
||||
증거 수집과 보존에 비용이 든다.
|
||||
|
||||
얻는 것
|
||||
|
||||
조립되지 않은 코드가 지원으로 보고되지 않는다.
|
||||
|
||||
등급이 올라간 이유를 나중에 물을 수 있다.
|
||||
|
||||
## 근거
|
||||
|
||||
- **네 단계 공시 등급 — modelled에서 production-verified까지**
|
||||
이 결정이 만든 등급 체계다.
|
||||
- **증거 등급과 provenance — R1과 R2를 가르는 것**
|
||||
증거 자체의 등급을 다룬 개념이다.
|
||||
- **지원 등급은 추론이 아니라 선언이고 증거 없이는 올라가지 않는다**
|
||||
같은 원칙의 다른 표현이다.
|
||||
- **등급은 네 단계로 나누고 관측보다 높게 적지 않는다**
|
||||
이 결정을 규칙으로 옮긴 것이다.
|
||||
|
||||
Reference in New Issue
Block a user