## ADDED Requirements ### Requirement: Summarizer can request project association The summarizer SHALL expose `request_project_association` accepting an existing project ID and a nonempty single-line reason of at most 100 characters. Invalid requests SHALL be refused without a notification or file changes. The tool SHALL show a native notification identifying the meeting and project, explaining the association request and reason, with Yes/No actions. Tool completion and further summarizer work SHALL wait for the decision for up to ten minutes. No, expiration, notification unavailability, or canceled summarization SHALL NOT add the project. Expiration SHALL remove the notification, invalidate late activation, and return denial. Once a stopped run has reached summarization, the recording stop-processing deadline SHALL return control while summary processing continues in the background. It SHALL NOT cancel a summary awaiting approval or queue an already-transcribed recording for offline replay. On Yes, the tool SHALL append the canonical project ID to the latest meeting-note projects frontmatter without duplicates, preserving other fields and body. Project tools SHALL immediately honor the updated scope, and the result SHALL report approval with project metadata and the root AGENTS.md content when present. No unapproved AGENTS.md content SHALL be returned. Already associated projects SHALL return their current context without prompting. #### Scenario: Approval extends scope during the same summary - **GIVEN** a catalog project is not associated with the meeting - **WHEN** the summarizer requests association and the user chooses Yes - **THEN** the meeting note gains that project and the same agent can read/write it - **AND** the result includes its AGENTS.md if present #### Scenario: Denial or timeout preserves scope - **WHEN** the user chooses No or ten minutes elapse - **THEN** the waiting tool reports denial, the notification disappears, and scope and meeting note remain unchanged #### Scenario: User edits note during approval - **WHEN** the user changes other meeting frontmatter or notes while an association request waits - **AND** then approves the project - **THEN** the project is added without losing those edits #### Scenario: Invalid or stale request cannot grant access - **WHEN** the ID is unknown, reason exceeds 100 characters, the target disappears, or summarization is canceled - **THEN** the request cannot expand project access #### Scenario: Stop wait expires while summary approval is pending - **GIVEN** transcription has completed and summarization is waiting for a user decision - **WHEN** the recording stop-processing timeout expires - **THEN** stopping returns with summarization still active - **AND** the summary continues with its own approval deadline without an offline transcription backlog item ### Requirement: Summarizer can request workflow changes without editing workflows The summarizer SHALL expose `request_workflow_change` accepting a nonempty single-line intention of at most 100 characters and a nonempty detailed change prompt, preferably a scenario or specification. The tool SHALL return requested without waiting for approval, and the summarizer SHALL continue normally without direct workflow-editing capabilities. A native notification SHALL show `Workflow change requested: ...` with the intention and Yes/No actions. The detailed prompt SHALL be retained by the application independently of summary completion. No or ten-minute expiration SHALL discard the request without opening the editor or changing workflows. Late activation SHALL have no effect. Yes SHALL open a new settings-agent conversation and immediately submit the full detailed prompt once. An existing open conversation or draft SHALL remain intact. Application shutdown SHALL cancel and remove pending notifications. #### Scenario: Workflow request does not block the summary - **WHEN** the agent requests a workflow change - **THEN** the tool returns requested while approval remains pending - **AND** the summary can complete without opening the settings agent #### Scenario: Approved workflow request starts settings agent - **GIVEN** the summary run has completed and its workflow request is pending - **WHEN** the user chooses Yes - **THEN** the settings-agent window opens and starts the detailed prompt exactly once #### Scenario: Denied or expired workflow request does nothing - **WHEN** the user declines or ignores a workflow request for ten minutes - **THEN** its notification disappears and no editor or workflow change is started