IngestionService passes attributes (currently null, pending cameleer3-common update) to ExecutionRecord and ProcessorRecord. PostgresExecutionStore includes the attributes column in INSERT and ON CONFLICT UPDATE (with COALESCE), and reads it back in both row mappers. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>