Skip to content

fix: 저장 draft 테스트와 승인 재개 안내 추가 - #23

Merged
jeonsworld merged 2 commits into
mainfrom
fix/issue-248-draft-test-guidance
Oct 27, 2026
Merged

jeonsworld merged 2 commits into
mainfrom
fix/issue-248-draft-test-guidance

Conversation

@jeonsworld

@jeonsworld jeonsworld commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

개인 credential MCP를 포함한 draft를 배포 없이 테스트할 수 있도록 새 저장본 테스트 도구 4종의 사용 흐름을 추가합니다. 실제 D/version 확인, 명시적 테스트 승인, 같은 test_id 조회·승인/거절 재개·취소를 안내하고 기존 raw 안전 테스트 및 canonical 조회 제한은 유지합니다.

승인 요약은 도구명만 제공하고 실제 인수는 미노출임을 명시합니다. 설정 변경 감지 오류에서 이전 승인 재시도나 자동 신규 실행을 금지합니다. 현재 host schema에 새 도구가 있을 때만 사용합니다.

관련: wanteddev/ennoia-mcp-server#248

검증: Python 전체 63개, Node 36개 통과. 후속 계약 13개 및 package/manifest/results/whitespace 검증 통과. 실제 MCP export(f7f4390)로 fixture를 갱신했고 신규 계약 예제 60개·합성 eval 입력 21개를 추가했습니다. 독립 리뷰 후 지적 1건 수정·재리뷰 승인.

실제 host/외부 MCP 실행·모델 행동평가는 미실시입니다. version/release manifest는 변경하지 않았습니다. Orchestrator 저장본 테스트 API와 MCP 도구 배포 후 적용해야 합니다.

Summary by CodeRabbit

  • 새 기능
    • 저장된 draft를 Studio 경로에서 테스트하고, 진행 상태와 결과를 확인할 수 있습니다. 승인 대기 시 결정을 내린 뒤 테스트를 재개하거나 취소할 수 있습니다.
    • 테스트를 시작하기 전에 외부 부작용 가능성을 안내하고 명시적 승인을 요청합니다. 도구 승인이 필요한 경우에도 사용자 결정을 기다립니다.
  • 개선 사항
    • 원본 graph 제한 테스트와 저장된 draft 테스트의 지원 여부 및 실행 절차를 구분해 안내합니다. 저장된 draft 테스트를 지원하지 않는 연결에서는 미지원 사실을 알립니다.
  • 문서 및 평가
    • draft 테스트의 합성 시나리오와 기대 동작을 설명하는 평가 자료를 추가했습니다.

@coderabbitai

coderabbitai Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

No actionable comments were generated in the recent review.

Recent review info
Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: 88b3b47e-8d13-4485-833e-a1bc7fcbd578
Commits

Reviewing files that changed from the base of the PR and between f05c715 and 4bf94c8.

Files selected for processing: 17
  • CONTRIBUTING.md
  • README.md
  • evals/README.md
  • evals/saved-draft-test-rubric.md
  • evals/saved-draft-test-scenarios.json
  • plugins/ennoia/references/response-guide.md
  • plugins/ennoia/skills/ennoia-build-agent/SKILL.md
  • plugins/ennoia/skills/ennoia-build-agent/references/graph-authoring.md
  • plugins/ennoia/skills/ennoia-build-agent/references/node-prompt-editing.md
  • plugins/ennoia/skills/ennoia-build-agent/references/save-and-retry.md
  • plugins/ennoia/skills/ennoia-build-agent/references/saved-draft-testing.md
  • scripts/validate.py
  • tests/fixtures/ennoia-contract-cases.json
  • tests/fixtures/ennoia-tool-contracts.json
  • tests/fixtures/ennoia-tools.json
  • tests/test_contracts.py
  • tests/test_validation.py

Included review availability: This review used your included allowance. 4 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 5 reviews per hour.

Walkthrough

저장된 draft 테스트 도구 네 종의 계약 스냅샷과 검증 사례를 추가했습니다. 가이드에서 기존 제한 테스트와 저장된 draft 테스트의 실행·승인 절차를 구분했습니다. 합성 시나리오와 판정 기준도 추가했습니다.

Changes

저장된 draft 테스트

Layer / File(s) Summary
테스트 도구 계약과 검증
tests/fixtures/ennoia-tool-contracts.json, tests/fixtures/ennoia-tools.json, tests/fixtures/ennoia-contract-cases.json, tests/test_contracts.py, scripts/validate.py, tests/test_validation.py, CONTRIBUTING.md
시작·조회·승인 재개·취소 도구의 입력 및 출력 계약과 유효·무효 사례를 추가했습니다. 계약 테스트와 도구 참조 검사를 갱신했습니다.
저장된 draft 테스트 절차
README.md, plugins/ennoia/references/response-guide.md, plugins/ennoia/skills/ennoia-build-agent/SKILL.md, plugins/ennoia/skills/ennoia-build-agent/references/*
가이드에서 제한 테스트와 저장된 draft 테스트의 경로를 구분했습니다. 저장된 draft 테스트의 지원 확인, 대상 버전 확인, 승인, 상태 조회, 재개 및 취소 절차를 설명합니다.
합성 평가 자료
evals/README.md, evals/saved-draft-test-rubric.md, evals/saved-draft-test-scenarios.json
20개 합성 시나리오와 사례별 판정 기준을 추가했습니다. 자료가 실제 backend·host 실행 또는 독립 모델 평가 결과가 아님을 명시했습니다.

Priority: Normal

Estimated code review effort: 3 (Moderate) | ~30 minutes

Change: Feature

Sequence Diagram(s)

sequenceDiagram
  participant BuildAgent as Build Agent
  participant MCPHost as MCP host
  participant User as 사용자
  BuildAgent->>MCPHost: start_saved_multi_agent_test 호출
  MCPHost-->>BuildAgent: 실행 상태 또는 needs_approval 반환
  BuildAgent->>User: 외부 변경 가능성 안내 및 승인 요청
  User-->>BuildAgent: 테스트 승인 또는 거절
  BuildAgent->>MCPHost: resume_saved_multi_agent_test 호출
  MCPHost-->>BuildAgent: 갱신된 테스트 상태 반환
Loading

Possibly related issues

  • wanteddev/ennoia-mcp-server#248: 저장된 초안을 MCP 도구로 테스트하는 문제와 관련된 도구 계약 및 승인·재개 흐름을 다룹니다. 다만 이 PR의 요약은 문서와 계약 스냅샷 변경을 설명하므로, 서버 동작 변경이나 이슈 해결 여부는 확인할 수 없습니다.

Possibly related PRs

Merge Risk: Minimal · up to 4bf94

This change adds guidance and contract fixtures for testing saved drafts. The approval-handling concern was checked and is already covered by the linked guide, so no merge-blocking risk remains.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Documentation-only edits and deletions within survi… Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed 제목 "fix: 저장 draft 테스트와 승인 재개 안내 추가"는 변경의 핵심인 저장된 draft 테스트 도구(시작·조회·승인 재개·취소)와 승인 재개 안내 추가를 설명합니다. 변경 내용은 문서, 스킬 지침, 계약 fixture, 테스트에 걸쳐 있으며 제목은 이 주요 변경을 구체적으로 나타냅니다. 다만 'fix:' 접두사는 실제 변경이 새 기능 및 문서 추…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Title check

Explanation

제목 "fix: 저장 draft 테스트와 승인 재개 안내 추가"는 변경의 핵심인 저장된 draft 테스트 도구(시작·조회·승인 재개·취소)와 승인 재개 안내 추가를 설명합니다. 변경 내용은 문서, 스킬 지침, 계약 fixture, 테스트에 걸쳐 있으며 제목은 이 주요 변경을 구체적으로 나타냅니다. 다만 'fix:' 접두사는 실제 변경이 새 기능 및 문서 추가에 가까우므로 'feat:' 또는 'docs:'가 더 적합할 수 있습니다. 이 점은 판정에 영향을 주지 않는 사소한 사항입니다.

Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 6 functions across 3 files. (14 skipped: 14 unsupported.)

Resolution

Write docstrings for the functions missing them to satisfy the coverage threshold.

Finishing Touches: 💡 1
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-27T08:00:41.100572Z 4bf94c8 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@jeonsworld jeonsworld self-assigned this Oct 27, 2026
@jeonsworld
jeonsworld merged commit f7f9614 into main Oct 27, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant