Commit graph

314 commits

Author SHA1 Message Date
6f141b9121 fix(single_request): 템플릿 경로 생략과 명시 빈 값을 구분한다
`plan_file`/`review_file`이 평범한 문자열이라 decode 직후 trim-empty가 곧
생략으로 취급되었고, 그 결과 loader의 빈 경로 거부가 설정값에 대해 도달할 수
없었다. 명시적으로 설정한 빈 값과 공백 값이 조용히 built-in default로
떨어지는 승인 경계 결함이므로 optional 표현으로 바꿔 생략만 fallback 신호가
되게 한다. 설정된 값은 파일 접근 전에 trim 후 빈 경로 거부까지 도달한다.

pointer cell이 snapshot 사이에서 aliasing되지 않도록 Templates 전용 deep
clone을 두고, 네 가지 명시 빈/공백 경계와 clone 독립성, 그리고 refresh가
경로나 본문을 노출하지 않는다는 기존 근거를 함께 회귀로 고정한다.

Refs: agent-task/single_request_plan_review_templates/PLAN-cloud-G08.md

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-09 10:04:01 +09:00
31fada5d08 fix(single_request): 템플릿 승인 경계를 닫고 회귀 근거를 채운다
공식 리뷰가 지적한 두 가지 승인 경계 결함을 고친다. `plan_file`/`review_file`은
edge.yaml 디렉터리 기준 상대 경로만 허용하고 절대/빈 경로는 파일 접근 전에 거부한다.
필수 heading과 Review `PASS`는 부분 문자열이 아니라 정확한 단독 줄로 검증하며,
문서화된 placeholder를 제거한 뒤 남는 `{{`/`}}`를 거부해 문법을 닫는다.

리뷰가 존재한다고 기술했지만 실제로는 없던 회귀 근거를 추가한다. admission 시
고정된 effective 템플릿 쌍이 clone과 workspace 재검증을 통과하는지, refresh가
이미 승인된 요청이 아니라 새 요청에만 적용되는지, custom Review 템플릿이 내부
artifact만 바꾸고 caller 최종 출력은 그대로인지를 각각 확정 검증한다.

현재 문서도 실제 동작에 맞춘다. Edge 실행 spec의 낡은 Plan JSON Schema 서술을
direct PlanMD 검증으로 고치고, outer Anthropic 계약과 input spec에 템플릿이
Edge 내부 stage 입력일 뿐 caller 요청/응답 계약을 바꾸지 않음을 명시한다.

Refs: agent-task/single_request_plan_review_templates/PLAN-cloud-G08.md
2026-08-09 09:25:27 +09:00
b6e0080fe5 feat(single_request): implement bounded Plan and Review Markdown templates 2026-08-09 08:41:03 +09:00
3a83f6a7ad fix(api): Claude thinking beta 헤더를 허용한다 2026-08-09 06:55:27 +09:00
d7a150c7fe feat(agent): 단일 요청 실행 경로를 완성한다
Claude의 단일 Anthropic 요청 안에서 IOP가 Plan, Work, Review와 workspace 도구 실행을 끝내고 실제 dev smoke로 계약을 검증할 수 있어야 한다.\n\n완료 task evidence와 마일스톤 검토 상태도 같은 변경에 고정한다.
2026-08-08 23:35:13 +09:00
dc9a9a8c59 feat(agent): 단일 요청 Agent 실행 경계를 구현한다
승인된 execution preset을 Edge 조정 경계와 Node workspace/tool 실행 경계로 연결해 단일 요청 수명주기와 관측 계약을 일관되게 처리한다.
2026-08-07 07:03:55 +09:00
a704a2ce03 chore: 테스트 임시 산출물을 정리한다
소스 트리에 남은 테스트 실행 부산물과 로컬 설정·DB·바이너리를 제거해 저장소 오염을 줄인다. 삭제한 디버그 스크립트의 readability 기준선도 함께 정리한다.
2026-08-06 20:01:57 +09:00
af35296aaa feat(runtime): provider liveness 복구를 dev에 병합한다 2026-08-06 08:56:24 +09:00
f9442edfef feat(runtime): provider liveness 복구를 완성한다
장시간 무응답 attempt를 안전하게 fence하고 provider health와 분리 관측해야 중복 출력 없이 기존 recovery budget으로 재실행할 수 있다.
2026-08-06 08:49:59 +09:00
4b3b5debae feat(openai): extend Anthropic bridge compatibility 2026-08-06 07:04:03 +09:00
495996fee4 feat(openai): 핫패스 에이전트 실행 경로를 확장한다
Anthropic·Chat 게이트와 관찰·종료 제어를 통합하고 관련 계약·검증 산출물을 반영한다.
2026-08-06 00:09:24 +09:00
fef1f7a9dc feat(liveness): provider 실행 stall 관측을 구현한다
Node의 provider progress 기반 stall timeout, watchdog fencing과 bounded health probe evidence를 실행 경로에 반영한다. Edge-Node 계약과 구현 스펙, 테스트 및 Milestone 완료 evidence를 현재 상태와 맞춘다.
2026-08-05 09:45:14 +09:00
09598013d8 Merge dev into feature/iop-hot-path-one-shot-execution 2026-08-04 16:11:49 +09:00
6650e9f70d feat(hot-path): 실행 프리셋과 논리 요청 흐름을 구현한다 2026-08-03 14:42:55 +09:00
4cafc91323 fix(transport): 터널 지연에 맞춰 heartbeat 경계를 보강한다
장시간 provider prefill과 stream backpressure가 정상 노드를 끊지 않도록 liveness window를 확장하고 Chronos 분리 완료 문서와 잔여 artifact를 정리한다.
2026-08-02 22:30:25 +09:00
81243284cb refactor(execution): correct residual agent ownership wording
Post-promotion boundary correction: replace the standalone-agent and
terminal-session wording in doc.go/types.go/main.go with provider-only,
run-scoped descriptions and add a Node CLI regression that rejects Agent
wording. Promotion and recovery evidence is preserved untouched.
2026-08-02 21:12:36 +09:00
c8e98d4e10 refactor(runtime): promote provider-only execution boundary 2026-08-02 20:28:45 +09:00
04b8baceff Merge branch 'feature/glm-coding-plan' into dev 2026-08-02 13:25:56 +09:00
61d4e76fe8 feat(protocol-profile): GLM Coding Plan 프로필을 분리한다
General API와 Coding Plan이 서로 다른 엔드포인트와 사용량 경계를 유지하도록 프로필, credential route, provider mapping, full-cycle 검증을 함께 반영한다.
2026-08-02 13:24:42 +09:00
7d8551b440 fix(edge): 프로필 backing 중복을 단일화한다 2026-08-02 12:43:48 +09:00
1789f4007c fix(edge): 동시 실행 ID 충돌을 방지한다 2026-08-02 12:21:16 +09:00
ef5b3e7557 fix(credential): lease 프로필 카탈로그를 고정한다
route 검증과 lease 발급이 같은 불변 profile snapshot을 사용해야 프로세스 내 호환 map 변경에도 유효한 credential route가 안정적으로 동작한다. 코드레벨 검토를 통과한 Milestone과 SDD도 완료 상태로 archive한다.
2026-08-02 09:58:57 +09:00
4c8441e6c9 feat(credential): Provider Credential Slot 라우팅을 구현한다
사용자별 credential 저장, lease, projection, runtime 전달과 OpenAI-compatible 계약 및 검증 근거를 함께 반영한다.
2026-08-02 09:10:11 +09:00
892dc58369 fix(protocol-profile): 요청 경계와 후속 계획을 정리한다
Anthropic 전용 API key가 일반 OpenAI 요청에 적용되지 않도록 경계를 좁히고 잘못된 절대 operation URL을 fail-closed로 거부해야 한다.\n\n완료 Milestone archive와 principal credential 후속 agent-task를 같은 기준선에 맞춘다.
2026-08-01 12:52:56 +09:00
f2306f4dc8 feat(protocol-profile): 멀티 프로토콜 프로필을 추가한다
OpenAI 호환 및 Anthropic Messages 경로의 프로토콜 프로필, 라우팅 계약, 테스트와 실행 증거를 함께 반영한다.
2026-08-01 10:33:10 +09:00
6f57de812c Merge branch 'feature/iop-agent-cli-runtime' into dev
# Conflicts:
#	agent-task/archive/2026/07/m-iop-agent-cli-runtime_1/code_review_cloud_G07_0.log
#	agent-task/archive/2026/07/m-iop-agent-cli-runtime_1/code_review_cloud_G07_1.log
#	agent-task/archive/2026/07/m-iop-agent-cli-runtime_1/code_review_cloud_G07_2.log
#	agent-task/archive/2026/07/m-iop-agent-cli-runtime_1/plan_cloud_G06_1.log
#	agent-task/archive/2026/07/m-iop-agent-cli-runtime_1/plan_cloud_G07_2.log
#	agent-task/archive/2026/07/m-iop-agent-cli-runtime_1/plan_local_G07_0.log
#	agent-task/archive/2026/07/m-provider-usage-attribution-hot-path/01_attribution_binding_foundation/plan_local_G07_0.log
#	agent-task/archive/2026/07/m-provider-usage-attribution-hot-path/02+01_attempt_usage_emission/plan_cloud_G10_0.log
2026-07-31 22:00:42 +09:00
a2becd222a chore(iop): 런타임 변경과 마일스톤 아카이브를 반영한다
완료된 IOP Agent CLI Runtime의 상태·스펙·계약·작업 evidence를 아카이브 경로로 동기화하고 현재 런타임 검증 변경을 원격에 공유한다.
2026-07-31 21:57:38 +09:00
f98d1b434b fix(openai): usage 귀속 마일스톤을 종료한다
Stream Gate 준비 실패에서도 요청 terminal 관측 계약을 지키고, direct provider identity 마이그레이션 누락으로 기존 검증과 운영 설정이 깨지지 않게 한다.
2026-07-31 21:20:19 +09:00
04879f2b43 feat(openai): 실제 provider별 사용량 귀속을 기록한다
요청 종료 계수와 실제 provider 시도 사용량을 분리하고, 직접·pool·retry 경로의 attribution을 보존한다. 관련 계약·스펙과 완료된 task archive 정리도 함께 반영한다.
2026-07-31 20:22:23 +09:00
45d4bd98fd fix(agent): task-loop 검증 경계와 상태 검사를 보강한다
리뷰에서 확인된 Milestone 식별자와 컴파일 바이너리 상태 검증의 빈틈을 보완하고, 활성 agent-task에서는 dispatcher만 실행 경로로 사용하도록 고정한다.
2026-07-31 18:40:40 +09:00
d6aec83b0d merge(agent): 에이전트 CLI 런타임을 dev에 통합한다
# Conflicts:
#	agent-ops/rules/project/domain/agent/rules.md
#	agent-ops/skills/project/orchestrate-agent-task-loop/SKILL.md
#	docs/agent-development-workflow-cost-quality-report.md
2026-07-31 15:48:02 +09:00
06556eba69 fix(agent): 단일·분할 작업 탐색을 함께 지원한다 2026-07-31 15:35:33 +09:00
4e42091093 feat(agent): 에이전트 CLI 런타임을 추가한다 2026-07-31 13:20:03 +09:00
c380892159 fix(openai): 채팅 터널 실패 종료를 보장한다
재시도 소진 뒤 거부된 터미널을 재생하지 않고 SSE 오류로 종료해야 클라이언트가 중단된 스트림 대신 명시적인 실패를 관측할 수 있다.
2026-07-30 17:42:25 +09:00
750cb1d1cb feat(stream-gate): 필터 검증 변경을 반영한다 2026-07-30 08:13:08 +09:00
d1e32b6e06 feat(openai): 반복 출력 복구를 구현한다
출력 반복을 요청 단위로 감지하고 안전한 continuation lifecycle을 보장하기 위해 Chat/Responses codec과 stream gate evidence를 함께 정렬한다.
2026-07-29 18:40:36 +09:00
1b1640ef1c chore(merge): dev 변경을 출력 검증 브랜치에 반영한다 2026-07-28 23:02:10 +09:00
5347973cb9 feat: runtime bridge refactor - remove legacy CLI adapters, add agentruntime packages 2026-07-28 20:02:27 +09:00
772f63f25c feat: add stream gate pipeline, policy, filters, tunnel codec files 2026-07-28 15:25:23 +09:00
772b235778 feat: openai-compatible output validation filters - stream gate pipeline, policy, filters, tunnel codec, model queue, provider pool, contract & spec updates 2026-07-28 15:21:09 +09:00
7634ca8962 feat(stream-evidence-gate-core): complete stream evidence gate core implementation
- OpenAI request rebuilder with tool validation and provider tunnel
- Edge config runtime refresh for stream evidence gate
- Filter observation contract and runtime with sink/correlation
- Stream gate dispatcher, release sink, and vertical slice
- Recovery coordinator for evidence tail
- Parallel evaluation and commit boundary
- E2E test script for OpenAI vLLM
- Archive completed task groups to archive/2026/07
2026-07-28 04:08:12 +09:00
cdbc80a308 sync: archive migration, runtime-bridge updates, edge openai rebuilder, dispatch skill, docs 2026-07-27 17:55:16 +09:00
c1c1e19678 feat(streamgate): 요청 런타임 수명주기를 구현한다
증거 평가와 복구를 하나의 요청 루프로 수렴시켜 OpenAI ingress 재구성과 stream release를 일관되게 처리한다.
2026-07-26 21:03:39 +09:00
ae5845cd68 fix: post-commit refinements
- Update runtime loop plan/code-review
- Fix chat_handler, input_estimator_test, openai_request_rebuilder, provider_tunnel, responses_handler
- Fix ingress_snapshot_test
- Add code review and plan logs
2026-07-26 20:53:32 +09:00
d182eafeff feat: stream evidence gate core - full implementation
- Stream evidence gate routing in edge config and runtime
- Ingress snapshot and allocation
- Recovery coordinator and plan
- Runtime contract for gate filters
- OpenAI-compatible request rebuilder and stream gate dispatcher
- Comprehensive tests for all new components
- Updated contracts and roadmap milestones
2026-07-26 20:48:53 +09:00
deea59d035 feat: task routing, orchestration, quota probe, and skill updates
- add finalize-task-routing skill with policy and test scripts
- add execution target selection scripts and tests for orchestrate-agent-task-loop
- add quota probe adapter and CLI status for node app
- update plan, finalize-task-routing, and orchestration skill files
- add agent-task archive for runtime target selector
- update stream-evidence-gate-core milestone
2026-07-25 19:33:17 +09:00
0ffcb88db0 feat: provider-resource-admission-ownership alignment
- Archive provider-resource-admission-ownership milestone/SDD
- Align contract: CP-edge wire, runtime refresh, node runtime, OpenAI surface
- Update roadmap: phase state, priority queue
- Update specs: control-plane ops, OpenAI surface, edge execution, provider pool refresh
- Add node runtime supervisor bootstrapping and unit tests
- Fix control-plane edge registry handler and http_views
- Fix edge model queue admission and long context queue tests
2026-07-22 20:45:04 +09:00
4a76851254 feat(node): 연결 supervisor 및 CLI adaptors 개선
- runtimeSupervisor 단일 goroutine으로 연결·재연결 수명주기 관리
- 초기 연결 실패 시 fx OnStart 후크 중단 방지 (SDD S16)
- finite 재연결 시도 고갈 시 노드 종료
- CLI adaptors: oneshot, opencode_sse, persistent 보강 및 테스트 확장
2026-07-22 18:11:06 +09:00
4dcf6f0cf9 feat(edge): provider 리소스 승인 소유권 정렬 구현
- 노드 연결 2단계 핸드셰이크 추가 (Register→NodeReady→DispatchReady)
- ConnectionGeneration 기반 연결 세대 관리로 stale 연결 차폐
- configured 노드 catalog 기반 snapshot rebuild (Connected 상태 분리)
- provider 리스 소유권 일원화: edge가 소유권 승인·반환 전까지 대기
- 모델 대기열 승인/해제/스냅샷 서비스 구현
- 재연결 준비도 통합 테스트, 아카이브된 하위태스크 8건 포함
2026-07-22 18:10:54 +09:00
c14640f305 feat: provider resource admission ownership alignment - runtime refresh & model queue implementation
- Implement runtime refresh logic for provider resource ownership alignment
- Add model queue admission service with scheduling support
- Add comprehensive tests: runtime_refresh_test, provider_scheduling_test, service_internal_test
- Update edge and node smoke tests for new functionality
- Update dev-runtime-deploy SKILL, PHASE, SDD documents
- Archive G07 task files and update priority queue
- Update agent-test dev configs (edge-smoke, node-smoke, inventory)
2026-07-20 10:50:44 +09:00