Skip to content

Commit 68a77dc

Browse files
chore(release): 0.4.31.1 — Slack #138 + #95 fixes (#177)
Python-only patch on 4.31.0 (UPSTREAM_PARITY unchanged). - Slack #138: empty-DM thread_ts fetch routes to conversations.history (PR #175) - Slack #95: thread team_id to chat.startStream for Enterprise Grid (PR #176) - docs: mark Linear agent-sessions mode experimental (unverified vs live tenant, #151) - version 0.4.31 -> 0.4.31.1; CHANGELOG; CLAUDE.md mapping
1 parent 707b657 commit 68a77dc

5 files changed

Lines changed: 17 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## 0.4.31.1
4+
5+
Python-only fixes on top of `4.31.0` (`UPSTREAM_PARITY` unchanged at `4.31.0`). Two Slack adapter bug fixes, both divergences ahead of upstream (which shares the same gaps), documented in `docs/UPSTREAM_SYNC.md`.
6+
7+
- **Slack: empty-DM `thread_ts` fetch routing** (#138). DM roots encode an empty `thread_ts` (`slack:Dxxx:`); the fetch paths (`fetch_messages`/`fetch_message`) called `conversations.replies(ts='')`, which returns no replies and loses the DM root context. They now route an empty `thread_ts` to the existing channel-history path (`conversations.history`) instead — covering DM messages and the #137 DM block-action consumer uniformly. The non-empty (real thread) path is byte-identical.
8+
- **Slack: `chat.startStream` `team_not_found` on Enterprise Grid** (#95). `chat.startStream` requires an explicit `team_id` for Grid orgs, but `stream()` started the stream without one (while non-streaming `chat.postMessage` worked). The streaming call now threads `team_id` (from the already-plumbed `recipient_team_id`, the per-workspace `T…` id) through to `chat.startStream`. Verified end-to-end against `slack_sdk` that the value reaches the `chat.startStream` API call; `append`/`stop` correctly do not need it. (Live Enterprise-Grid server-side acceptance is pending verification against a real Grid tenant.)
9+
- **Docs:** marked Linear `"agent-sessions"` mode **experimental** in `LinearAdapterConfig` — its emit/fetch GraphQL is schema-hardened but unverified against a live Linear agent-session tenant (#151).
10+
311
## 0.4.31
412

513
Synced to upstream `vercel/chat@4.31.0`. The mapped-core **test** files (`packages/chat/src/*.test.ts`) are byte-identical between the `chat@4.30.0` and `chat@4.31.0` tags, so the fidelity re-pin to `chat@4.31.0` is string-only (732/732 mapped-core tests still pass, 0 missing); the core **source** delta is the `LinkButton` stable-id field (below). The headline is the **Linear agent-sessions** mode, plus the **Teams SDK-free primitive subpaths**, the **Slack 4.31** changes, **Telegram rich messages**, and a Python-only opt-in **`ThinkingChunk`** stream type. Sets `UPSTREAM_PARITY = "4.31.0"`.

CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ Our version embeds the upstream Vercel Chat version: `0.{upstream_major}.{upstre
2929
- `0.4.29` = synced to upstream `4.29.0` (upstream never tagged 4.27/4.28 as `chat@*`)
3030
- `0.4.30` = synced to upstream `4.30.0`
3131
- `0.4.31` = synced to upstream `4.31.0`
32+
- `0.4.31.1` = Python-only fixes on top of `4.31.0` (Slack #138/#95)
3233
- `UPSTREAM_PARITY` constant in `__init__.py` = programmatic access
3334

3435
## Architecture

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
Multi-platform async chat SDK for Python. Port of [Vercel Chat](https://github.com/vercel/chat).
99

10-
> **Status: 0.4.31 — synced to [Vercel Chat 4.31.0](https://github.com/vercel/chat)** (`UPSTREAM_PARITY = "4.31.0"`). See [CHANGELOG.md](CHANGELOG.md).
10+
> **Status: 0.4.31.1 — synced to [Vercel Chat 4.31.0](https://github.com/vercel/chat)** (`UPSTREAM_PARITY = "4.31.0"`). See [CHANGELOG.md](CHANGELOG.md).
1111
1212
## Why chat-sdk?
1313

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "chat-sdk"
3-
version = "0.4.31"
3+
version = "0.4.31.1"
44
description = "Multi-platform async chat SDK for Python — port of Vercel Chat"
55
keywords = [
66
"chat",

src/chat_sdk/adapters/linear/types.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,12 @@ class LinearAdapterBaseConfig:
4646
# handling. Defaults to "comments". Use "agent-sessions" for app-actor
4747
# installs. Faithful port of upstream ``config.mode ?? "comments"``
4848
# (types.ts:67, index.ts:236).
49+
#
50+
# NOTE: ``"agent-sessions"`` mode is **experimental** in this port. The
51+
# agent-session emit/fetch paths are raw GraphQL that was schema-hardened
52+
# against Linear's published schema but has **not** been exercised against
53+
# a live Linear agent-session tenant (tracked in issue #151). The default
54+
# ``"comments"`` mode is unaffected.
4955
mode: LinearAdapterMode | None = None
5056
# Bot display name for @-mention detection.
5157
# Defaults to LINEAR_BOT_USERNAME env var or "linear-bot".

0 commit comments

Comments
 (0)