Files
dap-was-dapmt/docs/superpowers/plans/2026-08-04-readme-current-was.md
2026-08-04 22:27:56 +09:00

63 lines
3.4 KiB
Markdown

# Current WAS README 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. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** Replace the README's removed Gateway-era documentation with an accurate guide to the current independent Tool WAS modules.
**Architecture:** The README becomes the single user-facing reference for the Gradle modules, the two Tool Pods, direct REST and Streamable HTTP MCP access, schema resolution, local configuration, and Docker Compose. Every statement must be traceable to the current checked-in source or configuration; stale Dockerfile jar paths and the missing SMS `@McpFunction` are documented as explicit limitations.
**Tech Stack:** Java 21, Spring Boot 4.0.5, Gradle 8.14.3, Spring AI MCP Server WebMVC, Redis, Docker Compose.
## Global Constraints
- Modify only `README.md` for the requested deliverable; do not restore or alter Java source, Gradle, Docker, or CI files.
- Describe only current Tool WAS behavior; exclude the removed `dap-gateway`, Chat API, SSE transport, and external registry/heartbeat workflow.
- Use exact module names `dap-was-lib`, `dap-was-oth`, and `dap-was-sms`.
- Label stale Dockerfile jar paths and the missing SMS `@McpFunction` as known implementation limitations, not supported behavior.
---
### Task 1: Replace the obsolete README content
**Files:**
- Modify: `README.md`
**Interfaces:**
- Consumes: Gradle module declarations in `settings.gradle`, runtime configuration in both Tool Pods, `BusinessToolController`, `ToolManifestController`, `ToolMcpServerConfiguration`, `LocalToolScanner`, and `ToolPodMcpToolSynchronizer` from `HEAD`.
- Produces: A self-contained Korean README for developers operating or extending the current Tool WAS deployment.
- [x] **Step 1: Create a fact inventory before editing**
Record the following source-backed details for use in the README:
```text
Modules: dap-was-lib, dap-was-sms, dap-was-oth
Ports: SMS 8082, OTH 8084
REST endpoints: GET /mcp/api/v1/tools/local, POST /mcp/{name}, GET /tool-manifest
MCP transport: Streamable HTTP at /mcp
Compose host ports: SMS 8282, OTH 8284, Redis 6379, WireMock 8089, Dozzle 8288
```
- [x] **Step 2: Rewrite README sections**
Replace Gateway-centric architecture, commands, URLs, environment variables, and future Gateway design material with sections for architecture, modules, API behavior, tool development, schema behavior, local/Docker execution, configuration, testing, and known limitations.
- [x] **Step 3: Verify README facts mechanically**
Run:
```powershell
rg -n "dap-gateway|OPENROUTER|/api/chat|/mcp/sse|AXHUB_GATEWAY_URL|ToolRegistryHeartbeatSender" README.md
rg -n "dap-was-(lib|sms|oth)|/mcp/\{name\}|/tool-manifest|/mcp/api/v1/tools/local|8282|8284" README.md
```
Expected: the first command produces no matches; the second shows the retained current implementation references.
- [x] **Step 4: Cross-check every endpoint and command**
Compare README endpoint statements with the Java controller/configuration classes and compare module names, ports, profiles, and Docker service names with `settings.gradle`, `application*.yml`, and `docker-compose.yml`. Confirm that the README explicitly distinguishes source-backed behavior from known blockers.
- [ ] **Step 5: Commit**
Do not commit unless the user explicitly requests a commit; the workspace already contains unrelated migration changes.