Skip to content

fix(tasks): preserve audit changes and paginate visible work - #18

Merged
mfethe1 merged 3 commits into
product/mainfrom
codex/buzz-task-integrity
Sep 14, 2026
Merged

mfethe1 merged 3 commits into
product/mainfrom
codex/buzz-task-integrity

Conversation

@mfethe1

@mfethe1 mfethe1 commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Summary

Task assignment, priority, and deadline changes currently lose their before/after values, and newer private tasks can hide accessible work from a limited task list. This change records each changed field in the same transaction as the task update, applies channel visibility before the database limit, and adds continuation cursors ordered by modification time and task ID. Retrying an unchanged patch leaves both history and the modification timestamp unchanged. Pagination remains live: a task modified between pages can move ahead of the cursor and requires a first-page refresh.

Migration 0047 adds structured task-event changes while preserving legacy rows. Deploy readers that understand the new action names before new writers; older relay binaries cannot read newly emitted action names.

Related issue

Builds on #10. Searched existing issues and PRs; no duplicate history/pagination fix found.

Testing

At head 8a35c1f14ae5f618ffbf416b1a6d1786e7b46f86, 126 database unit tests and a targeted 12-test isolated PostgreSQL CI lane passed (1,536 unrelated tests skipped), including desired-schema bootstrap and the 0046-to-0047 upgrade. A real signed HTTP flow exercised create, update, history, private-channel visibility, two-page retrieval, and retry behavior. Five targeted mutations were rejected.

Full just ci failed: 6,583 desktop JavaScript tests passed, then the mobile suite reported 2,241 passed and eight failed agent-activity golden comparisons. Those same eight comparisons failed at unchanged base adeec6eb5c4ff425aa03d8a744a295da4429f67f; all eight rendered actual PNGs were byte-identical between base and candidate. The rendering-platform explanation remains unconfirmed. This PR changes no mobile files or expected images. The broader just test launcher separately failed to start Docker Compose on Airy; the native database and HTTP lane ran independently.

Hosted runs for this head tested merge commit 39f3eb6651c91186f2d111d046add48a3cbb21a1. Image-cache writes failed, and the Windows Rust job reported 949 passed and 21 failed buzz-acp tests. Completed checks also report PostgreSQL, desktop smoke, and desktop integration failures. These gates remain failed on this PR; passing checks on separate repair PRs and green summary jobs do not qualify it for merge.

Signed-off-by: Michael Feth <mfethe1@gmail.com>
Signed-off-by: Michael Feth <mfethe1@gmail.com>
@coderabbitai

coderabbitai Bot commented Sep 7, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: e6459d3b-8caa-4aa2-a9e0-b29d0a1d67d6

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Trunk landed 0047_agent_machine_homes (AGENT-HOMES-001 PR-3) while this
branch carried its own 0047_task_event_changes, so both sides claimed
version 47. PR #30 already owns 0048_community_brand_color, so this takes
0049. sqlx::migrate! globs migrations/ by filename, so renaming the file
is the whole renumber. Inventory assertions pin 47 migrations, 46/47/49.
@mfethe1
mfethe1 force-pushed the codex/buzz-task-integrity branch from eaeba42 to 76c9c66 Compare September 12, 2026 02:53
mfethe1 added a commit that referenced this pull request Sep 12, 2026
Trunk landed 0047_agent_machine_homes while this branch carried its own
0047_task_optimistic_concurrency. PR #30 owns 0048 and PR #18 owns 0049,
so this takes 0050 (matching the numbering PR #27 already expects).
sqlx::migrate! globs migrations/ by filename, so the rename is the whole
renumber. Inventory now pins 47 migrations with 50 last.
@mfethe1
mfethe1 marked this pull request as ready for review September 14, 2026 02:30
@mfethe1
mfethe1 merged commit 3937548 into product/main Sep 14, 2026
108 of 134 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.

1 participant