hub v0.115.0: host_* mails skip the quiet hour (ruling 2, R-529); ruling 1 recorded (CC may sign agent_update until the first paying customer)
gates / gates (push) Successful in 23s
gates / gates (push) Successful in 23s
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -401,12 +401,18 @@ func cooldownStackSuffix(eventType, detailsJSON string) string {
|
||||
// suppressed because F8's `node_stale` had used the hour 39 minutes earlier; the `node_recovered`
|
||||
// mail was suppressed the same way. "The box is down" must not wait out a quiet hour. A 5-minute
|
||||
// dedupe stays, so a flapping link cannot mail every sweep. The key is unchanged (customer:type), and
|
||||
// a customer has one box, so the dedupe is per host. host_* (agent-plane) siblings are NOT in the
|
||||
// ruling and keep the hour.
|
||||
// a customer has one box, so the dedupe is per host. EXTENDED 2026-09-16 (ruling 2, R-529) to the
|
||||
// agent-plane siblings host_stale / host_down / host_recovered — same box, same sentence.
|
||||
var nodeLivenessEvents = map[string]bool{
|
||||
"node_stale": true,
|
||||
"node_down": true,
|
||||
"node_recovered": true,
|
||||
// OPERATOR RULING 2026-09-16 (ruling 2, hub v0.115.0): the HOST-plane siblings join it. They are
|
||||
// the same sentence about the same box — the agent's dead-man's-switch rather than the
|
||||
// controller's — and R-529 was filed precisely because the 2026-09-15 ruling named only node_*.
|
||||
"host_stale": true,
|
||||
"host_down": true,
|
||||
"host_recovered": true,
|
||||
}
|
||||
|
||||
const (
|
||||
|
||||
Reference in New Issue
Block a user