refactor(proxy): add semantic stringers

Keep WorkersByPass as a compatibility alias while introducing predictable String methods for public enums.

Co-Authored-By: Virgil <virgil@lethean.io>
This commit is contained in:
Virgil 2026-04-04 17:35:33 +00:00
parent d2d737764f
commit b65bb76ac5
2 changed files with 54 additions and 4 deletions

View file

@ -86,9 +86,10 @@ type WorkersMode string
const (
WorkersByRigID WorkersMode = "rig-id" // rigid field, fallback to user
WorkersByUser WorkersMode = "user"
WorkersByPass WorkersMode = "password"
WorkersByPassword WorkersMode = "password"
WorkersByAgent WorkersMode = "agent"
WorkersByIP WorkersMode = "ip"
WorkersDisabled WorkersMode = "false"
// WorkersByPass is kept as a compatibility alias for older configs.
WorkersByPass WorkersMode = WorkersByPassword
WorkersByAgent WorkersMode = "agent"
WorkersByIP WorkersMode = "ip"
WorkersDisabled WorkersMode = "false"
)

49
enum_string.go Normal file
View file

@ -0,0 +1,49 @@
package proxy
// String returns the stable name for one worker routing mode.
//
// mode := WorkersByRigID
// _ = mode.String()
func (mode WorkersMode) String() string {
return string(mode)
}
// String returns the stable name for one miner state.
//
// state := MinerStateReady
// _ = state.String()
func (state MinerState) String() string {
switch state {
case MinerStateWaitLogin:
return "wait_login"
case MinerStateWaitReady:
return "wait_ready"
case MinerStateReady:
return "ready"
case MinerStateClosing:
return "closing"
default:
return "unknown"
}
}
// String returns the stable name for one event type.
//
// eventType := EventAccept
// _ = eventType.String()
func (eventType EventType) String() string {
switch eventType {
case EventLogin:
return "login"
case EventSubmit:
return "submit"
case EventAccept:
return "accept"
case EventReject:
return "reject"
case EventClose:
return "close"
default:
return "unknown"
}
}