<hero-logs-viewer> renders against a different LogLine schema than hero_proc returns #10

Closed
opened 2026-05-23 16:14:53 +00:00 by mik-tf · 0 comments
Owner

After fw#7 landed (the component now talks to hero_proc directly via /hero_proc/rpc), live verify on a hero_assistance admin dashboard shows the Logs tab populates the source column correctly but leaves timestamp and message empty. Cause is a field-name mismatch between the two ends. hero_proc logs.filter returns rows shaped {line, src, stream, timestamp_ms} but renders against l.ts, l.content, l.src, l.loglevel, l.error, l.tags. Only src lines up. The component JSDoc says "Schema: matches hero_proc LogLine" which suggests this is component drift rather than hero_proc drift, but either end could move. Two viable fix shapes: (a) adjust the viewer to read l.line / l.timestamp_ms and synthesize loglevel from the row prefix (logs-viewer.js around lines 270-290 and 297-301); (b) ask hero_proc to return the documented LogLine shape with ts and content alongside or instead of line and timestamp_ms. The component-side fix is smaller and self-contained.

After fw#7 landed (the component now talks to hero_proc directly via /hero_proc/rpc), live verify on a hero_assistance admin dashboard shows the Logs tab populates the source column correctly but leaves timestamp and message empty. Cause is a field-name mismatch between the two ends. hero_proc logs.filter returns rows shaped {line, src, stream, timestamp_ms} but <hero-logs-viewer> renders against l.ts, l.content, l.src, l.loglevel, l.error, l.tags. Only src lines up. The component JSDoc says "Schema: matches hero_proc LogLine" which suggests this is component drift rather than hero_proc drift, but either end could move. Two viable fix shapes: (a) adjust the viewer to read l.line / l.timestamp_ms and synthesize loglevel from the row prefix (logs-viewer.js around lines 270-290 and 297-301); (b) ask hero_proc to return the documented LogLine shape with ts and content alongside or instead of line and timestamp_ms. The component-side fix is smaller and self-contained.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_website_framework#10
No description provided.