# refactor\(orchestration\): split thread-not-sendable into typed errors · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commit/64e807c63cab4542953140efd618e0ee9af9a9e5)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: 64e807c63cab4542953140efd618e0ee9af9a9e5

Requested commit: 64e807c63cab4542953140efd618e0ee9af9a9e5

Commit: 64e807c63cab4542953140efd618e0ee9af9a9e5

Tree: 823ca14369d03d52e99c5cd73bca899846e54bd6

Author: Julius Marminge

Committer: Julius Marminge

## Message

```
refactor(orchestration): split thread-not-sendable into typed errors

Effect service conventions: ThreadManagementThreadNotSendableError
carried an Archived/NoSteerableRun reason union and switched on
reason._tag inside the message getter. Modelled as two error classes
(ThreadManagementThreadArchivedError, ThreadManagementNoSteerableRunError);
both still map to the MCP thread_not_sendable failure code.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

```

## Parents

- [d1acaf49f7034ed203ac8960dcb119bfebabdb24](https://git.cafe/pingdotgg/t3code/commit/d1acaf49f7034ed203ac8960dcb119bfebabdb24?format=markdown)

[Source at this commit](https://git.cafe/pingdotgg/t3code/tree/64e807c63cab4542953140efd618e0ee9af9a9e5?format=markdown)
