# Make attachment writes transactional and decode attachment URLs · flambo/t3code

[View on GitCafe](https://git.cafe/flambo/t3code/commit/fc6f4ac8a916ee0b11b1fb3d6b31ea89f0bfa977)

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

Visibility: public

Requested revision: fc6f4ac8a916ee0b11b1fb3d6b31ea89f0bfa977

Requested commit: fc6f4ac8a916ee0b11b1fb3d6b31ea89f0bfa977

Commit: fc6f4ac8a916ee0b11b1fb3d6b31ea89f0bfa977

Tree: dba7beec399ef8d2f284876627d54f5b90515ec6

Author: Julius Marminge

Committer: Julius Marminge

## Message

```
Make attachment writes transactional and decode attachment URLs

- Stage attachment file writes until projector transactions commit, then apply write/prune/delete side effects
- Remove orphaned attachment files on thread revert and delete thread attachment dirs on thread deletion
- Serve URL-encoded attachment paths in `wsServer` and stream file responses
- Add regression tests for rollback safety, revert/delete cleanup, and encoded attachment URLs

```

## Parents

- [9f56dd01937f008eb4b05508224bfda0aa29dbef](https://git.cafe/flambo/t3code/commit/9f56dd01937f008eb4b05508224bfda0aa29dbef?format=markdown)

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