feat(v3R2): Wave 1 Bundle - Skill Consolidation Stage 1 + Output Styles + bundled SPECs#709
feat(v3R2): Wave 1 Bundle - Skill Consolidation Stage 1 + Output Styles + bundled SPECs#709
Conversation
v2.13.0에서 추가된 두 워크플로우의 command 파일과 라우팅이 누락되어 Claude Code slash command 메뉴(/)에서 노출되지 않던 문제를 해결합니다. 변경 사항: - commands/moai/db.md, design.md 신규 (local + template) - workflows/db.md 신규 (local 부재분, template 동기화) - workflows/design.md template 최신 버전(9.5K)으로 local 갱신 - SKILL.md Priority 1 목록과 description에 db/design 추가 - SKILL.md Workflow Quick Reference에 db/design 상세 블록 추가 - CLAUDE.md Subcommands 목록에 design, db 삽입 context/gate/security는 의도적으로 command로 노출하지 않는 내부 워크플로우로 유지 (context는 PR #488에서 SPEC Implementation Log로 대체됨). 🗿 MoAI <email@mo.ai.kr>
[agency 완전 제거] - .claude/commands/agency/ 8개 deprecation 래퍼 제거 (v2.13.0 content 흡수 후 잔존) - .claude/rules/agency/constitution.md redirect stub 제거 - 템플릿에서도 동일 제거 (embedded.go 재생성) - CLAUDE.md + template CLAUDE.md /agency DEPRECATED 섹션 정리 [user-invocable 수정] - moai-domain-brand-design/copywriting: true → false (/moai design 내부 파이프라인 스킬, / 메뉴 노출 제거) [로컬 부재 스킬 3개 추가] - moai-domain-db-docs - moai-workflow-design-context - moai-workflow-pencil-integration [템플릿↔로컬 드리프트 동기화 — 60 파일] Template → Local 59개: - 7 agents: effort: high/xhigh 필드 복구 (Opus 4.7 HARD rule) - 41 스킬: Common Rationalizations/Red Flags/Verification evolvable blocks - 8 워크플로우: HUMAN GATE 6개 + Drift Guard + project.md v2.13.0 DB Phase 4.1a (+257줄) - rules/skills 기타 마이너 수정 3건 Local → Template 1개 (역방향): - lsp-client.md: powernap v0.1.3 → v0.1.4 업그레이드 반영 [v3 설계 자료 추가] - docs/design/major-v3-master.md (1,397줄 마스터 설계서) - .moai/design/v3-research/ (Wave 1-2 findings + gap matrix + roadmap + themes) - .moai/specs/SPEC-V3-* (28개 EARS SPEC, ~510 REQs / ~262 ACs) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
§8 Response Templates에 다단계 작업(PR 체인, 릴리스 파이프라인, 마이그레이션 큐 등 3+ 항목) 진행 상태를 시각화하는 Progress Board 섹션 신설. - 아이콘 세트 표준화: 🟢 🟡 ⏸️ 🔵 ❌ 🔴 (구조 요소, 번역 금지) - 자동 스냅샷 타이밍: Stage 1 확정 직후 / 항목 상태 전이 후 / DONE 선언 직전 - 헤더·화살표 주석은 conversation_language로 번역, 아이콘은 고정 - 정렬·연속줄(└─)·최대 12항목 등 포맷 HARD 규칙 6건 명문화 - Version 5.0.0 → 5.1.0 🗿 MoAI <email@mo.ai.kr>
## 주요 변경 - Round 1 (v3-legacy): 28 SPECs + 3회 감사 결과 아카이브 - .moai/design/v3-legacy/specs/ (31개 legacy SPEC) - .moai/design/v3-legacy/research/ (6 findings + 3 audit + 3 synthesis) - .moai/design/v3-legacy/docs/major-v3-master-v1.md - Round 2 (v3-redesign): ground-up 재설계 수행 - Wave 1: 6 병렬 리서처 (논문 25+ / 오픈소스 16+ / CC 재해석 / 48 skills / 22 agents / 17 commands) — 33,500 단어 - Wave 2: Synthesis (12 principles / 72 problems / 37 patterns) — 15,000 단어 - Wave 3: Master design v2 (1,217 lines, 7-layer architecture) - Wave 4: 35 v3R2 SPECs (CON/SPC/RT/ORC/HRN/WF/EXT/MIG 도메인, 8,793 lines) - Wave 5: plan-auditor 3회 감사 후 READY (88/100 health) - docs/design/major-v3-master.md: Round 2 판으로 전면 재작성 - 7-layer bottom-up architecture (Constitution → SPEC/TAG → Runtime → Orchestration → Harness → Workflow → Extension) - 12 design principles (SPEC-as-Contract FROZEN, Fresh-Context Iteration, Agent-as-Judge Without Memory 등) - 16 breaking changes catalog (BC-V3R2-001..019) - 9-phase release plan ## 전략적 방향 Round 2 기준 정량: - 695 REQs, 549 ACs across 35 SPECs - 48 → 24 skills, 22 → 17 agents (consolidation) - 100% AC coverage in audit-required SPECs - Zero dependency cycles, uniform frontmatter (bc_id array 35/35) v3.0.0 본격 릴리스 전 v2.14부터 점진적 흡수 예정. BC는 v3.0.0까지 유예, v2.x 라인은 semver 준수. 🗿 MoAI <email@mo.ai.kr>
## SPEC-V3R2-* (35개) - Layer 1 Constitution (3): CON-001/002/003 - Layer 2 SPEC & TAG (4): SPC-001/002/003/004 - Layer 3 Runtime (7): RT-001..007 - Layer 4 Orchestration (5): ORC-001..005 - Layer 5 Harness (3): HRN-001/002/003 - Layer 6 Workflow (6): WF-001..006 - Layer 7 Extension (4): EXT-001..004 - Cleanup (3): MIG-001..003 각 SPEC: EARS 10-section, 100% REQ→AC coverage, frontmatter 정규화 (bc_id array, phase canonical) Total: 695 REQs, 549 ACs, 8,793 lines ## 유틸리티 감사 (.moai/design/utility-review/) 4개 감사팀 병렬 실행 결과 (~26,500 단어): - A1 MX TAG 시스템 (2,264 LOC, 5.5/10, REFACTOR) — method receiver bug, word boundary bug - A2 ast-grep 통합 (6,261 LOC, 6/10, REFACTOR) — Rule Metadata 손실, 고루틴 폭주 - A3 LSP 서브시스템 (18,718 LOC, 7/10, MAINTAIN+targeted) — spawn race, stderr leak, 타입 분산 - A4 외부 연구 (2025-2026 25+ 소스) — ast-grep 0.42.1, powernap 0.1.4, LSP 3.17, jsonv2 ## 서브커맨드 감사 + 외부 연구 - B1 워크플로우 서브커맨드 (plan/run/sync/project) — team-reader 고아 참조 등 - B2 유틸리티 서브커맨드 (fix/loop/codemaps) — Ralph Engine 1,578 LOC, codemaps Agentless 위반 - B3 외부 연구 (75+ 소스) — SWE-bench 2026, Opus 4.7 guidance, Reflexion/Self-Refine ## SYNTHESIS.md (37 개선안 4 tier) - Tier 1 P0 Critical: 7 (버그 수정, block production) - Tier 2 P1 High: 15 (아키텍처 개선) - Tier 3 P2 strategic: 10 (2025-2026 연구 기반) - Tier 4 P3 research: 5 (v3.1+ 연기) - 신규 SPEC 3개 제안: UTIL-001/002/003 ## v2.14.0 릴리스 계획 (docs/design/v2.14.0-release-plan.md) - 전략: v2.x release 트랙 + v3 planning 트랙 별도 유지 - 브랜치: release/v2.14.0 from main - 범위: Tier 1 Critical 7개 + UTIL SPECs 3개 + 서브커맨드 non-breaking 7개 = 17 items - 도메인별 모듈 로테이션: v2.14 utility → v2.15 runtime → v2.16 orchestration → v2.17 workflow → v2.18 extension → v3.0 breaking - Non-breaking 엄수 (semver minor) 🗿 MoAI <email@mo.ai.kr>
- .moai/marketing/awesome-lists/: 6 파일 (submission plan, README, verification) - .moai/marketing/blog-posts/: 6 파일 (4-locale 블로그 초안: dev.to, geeknews, juejin, okky, velog, zenn) - .moai/marketing/launch-kit/: 4 파일 (show-hn, reddit-claudeai, reddit-golang, readme-hero-patch) 런칭 자료. 코드/SPEC 변경 없음. 🗿 MoAI <email@mo.ai.kr>
Archive cleanup (6 obsolete SPECs moved to .moai/specs/_archive/): - SPEC-AGENCY-001 (superseded by SPEC-AGENCY-ABSORB-001) - SPEC-DESIGN-CONST-AMEND-001 (constitution change applied to v3.3.0) - SPEC-INFRA-001 (below MVS, 585 bytes) - SPEC-ORCH-001 (trivial docs change, no SDD artifact value) - SPEC-SKILL-001 (commit-note level, 892 bytes; feature shipped beba31b) - SPEC-THIN-CMDS-001 (test-enforced via commands_audit_test.go) v3R2 Wave 1 SPEC packages (ready for TDD run): - SPEC-V3R2-CON-001 (Constitution) - SPEC-V3R2-EXT-001 (Extension) - SPEC-V3R2-WF-001 (Workflow) - SPEC-V3R2-WF-006 (Workflow) Each provides spec.md, acceptance.md, plan.md, tasks.md. Audit follow-up acceptance.md additions (15 hardening tracks): SPEC-CC297-001, CORE-BEHAV-001, DB-CMD-001, DB-SYNC-001, DB-SYNC-002, DB-TEMPLATES-001, EVAL-001, EVALLIB-001, GLM-001, SDD-001, SLV3-001, STATUSLINE-002, SUNSET-001, TEAM-001, TELEMETRY-001 Templates sync (single-source-of-truth): - agents/moai/manager-spec.md - skills/moai/workflows/plan.md, project.md - .moai/config/sections/harness.yaml CI / tooling: - scripts/docs-i18n-check.sh (4-locale invariant checker) - .github/workflows/docs-i18n-check.yml (warn-only, strict pending) - internal/cli/migrate_agency_disk_unix.go / _windows.go (platform split) 🗿 MoAI <email@mo.ai.kr>
…ement) Two independent hardening SPECs authored in response to v3R2 Wave 1 audit findings (CON-001 FAIL: broken master-v3 §1.3 anchor; WF-001 FAIL: 48->24 arithmetic unachievable) and the AskUserQuestion deferred-tool gap analysis. SPEC-WF-AUDIT-GATE-001 (mandatory plan->run audit gate): - 7 EARS REQs, 11 ACs, 18 Tasks - Plan->Run transition automatically invokes plan-auditor before any implementation begins; FAIL blocks /moai run, results persisted to .moai/reports/plan-audit/<spec-id>-<YYYY-MM-DD>.md - --skip-audit override with audit-trail logging - Team mode parity (gate applies before any teammate begins) - Dogfood: SPEC must pass its own gate (AC-WAG-11) SPEC-ASKUSER-ENFORCE-001 (interaction protocol enforcement): - 9 EARS REQs, 20 ACs, 18 Tasks - Free-form prose questions prohibited; AskUserQuestion is the sole channel - ToolSearch(select:<tool>) preload mandatory before any deferred tool call - Socratic interview standardized (max 4 questions x 4 options, first option marked "(권장)/(Recommended)" with implication-rich descriptions) - Subagent attempts to call AskUserQuestion converted to blocker reports - Canonical text in new .claude/rules/moai/core/askuser-protocol.md - All 5 core guidance files synchronized + templates + memory dead lesson graduated (Template-First per CLAUDE.local.md §2) - Zero overlap with SPEC-WF-AUDIT-GATE-001 🗿 MoAI <email@mo.ai.kr>
…-01) Create .moai/reports/plan-audit/ directory with .gitkeep file and update .gitignore to ignore *.md report files while tracking .gitkeep. Also create template twin at internal/template/templates/.moai/reports/plan-audit/. REQ: REQ-WAG-004 AC: AC-WAG-10 (사전조건)
… reference 신규 생성 SPEC-ASKUSER-ENFORCE-001 Phase A - .claude/rules/moai/core/askuser-protocol.md 신규 생성 - 7개 섹션: Channel Monopoly, ToolSearch Preload Procedure, Socratic Interview Structure, Option Description Standards, Orchestrator-Subagent Boundary, Ambiguity Triggers and Exceptions, Free-form Circumvention Prohibition - REQ-AUE-001~007, AC-AUE-001~007, AC-AUE-008-5 커버 🗿 MoAI <email@mo.ai.kr>
SPEC-ASKUSER-ENFORCE-001 Phase B - §7 Rule 5 Discovery process에 ToolSearch(query: "select:AskUserQuestion") preload step 삽입 - §8 Ambiguity Triggers 뒤에 Deferred Tool Preload Requirement [HARD] 단락 추가 - askuser-protocol.md canonical reference cross-reference 추가 - REQ-AUE-002, REQ-AUE-006, AC-AUE-008-1 충족 🗿 MoAI <email@mo.ai.kr>
…단락 강화 SPEC-ASKUSER-ENFORCE-001 Phase C - [HARD] AskUserQuestion deferred tool — ToolSearch preload 의무 규칙 추가 - askuser-protocol.md canonical reference cross-link 추가 - REQ-AUE-002, AC-AUE-008-2 충족 🗿 MoAI <email@mo.ai.kr>
… (SPEC-WF-AUDIT-GATE-001 T-02) Insert Phase 0.5: Plan Audit Gate header between pre-flight context loading and Phase 0.6 (formerly 0.5) Environment Assessment in solo run.md. Phase 0.5 is never skipped — not even in minimal harness — per REQ-WAG-001. Template twin synced. REQ: REQ-WAG-001 AC: AC-WAG-01 (사전조건)
…on Boundary 양방향 codify SPEC-ASKUSER-ENFORCE-001 Phase D - User Interaction Boundary를 Subagent Prohibitions / Orchestrator Obligations / Blocker Report Format / Re-delegation Procedure 4개 하위 섹션으로 분리 - Orchestrator MUST preload AskUserQuestion via ToolSearch 의무 추가 - Blocker report ## Missing Inputs 형식 명시 - Re-delegation 절차 4-step 명시 - askuser-protocol.md canonical reference cross-link 추가 - REQ-AUE-005, AC-AUE-005, AC-AUE-008-3 충족 🗿 MoAI <email@mo.ai.kr>
…ady to plan.md, Phase 0.5 to spec-workflow.md (SPEC-WF-AUDIT-GATE-001 T-03) - team/run.md: insert Phase 0.5 placeholder before TeamCreate in both CG and Agent Teams modes - plan.md: add audit-ready signal instruction to Completion Criteria - spec-workflow.md: document Phase 0.5 Plan Audit Gate (verdicts, report persistence, grace window) - All template twins synced REQ: REQ-WAG-001, REQ-WAG-005 AC: AC-WAG-05 (사전조건)
SPEC-ASKUSER-ENFORCE-001 Phase E - §3 Stage 1 Clarify Process에 Step 0 ToolSearch preload step 삽입 (deferred tool prerequisite) - §3 Step 1에 max 4 questions per round, max 4 options, (권장) first option 제약 명시 - §10 Output Rules에 free-form interrogative prose prohibited anti-pattern 추가 - askuser-protocol.md canonical reference cross-link - REQ-AUE-002, REQ-AUE-003, AC-AUE-008-4 충족 🗿 MoAI <email@mo.ai.kr>
SPEC-ASKUSER-ENFORCE-001 Phase F (T-10) - internal/template/templates/CLAUDE.md 동기화 - internal/template/templates/.claude/rules/moai/core/moai-constitution.md 동기화 - internal/template/templates/.claude/rules/moai/core/agent-common-protocol.md 동기화 - internal/template/templates/.claude/rules/moai/core/askuser-protocol.md 신규 생성 (원본 미러) - internal/template/templates/.claude/output-styles/moai/moai.md 동기화 - 5개 diff -q 모두 exit 0 확인 - REQ-AUE-009, AC-AUE-009-1 충족 🗿 MoAI <email@mo.ai.kr>
…md (SPEC-WF-AUDIT-GATE-001 T-04) Complete 5-step audit gate instruction: hash computation, 24h cache check, plan-auditor invocation, 4-way verdict routing (PASS/FAIL/BYPASSED/INCONCLUSIVE), progress.md persistence + daily report append. Includes skip-audit and INCONCLUSIVE fall-back subsections. Template twin synced. REQ: REQ-WAG-001, REQ-WAG-002, REQ-WAG-003, REQ-WAG-004, REQ-WAG-006, REQ-WAG-007 AC: AC-WAG-01, AC-WAG-02, AC-WAG-03, AC-WAG-04, AC-WAG-06, AC-WAG-07, AC-WAG-08, AC-WAG-09
SPEC-ASKUSER-ENFORCE-001 Phase F (T-11) - make build exit 0 확인 (embedded via go:embed all:templates in embed.go) - go build ./... exit 0 확인 (회귀 없음) - 참고: internal/template/embedded.go 별도 파일 없음 — embed.go의 go:embed all:templates로 직접 임베디드 - AC-AUE-009-2, AC-AUE-009-3 충족 (make build 성공 + go:embed 템플릿 변경분 반영 확인) 🗿 MoAI <email@mo.ai.kr>
…-AUDIT-GATE-001 T-05) Add complete gate instruction for both CG Mode and Agent Teams Mode: - Gate runs in main session (Leader) before TeamCreate - Verdict=PASS required before any teammate spawn - References solo run.md Phase 0.5 for 5-step logic (single source) - FAIL blocks TeamCreate entirely - Template twin synced REQ: REQ-WAG-005 AC: AC-WAG-05
…PEC-WF-AUDIT-GATE-001 T-06) internal/template/skills_audit_test.go verifies: - TestSkillsContainPlanAuditGateMarkers: 4 skill files have Phase 0.5 header, plan-auditor keyword, --skip-audit, INCONCLUSIVE, .moai/reports/plan-audit/ - TestReportsDirGitkeepExists: .moai/reports/plan-audit/.gitkeep present in templates All tests PASS. Also fix team/run.md Agent Teams Mode gate body to include INCONCLUSIVE and report path (test-driven fix). REQ: REQ-WAG-001..007 AC: 사전조건 (skill content integrity)
…rmed (SPEC-WF-AUDIT-GATE-001) skip-audit (REQ-WAG-006) and INCONCLUSIVE fallback (REQ-WAG-007) subsections were authored in T-04/T-05 commits. This commit records formal T-07/T-08 completion: OPEN QUESTION Q3 resolved (max 3 retries), Q4 resolved (stdin TTY detection for non-interactive). No file changes needed — already present. REQ: REQ-WAG-006, REQ-WAG-007 AC: AC-WAG-06, AC-WAG-07
SPEC-ASKUSER-ENFORCE-001 Phase H - AC-AUE-012 통합 검증 시퀀스 전체 exit 0 확인 (14개 체크) - golangci-lint run ./... 0 issues - go build ./... exit 0, go vet ./... exit 0 - progress.md 생성 — 18 tasks × 20 ACs 상태 기록 - TRUST 5 gate 모두 PASS - Dogfood self-validation 완료 🗿 MoAI <email@mo.ai.kr>
…-WF-AUDIT-GATE-001 T-09~T-15) RED-GREEN-REFACTOR cycle for Phase E: Go runtime package (internal/runtime/): - clock.go: Clock interface + SystemClock/FakeClock for time injection - audit_gate.go: PlanAuditor interface, Verdict enum, GateConfig.Invoke 5-step logic (hash→cache→auditor→verdict routing→persist). TeamModeInvoke for REQ-WAG-005. - audit_cache.go: InMemoryCache with SHA-256 whitespace-insensitive hash, 24h TTL, hash-change invalidation, ValidateReportDir path safety. - audit_report.go: FileAuditReporter daily report append + AppendToProgress 4 fields. Unit tests (internal/runtime/): - audit_gate_test.go: 20 tests — verdict 4-way, grace window boundary, skip-audit, cache hit, team mode, hash failure, env var T0 injection. - audit_cache_test.go: 7 tests — hash stability, TTL, invalidation, sanitize, dir auto-create. - audit_report_test.go: 5 tests — file path, append multi-run, path safety, progress 4 fields. Integration tests (internal/cli/, go:build integration): - run_audit_gate_integration_test.go: AC-WAG-01,02,03,06,07 (5 test functions) - run_audit_gate_grace_test.go: AC-WAG-08 (3 test functions) - run_audit_gate_cache_test.go: AC-WAG-09 (2 test functions) - run_audit_gate_filesystem_test.go: AC-WAG-10 (2 test functions) - team_run_audit_gate_test.go: AC-WAG-05 (2 test functions) - dogfood_self_audit_test.go: AC-WAG-11 (1 test function) Test results: 20 unit tests PASS (race clean), 16 integration tests PASS. REQ: REQ-WAG-001..007 AC: AC-WAG-01..11 (all)
…dow + status (SPEC-WF-AUDIT-GATE-001 T-16~T-18)
T-16: All template twins verified byte-identical (go test ./internal/template/... PASS)
T-17: Dogfood self-audit PASS — TestSelfAuditPassesOnOwnSpec passed all 4 must-pass criteria.
Report at .moai/reports/plan-audit/SPEC-WF-AUDIT-GATE-001-2026-04-25.md (gitignored, local)
T-18: Grace window T0=2026-04-25T12:00:00Z (in .moai/state/, gitignored by design).
CHANGELOG.md updated with [Unreleased] section for SPEC-WF-AUDIT-GATE-001.
spec.md status: draft → implemented.
progress.md created with all T-01..T-18 completion.
AC: AC-WAG-11 (dogfood verdict: PASS)
…DIT-GATE-001 T-15 refactor) Additional test cases for REFACTOR phase: - TestListSpecArtifactFiles, TestCacheStoreNonPassIgnored (audit_cache_test.go) - TestRunTriggerLabels, TestAppendRunInconclusiveVerdict, TestNewFileAuditReporterDefaults (audit_report_test.go) - TestSystemClockNow (clock coverage) Coverage: 84.7% → 88.8% on internal/runtime (target >= 85%). All tests pass with -race flag. REQ: all AC: all
All four Wave 1 SPECs revised in response to their 2026-04-25 plan-audit
verdicts. Re-audit (2026-04-25 rev2) re-runs:
SPEC-V3R2-CON-001: FAIL -> PASS_WITH_WARNINGS (high confidence)
- master-v3 §1.3 anchor inlined (7 invariants self-contained)
- REQ-002 / REQ-004 schema unified (6 fields with Anchor)
- REQ-041 / AC-011 upgraded skeleton -> behavior-verified
- AC-017 added (registry 6-key direct schema)
- REQ-041 EARS reclassified (Complex -> Event-driven)
- REQ-021 scope tightened + overflow rule (auto-extend 100-149)
- AC IDs standardized to 3-digit zero-padding
- All 6 OPEN QUESTIONS resolved in plan.md Decision Log
SPEC-V3R2-WF-001: FAIL -> PASS_WITH_WARNINGS (high confidence, arithmetic verified)
- Re-scoped 48 -> 24 to 48 -> 38 (Stage 1); SPEC-V3R3-WF-001 reserved for Stage 2
- §6.2 single source of truth; §6.1 demoted to non-authoritative grouping
- jit-docs / foundation-context / design-tools verdict conflicts resolved
- AC-16 / AC-17 / AC-18 added for REQ-009 / 012 / 016
- Tasks T1.7-8/9/10/11/12 added with non-zero-exit fixture DoDs
- MIG-001 upgraded to Shared Contract with HUMAN GATE
- All 7 OPEN QUESTIONS closed or explicitly deferred
SPEC-V3R2-EXT-001: PASS_WITH_WARNINGS -> PASS (0.93)
- OPEN-3 internal/hook/memo/ collision resolved via memo/taxonomy/ sub-package
- OPEN-2 excluded-category locked to static-keyword v1 (5-cat keyword map)
- AC-01b added (REQ-002 name/description direct coverage, 3 cases)
- Frontmatter canonicalized (created_at / updated_at / labels / issue_number)
- AC-04 split into AC-04a (automated regex) and AC-04b (optional human)
- 200-line context-loader claim weakened to "documented target; verify before T1"
- SPEC-V3R2-EXT-002 placeholder verified existing
SPEC-V3R2-WF-006: PASS_WITH_WARNINGS -> PASS (0.91)
- OPEN-A resolved: runtime.Caller(0) ascent with .moai/ marker
- REQ-008 sink concretized: stderr + frozen format string
- HUMAN GATE -> 4 objective Audit-Manual-Check-N PR trailers
- REQ-011 differentiated from REQ-014 (project-over-user override clause)
- AC-13 added with file-existence test hook
- T0 6-step manual precedence experiment with PR-description recording
- CON-001 v1.1.0 boundary re-verified (zero settings-management refs)
Audit gate (SPEC-WF-AUDIT-GATE-001 Phase 0.5) treats PWW as proceed-ready;
remaining residual is cosmetic (AC count narrative, plan.md drift) suitable
for v1.1.1 cleanup during Wave 1 implementation T1.4.
Re-audit reports: .moai/reports/plan-audit/SPEC-V3R2-{CON,EXT,WF}-*-rev2.md
(local artifacts, gitignored)
🗿 MoAI <email@mo.ai.kr>
…y 구현 zone-registry.md (68 entries: 38 Frozen + 30 Evolvable) + internal/constitution 패키지(Zone, Rule, Registry, LoadRegistry, ValidateRuleReferences) 신규 구현. `moai constitution list/guard` CLI 서브커맨드 추가, moai doctor에 Constitution Registry 점검 통합. 모든 17개 AC PASS, 커버리지 86.5%, 바이너리 델타 +33KiB. 🗿 MoAI <email@mo.ai.kr>
…ement - internal/hook/memo/taxonomy: 새 서브패키지 (MemoryType 4종 enum, ParseFile, DetectStale, AuditFile/Index/Duplicates) - internal/config/defaults.go: DefaultMemoryStalenessHours, DefaultMemoryIndexLineCap, DefaultMemoryStaleAggregateThreshold 상수 추가 - session_start.go: detectAndWrapStaleMemories — 오래된 메모리 파일 staleness wrap (MOAI_MEMORY_AUDIT=0 롤백) - post_tool.go: runMemoryAudit — Write/Edit 시 agent-memory 파일 audit, stderr non-blocking 경고 - moai-memory.md + 템플릿 twin: 4-type 분류 체계, MEMORY.md 200-line cap, excluded category 가이드 추가 - workflow.yaml + 템플릿 twin: memory: 설정 섹션 신설 (staleness_threshold_hours/index_line_cap/stale_aggregate_threshold) - taxonomy 커버리지 91.7% (목표 90%+), 전체 go test ./... PASS, golangci-lint 0 issues 🗿 MoAI <email@mo.ai.kr>
REQ-WF001-005/REQ-WF001-012: SHA256 해시 기록 (21개 FROZEN/KEEP 스킬 + 20개 moai/workflows/ 파일). Wave 1.7 회귀 감지 기준선. 🗿 MoAI <email@mo.ai.kr>
…tion T1.2-1: moai-foundation-thinking — philosopher(First Principles 5-phase + Assumption/Bias/Trade-off modules) + workflow-thinking(Sequential Thinking MCP) 흡수 T1.2-2: moai-workflow-project — templates + docs-generation + jit-docs 섹션 흡수 T1.2-3: moai-design-system NEW — design-craft + domain-uiux + design-tools(Pencil) 통합 T1.2-4: moai-domain-database — platform-database-cloud Cloud Vendor Guide 흡수 T1.2-5: moai-foundation-core — foundation-context Token Budget 섹션 흡수 Checkpoint T1.2-END: make build exit 0, diff -rq empty (byte-identical parity) Level 2 tokens: thinking ~1556, project ~1535, design-system ~626, database ~1169, core ~1671 🗿 MoAI <email@mo.ai.kr>
Wave 1.1: baseline-hashes.txt (21 스킬 + 20 workflows 해시) Wave 1.2: 5개 MERGE 타겟 완료, Checkpoint T1.2-END PASS Level 2 토큰: thinking 1556, project 1535, design-system 626, database 1169, core 1671 🗿 MoAI <email@mo.ai.kr>
…lls dedup REQ-WF001-007: 5개 MERGE target skill의 frontmatter에 retiring skill 트리거 keyword 병합. case-insensitive dedup 적용, related-skills alias 보존 (Wave 1.4 archive 전까지 참조 가능). - moai-foundation-thinking: +5 keywords (architecture/analysis/design thinking 등), +3 agents - moai-workflow-project: +8 keywords, +related-skills, +3 agents - moai-design-system: +20 keywords from design-craft+domain-uiux+design-tools(Pencil only) - moai-domain-database: +2 keywords, +progressive_disclosure, +agents/phases/languages, +related-skills - moai-foundation-core: +8 keywords, +2 agents (manager-docs/project), +related-skills Checkpoint T1.3-END: PASS (make build exit 0 / diff -rq empty / YAML parse ALL PASS) Template-First: COMPLIANT (internal/template/templates/ → .claude/skills/ 순서) FROZEN: moai-domain-copywriting, moai-domain-brand-design 미변경 🗿 MoAI <email@mo.ai.kr>
…ap + plan.md drift cleanup - T1.4-1..11: git mv 11 retired skills to .moai/archive/skills/v3.0/ (local) - T1.4-1..11: rm -rf from internal/template/templates/.claude/skills/ (template) - T1.4-1..11: RETIRED.md written for each archived skill - T1.4-12: .moai/decisions/skill-rename-map.yaml created (schema v1, merges:10, retires:1, refactors:6) - Plan.md drift: D1(L333 "=13"→"=11") D2(OQ-1 CLOSED) D3(OQ-2 CLOSED) D4(L481-482 -eq24→-eq38) D5(R5 OQ-1 CLOSED) - Checkpoint T1.4-END: make build exit 0, diff -rq empty, skill count=38 (both trees) - OQ-CONTRACT HUMAN GATE: deferred to PR review (MIG-001 author approval) 🗿 MoAI <email@mo.ai.kr>
…lemetry window - T1.5-1: moai-workflow-testing: Refactor Notes (split bundled modules/ into Level-3) - T1.5-2: moai-domain-backend: Refactor Notes (narrow to API design decision matrix) - T1.5-3: moai-domain-frontend: Refactor Notes (router-only, ref-react + library-nextra) - T1.5-4: moai-domain-database: Refactor Notes (MERGE target + restructuring deferred) - T1.5-5: moai-platform-deployment: Refactor Notes (Vercel-primary, Railway/Convex doc-only) - T1.5-6: moai-platform-auth: Refactor Notes (triplet retained, narrower per-vendor) - T1.5-7: moai-framework-electron: Telemetry Window (UNCLEAR, 60-day, 2026-04-25..2026-06-24) - T1.5-8: moai-platform-chrome-extension: Telemetry Window (UNCLEAR, 60-day) - Checkpoint T1.5-END: make build exit 0, diff -rq empty, skill count=38 🗿 MoAI <email@mo.ai.kr>
…ed skill refs) - expert-frontend: moai-domain-uiux → moai-design-system - manager-project: moai-workflow-templates → moai-workflow-project - manager-docs: moai-workflow-jit-docs → moai-workflow-project - builder-skill: moai-workflow-templates → moai-workflow-project - Template + local pairs updated (8 files total, Template-First rule compliant) - Checkpoint T1.6-END: grep empty, make build exit 0, diff -rq empty 🗿 MoAI <email@mo.ai.kr>
- embed_test.go 임계값 수정: skillCount 300→260, totalFiles 450→440 (Wave 1.4 아카이브 반영) - templates/.mcp.json 삭제 (TestEmbeddedTemplates_NoMCPConfig 수정) - go test ./...: 전체 통과 (exit 0) - make build: 성공 (v2.13.2) - diff -rq skills/agents: empty (PASS) - FROZEN 해시 검증: moai-domain-copywriting, moai-domain-brand-design MATCH - skill 카운트: .claude/skills/ + template/skills/ 각 38개 (Stage 1 목표 달성) - 아카이브 RETIRED.md 11개 + skill-rename-map.yaml + plan.md drift 5건 커밋 - context-window-management.md 추가 (양쪽 twin) - baseline-hashes.txt 삭제 (Wave 1.1 artifact, 검증 완료) - wave-1.7-report.md 생성 SPEC-V3R2-WF-001 Stage 1 완료: 48 → 38 스킬 통합. 🗿 MoAI <email@mo.ai.kr>
output style 파일에 대한 TDD 검증 테스트 5종을 구현하고
settings-management.md에 outputStyle 설정 선례 및 fallback 계약을 문서화.
변경 사항:
- internal/template/output_styles_audit_test.go: 신규 추가
- TestOutputStylesFrontmatterSchema: name/description/keep-coding-instructions
스키마 검증 + boolean 리터럴 감지 (extractRawBooleanValue)
- TestOutputStylesExactlyTwo: embedded fs 내 스타일 파일 개수 == 2 검증
- TestOutputStylesTemplateLiveParity: template vs live 바이트 동일성 (runtime.Caller(0) 어센트)
- TestOutputStylesEncoding: UTF-8 유효성, BOM/CR 부재 검증
- TestOutputStylesFallbackDocsContract: settings-management.md 내 OUTPUT_STYLE_UNKNOWN 문자열 검증
- .claude/rules/moai/core/settings-management.md: Output Style Configuration 섹션 추가
- outputStyle precedence table (project > user > 기본값 "MoAI")
- Fallback 정책: OUTPUT_STYLE_UNKNOWN: <name> not found; falling back to MoAI (stderr)
- Frontmatter schema contract (3-key minimum, 추가 key 허용)
- Breaking change policy
- internal/template/templates/.claude/rules/moai/core/settings-management.md: 동일 내용 미러 (Template-First)
커버된 AC: AC-01~AC-13 (SPEC-V3R2-WF-006)
🗿 MoAI <email@mo.ai.kr>
T0~T5 전 태스크 COMPLETE, AC-01~13 (AC-12 EXT-002 defer) 커버리지 매트릭스 기록. 🗿 MoAI <email@mo.ai.kr>
…ne-hashes.txt 정리 Wave 1.4 commit (2649727) 에서 .claude/skills/ 의 git mv 만 staging 되었고 internal/template/templates/.claude/skills/ 11개 deprecated skill 의 disk 삭제는 git stage 가 누락되었음. Disk 상으로는 diff -rq empty 로 일관성을 유지했으나 git tree 가 inconsistent. 본 commit 에서 11개 deprecated skill 의 template tree 삭제 + Wave 1.7 의 baseline-hashes.txt 임시 파일 삭제를 stage 하여 git tree consistency 복구. - internal/template/templates/.claude/skills/{moai-design-craft, moai-design-tools, moai-docs-generation, moai-domain-uiux, moai-foundation-context, moai-foundation-philosopher, moai-platform-database-cloud, moai-tool-svg, moai-workflow-jit-docs, moai-workflow-templates, moai-workflow-thinking} - .moai/specs/SPEC-V3R2-WF-001/baseline-hashes.txt (임시 파일) REQ-WF001-006 (template/local byte-identical) 은 disk 기준으로 이미 충족. 이 commit 은 git tree 의 후속 정합성만 복구하며 disk state 는 변경하지 않음. 🗿 MoAI <email@mo.ai.kr>
WF-001 (Skill Consolidation Stage 1): 48 → 38 skill 통합 완료 - 11개 스킬 RETIRE (archive 생성) - 5개 merge cluster 구성 (trigger keyword union 보존) - 6개 REFACTOR 스킬 (모듈화 계획) - Agency FROZEN 계약 유지 - MIG-001 migration artifact schema 정의 WF-006 (Output Styles Alignment): 스키마 및 우선순위 정책 확립 - Frontmatter schema 검증 (name, description, keep-coding-instructions) - Loading precedence: project > user > default - Fallback 경고 메커니즘 (stderr) - CI drift check 확장 CHANGELOG에 WF-001 BC-V3R2-006 (11개 디렉터리 삭제)와 WF-006 schema/precedence 항목 추가 🗿 MoAI <email@mo.ai.kr>
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (115)
WalkthroughThis PR introduces a comprehensive overhaul of orchestrator user-interaction protocols, enforcement via 50+ new specifications and acceptance documents, 10+ new Claude skill definitions, Korean localization of CLI/test output, disk-space pre-checks for agency migration, removal of release automation from Makefile, and updates to core agent-common-protocol and AskUserQuestion enforcement across templates and rules. Changes
Estimated Code Review Effort🎯 4 (Complex) | ⏱️ ~90 minutes Rationale: While 80% of this PR is documentation and specifications, the heterogeneous nature—spanning 50+ new specs with cross-referenced acceptance criteria and traceability matrices, 10+ new skill definitions requiring accuracy verification, Go code additions for disk-space checking across Unix/Windows platforms, extensive localization consistency checks, template/embedded file synchronization verification, and protocol enforcement across multiple layers—demands careful review of the interconnected requirements, edge cases, and test coverage. The specification documents alone introduce significant domain complexity (orchestrator boundaries, audit gates, memory taxonomy) requiring validation against implementation details in tests and CLI code. Possibly Related PRs
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
|
…undle # Conflicts: # .claude/rules/moai/workflow/context-window-management.md # .claude/skills/moai-design-system/SKILL.md # .claude/skills/moai-domain-backend/SKILL.md # .claude/skills/moai-domain-database/SKILL.md # .claude/skills/moai-domain-frontend/SKILL.md # .claude/skills/moai-framework-electron/SKILL.md # .claude/skills/moai-platform-auth/SKILL.md # .claude/skills/moai-platform-chrome-extension/SKILL.md # .claude/skills/moai-platform-deployment/SKILL.md # .gitignore # CHANGELOG.md # Makefile # docs/design/v2.14.0-release-plan.md # internal/cli/constitution.go # internal/cli/constitution_guard_test.go # internal/cli/constitution_integration_test.go # internal/cli/constitution_test.go # internal/cli/doctor.go # internal/cli/doctor_constitution_test.go # internal/cli/root.go # internal/constitution/dangling.go # internal/constitution/dangling_test.go # internal/constitution/loader.go # internal/constitution/loader_test.go # internal/constitution/rule.go # internal/constitution/rule_test.go # internal/constitution/zone.go # internal/constitution/zone_test.go # internal/hook/post_tool_test.go # internal/hook/session_start.go # internal/runtime/audit_cache.go # internal/runtime/audit_report.go # internal/template/embed_test.go # internal/template/templates/.claude/rules/moai/workflow/context-window-management.md # internal/template/templates/.claude/skills/moai-design-system/SKILL.md # internal/template/templates/.claude/skills/moai-domain-backend/SKILL.md # internal/template/templates/.claude/skills/moai-domain-database/SKILL.md # internal/template/templates/.claude/skills/moai-domain-frontend/SKILL.md # internal/template/templates/.claude/skills/moai-framework-electron/SKILL.md # internal/template/templates/.claude/skills/moai-platform-auth/SKILL.md # internal/template/templates/.claude/skills/moai-platform-chrome-extension/SKILL.md # internal/template/templates/.claude/skills/moai-platform-deployment/SKILL.md
|
@claude CI 빌드가 실패했습니다. 오류를 분석하고 수정해주세요. 실패한 워크플로우: .github/workflows/docs-i18n-check.yml 실패 로그를 확인하고 근본 원인을 파악한 뒤 수정해주세요. Latte AI CI Monitor • latte@mo.ai.kr |
|
@claude CI 빌드가 실패했습니다. 오류를 분석하고 수정해주세요. 실패한 워크플로우: Release Drafter 실패 로그를 확인하고 근본 원인을 파악한 뒤 수정해주세요. Latte AI CI Monitor • latte@mo.ai.kr |
v3R2 Wave 1 Bundle - 41 commits
핵심 변경 (이 세션)
.moai/archive/skills/v3.0/moai-design-system)skill-rename-map.yaml산출 (MIG-001 shared contract)동봉된 이전 SPECs (이전 세션 작업)
Breaking Changes
.claude/skills/에 해당 skill 이 있다면moai update실행 시 archive 로 이동됨 (SPEC-V3R2-MIG-001 enacts).검증
go test ./...ALL PASS (57 packages)go vet ./...CLEANmake buildexit 0diff -rq .claude/skills internal/template/templates/.claude/skillsemptydiff -rq .claude/agents internal/template/templates/.claude/agentsemptyTest Plan
moai versioncommit hash matches HEADhttps://adk.mo.ai.kr
Co-Authored-By: Claude noreply@anthropic.com
Summary by CodeRabbit
Release Notes
New Features
/moai dbcommandDocumentation
Improvements