Skip to content

feat(scope): add portable V2 contracts and bounded binary transport - #12

Merged
Scaxlibur merged 47 commits into
masterfrom
Scaxlibur/docs/bounded-waveform-binary-rfc
Aug 26, 2026
Merged

feat(scope): add portable V2 contracts and bounded binary transport#12
Scaxlibur merged 47 commits into
masterfrom
Scaxlibur/docs/bounded-waveform-binary-rfc

Conversation

@Scaxlibur

Copy link
Copy Markdown
Owner

摘要

  • 为标准 scope.fetch_waveform、单通道和多通道 capture 增加 descriptor 显式 opt-in 的有界二进制传输;旧 descriptor、内建 driver 和 legacy 路径保持不变。
  • 增加 scope portability V2:通道输入状态、数字状态、可组合 snapshot、采集状态、statistics、FFT、cursor readout、单通道 average capture,以及 SINGLE terminal STOP 完成证明。
  • bounded 路径仅接受经 factory 验证的 PyVISA/RsInstrument VISA INSTR backend;启用 construction latch、四维 binary budget、恢复/验证和 poisoned session 边界。
  • scope.screenshot_v2 的核心 response/operation 上限提高到 8 MiB / 8 MiB / 1 / 0,仍固定一次查询、零重同步与严格 framing/PNG 校验。

兼容性与边界

  • 不修改既有 ScopeDriver 方法签名、legacy capability、CLI 成功返回、run plan 或 artifact 成功 schema;新行为必须由 descriptor/profile 明确 opt-in。
  • 外部插件 opt-in、依赖/descriptor 版本门升级、conformance 与硬件验收不在本 PR 范围内。插件必须等待含本合同的正式核心发行,并按设备/firmware 证据自行收紧 profile。
  • Serial、SocketIO 和 duck-typed transport 不会因实现 query_binary() 自动获得 bounded opt-in。

验证

  • .venv/bin/python -m pytest -q1793 passed, 1 skipped, 131 subtests passed
  • .venv/bin/python -m ruff check .
  • .venv/bin/python -m pip check
  • CI 等价离线 CLI 冒烟:--helprun schemarun template --listlock status
  • git diff --check master...HEAD

未连接仪器,未修改插件仓库。

@Scaxlibur
Scaxlibur merged commit 584d98d into master Aug 26, 2026
4 checks passed
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.

1 participant