5 idempotency tests broken after auth requirement on /v1/intent #250
Labels
No labels
blocked:children
blocked:commit-ready-failed
blocked:depends-231
blocked:depends-236
blocked:depends-237
blocked:depends-238
blocked:depends-239
blocked:gate-fetch
blocked:gate-fetch
blocked:gate-lint
blocked:gate-research
blocked:needs-attention
blocked:needs-decision
blocked:no-changes
blocked:no-procedure
blocked:preflight
blocked:verify-failed
bug
enhancement
feature-request
high-priority
in-progress
lint-cleanup
needs-decompose
needs-triage
ops-retry
ops-task
phase-5
quickfix
security/medium
self-building
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/mesh-seed#250
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Finding
The
@validate_authdecorator onPOST /v1/intentnow correctly requires authentication, but 5 idempotency tests intests/unit/test_http_entrypoint.pydo not pass a JWT token.Affected tests
test_top_level_idempotency_key_accepted_for_non_provision_workertest_payload_idempotency_key_echoed_in_responsetest_top_level_key_precedence_in_responsetest_no_idempotency_key_still_workstest_dedup_collapses_duplicate_idempotency_keyRoot cause
The
@validate_authdecorator on/v1/intentcorrectly rejects unauthenticated requests with 401. The test fixtures (http_app) don't create or pass a JWT token. The auth system behavior is correct — the tests need updating to generate a token and include it in test requests.How to reproduce
masterof Mark/mesh-seedpytest tests/unit/test_http_entrypoint.py -k "idempotency" -vExpected behavior
All 5 idempotency tests pass (return 202) by using a valid
Authorization: Bearer <token>header obtained from the dev-mode login endpoint.Suggested fix
Update the
http_appfixture (or a dedicated fixture) to:POST /v1/auth/loginfirst (which accepts any API key in dev mode whenMESH_API_KEYis unset)access_tokenin theAuthorizationheader of subsequent requestsRegression introduced by
Commit
9d69544— "fix #137: AUTH-001 — Real Authentication System" (issue #137, closed)Reported by post-deploy probe | kanban card t_dd7185dc