MCPcopy Create free account
hub / github.com/ShipSecAI/studio / extractPayloadAndMetadata

Method extractPayloadAndMetadata

backend/src/trace/trace.service.ts:140–162  ·  view source on GitHub ↗
(rawData: unknown)

Source from the content-addressed store, hash-verified

138 }
139
140 private extractPayloadAndMetadata(rawData: unknown): {
141 payload?: Record<string, unknown>;
142 metadata?: TraceEventMetadata;
143 } {
144 if (!rawData || typeof rawData !== 'object' || Array.isArray(rawData)) {
145 return { payload: this.toRecord(rawData) };
146 }
147
148 const dataObject = rawData as Record<string, unknown>;
149 const hasPackedFields = '_payload' in dataObject || '_metadata' in dataObject;
150
151 if (!hasPackedFields) {
152 return { payload: this.toRecord(rawData) };
153 }
154
155 const payloadRaw = dataObject._payload as unknown;
156 const metadataRaw = dataObject._metadata as unknown;
157
158 const payload = this.toRecord(payloadRaw);
159 const metadata = this.parseMetadata(metadataRaw);
160
161 return { payload, metadata };
162 }
163
164 private toTraceError(error: unknown): TraceEventPayload['error'] {
165 if (!error) {

Callers 1

mapRecordToEventMethod · 0.95

Calls 2

toRecordMethod · 0.95
parseMetadataMethod · 0.95

Tested by

no test coverage detected