Skip to content

Daily progress 2026-04-06: test coverage, .gitignore fix, QUICKSTART corrections, FIXME tracking#91

Merged
P4X-ng merged 2 commits into
masterfrom
copilot/daily-progress-2026-04-06
Apr 18, 2026
Merged

Daily progress 2026-04-06: test coverage, .gitignore fix, QUICKSTART corrections, FIXME tracking#91
P4X-ng merged 2 commits into
masterfrom
copilot/daily-progress-2026-04-06

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 7, 2026

Addresses the outstanding quick-win items from TODO.md: missing test coverage for two core modules, docs/_build/ leaking into version control, and QUICKSTART.md containing fabricated API examples that don't match the codebase.

Changes

  • .gitignore — add docs/_build/ so Sphinx output is no longer tracked
  • test/test_proxy_rotator.py (new) — 4 unit tests for get_random_proxy: happy path, single-entry list, return type, empty-list IndexError
  • test/test_response_analysis.py (new) — 8 unit tests for parse_worthy: text/html, text/plain, non-text, missing content-type, oversized, at-limit, TypeError on non-Response, no content-length header
  • QUICKSTART.md — replace pytest with python -m unittest discover test/; fix all broken examples (PayloadGenerator.from_file, FuzzyTarget keyword args, Check.scan()) with real API usage
  • TODO.md — mark completed quick wins; add a tracked entry for every FIXME in the codebase with file + line reference; update evidence section

Note

Low Risk
Low risk: changes are limited to docs, .gitignore, and new unit tests, without modifying runtime scanning/fuzzing behavior.

Overview
Cleans up repo hygiene and documentation. Adds docs/_build/ to .gitignore and updates QUICKSTART.md examples to use the real Target/Payload/WebFuzzer APIs, correct proxy formatting, and document running tests via python -m unittest discover test/ (including how to enable integration tests).

Improves test coverage. Adds new unit tests for proxy_rotator.get_random_proxy and mass_requests.response_analysis.parse_worthy, covering key content-type/size gate behaviors and expected error cases.

Tracks technical debt. Updates TODO.md to mark the above quick wins complete and records all in-code FIXME items with file/line references for follow-up.

Reviewed by Cursor Bugbot for commit 31c3406. Configure here.

Copilot AI linked an issue Apr 7, 2026 that may be closed by this pull request
@mergify
Copy link
Copy Markdown

mergify Bot commented Apr 7, 2026

⚠️ The sha of the head commit of this PR conflicts with #90. Mergify cannot evaluate rules on this PR. Once #90 is merged or closed, Mergify will resume processing this PR. ⚠️

Copilot AI changed the title [WIP] Track daily continuous progress for 2026-04-06 Daily progress 2026-04-06: test coverage, .gitignore fix, QUICKSTART corrections, FIXME tracking Apr 7, 2026
Copilot AI requested a review from P4X-ng April 7, 2026 05:54
@P4X-ng P4X-ng requested a review from Copilot April 10, 2026 07:31
@P4X-ng P4X-ng marked this pull request as ready for review April 10, 2026 07:31
@chatgpt-codex-connector
Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Credits must be used to enable repository wide code reviews.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR targets “quick win” maintenance items for MassWeb: improving unit test coverage for core request/proxy utilities, tightening repo hygiene around generated Sphinx output, and correcting onboarding documentation/API examples to reflect the actual codebase.

Changes:

  • Add unit tests for massweb.proxy_rotator.proxy_rotate.get_random_proxy and massweb.mass_requests.response_analysis.parse_worthy.
  • Update .gitignore to ignore docs/_build/ (Sphinx build output).
  • Revise QUICKSTART.md examples/commands and update TODO.md to reflect completed items and tracked FIXMEs.

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
TODO.md Marks quick wins complete and adds a “tracked FIXME” section plus updated evidence notes.
test/test_response_analysis.py New unit tests covering parse_worthy behavior across content-type/size/header cases.
test/test_proxy_rotator.py New unit tests covering get_random_proxy behavior including empty-list error.
QUICKSTART.md Updates examples and test-running instructions to match unittest and real APIs (but contains an incorrect MassCrawl snippet).
.gitignore Adds docs/_build/ ignore rule for generated Sphinx output.

Comment thread QUICKSTART.md
Comment on lines +56 to +62
# Run crawler with a depth limit and a seed list
crawler = MassCrawl(seed_list=["http://example.com"], num_threads=10)
crawler.crawl()

# View discovered pages
for page in pages:
print(page.url)
# View discovered URLs
for url in crawler.accumulated_target_urls:
print(url)
Copy link

Copilot AI Apr 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The new MassCrawl example doesn't match the current MassCrawl API: MassCrawl.__init__ takes seeds (not seed_list) and doesn't accept num_threads, and there is no accumulated_target_urls attribute. Update the snippet to construct with MassCrawl(seeds=[...]) (or MassCrawl([...])) and show how to read discovered URLs from existing fields (e.g., targets/results) after calling crawl(...).

Copilot uses AI. Check for mistakes.
Comment thread TODO.md
Comment on lines +23 to +28
### FIXME items tracked from source code

These FIXME comments exist in the codebase and are tracked here for follow-up:

- [ ] `massweb/fuzz_generators/url_generator.py:46` — PNKTHR-42: UTF-8 query params and keys may be incorrectly generated; needs more testing
- [ ] `massweb/fuzzers/bsqli_fuzzer.py:174,198` — Investigate why an empty list is required in certain bsqli payload processing paths
Copy link

Copilot AI Apr 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This section claims all FIXME comments in the codebase are tracked here, but there are additional FIXMEs outside the listed core modules (e.g., test/vuln_checks/test_match.py:2 and test/targets/target.py:60). Either add entries for those as well, or tighten the wording to clarify the list only covers massweb/ (or only production code) so the document stays accurate.

Copilot uses AI. Check for mistakes.
@P4X-ng P4X-ng merged commit 1d6bff5 into master Apr 18, 2026
17 of 25 checks passed
@P4X-ng P4X-ng deleted the copilot/daily-progress-2026-04-06 branch April 18, 2026 13:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Daily Progress: 2026-04-06

3 participants