Skip to content

feat(v3R2): Wave 1 Bundle - Skill Consolidation Stage 1 + Output Styles + bundled SPECs#709

Merged
GoosLab merged 44 commits intomainfrom
feature/v3r2-wave-1-bundle
Apr 28, 2026
Merged

feat(v3R2): Wave 1 Bundle - Skill Consolidation Stage 1 + Output Styles + bundled SPECs#709
GoosLab merged 44 commits intomainfrom
feature/v3r2-wave-1-bundle

Conversation

@GoosLab
Copy link
Copy Markdown
Collaborator

@GoosLab GoosLab commented Apr 25, 2026

v3R2 Wave 1 Bundle - 41 commits

핵심 변경 (이 세션)

  • SPEC-V3R2-WF-001 (Stage 1: 48→38 skill consolidation, BREAKING BC-V3R2-006)
    • 7 waves: baseline → 5 merge targets → trigger union → archive 11 → REFACTOR notes → agent rewrite → CI verification
    • 11 retired skills archived to .moai/archive/skills/v3.0/
    • 4 merge targets + 1 NEW (moai-design-system)
    • Plan.md drift 5건 cleanup
    • skill-rename-map.yaml 산출 (MIG-001 shared contract)
  • SPEC-V3R2-WF-006 (Output Styles Alignment)
    • Schema audit (5 test functions, 535 LOC)
    • Precedence docs (project > user > MoAI default)
    • 13/13 AC PASS

동봉된 이전 SPECs (이전 세션 작업)

  • SPEC-V3R2-CON-001: FROZEN/EVOLVABLE zone registry
  • SPEC-V3R2-EXT-001: Typed Memory Taxonomy
  • SPEC-WF-AUDIT-GATE-001: Plan Audit Gate runtime
  • SPEC-ASKUSER-ENFORCE-001: AskUserQuestion canonical reference
  • v3R2 design docs (35 SPECs, Wave 1 baseline)

Breaking Changes

  • BC-V3R2-006: 11개 skill directory 삭제. 사용자 로컬 .claude/skills/ 에 해당 skill 이 있다면 moai update 실행 시 archive 로 이동됨 (SPEC-V3R2-MIG-001 enacts).

검증

  • go test ./... ALL PASS (57 packages)
  • go vet ./... CLEAN
  • make build exit 0
  • diff -rq .claude/skills internal/template/templates/.claude/skills empty
  • diff -rq .claude/agents internal/template/templates/.claude/agents empty
  • FROZEN agency skills (copywriting, brand-design) byte-identical
  • Skill count: 38 (Stage 1 target per DL-1)

Test Plan

  • CI cross-platform build (linux/macos/windows)
  • CI test suite passes
  • Manual: moai version commit hash matches HEAD
  • Manual: BREAKING change communication ready (CHANGELOG entry)

https://adk.mo.ai.kr

Co-Authored-By: Claude noreply@anthropic.com

Summary by CodeRabbit

Release Notes

  • New Features

    • Added comprehensive skill documentation for backend, database, frontend, Electron, authentication, Chrome extensions, and deployment
    • Introduced database schema sync and management capabilities via new /moai db command
    • Implemented typed memory taxonomy system with automated auditing and staleness detection
    • Added workflow audit gates for pre-flight plan validation
  • Documentation

    • Expanded orchestrator interaction protocol with structured AskUserQuestion patterns
    • Added 25+ new specification documents formalizing core workflows and features
  • Improvements

    • Enhanced disk space validation during migrations
    • Improved error messages and workflow documentation clarity

GoosLab and others added 30 commits April 23, 2026 02:17
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>
GoosLab added 13 commits April 25, 2026 16:06
…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>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 25, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: a6f8ca56-357e-4fee-b5aa-c08b3f0c2275

📥 Commits

Reviewing files that changed from the base of the PR and between 048a193 and fcf0adb.

📒 Files selected for processing (115)
  • .claude/agents/moai/manager-spec.md
  • .claude/output-styles/moai/moai.md
  • .claude/rules/moai/core/agent-common-protocol.md
  • .claude/rules/moai/core/askuser-protocol.md
  • .claude/rules/moai/core/moai-constitution.md
  • .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
  • .claude/skills/moai/workflows/plan.md
  • .claude/skills/moai/workflows/project.md
  • .github/workflows/docs-i18n-check.yml
  • .gitignore
  • .moai/config/sections/harness.yaml
  • .moai/harness/usage-log.jsonl
  • .moai/specs/SPEC-AGENCY-ABSORB-001/spec.md
  • .moai/specs/SPEC-ASKUSER-ENFORCE-001/acceptance.md
  • .moai/specs/SPEC-ASKUSER-ENFORCE-001/plan.md
  • .moai/specs/SPEC-ASKUSER-ENFORCE-001/progress.md
  • .moai/specs/SPEC-ASKUSER-ENFORCE-001/spec.md
  • .moai/specs/SPEC-ASKUSER-ENFORCE-001/tasks.md
  • .moai/specs/SPEC-CC297-001/acceptance.md
  • .moai/specs/SPEC-CORE-BEHAV-001/acceptance.md
  • .moai/specs/SPEC-DB-CMD-001/acceptance.md
  • .moai/specs/SPEC-DB-SYNC-001/acceptance.md
  • .moai/specs/SPEC-DB-SYNC-002/spec.md
  • .moai/specs/SPEC-DB-SYNC-HARDEN-001/spec.md
  • .moai/specs/SPEC-DB-TEMPLATES-001/acceptance.md
  • .moai/specs/SPEC-EVAL-001/acceptance.md
  • .moai/specs/SPEC-EVALLIB-001/acceptance.md
  • .moai/specs/SPEC-GLM-001/acceptance.md
  • .moai/specs/SPEC-OPUS47-COMPAT-001/spec.md
  • .moai/specs/SPEC-SDD-001/acceptance.md
  • .moai/specs/SPEC-SLV3-001/acceptance.md
  • .moai/specs/SPEC-STATUSLINE-002/acceptance.md
  • .moai/specs/SPEC-SUNSET-001/acceptance.md
  • .moai/specs/SPEC-TEAM-001/acceptance.md
  • .moai/specs/SPEC-TELEMETRY-001/acceptance.md
  • .moai/specs/SPEC-TELEMETRY-001/spec.md
  • .moai/specs/SPEC-V3R2-CON-001/acceptance.md
  • .moai/specs/SPEC-V3R2-CON-001/plan.md
  • .moai/specs/SPEC-V3R2-CON-001/tasks.md
  • .moai/specs/SPEC-V3R2-EXT-001/acceptance.md
  • .moai/specs/SPEC-V3R2-EXT-001/plan.md
  • .moai/specs/SPEC-V3R2-EXT-001/tasks.md
  • .moai/specs/SPEC-V3R2-WF-001/acceptance.md
  • .moai/specs/SPEC-V3R2-WF-001/plan.md
  • .moai/specs/SPEC-V3R2-WF-001/tasks.md
  • .moai/specs/SPEC-V3R2-WF-006/acceptance.md
  • .moai/specs/SPEC-V3R2-WF-006/plan.md
  • .moai/specs/SPEC-V3R2-WF-006/tasks.md
  • .moai/specs/SPEC-WF-AUDIT-GATE-001/acceptance.md
  • .moai/specs/SPEC-WF-AUDIT-GATE-001/plan.md
  • .moai/specs/SPEC-WF-AUDIT-GATE-001/spec.md
  • .moai/specs/SPEC-WF-AUDIT-GATE-001/tasks.md
  • .moai/specs/_archive/README.md
  • .moai/specs/_archive/SPEC-AGENCY-001/spec.md
  • .moai/specs/_archive/SPEC-DESIGN-CONST-AMEND-001/spec.md
  • .moai/specs/_archive/SPEC-INFRA-001/spec.md
  • .moai/specs/_archive/SPEC-ORCH-001/spec.md
  • .moai/specs/_archive/SPEC-SKILL-001/acceptance.md
  • .moai/specs/_archive/SPEC-SKILL-001/spec.md
  • .moai/specs/_archive/SPEC-THIN-CMDS-001/spec.md
  • CHANGELOG.md
  • CLAUDE.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/migrate_agency.go
  • internal/cli/migrate_agency_disk_unix.go
  • internal/cli/migrate_agency_disk_windows.go
  • internal/cli/migrate_agency_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/agents/moai/manager-spec.md
  • internal/template/templates/.claude/output-styles/moai/moai.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/rules/moai/core/moai-constitution.md
  • 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
  • internal/template/templates/.claude/skills/moai/workflows/plan.md
  • internal/template/templates/.claude/skills/moai/workflows/project.md
  • internal/template/templates/.moai/config/sections/harness.yaml
  • internal/template/templates/CLAUDE.md
  • scripts/docs-i18n-check.sh

Walkthrough

This 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

Cohort / File(s) Summary
AskUserQuestion Protocol Enforcement
CLAUDE.md, .claude/rules/moai/core/askuser-protocol.md, .claude/rules/moai/core/agent-common-protocol.md, .claude/rules/moai/core/moai-constitution.md, .claude/output-styles/moai/moai.md, internal/template/templates/.claude/... (same files)
Mandate ToolSearch preload before every AskUserQuestion invocation, restrict user-facing questions to AskUserQuestion only (prohibit free-form prose), standardize Socratic interview structure (≤4 questions/options), and define orchestrator/subagent boundary with blocker-report contract for missing inputs.
New Specification Documents (Stage 2)
.moai/specs/SPEC-ASKUSER-ENFORCE-001/*, .moai/specs/SPEC-WF-AUDIT-GATE-001/*, .moai/specs/SPEC-V3R2-*/, .moai/specs/SPEC-DB-*/, .moai/specs/SPEC-TELEMETRY-001/*, .moai/specs/SPEC-SDD-001/*, .moai/specs/_archive/*
45+ new spec files (spec.md, plan.md, tasks.md, acceptance.md, progress.md) formalizing AskUserQuestion enforcement, workflow audit gates, database sync/parsing, typed memory taxonomy, constitution zones, statusline rendering, team mode dynamics, and skill consolidation with comprehensive traceability matrices and acceptance criteria.
New Claude Skill Definitions
.claude/skills/moai-domain-backend/SKILL.md, .claude/skills/moai-domain-database/SKILL.md, .claude/skills/moai-domain-frontend/SKILL.md, .claude/skills/moai-platform-auth/SKILL.md, .claude/skills/moai-platform-chrome-extension/SKILL.md, .claude/skills/moai-platform-deployment/SKILL.md, .claude/skills/moai-framework-electron/SKILL.md, internal/template/templates/.claude/skills/... (corresponding templates)
Seven new skill documents (backend, database, frontend, auth, Chrome extension, deployment, Electron) each with metadata, progressive disclosure, trigger keywords, implementation guidance (patterns/examples/best practices), "works well with" integrations, and verification checklists, plus full template mirror synchronization.
Manager Spec & Plan Workflow Hardening
.claude/agents/moai/manager-spec.md, .claude/skills/moai/workflows/plan.md, internal/template/templates/.claude/agents/moai/manager-spec.md, internal/template/templates/.claude/skills/moai/workflows/plan.md
Expand spec frontmatter from 8 to 9 required canonical fields (quoted semver, ISO created_at/updated_at, labels array), introduce fail-closed pre-write validation halting on schema violations, reject legacy aliases (created/updated/spec_id/title), and add Phase 2.3 plan-auditor re-verification gate.
Project Workflow Spec Prevention
.claude/skills/moai/workflows/project.md, internal/template/templates/.claude/skills/moai/workflows/project.md
Prevent /moai project from creating/editing files under .moai/specs/**, restrict outputs to project-level docs only, add control-flow intervention to redirect SPEC-ID requests to /moai plan, and harden subagent delegation with SPEC prohibition in prompts and blocker-report redirection.
Harness Configuration & Context Window Guidance
.moai/config/sections/harness.yaml, .claude/rules/moai/workflow/context-window-management.md, internal/template/templates/.claude/rules/moai/workflow/context-window-management.md
Add global plan_audit_global override forcing plan-audit gate always-on for SPEC creation, upgrade minimal level plan_audit from disabled to enabled with max_iterations=1, and simplify context-window token accounting guidance by removing sub-agent summation directive and parent-context formula.
Agency Migration Disk-Space Pre-checks
internal/cli/migrate_agency.go, internal/cli/migrate_agency_disk_unix.go, internal/cli/migrate_agency_disk_windows.go, internal/cli/migrate_agency_test.go
Add upfront disk-space validation before migration phases (requiring 2x source directory available), compute directory size while skipping symlinks, query filesystem available bytes via syscall.Statfs (Unix) and Win32 GetDiskFreeSpaceExW (Windows), return MigrateError with ErrMigrateDiskFull if insufficient space, and verify check runs in dry-run mode.
CLI & Command Pruning
internal/cli/root.go, internal/cli/doctor.go, internal/cli/constitution.go, Makefile, .gitignore
Remove harness subcommand registration, delete GitHub Actions Runner and Skills Allowlist diagnostic checks from doctor, drop release/release-dry/release-hotfix/dev-sync Makefile targets, and unignore .moai/harness/ learning/usage-log files for version tracking.
Output Style & Constitution Enforcement
internal/cli/constitution_guard_test.go, internal/cli/constitution_integration_test.go, internal/cli/constitution_test.go, internal/constitution/dangling.go, internal/constitution/loader.go, internal/constitution/rule.go, internal/constitution/zone.go, and corresponding *_test.go files
Localize all user-facing text and test assertion messages to Korean; remove Windows-specific skip logic in permission-denied test; simplify deferred file-close patterns in audit reporting (replace fmt.Fprintf with sb.WriteString(fmt.Sprintf(...))); remove unused runtime import.
GitHub Actions & Documentation
.github/workflows/docs-i18n-check.yml, docs/design/v2.14.0-release-plan.md, CHANGELOG.md
Introduce docs-i18n parity workflow (4-locale validation, PR warn-only default, main-branch strict mode, sticky comment updates), rename utility SPECs to v2.14 prefix with rescoped descriptions, and rewrite CHANGELOG Unreleased section to focus on typed-memory taxonomy with enforcement/auditing and MOAI_MEMORY_AUDIT rollback.
Hook & Runtime Audit Updates
internal/hook/session_start.go, internal/hook/post_tool_test.go, internal/runtime/audit_cache.go, internal/runtime/audit_report.go, internal/template/embed_test.go
Remove Token Circuit Breaker and GitHub Actions runner version check from session start (keeping GLM env injection), drop Windows-conditional skip in post-tool memory test, simplify fmt.Fprintf error handling and file-close defers, and raise embedded-template file count thresholds (skill definitions 170→260, total 350→440).
Deprecated Spec Amendments & Supersessions
.moai/specs/SPEC-AGENCY-ABSORB-001/spec.md, .moai/specs/SPEC-DB-SYNC-HARDEN-001/spec.md, .moai/specs/SPEC-CC297-001/acceptance.md, .moai/specs/SPEC-OPUS47-COMPAT-001/spec.md
Mark SPEC-AGENCY-ABSORB-001 as completed (v0.3.0) with /agency deprecation waived, retroactively amend SPEC-DB-SYNC-HARDEN-001 H3 section as superseded by SPEC-DB-SYNC-RELOC-001, update CC297/OPUS47 metadata with merge/completion timestamps.
Skill Documentation Removal
.claude/skills/moai-design-system/SKILL.md, internal/template/templates/.claude/skills/moai-design-system/SKILL.md
Remove DTCG 2025.10 token specification content (schema/category definitions, dtcg.Validate invocation, validation error handling, brand-context-first ordering) and corresponding verification checklist assertions.
Harness Usage & Config Logging
.moai/harness/usage-log.jsonl, .moai/specs/_archive/README.md, .moai/specs/_archive/SPEC-SKILL-001/acceptance.md
Append single Bash agent invocation event to usage-log JSONL, introduce archive README documenting tombstone SPEC policies and reactivation rules, and backfill archived SPEC-SKILL-001 acceptance with observed behavior mapping.

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
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/v3r2-wave-1-bundle

…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
@GoosLab
Copy link
Copy Markdown
Collaborator Author

GoosLab commented Apr 28, 2026

@claude CI 빌드가 실패했습니다. 오류를 분석하고 수정해주세요.

실패한 워크플로우: .github/workflows/docs-i18n-check.yml
브랜치: feature/v3r2-wave-1-bundle
실패 로그: https://github.com/modu-ai/moai-adk/actions/runs/25028129227

실패 로그를 확인하고 근본 원인을 파악한 뒤 수정해주세요.

Latte AI CI Monitor • latte@mo.ai.kr

@GoosLab
Copy link
Copy Markdown
Collaborator Author

GoosLab commented Apr 28, 2026

@claude CI 빌드가 실패했습니다. 오류를 분석하고 수정해주세요.

실패한 워크플로우: Release Drafter
브랜치: feature/v3r2-wave-1-bundle
실패 로그: https://github.com/modu-ai/moai-adk/actions/runs/25028129805

실패 로그를 확인하고 근본 원인을 파악한 뒤 수정해주세요.

Latte AI CI Monitor • latte@mo.ai.kr

@GoosLab GoosLab merged commit 697a6e2 into main Apr 28, 2026
11 of 17 checks passed
@GoosLab GoosLab deleted the feature/v3r2-wave-1-bundle branch April 28, 2026 01:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant