Files
anthonyrawlins 9bdcbe0447 Integrate BACKBEAT SDK and resolve KACHING license validation
Major integrations and fixes:
- Added BACKBEAT SDK integration for P2P operation timing
- Implemented beat-aware status tracking for distributed operations
- Added Docker secrets support for secure license management
- Resolved KACHING license validation via HTTPS/TLS
- Updated docker-compose configuration for clean stack deployment
- Disabled rollback policies to prevent deployment failures
- Added license credential storage (CHORUS-DEV-MULTI-001)

Technical improvements:
- BACKBEAT P2P operation tracking with phase management
- Enhanced configuration system with file-based secrets
- Improved error handling for license validation
- Clean separation of KACHING and CHORUS deployment stacks

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-06 07:56:26 +10:00

35 lines
633 B
Go

package yamux
import "time"
type ping struct {
id uint32
// written to by the session on ping response
pingResponse chan struct{}
// closed by the Ping call that sent the ping when done.
done chan struct{}
// result set before done is closed.
err error
duration time.Duration
}
func newPing(id uint32) *ping {
return &ping{
id: id,
pingResponse: make(chan struct{}, 1),
done: make(chan struct{}),
}
}
func (p *ping) finish(val time.Duration, err error) {
p.err = err
p.duration = val
close(p.done)
}
func (p *ping) wait() (time.Duration, error) {
<-p.done
return p.duration, p.err
}