Skip to content

Fix/2446 - #488

Open
conradmugabe wants to merge 4 commits into
mainfrom
fix/2446
Open

Fix/2446#488
conradmugabe wants to merge 4 commits into
mainfrom
fix/2446

Conversation

@conradmugabe

Copy link
Copy Markdown
Contributor

Checklist

  • Tests were added/updated according to the feature/bugfix/change made
  • Version was rolled according to semver requirements
  • API endpoints openapi schema was updated if applicable

Changes

Screenshots

Screencast.from.2026-09-04.19-11-56.mp4

conradmugabe and others added 4 commits September 4, 2026 19:07
Pre-existing formatting drift that the pre-commit hook rewrites on every
commit (`pnpm prettier --write .` followed by `git add -u`). Landing it
on its own keeps it out of the feature commits that follow.

CHANGELOG bullets move from `*` to `-` because release-please writes `*`
while prettier normalises to `-`; the workflow change is comment spacing.
No behaviour change.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q3ezWYYgj7NWocMXXNtJ31
The chat-history endpoint returns `human_files` / `ai_files` on every
message, populated from the backend's `ChatFileSerializer` (`id`, `name`,
`file_size`, `content_type`, `uploaded_by`, `uploaded_at`, `metadata`,
`processing_error`, `url`). Nothing in the app read them.

Add a renderer that normalises one entry and shows images inline and
everything else as a file card, reusing `ImageMessage` and `FileCard`
from the chat message components so history matches chat.

`url` is a presigned S3 link with `X-Amz-Expires=3600`, so it must never
be cached or persisted — each page load re-fetches a fresh signature, and
`ImageMessage`'s existing broken-image fallback covers an expired one.

The generated API client does not model these fields (`ChatHistoryItem`
is only `{ type, content, timestamp }`), so the entry type is
hand-written and tolerant of the plausible key spellings until the
OpenAPI spec catches up.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q3ezWYYgj7NWocMXXNtJ31
Conversation history showed only the text of each turn, so a message
whose input was a file — or a file with little accompanying text — read
as though the user had sent nothing, while the agent's reply discussed
content the reader could not see.

Type `human_files` / `ai_files` on the message and render them under the
matching turn in both places history is shown: the desktop detail pane
and the mobile preview modal.

A turn can be an upload with no text at all, in which case the
attachment's filename is the only meaningful conversation title we have,
so fall back to it before the generic label.

Verified against live data: an image renders inline and a PDF renders as
a file card, both fetched from the presigned URL the API returns.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Q3ezWYYgj7NWocMXXNtJ31
@conradmugabe conradmugabe self-assigned this Sep 4, 2026
@conradmugabe conradmugabe added the run-tests Trigger PR validation pipeline label Sep 4, 2026
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

PR E2E - FAILED

Full report, traces and screenshots

result FAILED
central run 33902166760
commit 5b99dc0b
suite mentor - mode full - env stg1
tested against prod release 1.178.0 (env was synced to it first)
failed 2
new failures 1

@conradmugabe conradmugabe added run-tests Trigger PR validation pipeline and removed run-tests Trigger PR validation pipeline labels Sep 4, 2026
@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

PR E2E - FAILED

Full report, traces and screenshots

result FAILED
central run 33911702443
commit 5b99dc0b
suite mentor - mode full - env stg1
tested against prod release 1.178.0 (env was synced to it first)
failed 23
new failures 22

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run-tests Trigger PR validation pipeline

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant