Repository navigation
Conversation
Carry the portability correction from closed companion agentrust-io#329 after agentrust-io#322 merged. Signed-off-by: Srinivasa Dinakar Jainti <dinakarjs@gmail.com>
|
🟡 Contributor Check: MEDIUM
Automated check by AgenTrust Contributor Check. |
noah-ing
left a comment
There was a problem hiding this comment.
Reviewed 747d18aabec830fedacd357fc68bd37f15ffe489 against 730be8b3eb929af60c6b236c67011788343aed4e; no blocking finding in this portability correction.
Both new regressions fail against the unchanged base: the producer leaves its SQLite read connection open, and a simulated cp1252 default corrupts the UTF-8 identity. The complete 132-test shadow-AI suite passes without skips in all six macOS combinations of Python 3.11.14/3.12.14/3.13.9 and the installed released cMCP audit APIs 0.2.0/0.7.0. Test dependencies and producer wheels were hash-checked in fresh environments.
Thirty additional reviewer controls pass in each environment, including independently exercised catalog/log decoders, exact Unicode identity, LF/CRLF/CR line accounting, malformed-input refusal, and connection closure before temporary-directory cleanup on success and injected read/write failures. Isolated in-memory reversions of each UTF-8 read and the explicit close are detected while other controls keep passing.
This is macOS execution with a simulated cp1252 default, not native Windows validation. It exercises released audit serialization, not a live gateway, authentication or hardware. Source checkouts remain unchanged; required independent maintainer approval remains separate.
The merged shadow-AI adapter retains two portability defects identified during #322 review: sqlite3's connection context manager does not close the read handle before TemporaryDirectory cleanup, and catalog/JSONL reads use the platform encoding. This closes the connection explicitly and reads both inputs as UTF-8, with behavioral regression tests and the encoding contract documented.
Replaces the implementation-only delta of closed companion #329, now based directly on main 730be8b after #322 merged. Neither the SQLite fix nor explicit scanner UTF-8 reads was incorporated into that main tree. Six files, 50 insertions / 5 deletions; no adapter authentication or protocol change. #329's closed state is preserved.
Fresh Linux/Python 3.12.14 validation on this main-based tree: all 132 shadow-ai tests pass against the installed released cmcp-runtime 0.7.0 audit implementation (required, not skipped). Pytest comes from the prepared test environment, with the separate released SDK site-packages explicitly added; the actual imported audit module resolves into that installed 0.7.0 package. Current 0.2.0 execution is left to the existing hosted matrix, rather than inferred from the prior companion's run.
Independent process-memory reversions of the explicit connection close and UTF-8 reads each make the respective behavioral regression fail; no mutation retained. Repository Ruff selection E4/E7/E9/F with target py39 and whitespace checks pass. Published tree matches the validated local index exactly. No native Windows, hardware, source authentication or end-to-end execution claim. Independent maintainer approval and exact-head hosted checks remain required.