Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions docs/merge-requests-layer3-rfc.md
Original file line number Diff line number Diff line change
Expand Up @@ -376,8 +376,9 @@ New `tests/test_merge_request_client.py`, using `pytest_httpx` like `tests/test_
- **JSON encoding** — the second-most-likely mistake, since the surrounding file does the
opposite: assert `Content-Type: application/json`, real nested JSON (not strings), JSON
numbers for `version` / `branchFromId` / `branchIntoId`, `true`/`false` booleans.
- **Presence detection** — `create` / `update` omit unset optionals; `rebase_config` sends
`is_disabled=False` but omits `is_disabled=None`; `rows=[]` is sent, not treated as absent.
- **Presence detection** — `create` / `update` omit unset optionals; `rebase_config` always
sends the replaced body (`name` / `rows` / `configuration` / `isDisabled`) and omits only
`description=None` and an unset `change_description`; `rows=[]` is sent, not treated as absent.
- **The `diff` envelope** — `version` at the top level, every content field inside `diff`,
nothing content-like at the top level. Pin explicitly: a regression to the flat pre-envelope
body would not fail loudly in a round-trip test, it would just build the wrong request.
Expand Down