Commit ff65290
authored
Documentation follow-up from the #652 investigation (retro outcome).
Three additions to `internal/web/AGENTS.md`, each a fact that cost real
debugging time because it lived only in test comments and PR text:
- The "CSRF errors" pointer now names the actual failure class: a
persistent 403 "CSRF token validation failed" means the POST carries no
`csrf_token`; JS-built forms read the session token from `data-csrf` on
`main[data-bulk-scope]`, server-rendered forms embed a hidden input.
- The test-infrastructure section states that `setupFullTestApp`
registers routes without the CSRF middleware — the exact coverage gap
that let #652 ship — and points to `setupCSRFBulkTestApp` for exercising
the production chain.
- The integration-test list gains the cleanup rule: delete seeded
entries through the app, not via direct `ldapdelete` — the 30s directory
cache keeps a ghost that poisons later tests (seen in CI as a cascading
failure of `TestAddRemoveGroupMembership`).
Two pre-existing over-length bullets in the same section are re-wrapped
because the markdownlint hook (MD013, 120 columns) blocks any commit
touching the file.
_Assisted by claude-code:claude-fable-5 —
[Session](https://claude.ai/code/session_01D41i7TcscCHnuQ22AJzr4S)_
2 files changed
Lines changed: 32 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
65 | 65 | | |
66 | 66 | | |
67 | 67 | | |
68 | | - | |
| 68 | + | |
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
| |||
231 | 231 | | |
232 | 232 | | |
233 | 233 | | |
234 | | - | |
| 234 | + | |
235 | 235 | | |
236 | 236 | | |
237 | 237 | | |
| |||
328 | 328 | | |
329 | 329 | | |
330 | 330 | | |
331 | | - | |
| 331 | + | |
| 332 | + | |
| 333 | + | |
332 | 334 | | |
333 | | - | |
| 335 | + | |
| 336 | + | |
334 | 337 | | |
335 | 338 | | |
336 | 339 | | |
| |||
351 | 354 | | |
352 | 355 | | |
353 | 356 | | |
354 | | - | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
355 | 361 | | |
356 | 362 | | |
357 | 363 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
422 | 422 | | |
423 | 423 | | |
424 | 424 | | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
425 | 431 | | |
426 | 432 | | |
427 | 433 | | |
| |||
457 | 463 | | |
458 | 464 | | |
459 | 465 | | |
460 | | - | |
| 466 | + | |
| 467 | + | |
461 | 468 | | |
462 | 469 | | |
463 | 470 | | |
464 | | - | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
465 | 474 | | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
466 | 480 | | |
467 | 481 | | |
468 | 482 | | |
| |||
488 | 502 | | |
489 | 503 | | |
490 | 504 | | |
491 | | - | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
492 | 510 | | |
493 | 511 | | |
494 | 512 | | |
| |||
0 commit comments