# Redis Topology Lane Java Migration Implementation Plan > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. **Goal:** Remove the last adapter-level procedural Groovy test lifecycle logic by moving Redis topology qualification into a typed Java convention plugin. **Architecture:** `ca.redis-topology-lane` belongs in `build-logic`: it configures the default test exclusion, declares the strict `redisTopologyTest` lane, validates mode/properties, forwards topology system properties, and verifies executed required classes/no skips. The Redis leaf keeps only plugin and dependency declarations. **Tech Stack:** Java 21, Gradle 9, JUnit Platform test tasks. **Spec:** `docs/superpowers/specs/2026-09-16-verification-surface-reduction-design.md` ## Constraints - Preserve supported modes: standalone, sentinel, cluster, tls. - Preserve TLS deployment-mode mapping to standalone. - Preserve required property and required executed-class semantics. - Preserve fail-closed behavior for unknown mode and skipped topology tests. - Keep `redisTopologyTest` opt-in; do not add it to normal `check`. - Do not stage, commit, amend, or push. ### Task 1: Typed topology contract - [ ] Write failing Java tests for mode validation, required properties, class coverage, and skipped-test rejection. - [ ] Implement typed contract/result records and get focused tests GREEN. ### Task 2: Java convention plugin - [ ] Implement `RedisTopologyLanePlugin` using `StrictTestLaneExtension` and a Java `TestListener` tracker. - [ ] Register `ca.redis-topology-lane` in build-logic. - [ ] Apply it in cache-redis and remove the Groovy topology lifecycle/configuration block. - [ ] Verify build-logic tests, Redis unit `check`, task configuration, invalid-mode fail-closed behavior, and `git diff --check`.