docs(talk): address PR #741 reviewer nits
Comment-only follow-up to surface non-obvious behavior at the call sites flagged in review: - server/talk.py: note the `uuid.uuid4().hex` 32-char no-dashes format (spreed accepts either form). - models/talk.py: warn that spreed returns `lastReadMessage: 0` rather than `null` for unread rooms, so consumers should compare to ``None`` rather than rely on truthiness. - 10-install-spreed-app.sh: document that the `app:install || app:enable` fallback also masks unrelated install failures, and limit its use to dev fixtures. No runtime behavior changes; tests unchanged (still 13 unit + 7 integ). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.7
parent
b6eb7a6bb8
commit
8f92a7ea29
@@ -6,4 +6,9 @@ set -euox pipefail
|
||||
# app is not yet installed, so app:install pulls it. On rebuilds where the
|
||||
# volume already has it, app:install would fail, so fall through to
|
||||
# app:enable.
|
||||
#
|
||||
# Caveat: this `||` also masks unrelated install failures (network outage,
|
||||
# bad version pin, etc.) — they will fall through to app:enable, which
|
||||
# will then fail with a clearer "app not found" error. Acceptable for a
|
||||
# dev-fixture script; do not copy this pattern into production tooling.
|
||||
php /var/www/html/occ app:install spreed || php /var/www/html/occ app:enable spreed
|
||||
|
||||
@@ -58,6 +58,9 @@ class TalkConversation(BaseModel):
|
||||
unreadMessages: int = 0
|
||||
unreadMention: bool = False
|
||||
lastActivity: int | None = None
|
||||
# spreed returns `0` (not `null`) when the user has not read any
|
||||
# message in the room yet — compare to ``None`` explicitly rather
|
||||
# than relying on truthiness, since `0` is falsy but valid.
|
||||
lastReadMessage: int | None = None
|
||||
lastMessage: TalkMessage | None = None
|
||||
readOnly: int | None = None
|
||||
|
||||
@@ -188,6 +188,7 @@ def configure_talk_tools(mcp: FastMCP) -> None:
|
||||
token,
|
||||
message,
|
||||
reply_to=reply_to,
|
||||
# 32 hex chars, no dashes — spreed accepts either UUID format.
|
||||
reference_id=uuid.uuid4().hex,
|
||||
silent=silent,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user