Breaking refactor: clean up legacy code, unify generation, explicit FFI flags#256
Closed
userFRM wants to merge 17 commits into
Closed
Breaking refactor: clean up legacy code, unify generation, explicit FFI flags#256userFRM wants to merge 17 commits into
userFRM wants to merge 17 commits into
Conversation
Captures the kill list (14 items), target architecture, 7-phase execution plan, and verification gates for the v7.0.0 release. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…(L1)
These were hand-written #[pymethods] functions replaced by
include!("generated_historical_methods.rs"). Delete for real.
Part of v7.0.0 scorched earth refactor (Phase 0).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Unimplemented aspirational plan. Deleted to avoid confusing agents reading it as implemented truth. README table row removed. Part of v7.0.0 scorched earth refactor (Phase 0). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Go struct moved to generated_endpoint_options.go, C++ struct moved to generated_endpoint_options.hpp.inc. Updated both regex targets. Part of v7.0.0 scorched earth refactor (Phase 0). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v7 is a clean break. Old REST/WS migration story removed from nav, getting-started index, and the file itself. Part of v7.0.0 scorched earth refactor (Phase 0). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Follow-up to L14 deletion — checker expected the file and nav entry. Part of v7.0.0 scorched earth refactor (Phase 0). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
… (L8) Remove 261 lines of commented-out hand-written option/index/calendar/interest-rate method implementations from thetadx.cpp. These were superseded by the code-generated `generated_historical.cpp.inc` include and served no purpose as dead code. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
stock_snapshot_trade returns TdxTradeTickArray. SnapshotTradeTick was an unused type that has been toggling in and out. Final answer: delete from tick.rs, tick_schema.toml, decode.rs, all SDK headers. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…(L7) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…(L9) TdxEndpointRequestOptions no longer uses -1/NaN as "unset" markers for int/float fields. Each field now has a companion has_* bool. String fields (venue, min_time, etc.) still use null for "unset". Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…itten blocks (L6) The 4 streaming_endpoint! invocations (stock/option trade/quote stream) are now generated from endpoint_surface.toml. direct.rs retains only session management, gRPC setup, and collect_stream helpers. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
BREAKING: Version bumped to 7.0.0 across the workspace. - SnapshotTradeTick deleted from all layers - FFI options use explicit has_* flags (no more NaN/-1 sentinels) - generate_sdk_surfaces binary removed (build.rs handles it) - Streaming endpoints generated from TOML - 1,134 lines of commented-out Python code deleted - public-api-redesign.md and migration guide deleted - All hand-written SDK method duplicates removed (Python/Go/C++) - docs consistency checker fully operational - Python SDK streaming codegen fixed (stream builders are not futures) - CI updated: SDK drift check via git diff replaces deleted binary - Endpoint count updated: 61 → 65 (4 streaming endpoints) - OpenAPI spec updated with streaming endpoint operationIds - All dependencies updated (cargo update) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
These are local agent artifacts, not source code. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The generate_sdk_surfaces --check comparison failed on Windows because git checkout converts LF to CRLF. Fix: normalize \r\n to \n before comparing, plus add .gitattributes forcing eol=lf on generated files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Owner
Author
|
Replaced by a clean single-commit PR from refactor/breaking-cleanup. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
52 files changed, +2,177 / -3,323 lines (net -1,146 deleted)
Cleanup refactor eliminating dead code, duplicate hand-written methods, sentinel FFI patterns, and the dual generation model.
Changes
Test plan
cargo fmt --all -- --checkcleancargo clippy --workspace --all-targets -- -D warningscleancargo test --workspace(248 tests pass)python3 scripts/check_docs_consistency.pypasscargo build --release -p thetadatadx-ffipassgit diff --exit-code) pass🤖 Generated with Claude Code