Aias00 opened a new issue, #7718: URL: https://github.com/apache/shenyu/issues/7718
## Goal Let Admin distinguish a recently reporting gateway from one ready to serve traffic. Current [instance status handling](https://github.com/apache/shenyu/blob/66d7d954ca37d651a5ad916f988a8081157a7ab4/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/InstanceCheckService.java#L122) derives ONLINE from heartbeat arrival/age. It does not report startup completion, readiness reason or draining status. The gateway already has an opt-in [WebSocket initial-sync readiness indicator](https://github.com/apache/shenyu/blob/66d7d954ca37d651a5ad916f988a8081157a7ab4/shenyu-spring-boot-starter/shenyu-spring-boot-starter-sync-data-center/shenyu-spring-boot-starter-sync-data-websocket/src/main/java/org/apache/shenyu/springboot/starter/sync/data/websocket/WebsocketSyncHealthConfiguration.java#L58). Reuse established readiness semantics instead of inventing a second contradictory health check. ## Scope - Reuse existing status-reporting channels and define a backward-compatible, versioned optional status extension. - Report readiness independently of liveness, with observation time, a bounded reason code and supported capability indicators. Missing/old data means unknown, not ready. - Define stable deployment instance identity and per-start boot identity so reports from a prior process cannot overwrite the current observation. - Distinguish configuration channel connectivity from readiness and allow an explicit serving/draining state if supported by the runtime. - In Admin list/detail show liveness, readiness, last observation age and reason separately. Keep legacy numeric status compatible. ## Acceptance criteria - [ ] Initializing, ready, readiness-failed and stale observations are distinguishable while heartbeat stays healthy. - [ ] Reconcile with Actuator and initial synchronization behavior; do not claim that initial sync completion alone proves every dependency healthy. - [ ] Test legacy reporters, unknown fields, incompatible report versions, restart identity, out-of-order observations and namespace isolation. - [ ] Test two Admin nodes and failover against a documented authoritative status view. - [ ] Telemetry/reporting failure does not break gateway request processing; payload size/cadence and diagnostic content are bounded. - [ ] Coordinate dashboard changes, schema/API compatibility and documentation. Related: #7692/#7693/#7694/#7696/#7697 are existing status correctness fixes. #7652 adds local file mode: it should be able to report local startup readiness without falsely requiring Admin synchronization. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
