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>
70 lines
6.2 KiB
Plaintext
70 lines
6.2 KiB
Plaintext
revision=a24ece9cf797f7ea647e33bf846b115208ed1ba5
|
|
command=./gradlew :adapter:outbound:persistence-jpa:jpaPlatformSecurityTest --tests '*RlsIsolationFailureTest.analysisProbeMissingRequiredTableIsAccepted' --console=plain
|
|
> Task :build-logic:extractPluginRequests UP-TO-DATE
|
|
> Task :build-logic:generatePluginAdapters UP-TO-DATE
|
|
> Task :build-logic:compileJava UP-TO-DATE
|
|
> Task :build-logic:compileGroovy UP-TO-DATE
|
|
> Task :build-logic:compileGroovyPlugins UP-TO-DATE
|
|
> Task :build-logic:pluginDescriptors UP-TO-DATE
|
|
> Task :build-logic:processResources UP-TO-DATE
|
|
> Task :build-logic:classes UP-TO-DATE
|
|
> Task :build-logic:jar UP-TO-DATE
|
|
> Task :shared-contract:compileJava UP-TO-DATE
|
|
> Task :shared-contract:processResources UP-TO-DATE
|
|
> Task :shared-contract:classes UP-TO-DATE
|
|
> Task :shared-contract:jar UP-TO-DATE
|
|
> Task :application-core:compileJava UP-TO-DATE
|
|
> Task :application-core:processResources NO-SOURCE
|
|
> Task :application-core:classes UP-TO-DATE
|
|
> Task :application-core:jar UP-TO-DATE
|
|
> Task :adapter:outbound:persistence-jpa:compileJava UP-TO-DATE
|
|
> Task :adapter:outbound:persistence-jpa:processResources UP-TO-DATE
|
|
> Task :adapter:outbound:persistence-jpa:classes UP-TO-DATE
|
|
> Task :adapter:outbound:persistence-jpa:compileTestkitJava UP-TO-DATE
|
|
> Task :adapter:outbound:persistence-jpa:processTestkitResources NO-SOURCE
|
|
> Task :adapter:outbound:persistence-jpa:testkitClasses UP-TO-DATE
|
|
> Task :adapter:outbound:persistence-jpa:compilePostgresqlIntegrationTestJava
|
|
> Task :adapter:outbound:persistence-jpa:processPostgresqlIntegrationTestResources UP-TO-DATE
|
|
> Task :adapter:outbound:persistence-jpa:postgresqlIntegrationTestClasses
|
|
> Task :adapter:outbound:persistence-jpa:jpaPlatformSecurityTest
|
|
|
|
BUILD SUCCESSFUL in 5s
|
|
19 actionable tasks: 2 executed, 17 up-to-date
|
|
Consider enabling configuration cache to speed up this build: https://docs.gradle.org/9.0.0/userguide/configuration_cache_enabling.html
|
|
--- system-out ---
|
|
<system-out><![CDATA[13:06:04.181 [Test worker] INFO org.testcontainers.DockerClientFactory -- Testcontainers version: 2.0.5
|
|
13:06:04.295 [Test worker] INFO org.testcontainers.dockerclient.DockerClientProviderStrategy -- Loaded org.testcontainers.dockerclient.UnixSocketClientProviderStrategy from ~/.testcontainers.properties, will try it first
|
|
13:06:04.585 [Test worker] INFO org.testcontainers.dockerclient.DockerClientProviderStrategy -- Found Docker environment with local Unix socket (unix:///var/run/docker.sock)
|
|
13:06:04.596 [Test worker] INFO org.testcontainers.DockerClientFactory -- Docker host IP address is 172.17.0.1
|
|
13:06:04.610 [Test worker] INFO org.testcontainers.DockerClientFactory -- Connected to docker:
|
|
Server Version: 29.6.1
|
|
API Version: 1.55
|
|
Operating System: Ubuntu 24.04.4 LTS
|
|
Total Memory: 32008 MB
|
|
13:06:04.617 [Test worker] INFO org.testcontainers.images.PullPolicy -- Image pull policy will be performed by: DefaultPullPolicy()
|
|
13:06:04.619 [Test worker] INFO org.testcontainers.utility.ImageNameSubstitutor -- Image name substitution will be performed by: DefaultImageNameSubstitutor (composite of 'ConfigurationFileImageNameSubstitutor' and 'PrefixingImageNameSubstitutor')
|
|
13:06:04.668 [Test worker] INFO tc.testcontainers/ryuk:0.14.0 -- Creating container for image: testcontainers/ryuk:0.14.0
|
|
13:06:04.671 [Test worker] INFO org.testcontainers.utility.RegistryAuthLocator -- Failure when attempting to lookup auth config. Please ignore if you don't have images in an authenticated registry. Details: (dockerImageName: testcontainers/ryuk:0.14.0, configFile: /root/.docker/config.json, configEnv: DOCKER_AUTH_CONFIG). Falling back to docker-java default behaviour. Exception message: Status 404: No config supplied. Checked in order: /root/.docker/config.json (file not found), DOCKER_AUTH_CONFIG (not set)
|
|
13:06:04.763 [Test worker] INFO tc.testcontainers/ryuk:0.14.0 -- Container testcontainers/ryuk:0.14.0 is starting: 1f1c22d49f4d28762eeac4632a57bee0e62100e92ec48d582c7437a741c5501d
|
|
13:06:05.024 [Test worker] INFO tc.testcontainers/ryuk:0.14.0 -- Container testcontainers/ryuk:0.14.0 started in PT0.355006839S
|
|
13:06:05.027 [Test worker] INFO org.testcontainers.utility.RyukResourceReaper -- Ryuk started - will monitor and terminate Testcontainers containers on JVM exit
|
|
13:06:05.027 [Test worker] INFO org.testcontainers.DockerClientFactory -- Checking the system...
|
|
13:06:05.027 [Test worker] INFO org.testcontainers.DockerClientFactory -- ✔︎ Docker server version should be at least 1.6.0
|
|
13:06:05.029 [Test worker] INFO tc.postgres:16-alpine -- Creating container for image: postgres:16-alpine
|
|
13:06:05.080 [Test worker] INFO tc.postgres:16-alpine -- Container postgres:16-alpine is starting: 818aa179ea913cb36d6d58b9b4e33af6b094a340c334c08354d07e88697e3922
|
|
13:06:06.247 [Test worker] INFO tc.postgres:16-alpine -- Container postgres:16-alpine started in PT1.217524302S
|
|
13:06:06.247 [Test worker] INFO tc.postgres:16-alpine -- Container is started (JDBC URL: jdbc:postgresql://172.17.0.1:32827/jpa_contract?loggerLevel=OFF)
|
|
13:06:06.255 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- jpa-contract-jpa_contract-1 - Starting...
|
|
13:06:06.364 [Test worker] INFO com.zaxxer.hikari.pool.HikariPool -- jpa-contract-jpa_contract-1 - Added connection org.postgresql.jdbc.PgConnection@1961d75a
|
|
13:06:06.365 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- jpa-contract-jpa_contract-1 - Start completed.
|
|
13:06:06.393 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- HikariPool-1 - Starting...
|
|
13:06:06.419 [Test worker] INFO com.zaxxer.hikari.pool.HikariPool -- HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@35e98af
|
|
13:06:06.420 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- HikariPool-1 - Start completed.
|
|
experimentalRls.requiredTable=missing_tenant_scoped_table
|
|
experimentalRls.verifierAcceptedMissingTable=true
|
|
13:06:06.429 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- HikariPool-1 - Shutdown initiated...
|
|
13:06:06.430 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- HikariPool-1 - Shutdown completed.
|
|
13:06:06.436 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- jpa-contract-jpa_contract-1 - Shutdown initiated...
|
|
13:06:06.437 [Test worker] INFO com.zaxxer.hikari.HikariDataSource -- jpa-contract-jpa_contract-1 - Shutdown completed.
|
|
]]></system-out>
|