update: agent-test files - refine live-cycle smoke tests and plane-dev rules
This commit is contained in:
parent
ea97e73608
commit
568797eaaa
2 changed files with 68 additions and 3 deletions
|
|
@ -302,6 +302,43 @@ docker exec forgejo curl -fsS --max-time 5 http://host.docker.internal:18061/hea
|
|||
- 생성된 milestone의 provider identity와 filename slug가 Plane work item과 맞는지 확인한다.
|
||||
- Core task result의 `next_step=plane_todo_moved`가 없으면 완료로 보지 않는다.
|
||||
|
||||
### Git-origin identity backfill 실패
|
||||
|
||||
증상:
|
||||
|
||||
- Git-origin missing-create에서 Plane work item은 생성되었지만 provider identity backfill commit 또는 push가 실패한다.
|
||||
- Core log에 `roadmapsyncpipeline: git commit ... Author identity unknown` 또는 `git push origin HEAD:develop ... could not read Username`가 남는다.
|
||||
- Plane item은 생성됐지만 Milestone 파일에 `## Provider identity`가 backfill되지 않고 Todo projection self-loop가 이어지지 않는다.
|
||||
|
||||
확인:
|
||||
|
||||
```sh
|
||||
repo="$HOME/agent-work/nomadcode-dev/workspaces/nomadcode/branches/develop"
|
||||
git -C "$repo" config --get user.name || echo "missing git user.name"
|
||||
git -C "$repo" config --get user.email || echo "missing git user.email"
|
||||
|
||||
docker exec nomadcode-core-dev-nomadcode-core-1 sh -lc \
|
||||
'git config --get credential.helper || true; test -r /Users/toki/.git-credentials && echo readable || echo not-readable'
|
||||
```
|
||||
|
||||
복구:
|
||||
|
||||
```sh
|
||||
repo="$HOME/agent-work/nomadcode-dev/workspaces/nomadcode/branches/develop"
|
||||
git -C "$repo" config user.name "NomadCode Core"
|
||||
git -C "$repo" config user.email "nomadcode-core@toki-labs.local"
|
||||
|
||||
cd "$HOME/agent-work/nomadcode-dev"
|
||||
set -a; source .env.plane.local; set +a
|
||||
export COMPOSE_PROJECT_NAME=nomadcode-core-dev
|
||||
export NOMADCODE_CORE_HOST_PORT=18011
|
||||
export GIT_CREDENTIALS_FILE="$HOME/.git-credentials"
|
||||
cd services/core
|
||||
docker compose up -d --force-recreate --no-deps nomadcode-core
|
||||
```
|
||||
|
||||
복구 후 같은 disposable Milestone에 작은 follow-up edit을 push하면 기존 missing-create identity row를 재사용해 backfill을 재개해야 한다. 이때 새 Plane work item이 중복 생성되면 실패로 본다.
|
||||
|
||||
## 대체 근거 (런타임 에퀄리번트)
|
||||
|
||||
reviewed commit을 현재 실행 중인 서버에 배포하지 않은 경우 아래 단계로 대체 근거를 수집한다.
|
||||
|
|
|
|||
|
|
@ -45,8 +45,9 @@ webhook dispatch trigger gate에 주입하는 non-secret env. secret(`PLANE_WEBH
|
|||
## Dev Full-Cycle Baseline
|
||||
|
||||
2026-07-03 dev profile에서 Plane-origin milestone 생성 roundtrip을 확인했다. 이 섹션은 non-secret evidence만 기록한다.
|
||||
검증용 Plane work item과 생성 milestone은 같은 날 cleanup되었으며, Plane item은 404이고 git milestone 파일은 cleanup commit `4c5d56f` 이후 `origin/develop`에 남아 있지 않다.
|
||||
|
||||
### Primary automatic proof
|
||||
### Primary automatic proof (cleaned up)
|
||||
|
||||
- Plane work item: `982c14b6-b57f-4de9-8773-bcf00fe1d25a`
|
||||
- Created title marker: `LIVE-SYNC post-allowlist auto smoke 1783057173`
|
||||
|
|
@ -56,14 +57,40 @@ webhook dispatch trigger gate에 주입하는 non-secret env. secret(`PLANE_WEBH
|
|||
- added milestone path: `agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/post-allowlist-automatic-plane-git-gito-plane-smoke-1783057173.md`
|
||||
- Forgejo provider delivery: `c77f67fe-3e18-484e-b292-9813e1c741e4`, hook task `is_succeed=t`, Gito callback status `202`
|
||||
- Gito event: `event-de33bb1fc267c84a`, type `branch.updated`, repo `nomadcode`, branch `develop`
|
||||
- Plane final state: `Todo` (`45ba7449-f684-4381-af6d-5854747c5e8d`)
|
||||
- Plane final state before cleanup: `Todo` (`45ba7449-f684-4381-af6d-5854747c5e8d`)
|
||||
- cleanup commit: `4c5d56f revert(roadmap): remove Plane live smoke milestones`
|
||||
|
||||
### Diagnostic run
|
||||
### Diagnostic run (cleaned up)
|
||||
|
||||
- Plane work item: `67706758-9555-456b-b051-547fa6b4f093`
|
||||
- git `origin/develop`: `738f4b8d202e9254f7c4c8fe91bb6f5e729100f0`
|
||||
- This run exposed a dev Forgejo allowlist issue before the automatic provider delivery path was fixed.
|
||||
- The run was completed after Gito callback redelivery, so it is evidence for Core/Gito/Plane projection recovery but not primary proof of automatic Forgejo -> Gito delivery.
|
||||
- cleanup commit: `4c5d56f revert(roadmap): remove Plane live smoke milestones`
|
||||
|
||||
## Dev Git-Origin Baseline
|
||||
|
||||
2026-07-03 dev profile에서 Git-origin active Milestone missing-create roundtrip을 확인했다. 이 섹션은 non-secret evidence만 기록한다.
|
||||
검증용 Plane work item과 disposable Milestone은 같은 날 cleanup되었으며, Plane item은 404이고 git milestone 파일은 cleanup commit `448d6d0` 이후 `origin/develop` active tree에 남아 있지 않다.
|
||||
|
||||
### Git-origin proof (cleaned up)
|
||||
|
||||
- Disposable milestone slug: `agent-origin-live-smoke-20260703T093822Z`
|
||||
- Added milestone path: `agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/agent-origin-live-smoke-20260703T093822Z.md`
|
||||
- Initial git `origin/develop`: `77c902d4c80e92c520575becb95a1abe36219a26`
|
||||
- Initial Gito event: `event-0d8d8406b3b0b325`, changed file `added`
|
||||
- Plane work item created by Core: `bea3ed89-928a-4091-88d0-bbd5907ec464`
|
||||
- Identity backfill git `origin/develop`: `e21644ee65d46449d3ec7f4f5fbd71697297812d`
|
||||
- Core evidence: `gito missing-create sync enqueued`, `provider identity backfilled to develop`, `gito self-authored backfill revision observed`, `gito creation sync enqueued`, `roadmap creation sync completed`
|
||||
- Plane final state before cleanup: `Todo` (`45ba7449-f684-4381-af6d-5854747c5e8d`)
|
||||
- cleanup commit: `448d6d0 smoke cleanup: remove disposable agent-origin milestone agent-origin-live-smoke-20260703T093822Z`
|
||||
- cleanup Gito event: `event-103224a7fa11b012`, changed file `deleted`
|
||||
|
||||
### Git-origin environment findings
|
||||
|
||||
- First backfill attempt failed at `git commit` with `Author identity unknown`. Fix: configure non-secret `user.name` and `user.email` in the dev `GITO_DEVELOP_REPO_PATH` checkout before Git-origin smoke.
|
||||
- Second backfill attempt failed at `git push` with `could not read Username for 'https://git.toki-labs.com'`. Fix: ensure the Core dev container can read the configured git credential store mount, then recreate the `nomadcode-core-dev` compose service.
|
||||
- After both env fixes, redelivering by a small follow-up milestone edit resumed the existing missing-create identity instead of creating a duplicate Plane work item.
|
||||
|
||||
## Agent Usage Notes
|
||||
|
||||
|
|
@ -72,6 +99,7 @@ webhook dispatch trigger gate에 주입하는 non-secret env. secret(`PLANE_WEBH
|
|||
- 요청 범위는 roadmap milestone 문서처럼 작은 산출물로 제한하고, 기능 코드 구현이나 contract 변경을 요구하지 않는다.
|
||||
- full-cycle 통과 판정은 `agent-test/live-cycle-smoke.md`의 dev profile 자동 경로 체크리스트를 따른다.
|
||||
- `Todo` 이동 확인 전에는 Plane item이 완료됐다고 보고하지 않는다.
|
||||
- Git-origin smoke는 provider identity가 없는 disposable active Milestone으로 시작하고, Plane 생성 후 Core-authored identity backfill commit과 self-loop projection까지 확인한다.
|
||||
- raw API token, webhook secret, provider credential, private key는 이 문서나 최종 응답에 기록하지 않는다.
|
||||
|
||||
## Webhook Payload Fixtures
|
||||
|
|
|
|||
Loading…
Reference in a new issue