Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

cloud-lab: combined pytest run red on main — cumulative in-memory sessions break fee/allotment assertions; clientd offer-string drift

Open
#792 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
python
Domain
testing-qa

Research direction

Start with the offer-string mismatch: test_list_offers_parses_real_advertisement expects 1 sats/step, while scripts/tollgate-clientd.py prints 1 sat/step, so align one side and confirm that test passes alone. The cumulative-allotment failures come from in-memory sessions on the static MAC 02:00:00:00:00:20 shared across files; test_external_mints.py has a _mac() helper that shows the per-file MAC approach. Done means the combined pytest run is green, but the isolation strategy (randomized MACs, a session-reset fixture, or a documented segmented run) still needs a maintainer decision.

Written by the indexing model from the issue text.

Description

The standard combined suite invocation on main (cb4db7f, verified 2026-10-09 on the ai-legion lab host; identical shape on PR #771 head b3ce6d5) fails 6 tests:

  • test_fee_is_sum_then_ceil[255/1023/2047], test_above_swap_fee_succeeds_with_fee_deducted, test_fee_mint_payments_do_not_break_the_free_mint_path: the session event's allotment is cumulative per client MAC (in-memory sessions — the cloud-lab README already notes "sessions are in-memory per client MAC"), so per-payment assertions break once earlier payments or the clientd renewal daemon (test_clientd_autotopup.py runs earlier alphabetically in the same invocation) have accumulated time on the static client MAC 02:00:00:00:00:20. Attribution verified empirically: [255] passes on a freshly restarted upstream, and a main-built upstream fails identically to the PR head — pre-existing on main, not a #771 regression.
  • test_list_offers_parses_real_advertisement: expects 1 sats/step, scripts/tollgate-clientd.py prints 1 sat/step.

Impact: the combined client pytest -sv invocation cannot serve as a green gate — the next lane that runs it as-is will re-triage the same six failures.

Suggested directions: per-file randomized client MACs (precedent: _mac() in test_external_mints.py), a session-reset fixture between files, or documenting a canonical segmented invocation; align the clientd string expectation.

Evidence (lane host, session rc1-771): /root/src/rel-771-logs/std-suite-pytest.log, attribution runs described in /root/src/rel-771-transcript.md §4.5, summary in /root/src/rel-771-handoff.md Appendix B.

Dominant language
Go
Stars
12
Forks
14
Avg merge
1d 6h
Merged PRs (30d)
235

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from OpenTollGate/tollgate-module-basic-go

All issues in OpenTollGate/tollgate-module-basic-go

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.