- Add Plane webhook handler for issue events (created, state, assignees) - Add Plane webhook integration tests with testdata fixtures - Add Gito Protosocket consumer wire readiness milestone - Add Plane work item webhook intake milestone - Add agent-task for plane-work-item-webhook-intake (trigger dispatch, idempotency, live smoke) - Update service config, router, handlers for Plane webhook endpoints - Add SOPS env setup script and secrets configuration - Update agent-ops domain rules and phase roadmap
1.9 KiB
1.9 KiB
Plane Dev Test Fixtures
이 문서는 dev Plane 연동 테스트에서 반복 사용하는 non-secret 식별자를 기록한다. API token, webhook secret, password 같은 secret 원문은 이 파일에 쓰지 않는다.
NomadCode Project
- Plane base URL:
https://plane.toki-labs.com - Workspace slug:
general - Workspace id:
dadf050e-cd1e-4590-bc33-672511630841 - Project id:
a6beb42f-7a8a-410c-b50f-ea3ca94828f3 - Project identifier:
NOMAD
State IDs
- Backlog:
62d4c50c-0cea-4a76-a0ed-ec97498b2d5f - Todo:
45ba7449-f684-4381-af6d-5854747c5e8d - In Progress:
c6ac1a6b-74d5-47fb-8b36-646d2bf0284d - User Review:
dc4fb920-f763-4ae3-9569-3c5e2d500391 - Done:
ea2e5b48-8bf1-4723-b749-de7723be41e9 - Cancelled:
f29c06c2-d70c-4b56-a83c-fccc4db60ae4
Users
- AGENT assignee user id:
5d116a77-d3df-4f54-80bf-eca61e0118c4
Webhook Smoke Baseline
- Webhook URL:
http://toki-labs.com:18010/api/integrations/plane/webhook - Webhook secret storage: SOPS encrypted
secrets/nomadcode.dev.sops.yamlkeyPLANE_WEBHOOK_SECRET - 2026-06-14 webhook-only smoke used existing Backlog items
NOMAD-10andNOMAD-11by assigning AGENT.
Webhook Payload Fixtures
services/core/internal/http/testdata/ 아래 fixture로 payload shape를 고정한다. 모든 fixture는 PII/secret redaction 상태이며 work item id는 placeholder다.
plane_webhook_issue_assignees_updated.json: live dev Plane assignee-update 로그 기반 redacted 샘플 (event=issue,action=updated,activity.field=assignees).plane_webhook_issue_created.json: create 후보. live create 로그를 따로 확보하지 않아 관찰된 issue envelope 기반 synthetic candidate다 (event=issue,action=created, Backlog state).plane_webhook_issue_state_updated.json: state-change 후보. synthetic candidate다 (event=issue,action=updated,activity.field=state, Backlog -> Todo).