Skip to content

fix(android): retain compacted history with bounded transcript reads - #759

Merged
Codename-11 merged 6 commits into
devfrom
fix/android-compacted-history-709-review
Oct 19, 2026
Merged

Codename-11 merged 6 commits into
devfrom
fix/android-compacted-history-709-review

Conversation

@Codename-11

@Codename-11 Codename-11 commented Oct 19, 2026 •

Copy link
Copy Markdown
Owner

Summary

Retain compaction-archived messages when reopening Android conversations. Carries @ophirhan's #709 onto current dev, preserving its commits and the OOM mitigation from #720.

Changes

  • Request include_compacted=true on Dashboard and explicit API-server transcript reads.
  • Verify complete/latest query parameters and the 50,000-message cap. Keep 500-row pages and the existing decoded-payload bound.
  • Align the Gateway fixture's expected contract list with the resume/activation scenario added by fix(android): avoid duplicate Gateway history and pause OOM restore #720. Document the separation between HTTP display history and Gateway omit_messages.

Verification

  • Final candidate d88380c includes dev c184c84. The focused sideload run at application/test head 57b9a44 passed 396 tests, with no failures or skips, including Gateway/OOM, HTTP history, the landed voice observer, and PCM writer/policy regressions.
  • Gateway fixture suite: 39 tests passed after correcting its stale expectation. The original assertion also mismatched the manifest on dev.
  • initial_history_bind source conformance passed against clean upstream cc6b1f299bd3a7c0309f003d97dc32014e71fa80. Both upstream HTTP handlers explicitly accept include_compacted and cap pages at 500.
  • Localized docs and diff checks passed. Subsequent commits add the Dashboard/API/pagination regressions to required CI and both-flavor on-demand selections; all four pre-push wrapper tests and a selection consistency check passed.
  • Required checks and exact-head Android all-final passed on d88380c: both-flavor focused tests, full lint, both debug assemblies, and release bundles/APKs with package compatibility checks. Physical-device behavior remains unverified.

Screenshots

No layout change. No device or emulator verification claimed.

Compatibility / risk

No server patch, Relay dependency, version change, or history deletion. Gateway omit_messages and post-OOM reopening protection remain intact. The existing transcript limits do not guarantee that every device can render every allowed history.

Lineage / contributor credit

Checklist

  • Target branch is dev, unless this is a dev → main release PR or a focused production-tag hotfix PR to main
  • Scope is focused and related issues/PRs are linked
  • Android changes: lint and focused tests ran, or rationale is listed above
  • Translation changes: locale validation/review ran, or N/A is listed above
  • Server/plugin changes: focused tests ran, or N/A/rationale is listed above
  • Desktop changes: build/tests ran, or N/A/rationale is listed above
  • Docs/site changes: build or link/route checks ran, or N/A/rationale is listed above
  • UI changes were tested on a relevant device/emulator/desktop surface, or the missing proof is stated above
  • Commit messages follow Conventional Commits
  • CHANGELOG.md is updated for user-visible changes, or N/A is listed above
  • Public writing hygiene checked: no secrets, private infrastructure, personal names, or AI/process narration
  • Salvaged/replacement work links source PRs and preserves contributor authorship, or N/A is listed above

ophirhan and others added 6 commits October 19, 2026 19:58
Hermes in-place compaction archives older turns under the same session.
Without include_compacted=true, reopen only showed the summary and short
active tail. Always pass the flag on Dashboard and Hermes API message
pagination so scrollback matches stored display history.
Preserve compacted history on both HTTP transports without restoring redundant Gateway history. Cover complete and latest request parameters and the transcript message cap; align the fixture expectation with its resume/activation manifest.
@Codename-11
Codename-11 merged commit c459d77 into dev Oct 19, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants