[TT-4023] Track 404 logs not showing in listening port when changing control api port #7976
+7
−4
probelabs / Visor: architecture
failed
Apr 9, 2026 in 1m 8s
🚨 Check Failed
architecture check failed because fail_if condition was met.
Details
📊 Summary
- Total Issues: 2
- Error Issues: 2
🔍 Failure Condition Results
Failed Conditions
- global_fail_if: output.issues && output.issues.some(i => i.severity === 'critical' || i.severity === 'error')
- Severity: ❌ error
Issues by Category
Architecture (1)
- ❌ gateway/server.go:2293 - A new local
proxyMuxinstance is created here. This is architecturally inconsistent as theGatewayhas a main instance (gw.proxyMux) that should be used. This local instance is not fully initialized (e.g., theagainfield is missing compared to the instance inNewGateway) and any state set on it (like theproxiesmap populated bysetRouter) is discarded when the function exits. Adding thetrack404Logsconfiguration here fixes the immediate bug but reinforces this flawed pattern of using temporary, partially-configured service objects.
Logic (1)
- ❌ system:0 - Global failure condition met: output.issues && output.issues.some(i => i.severity === 'critical' || i.severity === 'error')
Powered by Visor from Probelabs
💡 TIP: You can chat with Visor using /visor ask <your question>
Annotations
Check failure on line 2295 in gateway/server.go
probelabs / Visor: architecture
architecture Issue
A new local `proxyMux` instance is created here. This is architecturally inconsistent as the `Gateway` has a main instance (`gw.proxyMux`) that should be used. This local instance is not fully initialized (e.g., the `again` field is missing compared to the instance in `NewGateway`) and any state set on it (like the `proxies` map populated by `setRouter`) is discarded when the function exits. Adding the `track404Logs` configuration here fixes the immediate bug but reinforces this flawed pattern of using temporary, partially-configured service objects.
Raw output
Refactor this function to use the gateway's shared `proxyMux` instance (`gw.proxyMux`) instead of creating a new local one. This would eliminate the need for the change in this function, as `gw.proxyMux` is already correctly configured in `NewGateway` by this pull request.
Loading