OXYGENHUB

Backlog: H20 done, webhook fixes from Andy's report (oxygenhub#6, #16, #17) d3a6a9b37d7e

Author
Andy McCall @andymccall <[email protected]>
When
· 2026-09-28 15:22 UTC
Signature
✔ signed by Andy McCall
Hash
d3a6a9b37d7e91ae0dc8168fceb7095202678eb68651cfb9ec69f486a861d376
Depends on
75036530b621 b3b9c2f3069c e4a9dc2948fc
Depended on by
17af6ca51f4f
In bookmarks
agents-in-readme bare-hashes carried-not-removed carry-identical doctor-trust identical-sides keyless-tags main merge-remote-bookmark only-help-103 paths-for-resolutions-and-amend push-notes show-stat subrepo-pin-state switch-says
In tags
v0.1.0 v0.10.0 v0.11.0 v0.2.0 v0.3.0 v0.3.1 v0.4.0 v0.4.1 v0.4.2 v0.4.3 v0.4.4 v0.4.5 v0.4.6 v0.5.0 v0.5.1 v0.6.0 v0.7.0 v0.8.0 v0.9.0
Edits
3 atoms, 0 tree operations, 1 file

Browse the tree at this change

modified docs/backlog-overnight-2.md +11 −1
…
29 unchanged lines
30 30
- [x] H18 `refs #N` in change messages appears on the issue's timeline (oxygenhub#4).
31 31
- [x] H19 Projects: boards of issues and proposals across an owner's repositories (oxygenhub#5).
32 32
- [ ] H21 Projects API: list, create, board, cards and columns over /api/v1 (oxygenhub#15).
33 -
- [ ] H20 Issue Markdown resolves against the default bookmark, not `main` (oxygenhub#6).
33 +
- [x] H20 Issue Markdown resolves against the default bookmark, not `main` (oxygenhub#6).
34 34
35 35
## VS Code (oxygen-vscode, oxygenhub-vscode)
36 36
…
161 unchanged lines
198 198
  - Migration 0015. Test `project_boards` plus reference parsing. Screenshot-checked on a scratch hub.
199 199
  - The screenshot tool now disables the browser cache (an earlier shot had served a stale style.css).
200 200
  - Gap found: no projects API → H21 (oxygenhub#15).
201 +
- 2026-09-28 H20 done (oxygenhub#6, closed by the change): relative links and images in issue, comment and proposal Markdown resolve against the repository's default bookmark; release notes resolve against the release's tag. Test `issue_markdown_follows_the_default_bookmark`.
202 +
- 2026-09-28 Webhooks, from Andy's report (oxygenhub#16 and #17, closed by the change):
203 +
  - **Why Discord got nothing.** Every delivery, ping included, was the OxygenHub envelope, which Discord rejects ("Cannot send an empty message").
204 +
  - **Formats.** Hooks now have a format: `oxygenhub`, `discord` (an embed with the event's summary; mentions disabled so user text cannot ping) or `slack`. It is picked from the URL; migration 0016 switched existing Discord and Slack hooks.
205 +
  - **Settings.**
206 +
    - The URL is masked (long path segments and query cut short, since chat webhooks keep a token there; the audit log records the same masked form) and wraps inside the panel.
207 +
    - The table shows the last delivery result.
208 +
    - Each hook has an edit form; a blank URL or secret keeps the current one.
209 +
  - **Also found.** Issues opened, commented on, closed or reopened in the web interface emitted no webhook events at all; now they do.
210 +
  - **Tests.** Unit tests for the formats and masking; end-to-end test `webhook_formats_editing_and_web_issue_events`. Hub spec §12.2.