Skip to content

chore(preview): chat message fixes, push read routine, task_delete stage record - #187

Open
aaron-tsar wants to merge 4 commits into
previewfrom
chore/preview-batch-2026-09-22
Open

aaron-tsar wants to merge 4 commits into
previewfrom
chore/preview-batch-2026-09-22

Conversation

@aaron-tsar

Copy link
Copy Markdown
Contributor

Consolidates three open pull requests into one, each cherry-picked onto preview (replaces #177, #185, #186):

from change files
#186 fix(channel): channel_post_message (drumate variant) returned {SUCCESS:0} instead of the message row for a folder post on the owner's own desk — time_channel bump with a NULL peer. Guarded; the client now gets message_id and the attachment card loads. Rolled out to 450/450 stage drumate DBs on 2026-09-22. drumate/procedures/channel/channel_post_message.sql, changelog
#177 feat(push): channel_get_message — one workspace chat message by id for the mobile push banner (skips trashed). Applied on stage 2026-09-09 (1620 schemas). Adds the changelog entry the original PR lacked, so bin/update-manifest reproduces the manifest line. hub/procedures/channel/channel_get_message.sql, manifest, changelog
#185 chore(changelog): records the task_delete cascade deployment on stage (2026-09-21), no routine change. changelog

Manifest: the channel_get_message line is kept as #177 had it; regenerate with bin/update-manifest --start=2026-07-24 before a schema deploy as usual.

…anner

The mobile push worker now quotes the message a chat.post or channel.post
event is about, at delivery time, so the queue keeps carrying identifiers only.
Direct messages already had p2p_get_message on the sender's database; this is
its counterpart on the hub: one channel row by message_id, trashed rows
excluded so a deleted message is never quoted after the fact.

(cherry picked from commit 006ff85)
The routine has carried the cascade here since 569976f, but stage was still
running the parent-only version, so a task with subtasks left orphans behind.
Applied to all 1492 entity databases and the factory template caches, which
had to be rebuilt because a new workspace is cloned from them.

Also records that bin/patch.js on the stage host is older than this repository
and its common target silently skips every organization database.

(cherry picked from commit 00067a0)
… own desk

channel.post writes into the poster's own database when the desk folder chat
is used, and that database runs the drumate variant of channel_post_message.
Its non-hub branch is written for P2P: it ends by bumping time_channel with
the peer id, which channel.post never sends because a folder post has no
peer. The insert failed on the NOT NULL primary key after the channel row was
already written, and the EXIT HANDLER returned the error JSON in place of
the message row. The client keys its attachment fetch on the message_id in
that row, so the bubble stayed optimistic with no file card until a reload.

Skip the time_channel bump when there is no peer. The P2P path, which always
has one, is unchanged.

(cherry picked from commit b81ce57)
…h-2026-09-22

# Conflicts:
#	patches/changelog.txt
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