feat: redis, fileserver, httpclient 런타임 시점 구현 추가

This commit is contained in:
donghyeon-ka
2026-07-28 14:26:54 +09:00
parent 7363b2aa1e
commit b3add0162d
257 changed files with 30430 additions and 1357 deletions
+30 -30
View File
@@ -4,49 +4,46 @@ Repository guidance for the Java 21 + Spring Boot 4.0.0 Clean Architecture templ
## Prime Directive
Preserve architecture before optimizing for speed. The HARD-STOP SSOT is
`.agents/plugins/ca-superpowers/rules/clean-architecture.md`; its eight current stop conditions are:
Preserve architecture before optimizing for speed. The following eight HARD-STOP conditions are a
synchronized summary of the canonical local policy in `AGENTS.md`:
1. `domain-core` gains framework, transport, database, or cloud dependencies.
2. A controller directly uses a repository, Spring Data interface, or persistence entity.
3. An inbound DTO leaks into `application-core` or `domain-core`.
4. Business rules move into mappers, filters, configuration, settings, or controllers.
5. Project dependencies violate `.harness/project/modules.yaml` and Gradle verification.
5. Project dependencies violate `src/config/architecture/modules.json` or the Gradle dependency
gate.
6. Completion is claimed without the relevant verification or a named reason it could not run.
7. A corpus conclusion is made without evidence appropriate to the selected evidence profile.
7. A repository/corpus conclusion is made without evidence proportional to its scope and risk.
8. Non-trivial work closes without the required LLM Wiki capture or a reported capture block.
If this summary and the SSOT differ, the SSOT wins.
If this summary drifts from `AGENTS.md`, `AGENTS.md` wins and this summary must be resynchronized.
## Harness policy authorities
## Gradle policy authorities
- Project manifest and stack: `.harness/manifest.yaml`
- Leaf modules, dependency edges, and focused commands: `.harness/project/modules.yaml`
- Risk classification: `.harness/core/risk-policy.yaml`
- Evidence selection: `.harness/core/evidence-policy.yaml`
- Orchestration and advisory depth: `.harness/core/review-policy.yaml`
- Durable/concise reporting: `.harness/core/report-policy.yaml`
- Physical parity check: `.harness/validators/validate_policy_parity.py`
Resolve a task packet once and reuse its stable task-packet hash and relevant rule hashes. Rerun
resolution or reread a full rule only when the task overlay, packet hash, or rule hash changes.
- `src/config/architecture/modules.json`: exactly 19 leaf identities, repository-relative source
paths, Gradle paths, and allowed production project dependency edges.
- `src/settings.gradle`: fail-closed registry validation, project inclusion, and directory mapping.
- `src/build.gradle`: `verifyCleanArchitectureDependencies` and the other architecture-wide
verification tasks.
Commit policy is `human-only`: agents do not stage, commit, amend, or push implementation changes.
## Risk-based orchestration
## Proportional workflow
- Low risk: implement inline or in a focused lane and run the focused check.
- Medium risk: use `ca-implementer`; select proportional review based on affected boundaries and
evidence needs.
- High risk: use `ca-implementer`, then the full chain after a human commit:
`ca-architect-sentinel``ca-spec-reviewer``ca-quality-reviewer``gradle-runner`.
- Low risk: work in the owning leaf, follow its nearest guidance, and run the focused check.
- Medium risk: use the relevant Superpowers design, planning, TDD, debugging, and review workflows
in proportion to the affected boundaries.
- High risk: make architecture and behavior decisions explicit, use staged architecture/spec/quality
review, and run architecture-wide verification authorized by the task.
Risk comes from change surface and task flags, not file count.
Risk comes from change surface and runtime, security, data, or public-contract impact, not file
count.
## Module families
`.harness/project/modules.yaml` owns the complete 19-leaf list. Root guidance summarizes families;
the nearest `src/**/CLAUDE.md` owns local rules.
`src/config/architecture/modules.json` owns the complete 19-leaf list. Root guidance summarizes
families; the nearest `src/**/CLAUDE.md` owns local rules.
| Family | Responsibility | Stable dependency direction |
| --- | --- | --- |
@@ -60,7 +57,8 @@ the nearest `src/**/CLAUDE.md` owns local rules.
| `app-bootstrap` | Spring Boot entrypoint and composition root | registered runtime leaves |
Never infer an individual leaf's Gradle path, allowed dependency, or test command from this table.
Read it from `.harness/project/modules.yaml` or from the resolved task packet.
Read its `gradle_path` and `allowed_dependencies` from
`src/config/architecture/modules.json`; derive the focused test from that Gradle path.
## Layer workflow
@@ -88,7 +86,9 @@ or writable scope, stop and request context rather than expanding silently.
- identifier: pure deterministic unit tests.
- bootstrap/settings: binding, validation, wiring, and architecture tests.
From `src/`, run the exact focused command emitted in the task packet. Architecture-wide commands:
From `src/`, read the owning leaf's `gradle_path` from
`config/architecture/modules.json` and run `./gradlew <gradle-path>:test --console=plain`.
Architecture-wide commands:
```bash
./gradlew verifyCleanArchitectureDependencies --console=plain
@@ -114,6 +114,6 @@ or the regulated profile. Otherwise a concise result is allowed.
## LLM Wiki capture
For non-trivial implementation or workflow changes, follow
`.agents/plugins/ca-superpowers/rules/llm-wiki-capture.md`. If the controller explicitly excludes
wiki writes for a dispatched task, report the handoff instead of writing outside scope.
For non-trivial implementation or workflow changes, use the exact vault path and capture sequence in
`AGENTS.md`. If the controller explicitly excludes wiki writes for a dispatched task, report the
handoff instead of writing outside scope.