JuliusBrussee/caveman · error

ccr typed object currentness: %w

Error message

ccr typed object currentness: %w

What it means

Wrap in Store.SetObjectCurrentness: the UPDATE setting a typed object's currentness failed. The wrapped error is the SQLite failure; the id/currentness arguments may be fine while the store is locked or corrupt.

Source

Thrown at engine/ccr/store_sqlite.go:590

func (s *Store) GetObject(id string) (Object, error) {
	obj, err := scanObject(s.db.QueryRow(`SELECT `+objectColumns+` FROM typed_objects WHERE object_id = ?`, id))
	if errors.Is(err, sql.ErrNoRows) {
		return Object{}, ErrNotFound
	}
	if err != nil {
		return Object{}, fmt.Errorf("ccr typed object get: %w", err)
	}
	return obj, nil
}

func (s *Store) SetObjectCurrentness(id string, currentness Currentness) error {
	if err := validateCurrentness(currentness); err != nil {
		return err
	}
	result, err := s.db.Exec(`UPDATE typed_objects SET currentness = ? WHERE object_id = ?`, currentness, id)
	if err != nil {
		return fmt.Errorf("ccr typed object currentness: %w", err)
	}
	n, err := result.RowsAffected()
	if err != nil {
		return fmt.Errorf("ccr typed object currentness rows: %w", err)
	}
	if n == 0 {
		return ErrNotFound
	}
	return nil
}

func (s *Store) SetObjectLifecycle(id string, lifecycle Lifecycle) error {
	if err := validateLifecycle(lifecycle); err != nil {
		return err
	}
	result, err := s.db.Exec(`UPDATE typed_objects SET lifecycle = ? WHERE object_id = ?`, lifecycle, id)
	if err != nil {
		return fmt.Errorf("ccr typed object lifecycle: %w", err)

View on GitHub (pinned to 766dce6b13)

Solutions

  1. Check the wrapped driver error
  2. Retry the update after the lock clears
  3. Free storage budget if the disk is full
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at engine/ccr/store_sqlite.go:590 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of JuliusBrussee/caveman@766dce6b13 (2026-08-18). Data as JSON: /api/errors/7c56f9f4a5b9e8df. Report an issue: GitHub.