Walk the live password-change gate in k6 load setup #442

Merged
weichen merged 6 commits from feature/u7-k6-password-gate into main 2026-10-12 06:27:44 +00:00
Owner

Summary

  • k6 setup now follows the live account flow: admin create → first login must_change → POST /api/auth/password → relogin.
  • Fixes 403 text responses that crashed .json() and failed http_req_failed.

Test plan

  • brew k6 v2.3.0 run_load.sh --profile smoke --seed tiny (653/653, fail=0)
  • --instances 2 (checks 100%, SSE A/B PASS, dup_seq=0)
  • make test
  • ladder / 60min / 2h (still a scheduled window)
## Summary - k6 setup now follows the live account flow: admin create → first login `must_change` → `POST /api/auth/password` → relogin. - Fixes 403 text responses that crashed `.json()` and failed `http_req_failed`. ## Test plan - [x] `brew` k6 v2.3.0 `run_load.sh --profile smoke --seed tiny` (653/653, fail=0) - [x] `--instances 2` (checks 100%, SSE A/B PASS, dup_seq=0) - [x] `make test` - [ ] ladder / 60min / 2h (still a scheduled window)
weichen added 5 commits 2026-10-12 06:17:53 +00:00
Why: establish the authorized task workspace and its initial baseline.

Evidence: preserved precheck receipt in .task/feature-u7-k6-password-gate.md; R0=4b51a134751d636f7f6ca3fedf180fd76045f2c1.

Impact: task metadata only; the feature workspace starts at 4b51a13475.

Refs: .task/feature-u7-k6-password-gate.md
Why: Admin-created load users still have must_change; business APIs return 403 text and k6 json() crashes.
Evidence: brew k6 v2.3.0 smoke --seed tiny (653/653 checks, fail=0); --instances 2 (765/765, cross-read 30, dup_seq=0).
Impact: Load suite matches the real first-login set-password flow; no SQL backdoor for k6 users.
Refs: server/auth.go enforcePasswordGate; U7 run_load.sh
Co-authored-by: Cursor <cursoragent@cursor.com>
Why: include the current integration baseline before verification.

Evidence: fetched origin/main=b008bd94ad0fe6f520a8500f40ed6297251762b7.

Impact: integrate upstream changes without rewriting task history.

Refs: task-sync
Why: bind the task validation checkpoint to the latest integration baseline.

Evidence: SELF recursive component checks; sync_base=b008bd94ad0fe6f520a8500f40ed6297251762b7; candidate=4e70c95fc7a866a1edd330fddcb242e0a4fb861a.

Impact: task metadata only.

Refs: .task/feature-u7-k6-password-gate.md
Record k6 dual-instance smoke evidence on the task card
ci / test-pg (pull_request) Successful in 1m34s
ci / test (pull_request) Failing after 1m37s
8838147cfb
Why: Completion gate needs SELF rows for make test and brew-k6 dual smoke on the synced HEAD.
Evidence: make test exit=0; run_load.sh --instances 2 smoke dup_seq=0.
Impact: Card evidence table updated.
Refs: .task/feature-u7-k6-password-gate.md
Co-authored-by: Cursor <cursoragent@cursor.com>
weichen added 1 commit 2026-10-12 06:18:10 +00:00
Link Dev PR #442 on the k6 password-gate task card
ci / test-pg (pull_request) Successful in 1m32s
ci / test (pull_request) Successful in 3m14s
7c738159dc
Why: Task card main record must point at the delivery PR.
Evidence: https://git-home.u1680832.nyat.app:30319/weichen/Agent-System-Dev/pulls/442
Impact: Card status remains in progress pending merge.
Refs: .task/feature-u7-k6-password-gate.md
Co-authored-by: Cursor <cursoragent@cursor.com>
weichen merged commit ee57bd53f7 into main 2026-10-12 06:27:44 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: weichen/Agent-System-Dev#442