Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Add `WebhookNotifier.SUPPORTED_EVENTS` and a `--strict` guard holding `webhook_schema.md`'s event table to the emission sites

Open
#918 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
55/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
markdown, python
Domain
backend, devtools

Research direction

Start with forgelm/webhook.py, where the event names must become a SUPPORTED_EVENTS frozenset, and with the eight-event table in docs/reference/webhook_schema.md (EN and TR). Use tools/check_audit_event_catalog.py as the pattern for the new tools/check_webhook_event_vocabulary.py --strict guard. Done when the guard fails on any mismatch between the docs and the emission sites, and the row at docs/roadmap/risks-and-decisions.md:264 is removed with its ID F-PR54-M10-followup in the CHANGELOG. Coordinate with #671 on the overlapping guard half.

Written by the indexing model from the issue text.

Description

area: integrations severity: low source: roadmap wave: 4

Deferred work · F-PR54-M10-followup · severity Low · cost ~2 h · recorded in docs/roadmap/risks-and-decisions.md:264

Summary

Phase 14.5 shipped docs/reference/webhook_schema.md but not its optional third sub-task: a SUPPORTED_EVENTS frozenset as the single source of webhook event names, plus tools/check_webhook_event_vocabulary.py --strict. The eight-event table (EN + TR) is held to forgelm/webhook.py by review alone.

Condition or budget

None (optional).

State today (re-checked 2026-10-09)

forgelm/webhook.py has no SUPPORTED_EVENTS, and the guard does not exist; check_audit_event_catalog.py checks the names only against the audit-event catalog.

Related

#671 (CR-A17a-029) asks the catalog guard to check webhook event literals separately — it overlaps the guard half only.

Acceptance criteria

  • SUPPORTED_EVENTS is the single source, and a --strict guard fails when webhook_schema.md (EN or TR) and the emission sites disagree.
  • The row is removed from the deferral table and the CHANGELOG names its ID (the table's removal contract).

Recorded in docs/roadmap/risks-and-decisions.md (read at f94595f) and re-checked against the code on 2026-10-09. The row leaves that table only when the fix is on main, the CHANGELOG names its ID and any promised guard exists.

Dominant language
Python
Stars
9
Forks
1
Avg merge
8h 10m
Merged PRs (30d)
5

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from HodeTech/ForgeLM

All issues in HodeTech/ForgeLM

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.