Public Access
Add past project meeting summary tools
PR and Push Build/Test / build-and-test (push) Failing after 10m56s
PR and Push Build/Test / build-and-test (push) Failing after 10m56s
This commit is contained in:
+12
@@ -0,0 +1,12 @@
|
||||
## Why
|
||||
Summary agents need project-aware access to prior meeting summaries so current summaries can reuse past decisions and context without mutating historical summary notes.
|
||||
|
||||
## What Changes
|
||||
- Add read-only summary-agent tools to list paginated past meeting summaries scoped to the current meeting's projects.
|
||||
- Add a read-only tool to read a past project meeting summary with the same line-range behavior as other read tools.
|
||||
- Extend summary-agent search so project-scoped searches include both bound project files and past summary notes for the scoped projects.
|
||||
- Reject requested project scopes that are not assigned to the current meeting.
|
||||
|
||||
## Impact
|
||||
- Affected specs: `meeting-summary`, `agent-project-tools`
|
||||
- Affected code: summary tools, summary agent tool registration, summary agent instructions, README
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
## MODIFIED Requirements
|
||||
### Requirement: Agents can use project context tools
|
||||
The summary agent SHALL expose these project and retrieval tools:
|
||||
|
||||
- `list_projects`
|
||||
- `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 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
|
||||
+57
@@ -0,0 +1,57 @@
|
||||
## MODIFIED Requirements
|
||||
### Requirement: Meeting Assistant generates meeting outputs
|
||||
The summary pipeline SHALL expose tools scoped to the current meeting:
|
||||
|
||||
- `read_meetingnote`
|
||||
- `read_transcript`
|
||||
- `read_context`
|
||||
- `read_usernotes`
|
||||
- `read_glossary`
|
||||
- `add_dictation_word`
|
||||
- `add_attendee`
|
||||
- `remove_attendee`
|
||||
- `override_speaker`
|
||||
- `delete_identity`
|
||||
- `write_summary`
|
||||
- `write_context`
|
||||
- `list_projects`
|
||||
- `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.
|
||||
|
||||
#### 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
|
||||
@@ -0,0 +1,10 @@
|
||||
## Implementation
|
||||
- [x] Add behavior tests for listing scoped past project meeting summaries with pagination.
|
||||
- [x] Add behavior tests for rejecting out-of-scope project filters.
|
||||
- [x] Add behavior tests for reading scoped past summary files with line ranges.
|
||||
- [x] Add behavior tests for searching project files and scoped past summaries together.
|
||||
- [x] Implement read-only past project meeting summary tools.
|
||||
- [x] Extend generic search to include past project summaries.
|
||||
- [x] Register the new tools and update summary-agent instructions/docs.
|
||||
- [x] Run focused tests.
|
||||
- [x] Validate OpenSpec change.
|
||||
Reference in New Issue
Block a user