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>
This commit is contained in:
anthonyrawlins
2025-09-06 07:56:26 +10:00
parent 543ab216f9
commit 9bdcbe0447
4730 changed files with 1480093 additions and 1916 deletions

View File

@@ -1,6 +1,6 @@
// Package crypto provides Age encryption implementation for role-based content security in BZZZ.
// Package crypto provides Age encryption implementation for role-based content security in CHORUS.
//
// This package implements the cryptographic foundation for BZZZ Phase 2B, enabling:
// This package implements the cryptographic foundation for CHORUS Phase 2B, enabling:
// - Role-based content encryption using Age (https://age-encryption.org)
// - Hierarchical access control based on agent authority levels
// - Multi-recipient encryption for shared content
@@ -36,13 +36,13 @@ import (
"strings"
"filippo.io/age" // Modern, secure encryption library
"chorus.services/bzzz/pkg/config"
"chorus/pkg/config"
)
// AgeCrypto handles Age encryption for role-based content security.
//
// This is the primary interface for encrypting and decrypting UCXL content
// based on BZZZ role hierarchies. It provides methods to:
// based on CHORUS role hierarchies. It provides methods to:
// - Encrypt content for specific roles or multiple roles
// - Decrypt content using the current agent's role key
// - Validate Age key formats and generate new key pairs
@@ -55,13 +55,13 @@ import (
//
// Thread Safety: AgeCrypto is safe for concurrent use across goroutines.
type AgeCrypto struct {
config *config.Config // BZZZ configuration containing role definitions
config *config.Config // CHORUS configuration containing role definitions
}
// NewAgeCrypto creates a new Age crypto handler for role-based encryption.
//
// Parameters:
// cfg: BZZZ configuration containing role definitions and agent settings
// cfg: CHORUS configuration containing role definitions and agent settings
//
// Returns:
// *AgeCrypto: Configured crypto handler ready for encryption/decryption
@@ -81,7 +81,7 @@ func NewAgeCrypto(cfg *config.Config) *AgeCrypto {
// GenerateAgeKeyPair generates a new Age X25519 key pair for role-based encryption.
//
// This function creates cryptographically secure Age key pairs suitable for
// role-based content encryption. Each role in BZZZ should have its own key pair
// role-based content encryption. Each role in CHORUS should have its own key pair
// to enable proper access control and content segmentation.
//
// Returns: