Public Access
83 lines
5.4 KiB
Markdown
83 lines
5.4 KiB
Markdown
## MODIFIED Requirements
|
|
### Requirement: Meeting Assistant generates meeting outputs
|
|
Meeting Assistant SHALL generate a summary, decisions, and next steps from the meeting transcript, metadata, user notes, and assistant-discovered context.
|
|
|
|
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`
|
|
- `search`
|
|
|
|
The summary instructions SHALL tell the summary agent to use transcript evidence and screenshot OCR participant evidence to refine the meeting note attendee list conservatively, adding or removing attendees only when the evidence is clear.
|
|
|
|
The summary instructions SHALL tell the summary agent to call `override_speaker` only when it is very certain that a transcript speaker label belongs to a named speaker, such as from user notes, OCR with a correlating meeting timestamp, or very clear context cues.
|
|
|
|
When `override_speaker` is called with an existing transcript speaker label and a replacement speaker name, Meeting Assistant SHALL rewrite that speaker label in the transcript and record the override for final speaker identity processing.
|
|
|
|
When `override_speaker` is called without merge enabled and the transcript already contains the replacement speaker name as a speaker label, Meeting Assistant SHALL refuse the override. When merge is enabled, Meeting Assistant SHALL allow the override, rewrite the source speaker label to the replacement speaker name, and record the override as a speaker merge for final speaker identity processing.
|
|
|
|
The summary instructions SHALL tell the summary agent to call `delete_identity` only when it is certain that an existing speaker identity was wrongfully matched.
|
|
|
|
When `delete_identity` is called with an existing transcript speaker identity, Meeting Assistant SHALL rewrite transcript speaker labels for that identity to `Removed-<n>` and record the deletion for final speaker identity processing.
|
|
|
|
#### Scenario: Summary agent refines attendees from clear participant evidence
|
|
- **GIVEN** assistant context OCR states that visible meeting participants are complete
|
|
- **AND** the OCR result names a participant missing from the meeting note
|
|
- **WHEN** the summary pipeline runs
|
|
- **THEN** the summary agent can add that attendee to the meeting note through `add_attendee`
|
|
|
|
#### Scenario: Summary agent does not over-trim partial participant evidence
|
|
- **GIVEN** assistant context OCR states that visible meeting participants are only a partial result
|
|
- **WHEN** the summary pipeline runs
|
|
- **THEN** the summary instructions tell the agent not to remove attendees solely because they are absent from that partial screenshot evidence
|
|
|
|
#### Scenario: Summary agent overrides a certain speaker label
|
|
- **GIVEN** the transcript contains speaker label `Guest-01`
|
|
- **AND** user notes or OCR evidence clearly identifies that speaker as `Sabrina`
|
|
- **WHEN** the summary agent calls `override_speaker` with `Guest-01` and `Sabrina`
|
|
- **THEN** Meeting Assistant rewrites the transcript speaker label to `Sabrina`
|
|
- **AND** records the override for final speaker identity processing
|
|
|
|
#### Scenario: Summary agent cannot accidentally merge speakers
|
|
- **GIVEN** the transcript contains speaker labels `Guest-01` and `Sabrina`
|
|
- **WHEN** the summary agent calls `override_speaker` with `Guest-01` and `Sabrina` without merge enabled
|
|
- **THEN** Meeting Assistant refuses the override
|
|
- **AND** keeps the transcript unchanged
|
|
|
|
#### Scenario: Summary agent explicitly merges speakers
|
|
- **GIVEN** the transcript contains speaker labels `Guest-01` and `Sabrina`
|
|
- **AND** user notes or OCR evidence clearly proves they are the same person
|
|
- **WHEN** the summary agent calls `override_speaker` with `Guest-01`, `Sabrina`, and merge enabled
|
|
- **THEN** Meeting Assistant rewrites `Guest-01` transcript speaker labels to `Sabrina`
|
|
- **AND** records the override as a merge for final speaker identity processing
|
|
|
|
#### Scenario: Summary agent deletes a wrong speaker identity
|
|
- **GIVEN** the transcript contains speaker identity `Sabrina`
|
|
- **AND** user notes or OCR evidence clearly proves that `Sabrina` was wrongfully matched
|
|
- **WHEN** the summary agent calls `delete_identity` with `Sabrina`
|
|
- **THEN** Meeting Assistant rewrites the transcript speaker label to `Removed-1`
|
|
- **AND** records the deletion for final speaker identity processing
|
|
|
|
### Requirement: Meeting screenshots are captured into assistant context
|
|
Meeting Assistant SHALL expose a configurable screenshot hotkey.
|
|
|
|
The default OCR prompt SHALL explain that the image is from a meeting and ask the model to identify who is talking, who is presenting, what is presented, capture slide text in markdown, convert diagrams to Mermaid when possible, indicate whether visible people are clearly the exact meeting participants or only a partial result, return crop coordinates only for confidently isolated presentation/shared-screen content, and otherwise describe the scene.
|
|
|
|
#### Scenario: OCR reports whether visible people are complete or partial
|
|
- **WHEN** Meeting Assistant uses the built-in screenshot OCR prompt
|
|
- **THEN** the prompt asks the model to state whether the screenshot clearly shows exactly who is in the meeting or only a partial participant result
|