Commit graph

62 commits

Author SHA1 Message Date
b7fc808a56 fix(config): provider admission을 transport 상한과 분리한다 2026-08-13 23:12:33 +09:00
e5869a53ae fix(edge): provider 호출 정규화 계층을 추가한다
caller별 예외 대신 요청 의미와 protocol profile capability로 operation을 선택해 tools와 effort 조합을 보존한다. 지원하지 않는 effort는 가장 가까운 하위 등급으로만 내리고 상향 매핑은 거부한다.
2026-08-13 23:06:50 +09:00
721960fec7 fix(runtime): provider stall 재시도를 단일 종료로 제한한다 2026-08-13 20:39:10 +09:00
1ed718cadc fix(single_request): 명시된 null 템플릿 경로를 생략과 구분한다
`plan_file: null`과 `review_file: ~`은 YAML에 실제로 존재하는 키인데
mapstructure가 present nil을 생략과 같은 nil pointer로 접어버려, 승인 경계가
빈 문자열과 공백만 거부하고 null 형태는 조용히 built-in default로 떨어뜨렸다.
Viper가 돌려주는 raw preset 구조에는 두 키가 nil 값으로 남아 있으므로, strict
decode 전에 그 presence를 검사해 필드 경로와 함께 거부하고 실제로 없는 키만
fallback 신호로 남긴다.

두 필드와 두 가지 YAML null 표기를 모두 회귀로 고정하고, 기존 빈/공백, 생략,
상대 경로, clone 독립성, refresh redaction 근거는 그대로 유지한다.

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:35:53 +09:00
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
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
af35296aaa feat(runtime): provider liveness 복구를 dev에 병합한다 2026-08-06 08:56:24 +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
c8e98d4e10 refactor(runtime): promote provider-only execution boundary 2026-08-02 20:28:45 +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
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
04879f2b43 feat(openai): 실제 provider별 사용량 귀속을 기록한다
요청 종료 계수와 실제 provider 시도 사용량을 분리하고, 직접·pool·retry 경로의 attribution을 보존한다. 관련 계약·스펙과 완료된 task archive 정리도 함께 반영한다.
2026-07-31 20:22: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
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
cc6e71db79 feat(proto,config): runtime ready handshake proto 스키마 및 재연결 설정
- NodeReadyRequest/Response: 노드→엣지 연결 준비 확인 핸드셰이크 추가
- ReconnectConf: interval_sec, max_attempts 명시적 설정 지원
- node_config_test: 재연결 설정 로드 검증
2026-07-22 18:11:12 +09:00
2f560e3f3b feat: provider pool admission, policy config, snapshot source task archive + runtime updates
- Archive completed subtask plans/code reviews (04, 05+03,04, 07+03)
- Add provider_pool_admission_test.go
- Update edge config types, load, catalog validation
- Update runtime, config refresh, service layers for admission
- Update test docs and inventory
- Update provider scheduling, resolution, tunnel, status modules
2026-07-19 22:41:05 +09:00
1378a7fc27 refactor: readability baseline 및 리팩토링 (에지/노드/클라이언트/설정) 2026-07-18 07:39:38 +09:00
01dc2ef78b refactor: readability baseline 및 테스트 구조 개선
- agent-readable-repository-refactor 완료: 기존 테스트 파일 아카이브 이동
- 새 테스트 파일 추가 (edge, node, client, config, readability)
- readability_audit 스크립트 및 baseline 추가
- roadmap/SDD 문서 갱신
- agent-client/pi/extensions/openai-sampling-parameters 추가
2026-07-17 16:02:12 +09:00
5368926822 feat(observability): compose 관측 구성을 추가한다 2026-07-13 12:14:34 +09:00
aeec784c7b feat: 라우팅 정책 모델 오케스트레이션 진행 및 provider config 반영
- seulgivibe OpenAI-compatible provider 완료 후 archive로 이동
- 모델 그룹 혼합 제공자 디스패치 milestone 진행
- agent-spec: OpenAI-compatible surface, provider pool config refresh 갱신
- Go: mapper.go/config.go provider config 매핑 개선
- agent-task: 새 subtask plan/code-review 문서 추가
2026-07-11 14:27:24 +09:00
b38f978652 feat: update edge config runtime refresh, openai compatible provider, and mapper 2026-07-11 09:48:54 +09:00
c836f1e562 feat: update edge config, usage docs, tests, and roadmap 2026-07-11 04:47:11 +09:00
0bfcb0f189 feat: usage metrics - identity metering, usage token logging, and runtime proto 2026-07-10 17:54:23 +09:00
cc87db264b feat: sync edge module validation and E2E script updates
- Add mock resource activation for G06 review followup alignment
- Expand edgevalidate tests and refactor validation logic
- Update node mapper with improved handling
- Add integration and server test fixes
- Update Go config with new options
- Fix E2E scripts (cli-workspace, lemonade, ollama, vllm)
2026-07-07 04:38:31 +09:00
toki
ca5eb4685c fix(edge): provider-pool thinking과 queue 정책을 정리한다
vLLM-MLX provider-pool에서 strict output이 thinking을 끄지 않도록 하고, queue_timeout_ms=0을 IOP queue timeout 없음으로 해석해야 한다. long reasoning/long-context 요청은 IOP queue timeout이 아니라 caller cancellation과 backend timeout 정책으로 제어한다.
2026-07-06 10:16:43 +09:00
b2754b871f feat: long context admission support - refactor edge server, add input estimator 2026-07-05 19:26:06 +09:00
26e2301116 feat: long context admission support for model group 2026-07-05 15:44:54 +09:00
77ab36cbd1 feat: edge config refresh and OpenAI handlers update
- Add config refresh classification and test coverage
- Update OpenAI chat/responses/stream handlers with config refresh support
- Add comprehensive server tests for config refresh
- Update local dev guide with config refresh information
- Extend config package with ConfigRefresh field
2026-07-04 09:33:00 +09:00
c0d2748361 feat(edge): model queue priority routing with runtime config refresh
- Add classify.go/classify_test.go for config-based priority routing
- Add model_queue.go/test with priority queue support
- Update run_dispatch.go to use priority routing
- Add edge.yaml config for model priority settings
- Add config.go/config_test.go for priority config parsing
- Remove G06 priority routing plan/review (merged into main flow)
- Add archive for m-node-provider-first-config-surface task
2026-07-01 21:07:29 +09:00
f8d4e12e43 feat: routing status refresh and config validation updates 2026-06-30 09:47:34 +09:00
745cca3ef0 feat: config validation and roadmap updates
- Add validate_test.go for edge validation
- Update config.go and config_test.go with new config handling
- Update roadmap and SDD documents for operational observability provider management
- Update edge node mapper and config tests
- Add inflight accounting recovery task and archive
2026-06-30 08:01:50 +09:00
e30fb2494e feat(edge): node resource model unification - update phase/SDD docs and edge service
- Move node-resource-model-unification milestone and SDD to archive
- Update PHASE.md for operational-observability-provider-management
- Refactor edge node registration and model queue logic
- Add status provider tests for model queue validation
- Update edge config and Go config structs
2026-06-29 14:39:27 +09:00
7112edfeef feat: edge runtime bridge contract & validation, automation phase milestone 2026-06-28 07:23:29 +09:00
912e900244 feat(runtime): workspace_root 제거와 tool 호환을 반영한다
Node store/workspace 위치를 Edge가 내려주는 runtime payload에서 분리한다. Chat Completions tool 요청은 내부 실행에서 tool_choice=none으로 낮춰 downstream 자동 tool 호출 요구로 실패하지 않게 맞춘다.
2026-06-27 11:32:45 +09:00
395c0b4708 update: edge/node config and openapi contract changes 2026-06-24 22:03:09 +09:00
445716cc3e feat(edge): runtime config refresh mechanism implementation
- Add configrefresh package for config classification, request handling
- Add bootstrap refresh_admin.go for admin-level config refresh
- Add edgevalidate package for config validation
- Update edge bootstrap runtime with refresh capabilities
- Update edge service layer with config refresh integration
- Update openai layer routes/chat_handler/server for config refresh
- Update edgecmd config handling with refresh support
- Update input manager, transport server, status provider
- Add edge.yaml config updates and go/config package changes
- Add hostsetup templates and test updates
- Update roadmap and phase documentation for runtime-reconnect-config-refresh
2026-06-21 21:35:50 +09:00
ff161b9b12 feat: runtime reconnect config refresh milestone completion
- Add runtime-reconnect-config-refresh milestone and SDD
- Archive m-runtime-reconnect-config-refresh task with full logs
- Update edge/node domain rules, bootstrap, transport sessions
- Update config package and node.yaml configuration
- Update documentation and ROADMAP/PHASE files
2026-06-21 16:14:16 +09:00
69efa4ea3f feat: provider catalog device status implementation
- Add provider catalog and device status management for edge nodes
- Update edge config and model queue services
- Add status provider tests
- Update proto definitions for runtime
- Add agent-task for m-provider-catalog-device-status
2026-06-20 08:54:18 +09:00
dd5352c6e9 update vllm provider validation roadmap, clean up config contract artifacts, update edge mapper test and config 2026-06-17 22:35:25 +09:00
957700c2d6 feat: model route queue policy alignment phase added and edge service updates
- Add model-route-queue-policy-alignment milestone to inference provider extension phase
- Add SDD documentation for inference provider extension
- Update edge chat/responses handlers for OpenAI compatible API
- Update edge config with new queue policy settings
- Add config tests for queue policy support
- Update task tracking for model route queue policy alignment
2026-06-16 22:30:36 +09:00
76a8ee5b3b feat: lemonade provider serving validation - config contract and edge node mapping updates
- Migrate config contract files to archive (01_config_contract)
- Update edge config.go for new configuration structure
- Refactor node/mapper.go and mapper_test.go for field mapping
- Update node/store_test.go tests
- Add new fields to configs/edge.yaml
- Extend packages/go/config with new configuration options
- Update protobuf definitions in runtime.proto and generated code
2026-06-15 11:01:21 +09:00