https://github.com/stridskoma2/ts-api-wrapper
· scanned 2026-06-16 00:23 UTC (2 months, 2 weeks ago)
34 raw signals (0 security + 34 graph)
Last scanned 2 months, 2 weeks ago · v1 · 18 actionable findings from 1 signal source. 16 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 630 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
send |
software | healthy | tests/helpers.py:19 |
stream |
software | healthy | tests/helpers.py:26 |
__init__ |
software | healthy | tests/helpers.py:39 |
get_access_token |
software | healthy | tests/helpers.py:44 |
force_refresh_access_token |
software | healthy | tests/helpers.py:47 |
json_response |
software | healthy | tests/helpers.py:53 |
html_response |
software | healthy | tests/helpers.py:65 |
sim_config |
software | healthy | tests/helpers.py:77 |
recording_sleeper |
software | healthy | tests/unit/test_stream_session.py:18 |
sleeper |
software | healthy | tests/unit/test_stream_session.py:19 |
test_reconnect_retry_after_is_clamped_to_ceiling |
software | healthy | tests/unit/test_stream_session.py:26 |
test_reconnecting_stream_restarts_after_goaway |
software | healthy | tests/unit/test_stream_session.py:32 |
chunk_source |
software | healthy | tests/unit/test_stream_session.py:88 |
test_error_event_terminates_stream |
software | healthy | tests/unit/test_stream_session.py:58 |
test_authentication_errors_are_not_reconnected |
software | healthy | tests/unit/test_stream_session.py:68 |
test_api_errors_are_not_reconnected |
software | healthy | tests/unit/test_stream_session.py:85 |
test_rest_client_stream_events_uses_stream_transport |
software | healthy | tests/unit/test_stream_session.py:102 |
test_stream_open_401_refreshes_token_once |
software | healthy | tests/unit/test_stream_session.py:117 |
test_stream_open_400_and_403_are_not_reconnected |
software | healthy | tests/unit/test_stream_session.py:140 |
test_stream_open_429_reconnects_after_retry_after_delay |
software | healthy | tests/unit/test_stream_session.py:167 |
test_stream_open_503_reconnects_with_backoff |
software | healthy | tests/unit/test_stream_session.py:196 |
test_stream_open_503_reconnect_limit_is_enforced |
software | healthy | tests/unit/test_stream_session.py:221 |
test_api_error_repr_and_str_exclude_payload |
software | healthy | tests/unit/test_errors.py:15 |
test_authentication_error_repr_excludes_payload |
software | healthy | tests/unit/test_errors.py:22 |
test_stream_error_repr_excludes_payload |
software | healthy | tests/unit/test_errors.py:27 |
test_payload_stays_available_to_callers |
software | healthy | tests/unit/test_errors.py:33 |
test_normalizes_known_and_unknown_status |
software | healthy | tests/unit/test_order_status.py:10 |
test_order_snapshot_exposes_status_helpers |
software | healthy | tests/unit/test_order_status.py:15 |
__init__ |
software | healthy | tests/unit/test_httpx_transport.py:45 |
request |
software | healthy | tests/unit/test_httpx_transport.py:22 |
aclose |
software | healthy | tests/unit/test_httpx_transport.py:26 |
read |
software | healthy | tests/unit/test_httpx_transport.py:35 |
close |
software | healthy | tests/unit/test_httpx_transport.py:40 |
_open_stream_sync |
software | healthy | tests/unit/test_httpx_transport.py:53 |
test_urllib_stream_yields_chunks_from_reader_thread |
software | healthy | tests/unit/test_httpx_transport.py:58 |
test_urllib_stream_propagates_unexpected_reader_errors |
software | healthy | tests/unit/test_httpx_transport.py:69 |
test_urllib_stream_queue_is_bounded |
software | healthy | tests/unit/test_httpx_transport.py:78 |
test_send_maps_http_request_to_httpx_client |
software | healthy | tests/unit/test_httpx_transport.py:81 |
test_context_manager_closes_owned_httpx_client |
software | healthy | tests/unit/test_httpx_transport.py:107 |
pinned_spec_path |
software | healthy | tests/unit/test_spec_coverage.py:12 |
test_pinned_spec_path_reads_openapi_lock |
software | healthy | tests/unit/test_spec_coverage.py:64 |
test_pinned_spec_path_reports_missing_file |
software | healthy | tests/unit/test_spec_coverage.py:69 |
test_openapi_paths_are_wrapped_or_explicitly_skipped |
software | healthy | tests/unit/test_spec_coverage.py:77 |
aclose |
software | healthy | tests/unit/test_client_features.py:41 |
test_client_context_manager_closes_transport |
software | healthy | tests/unit/test_client_features.py:46 |
test_place_order_returns_trade_object |
software | healthy | tests/unit/test_client_features.py:54 |
test_place_order_returns_ambiguous_trade_on_timeout |
software | healthy | tests/unit/test_client_features.py:64 |
test_what_if_order_uses_confirmation_endpoint |
software | healthy | tests/unit/test_client_features.py:73 |
test_flat_confirmation_response_stays_backward_compatible |
software | healthy | tests/unit/test_client_features.py:96 |
test_fetch_state_snapshot_collects_core_broker_state |
software | healthy | tests/unit/test_client_features.py:104 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
FakeTransport |
software | healthy | tests/helpers.py:14 |
FakeTokenProvider |
software | healthy | tests/helpers.py:38 |
StreamSessionTests |
software | healthy | tests/unit/test_stream_session.py:25 |
ErrorReprRedactionTests |
software | healthy | tests/unit/test_errors.py:14 |
OrderStatusTests |
software | healthy | tests/unit/test_order_status.py:9 |
FakeHttpxResponse |
software | healthy | tests/unit/test_httpx_transport.py:11 |
FakeHttpxClient |
software | healthy | tests/unit/test_httpx_transport.py:17 |
FakeBlockingStream |
software | healthy | tests/unit/test_httpx_transport.py:30 |
StubUrllibTransport |
software | healthy | tests/unit/test_httpx_transport.py:44 |
FailingUrllibTransport |
software | healthy | tests/unit/test_httpx_transport.py:52 |
HttpxTransportTests |
software | healthy | tests/unit/test_httpx_transport.py:57 |
SpecCoverageTests |
software | healthy | tests/unit/test_spec_coverage.py:63 |
CloseTrackingTransport |
software | healthy | tests/unit/test_client_features.py:38 |
ClientFeatureTests |
software | healthy | tests/unit/test_client_features.py:45 |
ModelAndValidationTests |
software | healthy | tests/unit/test_models_and_validation.py:64 |
RestRetryTests |
software | healthy | tests/unit/test_rest_retries.py:17 |
ConfigTests |
software | healthy | tests/unit/test_config.py:19 |
TradeTests |
software | healthy | tests/unit/test_trade.py:12 |
RedactionTests |
software | healthy | tests/unit/test_redaction.py:8 |
RateLimitTests |
software | healthy | tests/unit/test_rate_limit.py:10 |
StreamParserTests |
software | healthy | tests/unit/test_stream_parser.py:9 |
AuthTests |
software | healthy | tests/unit/test_auth.py:37 |
PublicApiTests |
software | healthy | tests/unit/test_public_api.py:37 |
BuilderTests |
software | healthy | tests/unit/test_builders.py:18 |
ReconciliationTests |
software | healthy | tests/unit/test_reconciliation.py:66 |
SimReadOnlyIntegrationTests |
software | healthy | tests/integration_sim/test_sim_read_only.py:16 |
SimTradeIntegrationTests |
software | healthy | tests/integration_sim/test_sim_trade_opt_in.py:36 |
TradeStationTrade |
software | healthy | src/tradestation_api_wrapper/trade.py:21 |
TradeStationCapabilities |
software | healthy | src/tradestation_api_wrapper/capabilities.py:6 |
TradeStationClient |
software | healthy | src/tradestation_api_wrapper/client.py:87 |
RetryPolicy |
software | healthy | src/tradestation_api_wrapper/rate_limit.py:20 |
StreamEventKind |
software | healthy | src/tradestation_api_wrapper/stream.py:22 |
StreamEvent |
software | healthy | src/tradestation_api_wrapper/stream.py:31 |
JsonStreamParser |
software | healthy | src/tradestation_api_wrapper/stream.py:36 |
StreamReconnectPolicy |
software | healthy | src/tradestation_api_wrapper/stream.py:78 |
TradeStationStream |
software | healthy | src/tradestation_api_wrapper/stream.py:97 |
ReconciliationOutcome |
software | healthy | src/tradestation_api_wrapper/reconciliation.py:11 |
ReconciliationResult |
software | healthy | src/tradestation_api_wrapper/reconciliation.py:18 |
AccessTokenProvider |
software | healthy | src/tradestation_api_wrapper/rest.py:41 |
StaticTokenProvider |
software | healthy | src/tradestation_api_wrapper/rest.py:49 |
TradeStationRestClient |
software | healthy | src/tradestation_api_wrapper/rest.py:60 |
Environment |
software | healthy | src/tradestation_api_wrapper/config.py:22 |
TradeStationConfig |
software | healthy | src/tradestation_api_wrapper/config.py:27 |
OAuthToken |
software | healthy | src/tradestation_api_wrapper/auth.py:33 |
TokenStore |
software | healthy | src/tradestation_api_wrapper/auth.py:72 |
MemoryTokenStore |
software | healthy | src/tradestation_api_wrapper/auth.py:87 |
TokenCodec |
software | healthy | src/tradestation_api_wrapper/auth.py:110 |
PlainTextTokenCodec |
software | healthy | src/tradestation_api_wrapper/auth.py:118 |
FileTokenStore |
software | healthy | src/tradestation_api_wrapper/auth.py:130 |
_TokenFileLock |
software | healthy | src/tradestation_api_wrapper/auth.py:180 |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.md |
software | healthy | README.md |
pyproject.toml |
software | healthy | pyproject.toml |
LICENSE |
software | healthy | LICENSE |
AGENTS.md |
software | healthy | AGENTS.md |
__init__.py |
software | healthy | tests/__init__.py |
helpers.py |
software | healthy | tests/helpers.py |
test_stream_session.py |
software | healthy | tests/unit/test_stream_session.py |
test_errors.py |
software | healthy | tests/unit/test_errors.py |
__init__.py |
software | healthy | tests/unit/__init__.py |
test_order_status.py |
software | healthy | tests/unit/test_order_status.py |
test_httpx_transport.py |
software | healthy | tests/unit/test_httpx_transport.py |
test_spec_coverage.py |
software | healthy | tests/unit/test_spec_coverage.py |
test_client_features.py |
software | healthy | tests/unit/test_client_features.py |
test_models_and_validation.py |
software | healthy | tests/unit/test_models_and_validation.py |
test_rest_retries.py |
software | healthy | tests/unit/test_rest_retries.py |
test_config.py |
software | healthy | tests/unit/test_config.py |
test_trade.py |
software | healthy | tests/unit/test_trade.py |
test_redaction.py |
software | healthy | tests/unit/test_redaction.py |
test_rate_limit.py |
software | healthy | tests/unit/test_rate_limit.py |
test_stream_parser.py |
software | healthy | tests/unit/test_stream_parser.py |
test_auth.py |
software | healthy | tests/unit/test_auth.py |
test_public_api.py |
software | healthy | tests/unit/test_public_api.py |
test_builders.py |
software | healthy | tests/unit/test_builders.py |
test_reconciliation.py |
software | healthy | tests/unit/test_reconciliation.py |
__init__.py |
software | healthy | tests/integration_sim/__init__.py |
test_sim_read_only.py |
software | healthy | tests/integration_sim/test_sim_read_only.py |
test_sim_trade_opt_in.py |
software | healthy | tests/integration_sim/test_sim_trade_opt_in.py |
validation.md |
software | healthy | docs/validation.md |
agent-recipes.md |
software | healthy | docs/agent-recipes.md |
safety-invariants.md |
software | healthy | docs/safety-invariants.md |
codex_ts_api_wrapper_post_pass3_followup.md |
software | healthy | GptPro/codex_ts_api_wrapper_post_pass3_followup.md |
codex_ts_api_wrapper_post_pass5_cleanup.md |
software | healthy | GptPro/codex_ts_api_wrapper_post_pass5_cleanup.md |
codex_latest_ts_api_wrapper_review.md |
software | healthy | GptPro/codex_latest_ts_api_wrapper_review.md |
codex_ts_api_wrapper_review.md |
software | healthy | GptPro/codex_ts_api_wrapper_review.md |
ts_api_wrapper_second_pass_review.md |
software | healthy | GptPro/ts_api_wrapper_second_pass_review.md |
ts-api-wrapper-review_2nd_pass.md |
software | healthy | GptPro/ts-api-wrapper-review_2nd_pass.md |
tradestation_only_python_implementation_plan_for_codex.md |
software | healthy | GptPro/tradestation_only_python_implementation_plan_for_cod… |
ts-api-wrapper-review-pass3.md |
software | healthy | GptPro/ts-api-wrapper-review-pass3.md |
ts-api-wrapper-review.md |
software | healthy | GptPro/ts-api-wrapper-review.md |
ts-api-wrapper-review-pass4.md |
software | healthy | GptPro/ts-api-wrapper-review-pass4.md |
ts-api-wrapper-review-pass5.md |
software | healthy | GptPro/ts-api-wrapper-review-pass5.md |
pin_tradestation_spec.py |
software | healthy | tools/pin_tradestation_spec.py |
trade.py |
software | healthy | src/tradestation_api_wrapper/trade.py |
capabilities.py |
software | healthy | src/tradestation_api_wrapper/capabilities.py |
client.py |
software | healthy | src/tradestation_api_wrapper/client.py |
rate_limit.py |
software | healthy | src/tradestation_api_wrapper/rate_limit.py |
__init__.py |
software | healthy | src/tradestation_api_wrapper/__init__.py |
builders.py |
software | healthy | src/tradestation_api_wrapper/builders.py |
stream.py |
software | healthy | src/tradestation_api_wrapper/stream.py |
reconciliation.py |
software | healthy | src/tradestation_api_wrapper/reconciliation.py |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
tests |
software | healthy | tests |
unit |
software | healthy | tests/unit |
integration_sim |
software | healthy | tests/integration_sim |
docs |
software | healthy | docs |
GptPro |
software | healthy | GptPro |
tools |
software | healthy | tools |
src |
software | healthy | src |
tradestation_api_wrapper |
software | healthy | src/tradestation_api_wrapper |
specs |
software | healthy | specs |
tradestation |
software | healthy | specs/tradestation |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::src/tradestation_api_wrapper/auth.py |
security | healthy | src/tradestation_api_wrapper/auth.py |
auth::AGENTS.md |
security | healthy | AGENTS.md |
auth::README.md |
security | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-0a5laypb |
software | healthy | /tmp/repobility-clone-0a5laypb |
| Label | Layer | Status | Path |
|---|---|---|---|
port:31022 |
network | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::gcp |
hardware | healthy | src/tradestation_api_wrapper/models.py |
This page is publicly accessible at:
https://repobility.com/scan/ea8566ff-f7ee-43cc-a8d2-820d2cc7208f/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/ea8566ff-f7ee-43cc-a8d2-820d2cc7208f/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.