chore(openspec): archive talk-agent-sessions, fix 3 pre-existing spec-validation failures - #123
Merged
Conversation
All 8 tasks implemented, live-verified against spreed 24.0.1, e2e 4/4, merged in #121. Archiving folds the change's 9 requirements into the canonical specs. Verified nothing was silently dropped — `openspec archive` deletes requirements whose headers are not the canonical `### Requirement:` form, so the headers were checked first and the counts after: talk-agent-sessions new capability, 6 requirements talk-chat-bridge 12 before, 12 after — the MODIFIED requirement replaced the addressing rule's BODY in place rather than adding a second copy, which is the failure mode worth checking talk-room-grouping 4 -> 6 Also fixes three pre-existing strict-validation failures in `skill-install-idempotency`, which is another session's in-flight change. All three were the same parser rule this repo keeps hitting: openspec reads only the FIRST line of a requirement body when looking for a normative SHALL/MUST, so a requirement is rejected whenever a line-wrap has pushed the keyword onto line two. The requirements were already normative; only the first line needed to say so. `hermiq-seed-hydra-flows` still fails validation and is deliberately NOT fixed here: it has proposal.md and tasks.md but no specs/ directory at all, and its `specs` artifact is `ready` rather than `done` — it is mid-flight, not broken. Inventing spec deltas for another session's change would be worse than leaving it red. openspec validate --all --strict: 104 passed, 1 failed (was 103/2).
Contributor
Quality Report — ConductionNL/hermiq @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ✅ | ||||
| composer | ✅ | ✅ 117/117 | |||
| npm | ✅ | ✅ 657/657 | |||
| PHPUnit | ✅ | ||||
| Newman | ✅ | ||||
| Playwright | ⏭️ |
Coverage: 85.3% (93/109 statements)
Quality workflow — 2026-08-02 21:50 UTC
Download the full PDF report from the workflow artifacts.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Archives
talk-agent-sessionsnow that #121 has landed — all 8 tasks implemented, live-verified against spreed 24.0.1, e2e 4/4.Nothing was silently dropped
openspec archivedeletes requirements whose headers are not the canonical### Requirement:form, so headers were checked first and counts verified after:talk-agent-sessionstalk-chat-bridgetalk-room-groupingThe 12 → 12 is the one worth looking at: the
MODIFIEDrequirement replaced the addressing rule's body in place rather than adding a second copy under the same title, which is the failure mode this check exists for. The stored body is now the origin-based rule, including the "MUST NOT be inferred from the room's current participants or type" clause.Three pre-existing failures fixed
All in
skill-install-idempotency(another session's in-flight change), and all the same parser rule this repo keeps hitting: openspec reads only the FIRST line of a requirement body when looking for a normative SHALL/MUST, so a requirement is rejected whenever a line-wrap pushed the keyword onto line two. The requirements were already normative — only the first line needed to say so. No meaning changed.One failure deliberately left
hermiq-seed-hydra-flowsstill fails: it hasproposal.mdandtasks.mdbut nospecs/directory at all, and itsspecsartifact isreadyrather thandone. It is mid-flight (authored today in #111), not broken. Inventing spec deltas for another session's change would be worse than leaving it red — flagging it here instead so the next person can tell it apart from this archive.openspec validate --all --strict: 104 passed, 1 failed (was 103/2).🤖 Generated with Claude Code