iop/agent-task/archive/2026/05/node_centralized_mgmt/complete.log
toki 690498453e 정리: 작업 로그 아카이브 구조를 정리한다
AI-first 작업 이력을 보존하면서 기본 작업 컨텍스트에서 과거 로그를 분리하기 위해 agent-task 완료 로그를 월별 archive로 이동하고 에이전트 진입/ignore 규칙을 추가한다.
2026-05-17 18:34:27 +09:00

29 lines
2 KiB
Text
Raw Permalink 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: 없음