feat(meetings): let the user edit an agent's minutes - #5740
Conversation
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: This PR has been inactive with failing CI. I've assessed the blockers and they appear resolvable — I'll push fixes directly to this branch as a co-author. Assessment: Two mechanical CI failures in the PR's own code: (1) Focus Cue Gate — the new minutes-edit If you'd prefer I don't touch this PR, add the |
f5a27f0 to
736d04c
Compare
736d04c to
35449be
Compare
First Principles Review (Fable 5, fork) — 🟡 CONCERNSPremise-level review of All verification checks are done. The base tree confirms: no pre-existing edit mechanism in the meetings app, First-Principles-Verdict: CONCERNS Every major item is derived and declared; only the DELETE response's What this change shipsIntent: let a user correct an agent's generated meeting minutes without losing the correction to the agent's next rewrite — an ADDITION.
Watch
Subtractions
[FIRST-PRINCIPLES-REVIEWED] 2fd420e |
Design Review (Fable 5, fork) — ✅ PASSDesign-level review of Design-Verdict: PASS Sidecar-with-precedence is the right shape for two writers of one document; the one real cost (edit freezes the view) is surfaced, not hidden. [DESIGN-REVIEWED] 2fd420e |
GPT 5.6 Review (fork) — ✅ no blocking findingsReviewed Review detailsNo findings. |
UX Review (Fable 5, fork) — 🟡 CONCERNSUX-level review of I have all the evidence I need — the full diff, the ConfirmDialog primitive, the Btn/ui siblings, and the locale catalogs. Emitting the review. UX-Verdict: CONCERNS The only way to see the agent's newer text is to permanently destroy your own edit — and the flow never says that loss is unrecoverable. Watch
Suggestions
[UX-REVIEWED] 2fd420e |
Opus 4.8 Review (fork) — ✅ no blocking findingsReviewed Review detailsI've read the instruction set, the untrusted candidate list, and the full diff (backend store/routes/security, docs, and frontend). Falsifying CANDIDATE 1 (stale edit resurfaces after markdown→html→markdown flip):
Dropped. Step 2: I checked the load-bearing pieces for a groundable self-finding — the No findings. [OPUS-REVIEWED] 2fd420e |
35449be to
3fc225c
Compare
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: disposition for span=4b2b2e3acf4c — fixed in
Verified legitimate — the regression test reproduced the exact 500 against the un-fixed route. Fix: |
33f087b to
bc92ea4
Compare
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: disposition for span=f6914c0df040 — fixed in
Verified legitimate: |
An agent's minutes were read-only, so one wrong line could only be fixed by regenerating the whole document, which discarded every other correction. Minutes are now editable in place, saved per agent, and revertible to what the agent produced. Co-authored-by: Kiro Crew <noreply@kirodotdev.github.io>
bc92ea4 to
2fd420e
Compare
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: disposition for span=53bfb3fec851 — fixed in
Verified legitimate: |
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: disposition for the UX Review 🟡 CONCERNS verdict on
Legitimate:
Legitimate; the chat toggle is guarded but Cancel/unmount are not. Deferred to #7116 (dirty-check Cancel through the already-imported The three suggestions (suppress |
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: disposition for the First Principles Review 🟡 CONCERNS verdict on
Legitimate:
Legitimate duplication note; both sites currently enforce the identical link-free invariant, so there is no behavioral gap today. Deferred to #7116 (route |
|
🤖 Kiro Crew [operator: NicholasRBowers#a942f9ca]: PR #5740 is review-ready at head
Ready for maintainer review. Auto-merge was not armed. |
Problem / Motivation
An agent's minutes were read-only. Correcting one name or number required regenerating the document and discarding every other user correction.
The agent must retain ownership of its generated file, so a user edit is stored separately and wins only when the minutes are read.
Why it matters
Minutes are the durable meeting artifact people keep and share. Correctable minutes must preserve both the agent's latest generated source and the user's intentional edits without allowing either writer to overwrite the other or cross the owner boundary.
What changed (motivation -> approach -> change)
data/edits/<meeting>/<agent>tree, separate from generated outputs.edits.updated_atresponse fields and their dangling client references.UI behavior
Security and ownership invariants
Tests
Backend:
Frontend:
Static and repository gates:
The slow-save regression test uses a controlled deferred promise. No retries, timing sleeps, enlarged acceptance timeouts, or warning filters were introduced.
Manual verification
Verified in the running dashboard: read-only state, editor, edited state, stale notice, and the Revert confirmation step after the visible Revert action.
Screenshots / video
Checklist
no linked issue: this feature was contributed directly without a tracking issue; no open or closed issue covers user-editable agent minutes (nearest, #6289, concerns meeting titles).