{name:"no response is not cable down",runtime:&domain.PortRuntime{CRProbeEnabled:true,CRProbeEverUp:true,CRProbeState:serial.CRProbeStateNoResponse},want:"unknown"},
{name:"no response after confirmed up",runtime:&domain.PortRuntime{CRProbeEnabled:true,CRProbeEverUp:true,CRProbeState:serial.CRProbeStateNoResponse},want:"down"},
**릴리스 20260921-snmp-diagnostics-1 · Linux ARM64 · 192.168.0.223 배포 완료**
**릴리스 20260921-port-down-1 · Linux ARM64 · 192.168.0.223 배포 완료**
2026-09-21 추가 수정: 최초 연결 미확인 상태는 UNKNOWN으로 유지하고, UP 확인 이후 응답이 끊기면 15초 유예 후 DOWN으로 판정합니다. 응답이 복구되면 UP으로 돌아옵니다. API 상태와 링크 이벤트가 같은 판정을 사용하며 웹에서는 DOWN을 빨간색으로 표시합니다. serial/logruntime/API 패키지 테스트와 JavaScript 문법 검사를 통과했습니다. 배포 API·웹 해시 및 integration.js 일치를 확인했습니다. 이번 검증에서 실제 케이블을 분리하지는 않았습니다. 이번 릴리스 커밋에는 DOWN 판정 관련 소스·회귀 테스트를 함께 포함하며, 이전 배포분의 나머지 소스 수정은 작업 트리에 남아 있습니다.
2026-09-21: SNMP v3 사용자 이름의 대소문자를 유지하도록 API를 수정했습니다. PC에서 v3 GET과 SHA-1/AES Trap 수신을 확인했습니다. Trap 시험에는 PC에서 장비 `192.168.0.223`의 UDP 2162 수신을 허용해야 합니다. 진단도구 상단의 초록색 `C:\>`와 `CMD` 표기를 제거하고 본문 프롬프트를 `$`로 변경했습니다. API·웹 배포 해시와 서비스 준비 상태 12/12, 배포된 integration.js/i18n.js/style.css 원문 일치를 확인했습니다. 관련 SNMP 회귀 테스트와 JavaScript 문법 검사를 통과했습니다.
"changes":"Built from the working tree based on base_commit, including pending shared-session, tab, log UI, SNMP username case and diagnostics prompt changes. This release commit packages binaries and metadata only; working-tree source changes are not included."
"changes":"Working-tree build based on 6ed3580 with earlier deployed changes and the port DOWN fix. This release includes the DOWN classification source and regression tests; other earlier working-tree source changes remain outside this commit."
"verified":"API and web installed SHA256 verified on device; readiness 12/12. Served integration.js, i18n.js and style.css match local source. SNMP v3 GET and Trap reception confirmed.",
"verified":"Installed API and web SHA256 verified, service readiness 12/12, served integration.js matches source.",
"browser":"Local Edge: port selector aliases, truncation/hover/accessibility, one-tab navigation, checkboxes and responsive layout; ASCII/HEX display with lowercase values passed.",
"live":"ARM64 tests executed on the target: WebSocket plus Unix gateway attachments, same-number operation 1/2 SSH+Telnet, SSH+SSH and Telnet+Telnet over test listeners with a simulated UART all passed. Deployed API, sessiond and web hashes, shared socket and readiness verified.",
"limitations":"No PuTTY GUI or simultaneous clients through both physical Ethernet networks acceptance test; integration tests use loopback listeners and a simulated UART. No cable-unplug or power-cycle test.",
"latest":"SNMP mock-store and controller regression tests passed; 17 workspace/tab tests passed; diagnostics JavaScript syntax checks passed. User confirmed SNMP v3 GET and authenticated encrypted Trap reception on PC. Trap reception required a PC firewall exception for device UDP 2162."
"latest":"serial, logruntime and API package tests passed; UNKNOWN -> UP -> DOWN -> UP regression passed with 15-second grace. JavaScript syntax passed. Physical cable unplug not performed for this release."
},
"changes":[
"After confirmed UP, sustained CR response loss becomes DOWN after 15 seconds; never-confirmed ports remain UNKNOWN; applies to API and link events",
"Preserve SNMPv3 username case through storage and runtime application",
"Remove green C-drive prompt and CMD label from diagnostics; use dollar prompts",
"Alt-click inactive tab close retains the selected tab; Alt-click selected tab close retains the leftmost tab",