Repository navigation
fix: Support existing setup release identities (R2) - #773
Conversation
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. You're on a roll. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
@codex review Please review refreshed head |
|
Codex Review: Didn't find any major issues. Already looking forward to the next diff. Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
AI assistance
OpenAI Codex (GPT-6) authored the original fix. OpenAI Codex (gpt-6.1-sol) refreshed the branch with a conflict-free merge of current main and updated this description.
Summary
R2 repairs F1 (P2-a) and F2 (P2-b) from the post-merge re-review of original PR #771.
Reviewed head:
2d49ffc730a3d0c25519de016ef8953fcac83fba.Squash commit:
eaa0eab991e31305faa23cc8c13da2bbefa7d711.Baseline:
436ea66f42f11ebf9085bdc2f576c3ad196454c0.Follow-up to a post-merge re-review; no approval implied.
What changed
src/quant_platform_kit/common/automation_setup.py: accept existing dotted release IDs (3–128 characters) and digit-leading strategy revisions (1–64 characters), retaining shared redaction and strict validation.src/quant_platform_kit/schemas/automation-setup-intent.v1.schema.json: match those formats and reject terminal newlines.tests/test_automation_setup_contract.py: add 30 interoperability and invalid-input regressions using fake data.docs/strategy-release-runtime-contract.zh-CN.md: document the existing release identity formats accepted by setup.uv.lock: include the already-declared development date-time checker. Reuse the prior plainuv lockresult; preserve all 27 previously locked third-party name/version pairs. No upgrade flags or dependency declaration changes.How verified
Fresh isolated worktrees use the same installed dependency versions, UTC and the checked-out revision in the normal CI source-revision variable. The original worktree is unchanged.
Exact full CI test command:
PYTHONPATH=src python -m pytest -q --cov --cov-report=term --cov-report=xml tests(PYTEST_ADDOPTS=-rsonly discloses skip reasons).Identical pytest skips on main and candidate:
tests/test_ibkr_order_outcome_decoder.py:6: optionalib_insyncunavailable.tests/test_longbridge_order_quantity_api_probe.py:206: external API order probe explicitly disabled.tests/test_runtime_heartbeat_policy.py:71: optionalpandas_market_calendarsunavailable.The legacy
PYTHONPATH=src python -m unittest discover -s tests -vcommand treatspytest.importorskip('ib_insync')as an import error:test_ibkr_order_outcome_decoder (unittest.loader._FailedTest.test_ibkr_order_outcome_decoder),Skipped: could not import 'ib_insync': No module named 'ib_insync'. Both versions exit 1 with the exact same error after normalizing worktree paths. This is an existing runner/optional-SDK mismatch, not introduced by R2; publication uses the explicitly authorized identical-baseline exception. Native checks remain unchanged. Zero introduced failures; no test, assertion or skip weakened.Local evidence: this job's
out/regression-before.txt,focused-after.txt,baseline-full-ci.txt,candidate-full-ci.txt,baseline-comparison.json,baseline-unittest.txt,candidate-unittest.txt, andunittest-baseline-comparison.txt.Central checker
Version:
6ad9627e588bfe474fa14130fb03af948f74d03e, read directly from the central repository without changing it.Changed-file findings: 0 total / 0 blocking — PASS. Original checker functions run against the complete candidate root, with findings filtered to the exact five changed paths. The unmodified checker CLI also passes on the complete root: 0 blocking, 1 pre-existing README advisory.
Publication scanner
Version:
publication-check/2.0-advisory, build2947dd7867b4. Advisory mode, completed successfully. Complete tracked tree: 1178 findings / 1173 matching lines. Exact five changed files: 81 findings / 81 matching lines.Fresh exact-file comparison: main has 75 scanner findings; candidate has 81. The six additional matching lines are one fake adversarial query fixture and five generated public package artifact metadata lines. These are not real private identifiers. Owner decisions pt1114u and pt1115u explicitly authorize advisory publication for M05. Scanner matches alone do not block this Draft PR. Added-line hits were reviewed as public generated package metadata or fake adversarial fixture input; no actual private identifier was found in added lines. No scanner, masking rule or native CI gate was changed. No
--no-verifyused.First 20 complete-tree matches (shared-masker output):
First 20 exact-changed-file match locations (values omitted):
Risk and limits
The shared redaction helper and generic invalid-input error remain in use. Both setup authority flags remain false. This is offline contract compatibility and reproducible development tooling; authenticated decisions, downstream adoption, PAPER qualification and runtime automation remain unproved. No production operation or protected switch access is included.
AI author: OpenAI Codex (GPT-6).
Refresh verification
The branch refresh merges main
4d4165691e391ac214c976a4243b2a3e85e54116without conflicts. The PR delta remains the same five setup-contract and lock files. Fresh local checks and the publication scan are recorded below before review is requested. No new behavioral edits are included.Fresh candidate scanner: publication-check/2.0-advisory, build 83d9d1130377; 1185 findings / 1180 matching lines; advisory exit 0. First twenty masked matches:
Fresh refresh checks (2026-11-06): focused setup/release tests 233 passed; full CI pytest 4063 passed, 3 skipped, 1277 subtests passed, exit 0; Ruff PASS; documentation phase 1 and 2 exit 0 (0 blocking, 1 existing README advisory). The first full run had one pip download timeout in the wheel research installation test; an unmodified full-suite retry passed. No assertion, dependency or timeout was changed. The prior validation table above describes the original R2 publication, not a newly rerun baseline comparison.