Skip to content

feat: collect online tools and references for offline-ready workflow#30

Merged
rad1092 merged 2 commits into
mainfrom
codex/review-executable-rate-and-analysis-features-1jq14p
Feb 15, 2026
Merged

feat: collect online tools and references for offline-ready workflow#30
rad1092 merged 2 commits into
mainfrom
codex/review-executable-rate-and-analysis-features-1jq14p

Conversation

@rad1092
Copy link
Copy Markdown
Owner

@rad1092 rad1092 commented Feb 15, 2026

Motivation

  • Capture pip wheels and authoritative UI/accessibility references during an internet-enabled turn so offline hosts can later install required tooling and consult preserved docs.
  • Centralize the list of downloadable packages and reference URLs to make collection reproducible and scriptable.
  • Make numeric parsing and baseline fixtures stable for regression checks when normalizing human-entered numeric formats.

Description

  • Add resources/online_sources.json to declare tool_packages and reference_urls for automated collection.
  • Add scripts/collect_online_assets.py which downloads pip wheels to .online_assets/wheels, fetches reference HTML to .online_assets/references, and emits a structured report at .online_assets/meta/collection_report.json.
  • Add ONLINE_RESOURCE_COLLECTION.md documenting the collector and update .gitignore to exclude .online_assets/ artifacts.
  • Add scripts/prepare_online_bundle.sh to build a local project wheel, attempt optional dependency downloads, archive an Ollama installer script if reachable, and write an offline usage guide under .offline_bundle/.
  • Add CSV fixtures under tests/fixtures/ and extend tests/test_analysis.py with test_to_float_normalizes_currency_comma_percent_parentheses and test_baseline_fixture_summaries_are_stable to assert numeric normalization and baseline behavior.
  • Normalize _to_float in bitnet_tools/analysis.py to strip common currency symbols, thousands separators, percent signs, and treat values in parentheses as negative.

Testing

  • Ran pytest -q and all tests passed (26 passed).
  • Executed python scripts/collect_online_assets.py, which saved .online_assets/meta/collection_report.json showing successful downloads for configured pip packages and captured reference fetch failures (environment tunnel/proxy returned 403) in the report.
  • Ran python -m bitnet_tools.cli doctor to validate CLI diagnostics and confirm environment status (reported ollama not found).

Codex Task

@rad1092 rad1092 merged commit 8b5d873 into main Feb 15, 2026
4 checks passed
@chatgpt-codex-connector
Copy link
Copy Markdown

💡 Codex Review

v.replace(",", "")

P1 Badge Parse comma-decimal values without magnitude corruption

Unconditionally stripping commas causes locale-formatted decimals to be misread, so values like "12,5" become 125.0 instead of 12.5. Because _to_float feeds summarize_reader, this silently changes dtype detection and numeric stats (mean/min/max) rather than failing fast, which can corrupt analysis results for CSVs that use comma decimal separators.


if python -m pip download -r "${META_DIR}/requirements_online.txt" -d "${WHEEL_DIR}"; then

P2 Badge Enforce wheel-only downloads for offline bundle deps

This command claims to collect optional dependency wheels, but pip download without --only-binary=:all: can legally fetch source archives, which breaks the offline install flow on hosts without a build toolchain. python -m pip download --help documents --only-binary as “Do not use source packages,” so leaving it out here means the bundle is not reliably wheel-only.

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@rad1092 rad1092 deleted the codex/review-executable-rate-and-analysis-features-1jq14p branch February 15, 2026 02:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant