Skip to content

refactor(toolkit): revert the cross-engine agreement tests and the adapter code that only mirrors the default engine #1708

Closed

Description

@JarryShaw

Tracks the ruling on #1687: third-party engines are best effort, and the cross-engine agreement tests and the adapter code that exists only to match the default engine are reverted. The per-PR plan is #1687's issuecomment-6159258585, confirmed "as planned".

Phases, each a separate PR touching files no other PR touches:

  1. Tests.
    • Delete the four agreement-only modules (test_engine_agreement_runtime.py, test_engine_agreement_retry_unit.py, test_ext_chain_limit_agreement_1604_unit.py, test_pypcapfile_linktype_and_layer_bound_agreement_1609_1667_unit.py).
    • Remove the agreement methods from the multi-engine modules: test_new_engine_parity_runtime.py, the two tests/integration/*parity* files, test_engine_pcap_trace_runtime.py, test_tcp_carrier_walk_*, test_tunnelled_tcp_flow_key_*, test_dpkt_scapy_ipv4_header_checks_* and test_traceflow_snapped_capture_runtime.py.
    • Rewrite the crash-guard checks among them as constants.
  2. One PR per engine (dpkt, scapy, pyshark, pypcapfile): revert that engine's agreement PRs newest-first, re-land its own-job fixes as minimal guards, and remove its agreement tests and "as the default engine …" docstrings.
  3. Docs: docs/source/pcapkit/toolkit/3rdparty.rst and the other prose that describes agreement.

CI legs and the main ruleset are unchanged.

Activity

  1. added
    refactorRestructuring for its own sake — neither a fix nor a new capability (refactor: prefix)
    wipWork in flight - a covering PR is open or an agent is actively on it
    on Oct 14, 2026
  2. JarryShaw commented on Oct 14, 2026

    @JarryShaw
    OwnerAuthor

    #1713 has merged, so the phase-2 dpkt and scapy reverts are starting, one PR per engine, per the plan on #1687. The pypcapfile revert is ready and waits only on #1718, which it is stacked on.

  3. JarryShaw commented on Oct 14, 2026

    @JarryShaw
    OwnerAuthor

    Phases 1 and 2 have merged: #1714 (tests), then #1718 (pyshark), #1721 (pypcapfile), #1724 (scapy) and #1727 (dpkt). Phase 3, the docs that still describe cross-engine agreement (toolkit/3rdparty.rst and the rest), is now in progress.

  4. JarryShaw commented on Oct 14, 2026

    @JarryShaw
    OwnerAuthor

    Phase 3b merged as #1741 (87d96459a), with its guard test_no_engine_agreement_prose_1708_unit.py. Three agreement lines remain, all in files the #1726 work owns, and its next round fixes them:

    • toolkit/pypcapfile.py:206-207, where a MAC address takes "the same form … for the default engine"
    • protocols/internet/internet.py:48 and toolkit/scapy.py:732, both still allowlisted as PENDING in the guard

    The same round removes those two PENDING entries. This issue closes when that PR merges.

  5. removed
    wipWork in flight - a covering PR is open or an agent is actively on it
    on Oct 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    refactorRestructuring for its own sake — neither a fix nor a new capability (refactor: prefix)

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions