docs: 세션 종료 — AGENT.md 검증 규칙 + known-issues 3건 + devlog
AGENT.md: - NEVER #8-9: 실제 E2E 테스트 없이 '구현 완료' 금지 - ALWAYS #7-8: 실행 검증 필수, '구현'과 '검증' 구분 보고 known-issues 3건: - Collector 동기→aiohttp 전환 기록 - Extension fs.watch response 감지 누락 (미해결) - rejectAgentStep 미등록 (미해결)
This commit is contained in:
@@ -17,6 +17,8 @@ description: 모든 작업에 자동 적용되는 에이전트 행동 규칙.
|
|||||||
5. NEVER skip the pre-task checklist defined in `.agents/workflows/pre-task.md`
|
5. NEVER skip the pre-task checklist defined in `.agents/workflows/pre-task.md`
|
||||||
6. NEVER attempt the same failed approach more than 2 times
|
6. NEVER attempt the same failed approach more than 2 times
|
||||||
7. NEVER truncate error messages — always show the full error output
|
7. NEVER truncate error messages — always show the full error output
|
||||||
|
8. NEVER say "구현 완료" or "동작 확인" without ACTUAL end-to-end test — import/문법 통과는 검증이 아님
|
||||||
|
9. NEVER confuse "코드가 논리적으로 맞음" with "실제로 동작함" — 실행 로그가 없으면 미검증
|
||||||
|
|
||||||
## ALWAYS (필수)
|
## ALWAYS (필수)
|
||||||
|
|
||||||
@@ -26,6 +28,8 @@ description: 모든 작업에 자동 적용되는 에이전트 행동 규칙.
|
|||||||
4. ALWAYS stop and ask the user if 2 consecutive attempts on the same approach fail
|
4. ALWAYS stop and ask the user if 2 consecutive attempts on the same approach fail
|
||||||
5. ALWAYS use existing helper scripts instead of raw API calls
|
5. ALWAYS use existing helper scripts instead of raw API calls
|
||||||
6. ALWAYS read related existing code (minimum 3 files) before writing new code
|
6. ALWAYS read related existing code (minimum 3 files) before writing new code
|
||||||
|
7. ALWAYS verify with real execution after implementation — trigger the actual flow, check logs (e.g. extension.log), confirm the expected result appeared
|
||||||
|
8. ALWAYS distinguish "구현했다" vs "검증했다" when reporting to user — 테스트 안 했으면 명시
|
||||||
|
|
||||||
## Failure Protocol
|
## Failure Protocol
|
||||||
|
|
||||||
|
|||||||
@@ -387,3 +387,22 @@
|
|||||||
- **해결**: 3곳 dedup 조건에 `existing.project_name === projectName` 가드 추가: (1) MERGE, (2) step_index 중복 스킵, (3) file_permission 중복 필터
|
- **해결**: 3곳 dedup 조건에 `existing.project_name === projectName` 가드 추가: (1) MERGE, (2) step_index 중복 스킵, (3) file_permission 중복 필터
|
||||||
- **주의**: 모든 Extension 인스턴스가 **동일한 `bridge/pending/` 디렉토리**를 공유하므로, pending 파일 간 상호작용 시 반드시 `project_name` 일치 여부 확인 필수
|
- **주의**: 모든 Extension 인스턴스가 **동일한 `bridge/pending/` 디렉토리**를 공유하므로, pending 파일 간 상호작용 시 반드시 `project_name` 일치 여부 확인 필수
|
||||||
|
|
||||||
|
### [2026-03-11] Collector 동기 HTTP — aiohttp 전환
|
||||||
|
- **증상**: Collector가 Gateway에 동기 urllib 요청 시 이벤트 루프 전체 블로킹, 3초 폴링이 10초+로 늘어남
|
||||||
|
- **원인**: `RemoteTransport._request()`가 `urllib.request.urlopen()` 사용 (blocking I/O)
|
||||||
|
- **해결**: `aiohttp.ClientSession` 기반 비동기 전환 + 연결 모니터링 + 재시도 큐 (100건)
|
||||||
|
- **주의**: `import aiohttp`는 lazy (`_get_session()` 내부). 로컬 conda 환경에 `aiohttp>=3.9.0` 설치 필수
|
||||||
|
|
||||||
|
### [2026-03-11] Extension fs.watch — Collector response 파일 감지 누락
|
||||||
|
- **증상**: Discord에서 거부 → Collector가 `bridge/response/` 파일 정상 생성 → Extension `processResponseFile` 미호출 (`[RESPONSE]` 로그 0건)
|
||||||
|
- **원인**: `setupResponseWatcher()`가 `event === 'rename'`만 필터링. 파일 생성 방식에 따라 `change` 이벤트만 발생할 수 있음. Windows `fs.watch`는 빠른 write+delete 시 이벤트 누락 알려짐
|
||||||
|
- **해결**: **미해결** — `event` 필터 제거 또는 polling 전환 필요. 사이드이펙트 검증 필요하여 보류
|
||||||
|
- **주의**: 이 문제로 인해 **Discord에서의 모든 거부/정지 명령이 Extension에 전달되지 않음**
|
||||||
|
|
||||||
|
### [2026-03-11] rejectAgentStep — AG 미등록 VS Code 커맨드
|
||||||
|
- **증상**: `/stop` 및 거부 시 `antigravity.agent.rejectAgentStep` → `command not found`
|
||||||
|
- **원인**: AG IDE가 이 커맨드를 런타임에 등록하지 않음
|
||||||
|
- **해결**: **미해결** — AG가 실제 등록하는 커맨드 목록 조사 후 올바른 커맨드로 교체 필요
|
||||||
|
- **주의**: `[2026-03-09] VS Code Accept Commands` 이슈와 같은 근본 원인 (AG 커맨드 미등록)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
2
approval_test.txt
Normal file
2
approval_test.txt
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
# Collector 수동 승인 테스트
|
||||||
|
Discord에서 승인/거부 버튼이 보여야 합니다.
|
||||||
3
collector_test.txt
Normal file
3
collector_test.txt
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
Collector 모드 승인 플로우 테스트
|
||||||
|
이 파일 생성이 Discord에서 승인 요청으로 표시되어야 합니다.
|
||||||
|
시간: 2026-03-11 23:08
|
||||||
2
collector_test2.txt
Normal file
2
collector_test2.txt
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
# Collector 모드 승인 테스트 2차
|
||||||
|
Discord에서 이 파일 생성 승인 요청이 정상적으로 표시되는지 확인
|
||||||
@@ -11,3 +11,4 @@
|
|||||||
| 007 | 19:28~19:35 | Gateway HTTP API + Docker (Dockerfile, docker-compose, Caddyfile) | `6dbbb57` | ✅ |
|
| 007 | 19:28~19:35 | Gateway HTTP API + Docker (Dockerfile, docker-compose, Caddyfile) | `6dbbb57` | ✅ |
|
||||||
| 008 | 19:35~19:50 | Gateway 보안: API Key 인증 미들웨어 + Caddy HTTPS + .env.example | `95da3e9` | ✅ |
|
| 008 | 19:35~19:50 | Gateway 보안: API Key 인증 미들웨어 + Caddy HTTPS + .env.example | `95da3e9` | ✅ |
|
||||||
| 009 | 19:50~20:10 | RemoteTransport + CollectorBridge 구현 — Collector↔Gateway HTTP 통신 | `95c2905` | ✅ |
|
| 009 | 19:50~20:10 | RemoteTransport + CollectorBridge 구현 — Collector↔Gateway HTTP 통신 | `95c2905` | ✅ |
|
||||||
|
| 010 | 21:30~23:48 | 아키텍처 감사: aiohttp 전환 + 보안 + 기능 누락 수정 + 나노 검증 | `d7ed454` | 🔧 |
|
||||||
|
|||||||
Reference in New Issue
Block a user