Skip to content

test: Add language-neutral protocol fixtures and Python runner (Phase 1)#443

Merged
pradeeban merged 2 commits into
ControlCore-Project:devfrom
Titas-Ghosh:add-protocol-conformance-fixtures-phase1
Feb 22, 2026
Merged

test: Add language-neutral protocol fixtures and Python runner (Phase 1)#443
pradeeban merged 2 commits into
ControlCore-Project:devfrom
Titas-Ghosh:add-protocol-conformance-fixtures-phase1

Conversation

@Titas-Ghosh
Copy link
Copy Markdown
Contributor

Hi @pradeeban, as discussed in #440, here is the first PR to establish the protocol conformance infrastructure.

Summary

This PR introduces Phase 1 of the protocol conformance work in a strictly non-breaking, report only way.
It adds a language neutral fixture format and a Python conformance runner to establish an observable baseline for core protocol behavior, without changing any runtime logic.

Recent testing improvements added strong coverage, but we still lack a reusable conformance layer that can be extended across bindings in later phases. This PR lays the foundation by focusing purely on baseline infrastructure and Python verification.

Scope (Phase 1 only)

  • Fixture Schema: Added tests/protocol_fixtures/schema.phase1.json
  • Python Cases: Added initial fixture cases in tests/protocol_fixtures/python_phase1_cases.json
  • Documentation: Added the protocol contract/docs in tests/protocol_fixtures/PROTOCOL_FIXTURES.md
  • Test Runner: Added the Python conformance runner in tests/test_protocol_conformance.py

Safety / Non-Goals

  • NO runtime behavior changes in concore.py, concoredocker.py, or any other runtime files.
  • NO cross-language enforcement in this PR.
  • NO CI gate tightening or failing builds in this PR.

Validation

Command Executed:

python -m pytest -v tests/test_protocol_conformance.py

Result:

  • 7 tests passed (fixture schema + conformance cases for parse_params, initval, and write_zmq).

Evidence

1) Minimal PR Scope & Line Impact

Screenshot 2026-02-21 205441 Screenshot 2026-02-21 205502

2) Conformance Runner Passing

Screenshot 2026-02-21 205527

Next Phase (separate PR)

If you think this foundation is proper and can be merged , then the next steps that i will be working on are :

  • Expand adapters/runners for other bindings in baseline mapping mode.
  • Classify differences as required, implementation_defined, or known_deviation before any enforcement.

Happy to iterate based on your feedback!

@pradeeban pradeeban merged commit 3f1c744 into ControlCore-Project:dev Feb 22, 2026
6 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.

2 participants