## MODIFIED Requirements ### Requirement: Workflow rules and speaker identities can be edited through a tray-launched assistant Meeting Assistant SHALL expose an `Edit rules and identities` item from the tray icon menu. When the user selects `Edit rules and identities`, Meeting Assistant SHALL open a basic MewUI chat window for editing the configured workflow rules file and speaker identities. The rules and identities editor agent SHALL include the workflow engine documentation in its system prompt and SHALL receive read, write, and search tools scoped to the configured workflow rules file. The rules editor `write_rules` tool SHALL append to the configured workflow rules file by default and SHALL validate the complete resulting YAML document before writing it. The rules editor `write_rules` tool SHALL replace the whole configured workflow rules file only when `replace_file` is true. The rules editor `write_rules` tool SHALL refuse invalid YAML without changing the configured workflow rules file. #### Scenario: Rules editor is scoped to the configured rules file - **GIVEN** a configured workflow rules file - **WHEN** the rules editor agent runs - **THEN** its read, write, and search tools can access only that configured workflow rules file - **AND** its system prompt includes the workflow engine documentation #### Scenario: Rules editor appends by default - **GIVEN** a configured workflow rules file with existing valid rules - **WHEN** the rules editor writes an additional valid rule without `replace_file` - **THEN** Meeting Assistant appends the new rule - **AND** preserves the existing rules #### Scenario: Rules editor replaces only when requested - **GIVEN** a configured workflow rules file with existing rules - **WHEN** the rules editor writes valid YAML with `replace_file` set to true - **THEN** Meeting Assistant replaces the complete rules file with the supplied YAML #### Scenario: Rules editor refuses invalid YAML - **GIVEN** a configured workflow rules file with valid existing rules - **WHEN** the rules editor writes YAML that would make the file invalid - **THEN** Meeting Assistant refuses the write - **AND** keeps the existing rules file unchanged