{"repo":"NousResearch/hermes-agent","public_id":"10206","display_label":"Top-level platform config keys not reaching adapter extra","summary":"Members describe platform settings in config.yaml, such as webhook port or api_server host/port/key, being ignored when placed directly under the platform instead of under `extra`. Most are proposed fixes that forward or merge those top-level keys into `config.extra`, alongside one or two bug reports of the behavior.","subsystem":"gateway","counts":{"members":9,"open_issues":0,"open_issues_distinct":0,"open_prs":1,"closed_issues":2,"merged_prs":1,"attempt_prs":6},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":109173,"merged_at":"2026-09-12T15:42:58+00:00"},"resolution":{"state":"resolved","by":"pr-109173"},"freshness":{"state":"verified","last_verified_at":"2026-09-12T15:42:58+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.26},"fix_edges":[{"issue_number":10206,"pr_number":109173,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-12T15:42:58+00:00"},{"issue_number":20501,"pr_number":109173,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-09-12T15:42:58+00:00"}],"members":[{"kind":"issue","number":10206,"title":"[Bug]: platforms.webhook.port in config.yaml does not work","url":null,"state":"closed"},{"kind":"issue","number":20501,"title":"platforms.api_server config values (port, host, key) silently ignored when not nested under 'extra'","url":null,"state":"closed"},{"kind":"pr","number":10211,"title":"fix(config): forward unknown platform keys into config.extra","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#10453","number":10453}],"category":"duplicate_of","implication":"duplicate"},"merged":false},{"kind":"pr","number":10219,"title":"fix(gateway): pass unknown platform config keys to extra","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#10453","number":10453}],"category":"duplicate_of","implication":"duplicate"},"merged":false},{"kind":"pr","number":10453,"title":"fix(gateway): preserve top-level platform config keys","url":null,"state":"closed","close_reason":{"category":"volume_quota","implication":"active"},"merged":false},{"kind":"pr","number":20506,"title":"fix(gateway/config): merge top-level platform keys into extra (#20501)","url":null,"state":"open","close_reason":{"refs":[{"kind":"pr","value":"#10453","number":10453},{"kind":"pr","value":"#10208","number":10208},{"kind":"pr","value":"#10206","number":10206},{"kind":"pr","value":"#20501","number":20501}],"category":"duplicate_of","implication":"duplicate"},"merged":false},{"kind":"pr","number":20528,"title":"fix: read top-level api_server config fields into extra","url":null,"state":"closed","close_reason":{"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":21114,"title":"fix(gateway): honor top-level platform config extras","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#20506","number":20506},{"kind":"pr","value":"#10453","number":10453}],"category":"duplicate_of","implication":"duplicate"},"merged":false},{"kind":"pr","number":109173,"title":"Top-level platform keys like platforms.webhook.port reach the adapter (#10206, #20501)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["gateway/config.py","gateway/config_loader.py","tests/gateway/test_config.py","website/docs/user-guide/messaging/webhooks.md"]}],"trust":{"default_tier":"verified","includes_suggested":false}}