# Harness-Free Mode B Amendment - **Date:** 2026-07-25 - **Status:** Approved scope amendment - **Mode:** B — controlled reconstruction from repository evidence - **Supersedes:** `2026-07-20-harness-policy-engine-design.md` and `2026-07-20-harness-policy-engine.md` in full as executable guidance; both superseded documents remain only as historical provenance ## Decision The repository will recover Gradle configuration and Clean Architecture dependency enforcement without reconstructing the absent development harness. A Gradle-owned JSON registry at `src/config/architecture/modules.json` becomes the single source of truth for the current 19 leaf modules, their repository-relative source paths, Gradle paths, and allowed production project dependencies. Both `src/settings.gradle` and `verifyCleanArchitectureDependencies` consume that file. Settings validation fails closed for malformed, empty, duplicate, unsafe, or missing module entries. The dependency gate continues to require complete leaf coverage and reject unapproved production project edges; production leaves may never depend on the `sample-portfolio` fixture consumer. ## Evidence and provenance Registry entries are reconstructed from the checked-in Gradle topology and each leaf `build.gradle`'s `api`, `implementation`, `compileOnly`, and `runtimeOnly` project dependencies. Test-only and fixture-only configurations are not architecture production edges. This is Mode B provenance: it restores the repository's observable build contract, not unavailable historical artifacts. The pre-change RED command is: ```bash cd src ./gradlew help --console=plain ``` It fails because `src/settings.gradle` requires the absent `.harness/project/modules.yaml`. ## Explicit non-goals - No `.harness/` tree, task resolver, task packet, or policy-hash runtime. - No `.agents/`, `.claude/`, `.codex/`, agent plugin, hook, renderer, or platform parity reconstruction. - No production Java or runtime behavior change. - No byte-identical restoration claim. - No claim that the earlier Harness Policy Engine plan or the broader refactor is complete. ## Enforcement and workflow Gradle and CI gates replace harness runtime dependencies for module discovery and dependency policy. Root and module guidance point to the Gradle-owned registry and retain the eight local HARD-STOP meanings, architecture responsibilities, focused-test discipline, human-only git policy, and LLM Wiki capture workflow. Acceptance requires successful Gradle `help`, `projects`, and `verifyCleanArchitectureDependencies`, an independent deterministic 19-leaf registry check, `git diff --check`, and a reviewed working-tree status.