전체 문서
이 페이지 목차
- Operation 색인
- GET /api/assets
- GET /api/assets/counts
- POST /api/assets
- DELETE /api/assets
- GET /api/companies
- POST /api/companies
- GET /api/companies/{id}
- DELETE /api/companies/{id}
- POST /api/companies/{id}/scope
- POST /api/companies/reattribute
- GET /api/exploration/frontier
- GET /api/exploration/findings
- GET /api/exploration/findings/groups
- GET /api/exploration/findings/asset-tree
- GET /api/exploration/findings/stats
- GET /api/exploration/findings/export
- GET /api/exploration/findings/{id}
- GET /api/exploration/findings/{id}/lineage
- POST /api/exploration/findings/{id}/deepen
- GET /api/exploration/findings/{id}/retests
- GET /api/exploration/findings/retests/active
- POST /api/exploration/findings/{id}/retests
- PATCH /api/exploration/findings/{id}
- DELETE /api/exploration/findings/{id}
- GET /api/exploration/intents
- GET /api/exploration/graph
- GET /api/exploration/nodes
- GET /api/exploration/activity
- GET /api/exploration/activity/history
- GET /api/exploration/main-sessions
- POST /api/exploration/main-session/new
- GET /api/exploration/activity/stream
- GET /api/exploration/activity/{seq}
- GET /api/exploration/tokens
- GET /api/traffic
- GET /api/traffic/hosts
- DELETE /api/traffic
- DELETE /api/traffic/hosts
- DELETE /api/traffic/all
- GET /api/traffic/exchange
- GET /api/traffic/blob
- GET /api/report
- GET /api/exploration/findings/{id}/traffic
- POST /api/exploration/findings/{id}/traffic
- PATCH /api/exploration/findings/{id}/traffic/{binding_id}
- DELETE /api/exploration/findings/{id}/traffic/{binding_id}
- PUT /api/exploration/findings/{id}/traffic/order
- GET /api/exploration/findings/{id}/traffic/{binding_id}
- GET /api/exploration/findings/{id}/traffic/{binding_id}/body
- 이 페이지의 확인 한계
자산·Finding·Traffic API 전수 참조
asset, finding, retest, evidence snapshot과 traffic capture 영역의 등록 operation을 전수 색인한다. 이 페이지는 route/address/auth/handler 요약이고 field-level 계약은 API 의미 schema가 소유한다.
분모 · 이 페이지 49개 / 전체 261개. route 등록·auth·직접 handler는 C다. 요청/응답 semantic은 operation별 C/P/U를 분리하며 route 수를 semantic 완료율로 쓰지 않는다.
Operation 색인
| operation | handler | auth | 입력 | status | schema |
|---|---|---|---|---|---|
GET /api/assets |
listAssets |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query company_id,dsl,limit,offset,task_id,type | 200/400/401/500/503 |
P |
GET /api/assets/counts |
assetCounts |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task_id | 200/401/500/503 |
P |
POST /api/assets |
insertAssets |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/503 |
P |
DELETE /api/assets |
deleteAssets |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/500/503 |
P |
GET /api/companies |
listCompanies |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
P |
POST /api/companies |
createCompany |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 201/400/401/409/413/500/503 |
P |
GET /api/companies/{id} |
getCompany |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404/500/503 |
P |
DELETE /api/companies/{id} |
deleteCompany |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/400/401/404/500/503 |
P |
POST /api/companies/{id}/scope |
addCompanyScope |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/400/401/404/413/500/503 |
P |
POST /api/companies/reattribute |
reattribute |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
C |
GET /api/exploration/frontier |
frontier |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query limit,task | 200/401 |
P |
GET /api/exploration/findings |
findings |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query asset_scope,limit,page,q,severity,sort,status,task,task_id,vulnclass | 200/401/500 |
P |
GET /api/exploration/findings/groups |
findingGroups |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query asset_scope,limit,page,q,severity,sort,status,task_id,vulnclass | 200/401/500 |
P |
GET /api/exploration/findings/asset-tree |
findingAssetTree |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query asset_scope,q,severity,sort,status,task_id,vulnclass | 200/401/500 |
P |
GET /api/exploration/findings/stats |
findingStats |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500 |
P |
GET /api/exploration/findings/export |
findingsExport |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query asset_scope,format,ids,q,scope,severity,sort,status,task_id,vulnclass | 200/206/304/400/401/404/409/412/416/422/500 |
P |
GET /api/exploration/findings/{id} |
getFinding |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; query context_task | 200/400/401/404/500 |
P |
GET /api/exploration/findings/{id}/lineage |
findingLineage |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404/500 |
P |
POST /api/exploration/findings/{id}/deepen |
deepenFinding |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/400/401/404/409/413/500 |
P |
GET /api/exploration/findings/{id}/retests |
listFindingRetests |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404/500/503 |
P |
GET /api/exploration/findings/retests/active |
listActiveFindingRetests |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500/503 |
P |
POST /api/exploration/findings/{id}/retests |
startFindingRetest |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/202/400/401/404/409/413/500/503 |
P |
PATCH /api/exploration/findings/{id} |
patchFinding |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; JSON | 200/400/401/404/500 |
P |
DELETE /api/exploration/findings/{id} |
deleteFinding |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id | 200/400/401/404/500 |
P |
GET /api/exploration/intents |
intents |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query before,limit,page,task | 200/401/500 |
P |
GET /api/exploration/graph |
explorationGraph |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task | 200/401/500 |
P |
GET /api/exploration/nodes |
explorationNodes |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query kind,order,page,q,size,state,task | 200/401/500 |
P |
GET /api/exploration/activity |
activity |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query intent,limit,since,task | 200/401/500 |
P |
GET /api/exploration/activity/history |
activityHistory |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query before,limit,session,task | 200/400/401/404/500 |
P |
GET /api/exploration/main-sessions |
mainSessions |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task | 200/401/404/500 |
P |
POST /api/exploration/main-session/new |
newMainSession |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task | 200/401/404/409/500 |
P |
GET /api/exploration/activity/stream |
streamActivity |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query intent,since,task | 200/401/404/500 |
P |
GET /api/exploration/activity/{seq} |
activityDetail |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path seq; query task | 200/401/404/500 |
P |
GET /api/exploration/tokens |
tokenStats |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task | 200/401/500 |
P |
GET /api/traffic |
getTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query body,host,method,order,page,path,q,resp_max,resp_min,size,sort,status | 200/401 |
P |
GET /api/traffic/hosts |
getTrafficHosts |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/500 |
P |
DELETE /api/traffic |
deleteTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query host | 200/400/401/404/500 |
P |
DELETE /api/traffic/hosts |
deleteTrafficHosts |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
JSON | 200/400/401/404/500 |
P |
DELETE /api/traffic/all |
deleteAllTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
none | 200/401/404/500 |
P |
GET /api/traffic/exchange |
getTrafficExchange |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query id | 200/400/401/404 |
P |
GET /api/traffic/blob |
getTrafficBlob |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query hash | 200/400/401/404 |
P |
GET /api/report |
getReport |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
query task | 200/401/404 |
P |
GET /api/exploration/findings/{id}/traffic |
getFindingTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; query context_task | 200/400/401/404/409/422/500 |
P |
POST /api/exploration/findings/{id}/traffic |
bindFindingTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; query context_task; JSON | 200/400/401/403/404/409/422/500 |
P |
PATCH /api/exploration/findings/{id}/traffic/{binding_id} |
editFindingTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id,binding_id; query context_task; JSON | 200/400/401/403/404/409/422/500 |
P |
DELETE /api/exploration/findings/{id}/traffic/{binding_id} |
editFindingTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id,binding_id; query context_task; JSON | 200/400/401/403/404/409/422/500 |
P |
PUT /api/exploration/findings/{id}/traffic/order |
editFindingTraffic |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id; query context_task; JSON | 200/400/401/403/404/409/422/500 |
P |
GET /api/exploration/findings/{id}/traffic/{binding_id} |
getFindingTrafficDetail |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id,binding_id; query context_task | 200/400/401/404/409/422/500 |
P |
GET /api/exploration/findings/{id}/traffic/{binding_id}/body |
getFindingTrafficBody |
JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
path id,binding_id; query context_task,download,length,offset,side | 200/400/401/404/409/422/500 |
P |
GET /api/assets
GET /api/assets · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · assets family · GET /api/assets registration이 `listAssets`를 선택 · handler-get-api-assets
- 계약 사용 · GET /api/assets · operation별 request/response/error/completion 계약 · handler-get-api-assets
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /function/assets · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-assets
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | listAssets · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query company_id, dsl, limit, offset, task_id, type · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/assets/counts
GET /api/assets/counts · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · assets family · GET /api/assets/counts registration이 `assetCounts`를 선택 · handler-get-api-assets-counts
- 계약 사용 · GET /api/assets/counts · operation별 request/response/error/completion 계약 · handler-get-api-assets-counts
이 대상을 사용하는 기능·모듈·계약 · 3개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /function/assets · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-assets
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | assetCounts · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task_id · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/assets
POST /api/assets · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · assets family · POST /api/assets registration이 `insertAssets`를 선택 · handler-post-api-assets
- 계약 사용 · POST /api/assets · operation별 request/response/error/completion 계약 · handler-post-api-assets
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | insertAssets · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/assets
DELETE /api/assets · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · assets family · DELETE /api/assets registration이 `deleteAssets`를 선택 · handler-delete-api-assets
- 계약 사용 · DELETE /api/assets · operation별 request/response/error/completion 계약 · handler-delete-api-assets
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/assets · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-assets
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | deleteAssets · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/companies
GET /api/companies · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · companies family · GET /api/companies registration이 `listCompanies`를 선택 · handler-get-api-companies
- 계약 사용 · GET /api/companies · operation별 request/response/error/completion 계약 · handler-get-api-companies
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /function/assets · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-assets
- 의존 / 실행 · /function/tasks · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | listCompanies · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/companies
POST /api/companies · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · companies family · POST /api/companies registration이 `createCompany`를 선택 · handler-post-api-companies
- 계약 사용 · POST /api/companies · operation별 request/response/error/completion 계약 · handler-post-api-companies
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/assets · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-assets
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | createCompany · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 201, 400, 401, 409, 413, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/companies/{id}
GET /api/companies/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · companies family · GET /api/companies/{id} registration이 `getCompany`를 선택 · handler-get-api-companies-id
- 계약 사용 · GET /api/companies/{id} · operation별 request/response/error/completion 계약 · handler-get-api-companies-id
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getCompany · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
DELETE /api/companies/{id}
DELETE /api/companies/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · companies family · DELETE /api/companies/{id} registration이 `deleteCompany`를 선택 · handler-delete-api-companies-id
- 계약 사용 · DELETE /api/companies/{id} · operation별 request/response/error/completion 계약 · handler-delete-api-companies-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/assets · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-assets
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | deleteCompany · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/companies/{id}/scope
POST /api/companies/{id}/scope · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · companies family · POST /api/companies/{id}/scope registration이 `addCompanyScope`를 선택 · handler-post-api-companies-id-scope
- 계약 사용 · POST /api/companies/{id}/scope · operation별 request/response/error/completion 계약 · handler-post-api-companies-id-scope
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/assets · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-assets
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | addCompanyScope · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 413, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
POST /api/companies/reattribute
POST /api/companies/reattribute · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/assets.go · companies family · POST /api/companies/reattribute registration이 `reattribute`를 선택 · handler-post-api-companies-reattribute
- 계약 사용 · POST /api/companies/reattribute · operation별 request/response/error/completion 계약 · handler-post-api-companies-reattribute
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | reattribute · server/assets.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | C: 직접 scalar/static top-level key와 field type을 추출; nested 내부 schema는 별도 type 참조가 없으면 P |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/exploration/frontier
GET /api/exploration/frontier · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/frontier registration이 `frontier`를 선택 · handler-get-api-exploration-frontier
- 계약 사용 · GET /api/exploration/frontier · operation별 request/response/error/completion 계약 · handler-get-api-exploration-frontier
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | frontier · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query limit, task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings
GET /api/exploration/findings · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/findings registration이 `findings`를 선택 · handler-get-api-exploration-findings
- 계약 사용 · GET /api/exploration/findings · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings
이 대상을 사용하는 기능·모듈·계약 · 4개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | findings · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query asset_scope, limit, page, q, severity, sort, status, task, task_id, vulnclass · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/groups
GET /api/exploration/findings/groups · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/findings_groups.go · exploration family · GET /api/exploration/findings/groups registration이 `findingGroups`를 선택 · handler-get-api-exploration-findings-groups
- 계약 사용 · GET /api/exploration/findings/groups · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-groups
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | findingGroups · server/findings_groups.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query asset_scope, limit, page, q, severity, sort, status, task_id, vulnclass · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/asset-tree
GET /api/exploration/findings/asset-tree · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/findings_groups.go · exploration family · GET /api/exploration/findings/asset-tree registration이 `findingAssetTree`를 선택 · handler-get-api-exploration-findings-asset-tree
- 계약 사용 · GET /api/exploration/findings/asset-tree · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-asset-tree
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | findingAssetTree · server/findings_groups.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query asset_scope, q, severity, sort, status, task_id, vulnclass · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/stats
GET /api/exploration/findings/stats · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/findings/stats registration이 `findingStats`를 선택 · handler-get-api-exploration-findings-stats
- 계약 사용 · GET /api/exploration/findings/stats · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-stats
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | findingStats · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/export
GET /api/exploration/findings/export · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/findings/export registration이 `findingsExport`를 선택 · handler-get-api-exploration-findings-export
- 계약 사용 · GET /api/exploration/findings/export · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-export
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | findingsExport · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query asset_scope, format, ids, q, scope, severity, sort, status, task_id, vulnclass · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 206, 304, 400, 401, 404, 409, 412, 416, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U; stdlib 412는 body 없음, 416은 text/plain (format=md-zip branch만 해당) |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/{id}
GET /api/exploration/findings/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/findings/{id} registration이 `getFinding`를 선택 · handler-get-api-exploration-findings-id
- 계약 사용 · GET /api/exploration/findings/{id} · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-id
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getFinding · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query context_task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/{id}/lineage
GET /api/exploration/findings/{id}/lineage · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/findings/{id}/lineage registration이 `findingLineage`를 선택 · handler-get-api-exploration-findings-id-lineage
- 계약 사용 · GET /api/exploration/findings/{id}/lineage · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-id-lineage
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | findingLineage · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/exploration/findings/{id}/deepen
POST /api/exploration/findings/{id}/deepen · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/findings_groups.go · exploration family · POST /api/exploration/findings/{id}/deepen registration이 `deepenFinding`를 선택 · handler-post-api-exploration-findings-id-deepen
- 계약 사용 · POST /api/exploration/findings/{id}/deepen · operation별 request/response/error/completion 계약 · handler-post-api-exploration-findings-id-deepen
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | deepenFinding · server/findings_groups.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 409, 413, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · 후속 intent queue 접수; intent terminal state가 완료 기준 |
GET /api/exploration/findings/{id}/retests
GET /api/exploration/findings/{id}/retests · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_retests.go · exploration family · GET /api/exploration/findings/{id}/retests registration이 `listFindingRetests`를 선택 · handler-get-api-exploration-findings-id-retests
- 계약 사용 · GET /api/exploration/findings/{id}/retests · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-id-retests
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | listFindingRetests · server/finding_retests.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/retests/active
GET /api/exploration/findings/retests/active · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_retests.go · exploration family · GET /api/exploration/findings/retests/active registration이 `listActiveFindingRetests`를 선택 · handler-get-api-exploration-findings-retests-active
- 계약 사용 · GET /api/exploration/findings/retests/active · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-retests-active
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | listActiveFindingRetests · server/finding_retests.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/exploration/findings/{id}/retests
POST /api/exploration/findings/{id}/retests · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_retests.go · exploration family · POST /api/exploration/findings/{id}/retests registration이 `startFindingRetest`를 선택 · handler-post-api-exploration-findings-id-retests
- 계약 사용 · POST /api/exploration/findings/{id}/retests · operation별 request/response/error/completion 계약 · handler-post-api-exploration-findings-id-retests
이 대상을 사용하는 기능·모듈·계약 · 3개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | startFindingRetest · server/finding_retests.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 202, 400, 401, 404, 409, 413, 500, 503 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · retest row/conversation 시작; retest terminal state가 완료 기준 |
PATCH /api/exploration/findings/{id}
PATCH /api/exploration/findings/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · PATCH /api/exploration/findings/{id} registration이 `patchFinding`를 선택 · handler-patch-api-exploration-findings-id
- 계약 사용 · PATCH /api/exploration/findings/{id} · operation별 request/response/error/completion 계약 · handler-patch-api-exploration-findings-id
이 대상을 사용하는 기능·모듈·계약 · 3개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | patchFinding · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; DB upsert/trigger/side effect 때문에 반복 의미를 handler별 확인(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/exploration/findings/{id}
DELETE /api/exploration/findings/{id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · DELETE /api/exploration/findings/{id} registration이 `deleteFinding`를 선택 · handler-delete-api-exploration-findings-id
- 계약 사용 · DELETE /api/exploration/findings/{id} · operation별 request/response/error/completion 계약 · handler-delete-api-exploration-findings-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | deleteFinding · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/exploration/intents
GET /api/exploration/intents · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/intents registration이 `intents`를 선택 · handler-get-api-exploration-intents
- 계약 사용 · GET /api/exploration/intents · operation별 request/response/error/completion 계약 · handler-get-api-exploration-intents
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | intents · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query before, limit, page, task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/graph
GET /api/exploration/graph · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/graph registration이 `explorationGraph`를 선택 · handler-get-api-exploration-graph
- 계약 사용 · GET /api/exploration/graph · operation별 request/response/error/completion 계약 · handler-get-api-exploration-graph
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | explorationGraph · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/nodes
GET /api/exploration/nodes · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/nodes registration이 `explorationNodes`를 선택 · handler-get-api-exploration-nodes
- 계약 사용 · GET /api/exploration/nodes · operation별 request/response/error/completion 계약 · handler-get-api-exploration-nodes
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | explorationNodes · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query kind, order, page, q, size, state, task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/activity
GET /api/exploration/activity · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/activity registration이 `activity`를 선택 · handler-get-api-exploration-activity
- 계약 사용 · GET /api/exploration/activity · operation별 request/response/error/completion 계약 · handler-get-api-exploration-activity
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | activity · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query intent, limit, since, task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/activity/history
GET /api/exploration/activity/history · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/activity/history registration이 `activityHistory`를 선택 · handler-get-api-exploration-activity-history
- 계약 사용 · GET /api/exploration/activity/history · operation별 request/response/error/completion 계약 · handler-get-api-exploration-activity-history
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | activityHistory · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query before, limit, session, task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/main-sessions
GET /api/exploration/main-sessions · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/main-sessions registration이 `mainSessions`를 선택 · handler-get-api-exploration-main-sessions
- 계약 사용 · GET /api/exploration/main-sessions · operation별 request/response/error/completion 계약 · handler-get-api-exploration-main-sessions
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | mainSessions · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/exploration/main-session/new
POST /api/exploration/main-session/new · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · POST /api/exploration/main-session/new registration이 `newMainSession`를 선택 · handler-post-api-exploration-main-session-new
- 계약 사용 · POST /api/exploration/main-session/new · operation별 request/response/error/completion 계약 · handler-post-api-exploration-main-session-new
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | newMainSession · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 409, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/exploration/activity/stream
GET /api/exploration/activity/stream · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/activity/stream registration이 `streamActivity`를 선택 · handler-get-api-exploration-activity-stream
- 계약 사용 · GET /api/exploration/activity/stream · operation별 request/response/error/completion 계약 · handler-get-api-exploration-activity-stream
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | streamActivity · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query intent, since, task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · SSE 연결 수립; event lifecycle은 stream별 cursor/메모리 상태를 확인 |
GET /api/exploration/activity/{seq}
GET /api/exploration/activity/{seq} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/activity/{seq} registration이 `activityDetail`를 선택 · handler-get-api-exploration-activity-seq
- 계약 사용 · GET /api/exploration/activity/{seq} · operation별 request/response/error/completion 계약 · handler-get-api-exploration-activity-seq
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /chat · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-chat
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | activityDetail · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path seq · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/tokens
GET /api/exploration/tokens · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · exploration family · GET /api/exploration/tokens registration이 `tokenStats`를 선택 · handler-get-api-exploration-tokens
- 계약 사용 · GET /api/exploration/tokens · operation별 request/response/error/completion 계약 · handler-get-api-exploration-tokens
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | tokenStats · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/traffic
GET /api/traffic · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · traffic family · GET /api/traffic registration이 `getTraffic`를 선택 · handler-get-api-traffic
- 계약 사용 · GET /api/traffic · operation별 request/response/error/completion 계약 · handler-get-api-traffic
이 대상을 사용하는 기능·모듈·계약 · 3개
- 의존 / 실행 · /dashboard · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-dashboard
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getTraffic · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query body, host, method, order, page, path, q, resp_max, resp_min, size, sort, status · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/traffic/hosts
GET /api/traffic/hosts · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · traffic family · GET /api/traffic/hosts registration이 `getTrafficHosts`를 선택 · handler-get-api-traffic-hosts
- 계약 사용 · GET /api/traffic/hosts · operation별 request/response/error/completion 계약 · handler-get-api-traffic-hosts
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getTrafficHosts · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
DELETE /api/traffic
DELETE /api/traffic · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · traffic family · DELETE /api/traffic registration이 `deleteTraffic`를 선택 · handler-delete-api-traffic
- 계약 사용 · DELETE /api/traffic · operation별 request/response/error/completion 계약 · handler-delete-api-traffic
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | deleteTraffic · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query host · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/traffic/hosts
DELETE /api/traffic/hosts · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · traffic family · DELETE /api/traffic/hosts registration이 `deleteTrafficHosts`를 선택 · handler-delete-api-traffic-hosts
- 계약 사용 · DELETE /api/traffic/hosts · operation별 request/response/error/completion 계약 · handler-delete-api-traffic-hosts
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | deleteTrafficHosts · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body JSON |
| status/error | 직접 관찰 200, 400, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/traffic/all
DELETE /api/traffic/all · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · traffic family · DELETE /api/traffic/all registration이 `deleteAllTraffic`를 선택 · handler-delete-api-traffic-all
- 계약 사용 · DELETE /api/traffic/all · operation별 request/response/error/completion 계약 · handler-delete-api-traffic-all
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | deleteAllTraffic · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query - · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key/If-Match 없음; 반복 시 응답/존재 검사가 달라질 수 있음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/traffic/exchange
GET /api/traffic/exchange · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · traffic family · GET /api/traffic/exchange registration이 `getTrafficExchange`를 선택 · handler-get-api-traffic-exchange
- 계약 사용 · GET /api/traffic/exchange · operation별 request/response/error/completion 계약 · handler-get-api-traffic-exchange
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getTrafficExchange · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query id · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/traffic/blob
GET /api/traffic/blob · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · traffic family · GET /api/traffic/blob registration이 `getTrafficBlob`를 선택 · handler-get-api-traffic-blob
- 계약 사용 · GET /api/traffic/blob · operation별 request/response/error/completion 계약 · handler-get-api-traffic-blob
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getTrafficBlob · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query hash · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/report
GET /api/report · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/server.go · report family · GET /api/report registration이 `getReport`를 선택 · handler-get-api-report
- 계약 사용 · GET /api/report · operation별 request/response/error/completion 계약 · handler-get-api-report
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/tasks/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-tasks-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getReport · server/server.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path - · query task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 401, 404 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/{id}/traffic
GET /api/exploration/findings/{id}/traffic · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_traffic.go · exploration family · GET /api/exploration/findings/{id}/traffic registration이 `getFindingTraffic`를 선택 · handler-get-api-exploration-findings-id-traffic
- 계약 사용 · GET /api/exploration/findings/{id}/traffic · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-id-traffic
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getFindingTraffic · server/finding_traffic.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query context_task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 409, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
POST /api/exploration/findings/{id}/traffic
POST /api/exploration/findings/{id}/traffic · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_traffic.go · exploration family · POST /api/exploration/findings/{id}/traffic registration이 `bindFindingTraffic`를 선택 · handler-post-api-exploration-findings-id-traffic
- 계약 사용 · POST /api/exploration/findings/{id}/traffic · operation별 request/response/error/completion 계약 · handler-post-api-exploration-findings-id-traffic
이 대상을 사용하는 기능·모듈·계약 · 2개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
- 의존 / 실행 · /function/traffic · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-traffic
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | bindFindingTraffic · server/finding_traffic.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query context_task · body JSON |
| status/error | 직접 관찰 200, 400, 401, 403, 404, 409, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | Idempotency-Key 없음; unique constraint 또는 상태 check가 있는 경우만 중복을 제한(P) · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PATCH /api/exploration/findings/{id}/traffic/{binding_id}
PATCH /api/exploration/findings/{id}/traffic/{binding_id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_traffic.go · exploration family · PATCH /api/exploration/findings/{id}/traffic/{binding_id} registration이 `editFindingTraffic`를 선택 · handler-patch-api-exploration-findings-id-traffic-binding-id
- 계약 사용 · PATCH /api/exploration/findings/{id}/traffic/{binding_id} · operation별 request/response/error/completion 계약 · handler-patch-api-exploration-findings-id-traffic-binding-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | editFindingTraffic · server/finding_traffic.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id, binding_id · query context_task · body JSON |
| status/error | 직접 관찰 200, 400, 401, 403, 404, 409, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | body version 기반 optimistic concurrency; stale은 handler의 409; HTTP idempotency key는 없음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
DELETE /api/exploration/findings/{id}/traffic/{binding_id}
DELETE /api/exploration/findings/{id}/traffic/{binding_id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_traffic.go · exploration family · DELETE /api/exploration/findings/{id}/traffic/{binding_id} registration이 `editFindingTraffic`를 선택 · handler-delete-api-exploration-findings-id-traffic-binding-id
- 계약 사용 · DELETE /api/exploration/findings/{id}/traffic/{binding_id} · operation별 request/response/error/completion 계약 · handler-delete-api-exploration-findings-id-traffic-binding-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | editFindingTraffic · server/finding_traffic.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id, binding_id · query context_task · body JSON |
| status/error | 직접 관찰 200, 400, 401, 403, 404, 409, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | body version 기반 optimistic concurrency; stale은 handler의 409; HTTP idempotency key는 없음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
PUT /api/exploration/findings/{id}/traffic/order
PUT /api/exploration/findings/{id}/traffic/order · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_traffic.go · exploration family · PUT /api/exploration/findings/{id}/traffic/order registration이 `editFindingTraffic`를 선택 · handler-put-api-exploration-findings-id-traffic-order
- 계약 사용 · PUT /api/exploration/findings/{id}/traffic/order · operation별 request/response/error/completion 계약 · handler-put-api-exploration-findings-id-traffic-order
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | editFindingTraffic · server/finding_traffic.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id · query context_task · body JSON |
| status/error | 직접 관찰 200, 400, 401, 403, 404, 409, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | body version 기반 optimistic concurrency; stale은 handler의 409; HTTP idempotency key는 없음 · handler의 직접 mutation/호출 후 응답; 외부 전달·agent 실행이 파생되면 별도 상태 확인(P) |
GET /api/exploration/findings/{id}/traffic/{binding_id}
GET /api/exploration/findings/{id}/traffic/{binding_id} · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_traffic.go · exploration family · GET /api/exploration/findings/{id}/traffic/{binding_id} registration이 `getFindingTrafficDetail`를 선택 · handler-get-api-exploration-findings-id-traffic-binding-id
- 계약 사용 · GET /api/exploration/findings/{id}/traffic/{binding_id} · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-id-traffic-binding-id
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getFindingTrafficDetail · server/finding_traffic.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id, binding_id · query context_task · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 409, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
GET /api/exploration/findings/{id}/traffic/{binding_id}/body
GET /api/exploration/findings/{id}/traffic/{binding_id}/body · 관계
이 대상이 사용하는 구현·계약·의존 · 2개
- 구현 담당 · server/finding_traffic.go · exploration family · GET /api/exploration/findings/{id}/traffic/{binding_id}/body registration이 `getFindingTrafficBody`를 선택 · handler-get-api-exploration-findings-id-traffic-binding-id-body
- 계약 사용 · GET /api/exploration/findings/{id}/traffic/{binding_id}/body · operation별 request/response/error/completion 계약 · handler-get-api-exploration-findings-id-traffic-binding-id-body
이 대상을 사용하는 기능·모듈·계약 · 1개
- 의존 / 실행 · /function/findings/detail · 화면 component/hook에서 API wrapper 또는 EventSource 소비 · web-screen-function-findings-detail
| 계약 | 확인 결과 |
|---|---|
| 등록·handler | getFindingTrafficBody · server/finding_traffic.go · handler 근거 |
| 인증 | JWT 필요; extractToken이 Bearer→cookie→query token 순으로 선택 |
| wire 입력 | path id, binding_id · query context_task, download, length, offset, side · body 없음(직접 body decode 미발견) |
| status/error | 직접 관찰 200, 400, 401, 404, 409, 422, 500 · 일반 error body {error:string}; helper status는 schema에서 P/U |
| 응답·validation | P: top-level key는 직접 추출했지만 derived/helper/opaque 또는 nested type이 남음 |
| 반복·완료 | read/stream 요청; stream 재연결은 cursor 계약에 따름 · 직접 조회/파일 전송 완료; 외부 조회가 있으면 응답 전 handler 결과만 보장 |
| wire 응답 branch | download=1은 200 raw octet-stream attachment, 그 외는 200 evidencePreview JSON; `side=request |
이 페이지의 확인 한계
- route registration/auth/handler 직접 목적지는 전수 확인했다.
- field/schema/error/side-effect 의미는 별도 schema page의 C/P/U가 권위다.
- OpenAPI가 없고 실제 HTTP server는 실행하지 않았다. helper 내부·외부 서비스·DB 운영 상태는 정적 소스 이상으로 보장하지 않는다.