feat: enhance Mattermost mirror structure with channels, by-date, and thread directories for improved organization and analysis
This commit is contained in:
@@ -52,15 +52,27 @@ ai/inbox/mattermost-mirror/
|
||||
latest.jsonl # bounded AI-readable window
|
||||
latest.md # bounded Markdown view
|
||||
state.json # last seen by channel and user cache
|
||||
index.json # date/channel file map
|
||||
messages/YYYY/MM/YYYY-MM-DD.jsonl
|
||||
index.json # date/channel/thread file map
|
||||
refs/
|
||||
channels.json # channel_id -> channel_name
|
||||
users.json # user_id -> username
|
||||
channels/<channel-name>/YYYY/MM/YYYY-MM-DD.jsonl
|
||||
by-date/YYYY/MM/YYYY-MM-DD.jsonl
|
||||
threads/<root-or-post-id>.jsonl
|
||||
raw/YYYY/MM/YYYY-MM-DD-websocket.jsonl # only if MATTERMOST_MIRROR_WRITE_RAW=1
|
||||
raw/YYYY/MM/YYYY-MM-DD-rest-flows.jsonl # only if MATTERMOST_MIRROR_WRITE_RAW=1
|
||||
```
|
||||
|
||||
Use `latest.md` or `latest.jsonl` for quick AI context. Use date-rotated `messages/...` files for previous-workday or channel/date-specific analysis.
|
||||
Use `latest.md` or `latest.jsonl` for quick AI context. Use `channels/...`
|
||||
for conversation-focused analysis, `by-date/...` for standups or daily review,
|
||||
and `threads/...` when a single discussion thread is the relevant evidence.
|
||||
This mirrors Slack's export pattern of one folder per conversation with one file
|
||||
per date, while adding Mattermost-specific thread views.
|
||||
|
||||
The mirror writes any post payload it sees, including older messages returned when the desktop app loads channel history or a thread. It dedupes by `post_id`, so scrolling back through useful history is a safe way to backfill missing local evidence without creating repeated entries.
|
||||
The mirror writes any post payload it sees, including older messages returned
|
||||
when the desktop app loads channel history or a thread. It dedupes by `post_id`,
|
||||
so scrolling back through useful history is a safe way to backfill missing local
|
||||
evidence without creating repeated entries.
|
||||
|
||||
## Normalized message schema
|
||||
|
||||
@@ -128,5 +140,6 @@ history, or wait for/send a new message. Then check:
|
||||
|
||||
```text
|
||||
ai/inbox/mattermost-mirror/latest.md
|
||||
ai/inbox/mattermost-mirror/messages/YYYY/MM/YYYY-MM-DD.jsonl
|
||||
ai/inbox/mattermost-mirror/channels/<channel-name>/YYYY/MM/YYYY-MM-DD.jsonl
|
||||
ai/inbox/mattermost-mirror/by-date/YYYY/MM/YYYY-MM-DD.jsonl
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user