Repository navigation
Trading catalog corrections: alpaca-py source pin and mirrors, alpacahq dispositions, IBKR forward note - #728
Conversation
…ource pin, alpacahq dispositions, #4983 forward note, alpaca-py scope)
- manifests/stack.json: the alpaca-py source_pin, null until now, is set to v0.44.0's commit
cc4cb3b7ba50ae250e621983c2779047fb16bb28. The tag-to-PyPI publication was checked through
the successful v0.44.0 publish workflow at that commit.
- catalogs/us-equities/decision-index.json registers the later alpacahq dispositions:
- alpaca-mcp-server v2.3.2 (9b0c72be): the paper order path is rejected, because order
state stays deterministic. Separately scoped read-only research toolsets are accepted
through an explicit ALPACA_TOOLSETS allowlist.
- alpaca-skills: main is pinned at 39111abe. It has no tags or releases, so no version is
invented. It is accepted as research-only guidance.
- cli v0.0.14 (53606273): the reconciliation-collector disposition stays refuted pending
comparative evidence.
- catalogs/us-equities/convergence-20260926.json gains a dated 2026-10-05 forward note: the
current IBKR blockers are #5007, #5057 and #5060 (the 2026-10-01 verdict record), not #4983.
The recorded fields are unchanged.
- catalogs/us-equities/runtime-target.json: alpaca-py's scope now reads deterministic
paper-order submission, lookup, cancellation, account and fill reconciliation, and
TradingStream trade updates, with separately qualified bounded market-data reads. It no
longer says ingestion only.
Built by GPT-6.1 Sol through the packaged SDK worker (round t-corr-r1); committed by the
coordinator.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…its on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…c, restore the ingestion scope, tighten the MCP and skills dispositions - catalogs/landscape/upstream-snapshot.json now carries alpaca-py's selected_source_pin (cc4cb3b7) with source_pin_kind git_commit, so the landscape check matches the stack pin again. - blueprints/token-native-focus/saturation-audit.json carries the same pin. - A new regression test, red before the fix, covers both pin mirrors. - runtime-target.json's alpaca-py scope covers both uses: - bounded ingestion through StockHistoricalDataClient, CorporateActionsClient and NewsClient; - the deterministic paper lifecycle, latest-quote reads and StockDataStream. The forward note no longer calls the earlier wording a correction. - alpaca-mcp-server's research disposition now requires independently qualified credential isolation: a separate MCP host process and no broker credentials in the research process. ALPACA_TOOLSETS limits the tools the server exposes; it does not isolate credentials. - alpaca-skills' research_only disposition means a documentary reference only, with no installation or activation. The existing adoption/skills exclusion stands. - The IBKR forward note points at the three exact claims, and credits the 2026-09-26 in-record correction before the 2026-10-01 verdict. The coordinator re-ran landscape.py --root ., test_stack_lifecycle, test_catalog_freshness_trading and validate: all exit 0. Built by GPT-6.1 Sol through the packaged SDK worker (round t-corr-r2); committed by the coordinator. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… to the merge base before the final hot-file commit Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…its on the merge base (hot-file protocol: every hot-file edit in the last commit) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Foundation-lane acknowledgement (lane:shared, docs/lanes.md) at
🤖 Generated with Claude Code |
|
Claude session native-agent-stack-5f: landing at head Observed main Required checks at this head: 7 pass . Unresolved review threads: 0. |
|
Claude session native-agent-stack-5f: post-merge observation. Landed as |
…of main; precise enforcement and receipt naming in the EdgarTools correction Context: the Claude Opus read of pinsrc-c (95cf94c..8e7e09f) found every prior item fixed and one new P1, which showed up after the coordinator merged main (ec0b8fd, mechanically, with the anti-pattern rows unioned). - tests/test_architecture_pin_source.py matched alpaca-py by the literal 'alpaca-py0.44.0'. On main, #728 reworded runtime-target.json's alpaca selected_path to '... alpaca-py 0.44.0 ...', so six subtests failed on the merged head; that red run is reproduced. The expectation is now a separator-tolerant regex that keeps the version boundary. Fixtures accept adjacent, space- and tab-separated text, and reject a wrong version, a version extension and a delimiter locator. The six cells keep citing runtime-target.json:158. - docs/harness-defaults.md: the EdgarTools classification row's 'Where enforced' cell now names this log for the general rule, and tests/test_edgartools_pin_move.py as the regression for the five EdgarTools sites. - The dated correction note names evidence/receipts/edgartools-5600-pin-move-20261004.json explicitly, in all three byte-identical copies. A new assertion, red before the change, requires the reference. The artifact hash is refreshed. Built by GPT-6.1 Sol through the packaged SDK worker (round trading-2604-pinsrc-d); committed by the coordinator. The builder's runs on the merged tree each exited 0: - the tests: test_architecture_pin_source, test_edgartools_pin_move, test_stack_lifecycle, test_trading_2604_lock and test_adoption_docs_consistency; - build_ecosystem --check, landscape.py --root . and validate; - evidence_manifest --check and git diff --check. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Scope
f946c6d4ca988a17b6fa4392ecb488909f147883lane:shared. The trading catalogs are trading-owned. The PR also touches foundation-owned catalogs/landscape/upstream-snapshot.json, blueprints/token-native-focus/saturation-audit.json, tests/test_stack_lifecycle.py and the shared hot file manifests/stack.json. It needs the foundation lane's acknowledgement before merge (docs/lanes.md).SOTA sources
cc4cb3b7ba50ae250e621983c2779047fb16bb28(https://github.com/alpacahq/alpaca-py). The tag-to-PyPI publication was checked through the successful v0.44.0 publish workflow run at that commit.9b0c72beda5579de088413ce9c3720456cde8f5f(https://github.com/alpacahq/alpaca-mcp-server). ALPACA_TOOLSETS is its tool allowlist; it is not credential isolation.39111abee6b60af7c11d40b5fc892dfc4fd791a4(https://github.com/alpacahq/alpaca-skills). It has no tags or releases.53606273aa230a40c64b783425dcb3f4423ede30(https://github.com/alpacahq/cli).Evidence-class table
python3 scripts/landscape.py --root .; new regression in tests/test_stack_lifecycle.py, red before the mirror fixLocal commands run
Review
Built by GPT-6.1 Sol through the packaged SDK worker (rounds t-corr-r1 and t-corr-r2); committed by the coordinator.
6ad3c3f3d..93f27bffe) returned ACCEPT: 0 P1, 7 P2. The P2s are recorded below as residuals under the bounded review rule.Decision record
No new decision record. The dispositions are dated entries in catalogs/us-equities/decision-index.json and convergence-20260926.json.
Checklist
Recorded residuals (bounded review, 2026-10-05)
Claude Opus delta read r2 at
93f27bffe34dreturned ACCEPT with no p1. Under the bounded review rule these p2 items land as recorded residuals, each owed as a follow-up:catalogs/us-equities/convergence-20260926.json:10828-10833 (ibkr_blockers_correction.affected_pointers); omitted locations at :3462 (/tradin: The delta introduced an incomplete list.catalogs/us-equities/runtime-target.json:152 (selected_path) vs :154-157 (local_data_acceptance); catalogs/us-equities/convergence-20260926.: The adopted text is almost word for word the prior round's suggested fix, so this is a refinement the prior review missed, not a builder regression.catalogs/us-equities/convergence-20260926.json:10866 (decision) vs :10870 (reason) and :10877 (qualification_condition); mirrored at catalog: Round 2 made research use conditional: the reason says read-only toolsets fit research agents 'only after the credential-isolation condition below is qualified', and qualification_condition says 'Before research use, independently verify...'.catalogs/us-equities/convergence-20260926.json:10919 (alpaca-skills comparison_that_would_overturn) vs :10907 (reason); adoption/skills/mani: The reason is now consistent with the manifest exclusion: the exclusion stands and research_only means documentary reference only.catalogs/landscape/upstream-snapshot.json:3247-3302 (alpaca-py row: selected_source_pin :3251, commits/v0.44.0 check :3270, latest_release_s: The row now claims source_pin_kind git_commit with a 40-hex pin, but it lacks selected_pin_source, which every other commit-kind row carries.docs/lanes.md:24 (foundation owns catalogs/landscape/* except us-equities.json and gap ledgers, and blueprints/ except the trading blueprint: Merge gate for the PR to be opened, not a defect in the branch.blueprints/token-native-focus/saturation-audit.json:2140 (codex source_pin null) vs manifests/stack.json:351 (codex source_pin a956835d02076: Pre-existing, not introduced by this branch: the drift is identical at merge base f946c6d and at origin/main 77d7516.🤖 Generated with Claude Code