feat: Enhance memory management and promotion rules for Mattermost context and user prompts

This commit is contained in:
2026-04-09 15:11:43 -06:00
parent 060f6dfc00
commit 22198a6c6f
11 changed files with 277 additions and 16 deletions

View File

@@ -63,12 +63,18 @@ When drafting messages for Jeff:
- Treat workspace files as persistent memory, not just reference notes
- Before answering prompts about current work, verify `ai/state/current.md` and the latest relevant log in `ai/logs/`
- If `ai/inbox/mattermost-latest.md` exists, check it before answering prompts about current status, standups, or supervisor communication
- Treat all meaningful user prompts as potential memory updates, not only explicit sync commands
- If a Mattermost sync or other context-ingestion step fails, do not update `ai/logs/`, `ai/state/`, or stable context files based on that failure
- Do not record missing dependencies, failed sync attempts, or missing inbox files as project facts unless the user explicitly asks to track the operational issue
- Treat `mattermost-sync` as inbox refresh only. Do not automatically promote synced content into project memory
- Promote Mattermost content only when it is clearly project-relevant, confirmed enough to keep, and the user explicitly asks to sync or promote project context
- Auto-promote Mattermost content when it is clearly project-relevant, explicit, and high-confidence
- Auto-promote direct user-provided project facts when they are clearly project-relevant, explicit, and useful for future sessions
- Default promotion target is today's log
- Promote to `ai/state/current.md` only when the fact changes the active work window
- Promote to `ai/context/project.md` only when the fact is durable beyond the current work window
- Update existing memory when the new information is a correction, clarification, or refinement of something already stored
- Prefer updating stable project context over appending generic operational summaries
- Do not create daily log entries for tooling activity, sync status, or generic chat noise
- Do not ask the user what should be promoted after a successful sync unless multiple conflicting interpretations are equally plausible
- When the user shares relevant new information, update today's log if the information belongs to the daily record
- When the user corrects or changes stable context, update the canonical file directly:
- `ai/state/current.md` for current focus or active concerns
@@ -86,7 +92,7 @@ For day-to-day prompts in this workspace:
1. Verify the latest relevant context.
2. Decide whether the prompt introduces new durable information.
3. Update the workspace when needed, but never from a failed sync or failed tool run, and never auto-promote Mattermost sync results.
3. Update the workspace when needed, whether the source is a normal prompt, a sync, or a drafting conversation, but never from a failed sync or failed tool run.
4. Then answer using the refreshed context.
---