iop/agent-task/node_centralized_mgmt/complete.log
toki b4c6550eab feat: edge/node architecture updates and agent-task integration
- Add node store implementation for edge app
- Add adapters factory for node app
- Update edge and node transport layers
- Update domain rules for edge and node
- Add bin scripts for edge and node
- Update configs and documentation
- Add agent-task node_centralized_mgmt directory
2026-05-03 10:51:29 +09:00

29 lines
2 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

완료 일시: 2026-05-03
요약: Jenkins 스타일 노드 중앙 관리 구조 리팩토링 — plan×2, loop×2
루프 이력:
| plan | code_review | 판정 |
|------|-------------|------|
| plan_0.log | code_review_0.log | FAIL |
| plan_1.log | code_review_1.log | PASS |
최종 리뷰 요약:
- proto/iop/runtime.proto에 RegisterRequest, RegisterResponse, NodeConfigPayload, AdapterConfig, NodeRuntimeConfig 추가
- packages/config: NodeConfig를 transport+logging+metrics로 단순화, EdgeConfig에 Nodes []NodeDefinition 추가, TransportConf에 Token 추가
- configs/node.yaml: edge_addr+token+logging+metrics만 남김 / configs/edge.yaml: nodes 섹션 추가
- apps/edge/internal/node/store.go 신규: NodeStore(token/ID 기반 조회), LoadFromConfig(token·alias 중복 검사)
- apps/edge/internal/node/registry.go: NodeEntry에서 Adapters 제거, Alias 추가
- apps/edge/internal/transport/server.go: CapabilityRequest 핸드셰이크 → RegisterRequest/Response 핸드셰이크, buildConfigPayload(오류 반환형), stringsToAny, 중복 접속 차단
- apps/edge/internal/bootstrap/module.go: NodeStore provider 추가, OnStart에서 config 기반 시드
- apps/node/internal/transport/session.go: Handler에서 OnCapabilityRequest 제거, SetHandler(mutex) 추가
- apps/node/internal/transport/parser.go: CapabilityRequest 제거, RegisterResponse 추가
- apps/node/internal/transport/client.go: DialEdge → RegisterResult 반환형으로 전면 재작성
- apps/node/internal/node/node.go: New()에서 *config.NodeConfig → nodeID string, OnCapabilityRequest 삭제
- apps/node/internal/adapters/factory.go 신규: BuildFromPayload(proto payload → Registry 동적 초기화)
- apps/node/internal/bootstrap/module.go: OnStart 내부 순차 초기화(dial→config수신→adapter빌드→node생성→handler설정), storeDSN, OnStop에서 store.Close()
- 테스트: edge/node integration test 갱신, factory_test, store_test, server_test(CLIArgsRoundtrip) 신규
잔여 Nit: 없음