test-fix
YAAT TDD bug-fix workflow: write failing test, confirm failure, apply fix, confirm pass
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
YAAT TDD bug-fix workflow: write failing test, confirm failure, apply fix, confirm pass
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
Query airport ground graph topology via LayoutInspector CLI tool
Prepare a YAAT release from CHANGELOG.md: verify release secret presence, choose version, draft highlights, promote the changelog heading, commit, tag, and push after approval.
End-to-end release of the current session's work: changelog + commit, land onto `main` in both repos, push, then close the related GitHub issue(s). Trigger when the user says "ship it", "ship this", "ship the session", "land and push", "push and close the issue", or invokes /ship. Composes /changelog-and-commit → /merge-session-to-main → push → `gh issue close`. Invoking the skill IS the approval — it pushes to origin/main and closes issues without further prompts.
Inspect, extract, install, and validate YAAT v4 bug bundles. Use when a *.yaat-bug-report-bundle.zip or *-recording.zip path appears in conversation, when triaging a YAAT controller bug report or recording-driven complaint, when correlating in-game behavior with recorded snapshots / actions / logs, or when fetching GitHub issue attachments into tests/Yaat.Sim.Tests/TestData/. Start with `info` for an overview, then `history --callsign X` for per-aircraft chronology.
Investigate and iterate on YAAT's speech-to-text pipeline. Auto-fires when a *.yaat-speech-sample.zip path appears in the conversation OR when the user provides a raw / paraphrased ATC transcript with an intent phrase like "why doesn't this match", "should this work", "what canonical would this produce", or "how do I make X recognize this". Walks the pipeline (callsign extract → rule mapper → LLM fallback), identifies the gap, and closes the loop with a TDD-driven fix (test → rule → verbalizer regression check → full suite).
Dedupe recording .zip files in tests/Yaat.Sim.Tests/TestData via tools/Yaat.RecordingConsolidator and commit the cleanup. Internal maintenance — do not update CHANGELOG.md.
SOC 직업 분류 기준
| name | test-fix |
| description | YAAT TDD bug-fix workflow: write failing test, confirm failure, apply fix, confirm pass |
Follow these steps exactly. Do not skip or reorder.
TestVnasData.EnsureInitialized() — no synthetic stubs.Run:
timeout 30 dotnet test <test-project> --filter "FullyQualifiedName~<TestName>" 2>&1 | tee .tmp/test-red.log
Run:
timeout 30 dotnet test <test-project> --filter "FullyQualifiedName~<TestName>" 2>&1 | tee .tmp/test-green.log
Run the full test suite for the affected project:
timeout 30 dotnet test <test-project> 2>&1 | tee .tmp/test-suite.log
dotnet build -p:TreatWarningsAsErrors=true 2>&1 | tee .tmp/build.log
TestVnasData.EnsureInitialized() with real NavData/CIFP.dotnet test invocations to catch soft hangs.SimLogBuilder.CreateForTest(output).EnableCategory("ClassName", LogLevel.Debug).InitializeSimLog().