 9bdcbe0447
			
		
	
	9bdcbe0447
	
	
	
		
			
			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>
		
			
				
	
	
		
			31 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| package linking
 | |
| 
 | |
| import (
 | |
| 	"fmt"
 | |
| 
 | |
| 	"github.com/ipld/go-ipld-prime/datamodel"
 | |
| )
 | |
| 
 | |
| // ErrLinkingSetup is returned by methods on LinkSystem when some part of the system is not set up correctly,
 | |
| // or when one of the components refuses to handle a Link or LinkPrototype given.
 | |
| // (It is not yielded for errors from the storage nor codec systems once they've started; those errors rise without interference.)
 | |
| type ErrLinkingSetup struct {
 | |
| 	Detail string // Perhaps an enum here as well, which states which internal function was to blame?
 | |
| 	Cause  error
 | |
| }
 | |
| 
 | |
| func (e ErrLinkingSetup) Error() string { return fmt.Sprintf("%s: %v", e.Detail, e.Cause) }
 | |
| func (e ErrLinkingSetup) Unwrap() error { return e.Cause }
 | |
| 
 | |
| // ErrHashMismatch is the error returned when loading data and verifying its hash
 | |
| // and finding that the loaded data doesn't re-hash to the expected value.
 | |
| // It is typically seen returned by functions like LinkSystem.Load or LinkSystem.Fill.
 | |
| type ErrHashMismatch struct {
 | |
| 	Actual   datamodel.Link
 | |
| 	Expected datamodel.Link
 | |
| }
 | |
| 
 | |
| func (e ErrHashMismatch) Error() string {
 | |
| 	return fmt.Sprintf("hash mismatch!  %v (actual) != %v (expected)", e.Actual, e.Expected)
 | |
| }
 |