feat(ingestion): wire attributes through ingestion pipeline into PostgreSQL (Task 3)

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>
This commit is contained in:
hsiegeln
2026-03-26 18:23:38 +01:00
parent 64f797bd96
commit ca5250c134
2 changed files with 19 additions and 11 deletions

View File

@@ -106,7 +106,8 @@ public class IngestionService {
exec.getErrorMessage(), exec.getErrorStackTrace(),
diagramHash,
exec.getEngineLevel(),
inputBody, outputBody, inputHeaders, outputHeaders
inputBody, outputBody, inputHeaders, outputHeaders,
null // attributes: populated once cameleer3-common exposes getAttributes()
);
}
@@ -126,7 +127,8 @@ public class IngestionService {
p.getDurationMs(),
p.getErrorMessage(), p.getErrorStackTrace(),
truncateBody(p.getInputBody()), truncateBody(p.getOutputBody()),
toJson(p.getInputHeaders()), toJson(p.getOutputHeaders())
toJson(p.getInputHeaders()), toJson(p.getOutputHeaders()),
null // attributes: populated once cameleer3-common exposes getAttributes()
));
if (p.getChildren() != null) {
flat.addAll(flattenProcessors(