Skip to content

build(deps-dev): update pyright requirement from <2.0.0,>=1.1.392 to >=1.1.411,<2.0.0 - #1

Open
dependabot[bot] wants to merge 23 commits into
mainfrom
dependabot/pip/pyright-gte-1.1.410-and-lt-2.0.0
Open

build(deps-dev): update pyright requirement from <2.0.0,>=1.1.392 to >=1.1.411,<2.0.0#1
dependabot[bot] wants to merge 23 commits into
mainfrom
dependabot/pip/pyright-gte-1.1.410-and-lt-2.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 16, 2026

Copy link
Copy Markdown

Updates the requirements on pyright to permit the latest version.

Commits

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

@dependabot @github

dependabot Bot commented on behalf of github Jun 16, 2026

Copy link
Copy Markdown
Author

Labels

The following labels could not be found: dependency. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@dependabot
dependabot Bot requested a review from abdibekbolot as a code owner June 16, 2026 07:46
abdibekbolot and others added 23 commits June 17, 2026 08:17
Add the container runner submodule at src/modules/rest.mdm-sn-container-runner
pointing to RedTeamSubnet/rest.hb-bot-executer. Remove the empty __init__.py
that conflicts with the submodule directory.
Enable setuptools package discovery under src/ for bv_challenge.
Fix version attr to reference __version__ directly and dependencies
file to list format. Update all project URLs from challenge-template
to bot-virus-challenge.
Change VERSION_FILE_PATH from VERSION.txt to bv_challenge.__version__.py.
bump-version.sh now writes '__version__ = "x.y.z"' format.
get-version.sh now parses Python __version__ assignment instead of raw text.
Add src/bot/ package with Selenium-based WebUI automation:
- main.py: entrypoint with config loading, internet check, session loop
- core/bot.py: automation logic with failed-challenge detection
- driver.py: Chromium driver setup with stealth options
- constants.py: environment-based configuration
- Dockerfile + Dockerfile.base: multi-stage container builds
- compose.yml: standalone bot compose stack
- Scripts: build-base.sh, build.sh, docker-entrypoint.sh, run.sh
Add bot-runner service that runs the WebUI automation bot container
with Docker socket access and privileged mode. Introduce two bridge
networks: bot-virus-challenge-net (external) and bot-executor-net
(internal, isolated). Harden existing challenge service with explicit
linux/amd64 platform, privileged mode, and nofile ulimit (32768).
Add named volumes for bot-runner logs and data persistence.
Remove the legacy multi-file bot build (Dockerfile.base, compose.yml,
build scripts, multiple source modules, entrypoint) and replace with a
single bot.py + minimal Dockerfile two-file contract.

The new reference bot uses Selenium to open the challenge /_web page
with headless Chrome and waits for the browser-side SDK to collect
runtime-integrity signals and POST the encrypted payload to /_eval.
It does NOT fill forms, move the mouse, scroll, or submit from Python.
Expose the hostname and port the spawned bot container uses to reach
the challenge API on the bot-executor network, so the new reference bot
can resolve the /_web URL at runtime.
Rewrite the /_web challenge page and backend for HBv6 non-behavioral
scoring. The page is no longer a login form — it serves a minimal
browser-verification page that loads the SDK to collect runtime-
integrity signals only.

Backend changes:
- service.py: Add SCHEMA_VERSION, _short_digest() for stable config
  fingerprinting, per-session key management (advancing claim pointer
  on each /_web load), and session-binding template context (sessionId,
  nonce, publicKeyId, configHash, schemaVersion).
- schemas.py: Update the Dockerfile template to use a venv-based setup
  (the vm-runner strips ENTRYPOINT/CMD and forces its own).
- index.html: Replace the login form + checkbox-rendering page with a
  minimal verification page. Remove ACTIONS_LIST, APP_ID, and behavioral
  TASK_CONFIG selectors. Inject BV_SESSION and PUBLIC_KEY globals only.
Complete rewrite of the browser SDK for non-behavioral HBv6 scoring.

collector.js:
- Remove all behavioral series recording (movements, clicks, keydowns,
  keyups, scroll, eventSequence, targets, taskProgress, trusted stats).
- Add SECTION_KEYS for non-behavioral integrity sections (automation,
  runtimeIntegrity, fingerprint, apiAvailability, navigator, display,
  correlation, sessionBinding).
- Retain legacy behavior series as empty arrays for shape back-compat.
- Add setSection() — first-write-wins per known section key.

sdk.js:
- Remove all DOM event wiring (mouse, keyboard, scroll, click, focus,
  blur, visibility, pointer events).
- Remove ACTIONS_LIST input-id assignment and checkbox rendering.
- Add non-behavioral signal collectors: collectBrowserInfo,
  collectAutomation, collectRuntimeIntegrity, collectApiAvailability,
  collectFingerprint (WebGL/canvas/audio), collectNavigator,
  collectDisplay, collectCorrelation, collectSessionBinding.
- Add hybrid encryption: RSA-OAEP-SHA256 for AES-256 key + IV,
  AES-256-CBC/PKCS7 for payload body, base64-joined with '::'.
- Add submit() that POSTs {error: {data: blob}} to /_eval via fetch.
- Auto-run on load; mark window.BV_SUBMITTED on success.
test_web_page.py:
- Replace behavioral element assertions (username, password, login button,
  scroll content, end-session) with minimal verification page checks.
- Add tests for no-form/no-behavioral-elements, session-binding globals,
  SDK wiring, and non-leak of scoring internals.
- Add test_sdk_does_not_collect_behavior.

collector.test.js:
- Replace behavioral metrics tests with integrity-section tests.
- Test: empty legacy series, section first-write-wins, SECTION_KEYS
  contract, setSection rejection of unknown sections/non-objects.

sdk.test.js:
- Complete rewrite: test auto-collect of non-behavioral sections,
  hybrid RSA-OAEP + AES-256-CBC encryption round-trip, blob wire format
  (encKey::encIv::cipherText), window.BV_SUBMITTED flag, fetch() to
  /_eval, and NO behavioral fields in payload.

test_eval_crypto.py (new):
- Pin the wire-format contract between the JS SDK and the server
  decryptor: test blob charset, vault_unlock decrypt, and public
  cryptography round-trip.
Submodule now includes:
- Bot cleanup: replace multi-file boilerplate with two-file contract
- Runner refactor: clean build context, no forced ENTRYPOINT injection,
  new env var contract (CHALLENGE_BASE_URL/CHALLENGE_WEB_URL), no
  forced src/ scaffold copying
- Fix default hostname from 'challenger-api' to 'challenge-api'
- New test coverage for the clean two-file build contract
Add WebUI automation bot and refactor challenge scoring system
Updates the requirements on [pyright](https://github.com/RobertCraigie/pyright-python) to permit the latest version.
- [Release notes](https://github.com/RobertCraigie/pyright-python/releases)
- [Commits](RobertCraigie/pyright-python@v1.1.392...v1.1.411)

---
updated-dependencies:
- dependency-name: pyright
  dependency-version: 1.1.410
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title build(deps-dev): update pyright requirement from <2.0.0,>=1.1.392 to >=1.1.410,<2.0.0 build(deps-dev): update pyright requirement from <2.0.0,>=1.1.392 to >=1.1.411,<2.0.0 Jul 2, 2026
@dependabot
dependabot Bot force-pushed the dependabot/pip/pyright-gte-1.1.410-and-lt-2.0.0 branch from f196903 to 944a285 Compare July 2, 2026 04:45
@aliyuldashev
aliyuldashev force-pushed the main branch 2 times, most recently from 0a72bba to c9b07fc Compare July 30, 2026 08:31
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.

2 participants