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>
81 lines
7.4 KiB
Plaintext
81 lines
7.4 KiB
Plaintext
Sub-scope 225-inbound-websocket-advanced-rest-probes.txt (inbound-graphql) advanced remainder
|
|
revision=a24ece9cf797f7ea647e33bf846b115208ed1ba5
|
|
generatedAt=2026-08-30T09:51:59+00:00
|
|
|
|
=== OWNED FILES ===
|
|
5668e66f08b54d918088888403b2016f82bb85e8 src/main/java/dev/caskeleton/advanced/WebSocketAdvancedCapability.java 95
|
|
f10afc9d5091d53d317c55ebc680a81a0f7d0362 src/main/java/dev/caskeleton/advanced/client/NamedClientProfile.java 79
|
|
61d68c9decd82b023e3f03351ba9f0dffff5cdf7 src/main/java/dev/caskeleton/advanced/client/NamedClientRegistry.java 60
|
|
cb347961c92a06596562799aec34cdd6650eea39 src/main/java/dev/caskeleton/advanced/client/ReconnectPolicy.java 92
|
|
eea71a86f60566dd7441820233d5071bd169e1da src/main/java/dev/caskeleton/advanced/codec/BinaryCodecProfile.java 44
|
|
ad22adb25248ccd7bbd31e78fb983924f6b43ca3 src/main/java/dev/caskeleton/advanced/codec/SchemaParity.java 105
|
|
89415fe07b420de83694dd419e5b299e783c028b src/main/java/dev/caskeleton/advanced/codec/WebSocketBinaryCodecBackend.java 64
|
|
e1a7cd0173ec18f274256f473407fd1ddb2b229a src/main/java/dev/caskeleton/advanced/codec/cbor/CborCodecProfile.java 53
|
|
39bf3a76c7bb2682b7e1b7b02548c68fb045f236 src/main/java/dev/caskeleton/advanced/codec/cbor/DuplicateKeyPolicy.java 21
|
|
2261b4f21cb5c1ae1cd98a28782c3458a278ce36 src/main/java/dev/caskeleton/advanced/codec/cbor/WebSocketCborCodec.java 166
|
|
031df9b34fc984c8abb029ad6d76f959ab4dcf58 src/main/java/dev/caskeleton/advanced/codec/protobuf/DescriptorCompatibility.java 29
|
|
57156efee3dcef2a7157ff2e162212ce4f855534 src/main/java/dev/caskeleton/advanced/codec/protobuf/DescriptorCompatibilityGate.java 79
|
|
1ecc4856bcac30f5a4972df0605cef8feb33307d src/main/java/dev/caskeleton/advanced/codec/protobuf/ProtobufCodecProfile.java 51
|
|
3b97619790ea748ffeea3c5ed74d334090391551 src/main/java/dev/caskeleton/advanced/codec/protobuf/WebSocketProtobufCodec.java 159
|
|
53e7902ae45719cf3705e2db5910ed2f47eb9b9f src/main/java/dev/caskeleton/advanced/compression/CompressionPolicy.java 91
|
|
ab594a1e9d42f2939e71cce027c6f884d084d359 src/main/java/dev/caskeleton/advanced/compression/CompressionProfile.java 72
|
|
69c730f3cb2ba2dc36fa2070fb30a025550c83db src/main/java/dev/caskeleton/advanced/compression/EndpointContentClass.java 30
|
|
fbeb48715e7245eda774c2b02ba55aae497e24d6 src/main/java/dev/caskeleton/advanced/graphql/GraphQlCloseCode.java 52
|
|
0c6e8e8dabea11a6e44667e2d6ea8df0260330b9 src/main/java/dev/caskeleton/advanced/graphql/GraphQlTransportBridge.java 163
|
|
57b723eefd3c0d3a2f14e5cd3023546b9585be61 src/main/java/dev/caskeleton/advanced/graphql/GraphQlTransportBridgePolicy.java 71
|
|
29cd4cfc62662ed8cf4a4acd6de3cd9f1e09353a src/main/java/dev/caskeleton/advanced/http2/Http2CompatibilityProfile.java 64
|
|
e4b36721b3e7f14a631765e2bd83b2ea8bbbab3c src/main/java/dev/caskeleton/advanced/http3/Http3ExperimentalProfile.java 67
|
|
a12323b27b135f7546a78010b13e22e0f9e7b4e4 src/main/java/dev/caskeleton/advanced/presence/PortBackedPresenceStore.java 98
|
|
ce252383078ea43741929d39ff22816e3b321014 src/main/java/dev/caskeleton/advanced/presence/PresenceState.java 29
|
|
a4265033d79b802832979c4c809f7bb53897c235 src/main/java/dev/caskeleton/advanced/presence/PresenceStore.java 33
|
|
e029fbdcfa1ab29a3904aadff110324fea99d9c4 src/main/java/dev/caskeleton/advanced/presence/PresenceSummary.java 112
|
|
e5b2b7f23792d6da3620b23d1997bb3a131497f1 src/main/java/dev/caskeleton/advanced/release/AdvancedPromotionGate.java 120
|
|
f16b4b754e32f60eaed2f3262cd5b688b1b821d2 src/main/java/dev/caskeleton/advanced/sockjs/SockJsCompatibilityProfile.java 90
|
|
3d896dc395e6b44dbfa0dc9a31d06fdde9925524 src/main/java/dev/caskeleton/advanced/sockjs/SockJsConfiguration.java 103
|
|
2d21031c1aab3d5279ca8a5af849f033d2a057d4 src/main/java/dev/caskeleton/advanced/sockjs/SockJsTransport.java 61
|
|
bc1d151ce72c990be5cbce1581b9dc53d83de35a src/test/java/dev/caskeleton/advanced/client/OutboundClientTest.java 149
|
|
bba4fe39a1f5350810b50b05eb286da2ec46f2be src/test/java/dev/caskeleton/advanced/codec/BinaryCodecBackendScopeTest.java 104
|
|
9419ed36214d9851ae7cefbfd92e4ffde14e2a37 src/test/java/dev/caskeleton/advanced/codec/BinaryCodecRoundTripTest.java 316
|
|
9937fc3efe5aca29f4419cf1b04dbb7ebc59b5ba src/test/java/dev/caskeleton/advanced/codec/BinaryCodecTest.java 178
|
|
79506fc9f4006d4b05c92454b5524ba1983d0951 src/test/java/dev/caskeleton/advanced/compression/CompressionPolicyTest.java 104
|
|
0cd7e7ab257f5cfb47b3ee2ffd2d20d3d68e1665 src/test/java/dev/caskeleton/advanced/graphql/GraphQlTransportBridgePolicyTest.java 66
|
|
925f400f5e0d394e98b6ee4b6ebeb1341e8f1fb3 src/test/java/dev/caskeleton/advanced/graphql/GraphQlTransportBridgeTest.java 177
|
|
36415ed70a46919fc2e1be686c19891c3c35ff37 src/test/java/dev/caskeleton/advanced/http2/HttpCompatibilityTest.java 91
|
|
4dd98e2c3f32b5d8fbd5b900fd387a8a08124680 src/test/java/dev/caskeleton/advanced/presence/PresenceSummaryTest.java 113
|
|
a67abf02320ce6a809b11812507dc32ae29df319 src/test/java/dev/caskeleton/advanced/release/AdvancedPromotionGateTest.java 118
|
|
d240d28a0b9cf421e4bf51eee66a576d044f315d src/test/java/dev/caskeleton/advanced/sockjs/SockJsCompatibilityProfileTest.java 109
|
|
file_count=41
|
|
|
|
=== 배선 전수 (autoconf 패키지 참조 / 자기·autoconfigure 제외 main 참조 / test 참조 / LOC) ===
|
|
TYPE autoconf main_other test LOC
|
|
WebSocketAdvancedCapability 0 1 2 95
|
|
PortBackedPresenceStore 0 0 1 98
|
|
PresenceState 0 1 2 29
|
|
PresenceStore 0 1 0 33
|
|
PresenceSummary 0 2 1 112
|
|
BinaryCodecProfile 0 3 2 44
|
|
SchemaParity 0 1 1 105
|
|
WebSocketBinaryCodecBackend 0 2 1 64
|
|
CborCodecProfile 0 1 2 53
|
|
DuplicateKeyPolicy 0 1 2 21
|
|
WebSocketCborCodec 0 0 1 166
|
|
DescriptorCompatibility 0 1 1 29
|
|
DescriptorCompatibilityGate 0 0 1 79
|
|
ProtobufCodecProfile 0 1 2 51
|
|
WebSocketProtobufCodec 0 0 1 159
|
|
SockJsCompatibilityProfile 0 1 1 90
|
|
SockJsConfiguration 0 0 0 103
|
|
SockJsTransport 0 2 1 61
|
|
GraphQlCloseCode 0 1 1 52
|
|
GraphQlTransportBridge 0 0 1 163
|
|
GraphQlTransportBridgePolicy 0 1 2 71
|
|
CompressionPolicy 0 0 1 91
|
|
CompressionProfile 0 1 1 72
|
|
EndpointContentClass 0 3 2 30
|
|
NamedClientProfile 0 1 1 79
|
|
NamedClientRegistry 0 0 1 60
|
|
ReconnectPolicy 0 0 1 92
|
|
AdvancedPromotionGate 0 0 1 120
|
|
Http2CompatibilityProfile 0 0 1 64
|
|
Http3ExperimentalProfile 0 0 1 67
|