Add past project meeting summary tools
PR and Push Build/Test / build-and-test (push) Failing after 10m56s

This commit is contained in:
2026-05-29 10:30:48 +02:00
parent 9d2153484a
commit 626640e26b
16 changed files with 695 additions and 109 deletions
@@ -14,8 +14,16 @@ The summary agent SHALL expose these project tools:
- `list_projectfiles`
- `read_projectfile`
- `write_projectfile`
- `list_past_project_meetings`
- `read_past_project_meeting_summary`
- `search`
The `search` tool SHALL search the requested current-meeting project scope, or all projects assigned to the current meeting when no project scope is supplied.
The `search` tool SHALL search both configured project files for the scoped projects and past meeting summary notes in the configured summaries folder whose frontmatter projects intersect the scoped projects.
The `search` tool SHALL refuse requested project scopes that are not assigned to the current meeting.
#### Scenario: Agent looks up meeting project context
- **WHEN** a meeting note identifies a project
- **THEN** the agent can retrieve relevant project context through Meeting Assistant tools
@@ -32,6 +40,17 @@ The summary agent SHALL expose these project tools:
- **WHEN** the agent calls `search` with ripgrep syntax keywords
- **THEN** Meeting Assistant runs the search against the requested projects or the meeting-bound projects and returns matches as `filename:line text`
#### Scenario: Agent searches past project meeting summaries
- **GIVEN** the current meeting note is assigned to `Project X`
- **AND** a prior summary note in the configured summaries folder is assigned to `Project X`
- **WHEN** the summary agent searches for a keyword
- **THEN** Meeting Assistant returns matches from both `Project X` project files and matching past summary notes
#### Scenario: Agent search rejects out-of-scope project
- **GIVEN** the current meeting note is assigned to `Project X`
- **WHEN** the summary agent searches with project scope `Project Z`
- **THEN** Meeting Assistant refuses the request because `Project Z` is not assigned to the current meeting
### Requirement: Agents can write files in existing projects
Meeting Assistant SHALL expose a `write_projectfile` tool that can create or update files inside an existing project folder.
+34
View File
@@ -42,10 +42,24 @@ The summary pipeline SHALL expose tools scoped to the current meeting:
- `list_projectfiles`
- `read_projectfile`
- `write_projectfile`
- `list_past_project_meetings`
- `read_past_project_meeting_summary`
- `search`
All summary-agent read tools that return file-like content SHALL support either reading the whole file or reading a clamped inclusive 1-based line range when `from` and `to` are supplied.
The summary agent SHALL be able to list paginated past meeting summary notes for projects assigned to the current meeting.
The past meeting summary listing SHALL read summary notes from the configured summaries folder only.
When no project filter is supplied to the past meeting summary listing, Meeting Assistant SHALL include past summaries assigned to any project assigned to the current meeting.
When a project filter is supplied to the past meeting summary listing, Meeting Assistant SHALL include only past summaries assigned to those requested projects and SHALL refuse requested projects not assigned to the current meeting.
The summary agent SHALL be able to read past project meeting summary files through a read-only tool. Meeting Assistant SHALL refuse reads for summary files outside the configured summaries folder, the current summary file, or summary files that do not belong to one of the current meeting's assigned projects.
The summary instructions SHALL clearly distinguish `write_summary`, which writes the current meeting's summary, from past meeting summary read tools, which are read-only historical context.
The summary pipeline SHALL write the summary note as a markdown artifact linked to the meeting note, transcript, and assistant context.
The summary instructions SHALL tell the summary agent to include only the most relevant cropped screenshot links from assistant context in the summary, placing them near the related summary text.
@@ -196,6 +210,26 @@ When `delete_identity` is called with an existing transcript speaker identity, M
- **THEN** Meeting Assistant rewrites the transcript speaker label to `Removed-1`
- **AND** records the deletion for final speaker identity processing
#### Scenario: Past project meetings are listed by current meeting project scope
- **GIVEN** the current meeting note is assigned to `Project X` and `Project Y`
- **AND** the summaries folder contains prior summary notes for `Project X`, `Project Y`, and `Project Z`
- **WHEN** the summary agent lists past project meetings without a project filter
- **THEN** Meeting Assistant returns prior summaries for `Project X` and `Project Y`
- **AND** excludes prior summaries for `Project Z`
- **AND** excludes the current meeting's summary file
#### Scenario: Past project meeting listing rejects out-of-scope projects
- **GIVEN** the current meeting note is assigned to `Project X`
- **WHEN** the summary agent lists past project meetings for `Project Z`
- **THEN** Meeting Assistant refuses the request because `Project Z` is not assigned to the current meeting
#### Scenario: Past project meeting summary is read-only historical context
- **GIVEN** the current meeting note is assigned to `Project X`
- **AND** a prior summary note in the configured summaries folder is assigned to `Project X`
- **WHEN** the summary agent reads that prior summary note with line bounds
- **THEN** Meeting Assistant returns the clamped inclusive line range
- **AND** exposes no tool to write that prior summary note
### Requirement: Meeting screenshots are captured into assistant context
Meeting Assistant SHALL expose a configurable screenshot hotkey.