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)
|
|
}
|