manta-trading-data 0.6.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- manta_trading_data-0.6.0/.agents/skills/analyze/SKILL.md +198 -0
- manta_trading_data-0.6.0/.claude/agents/code-review-agent.md +233 -0
- manta_trading_data-0.6.0/.claude/agents/code-review-config.json +77 -0
- manta_trading_data-0.6.0/.claude/agents/task-checker.md +44 -0
- manta_trading_data-0.6.0/.claude/agents/tester.md +64 -0
- manta_trading_data-0.6.0/.claude/rules/dart.md +155 -0
- manta_trading_data-0.6.0/.claude/rules/electron.md +18 -0
- manta_trading_data-0.6.0/.claude/rules/flutter.md +159 -0
- manta_trading_data-0.6.0/.claude/rules/python.md +102 -0
- manta_trading_data-0.6.0/.claude/rules/react.md +72 -0
- manta_trading_data-0.6.0/.claude/rules/sql.md +97 -0
- manta_trading_data-0.6.0/.claude/rules/testing.md +128 -0
- manta_trading_data-0.6.0/.claude/rules/typescript.md +256 -0
- manta_trading_data-0.6.0/.claude/settings.json +15 -0
- manta_trading_data-0.6.0/.claude/skills/analyze/SKILL.md +198 -0
- manta_trading_data-0.6.0/.cursor/agents/code-review-agent.mdc +233 -0
- manta_trading_data-0.6.0/.cursor/rules/database.mdc +21 -0
- manta_trading_data-0.6.0/.cursor/rules/general.mdc +57 -0
- manta_trading_data-0.6.0/.cursor/rules/react.mdc +37 -0
- manta_trading_data-0.6.0/.cursor/rules/review.mdc +291 -0
- manta_trading_data-0.6.0/.cursor/rules/testing.mdc +23 -0
- manta_trading_data-0.6.0/.cursor/rules/typescript.mdc +19 -0
- manta_trading_data-0.6.0/.env_sample +36 -0
- manta_trading_data-0.6.0/.github/workflows/ci.yml +25 -0
- manta_trading_data-0.6.0/.gitignore +177 -0
- manta_trading_data-0.6.0/.gitleaks.toml +9 -0
- manta_trading_data-0.6.0/.gitmodules +3 -0
- manta_trading_data-0.6.0/AGENTS.md +126 -0
- manta_trading_data-0.6.0/AGGREGATION_PERMISSIONS_ISSUE.md +95 -0
- manta_trading_data-0.6.0/CHANGELOG.md +403 -0
- manta_trading_data-0.6.0/CLAUDE.md +149 -0
- manta_trading_data-0.6.0/CLAUDE.md.bak +456 -0
- manta_trading_data-0.6.0/DATABASE_SETUP_GUIDE.md +183 -0
- manta_trading_data-0.6.0/DEVLOG.md +62 -0
- manta_trading_data-0.6.0/PKG-INFO +332 -0
- manta_trading_data-0.6.0/README - plan.md +77 -0
- manta_trading_data-0.6.0/README.md +296 -0
- manta_trading_data-0.6.0/TIMESCALE_TESTING.md +364 -0
- manta_trading_data-0.6.0/check_schema.py +38 -0
- manta_trading_data-0.6.0/claude_instructions.md +19 -0
- manta_trading_data-0.6.0/config/lists/sp500-snapshot.txt +7 -0
- manta_trading_data-0.6.0/config/lists/sp500.txt +503 -0
- manta_trading_data-0.6.0/config/symbol-lists.yaml +27 -0
- manta_trading_data-0.6.0/create_new_aggregations.py +222 -0
- manta_trading_data-0.6.0/data/symbol_lists/nasdaq100.json +15 -0
- manta_trading_data-0.6.0/data/symbol_lists/r2000.json +16 -0
- manta_trading_data-0.6.0/data/symbol_lists/sp500.json +18 -0
- manta_trading_data-0.6.0/deploy/systemd/journald-manta-trading.conf +11 -0
- manta_trading_data-0.6.0/deploy/systemd/mt-daily-daemon.service.tmpl +29 -0
- manta_trading_data-0.6.0/deploy/systemd/mt-minute-daemon.service.tmpl +29 -0
- manta_trading_data-0.6.0/directory-tree.txt +118 -0
- manta_trading_data-0.6.0/docs/api/foundation_usage_examples.md +657 -0
- manta_trading_data-0.6.0/docs/database/foundation_schema.md +334 -0
- manta_trading_data-0.6.0/docs/database/migration_750_guide.md +480 -0
- manta_trading_data-0.6.0/error-handling-summary-updated.md +71 -0
- manta_trading_data-0.6.0/error-handling-summary.md +50 -0
- manta_trading_data-0.6.0/fix_aggregation_permissions.py +144 -0
- manta_trading_data-0.6.0/news.bat +3 -0
- manta_trading_data-0.6.0/news.sh +4 -0
- manta_trading_data-0.6.0/ohlc.bat +3 -0
- manta_trading_data-0.6.0/ohlc.sh +5 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/100-arch.data-storage.md +160 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/100-slices.data-storage.md +49 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/120-arch-adjustment-policy.md +359 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/120-arch.data-acquisition.md +168 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/120-slices.data-acquisition.md +53 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/140-arch.data-quality-operations.md +1458 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/140-slices.data-quality-operations.md +200 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/180-arch.data-serving.md +271 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/180-slices.data-serving-api.md +52 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/900-arch.foundation-cleanup.md +142 -0
- manta_trading_data-0.6.0/project-documents/user/architecture/900-slices.foundation-cleanup.md +64 -0
- manta_trading_data-0.6.0/project-documents/user/archive/03-minute-data-architecture-analysis.md +312 -0
- manta_trading_data-0.6.0/project-documents/user/archive/050-arch.data-storage-and-acquisition.md +824 -0
- manta_trading_data-0.6.0/project-documents/user/archive/project-state-analysis.2025-01-22.md +299 -0
- manta_trading_data-0.6.0/project-documents/user/meta/20260119-audit-trading.md +301 -0
- manta_trading_data-0.6.0/project-documents/user/meta/20260119-env-cowork-vm.md +55 -0
- manta_trading_data-0.6.0/project-documents/user/meta/20260119-env-poetry-to-uv.md +156 -0
- manta_trading_data-0.6.0/project-documents/user/meta/20260119-guide-updates.md +257 -0
- manta_trading_data-0.6.0/project-documents/user/meta/FOCUS.md +39 -0
- manta_trading_data-0.6.0/project-documents/user/meta/README.md +31 -0
- manta_trading_data-0.6.0/project-documents/user/notes/000-process-journal.md +573 -0
- manta_trading_data-0.6.0/project-documents/user/notes/163-baseline-verify-20260724.md +599 -0
- manta_trading_data-0.6.0/project-documents/user/notes/167-prod-verify-20260727.md +136 -0
- manta_trading_data-0.6.0/project-documents/user/notes/2026-05-03-140-slice-impact.md +175 -0
- manta_trading_data-0.6.0/project-documents/user/notes/2026-05-03-data-pipeline-simplification.md +427 -0
- manta_trading_data-0.6.0/project-documents/user/project-guides/000-concept.trading.md +226 -0
- manta_trading_data-0.6.0/project-documents/user/project-guides/001-initiative-plan.trading.md +92 -0
- manta_trading_data-0.6.0/project-documents/user/reference/data-correctness-architecture.md +346 -0
- manta_trading_data-0.6.0/project-documents/user/reference/minute-fetch-code-paths.md +106 -0
- manta_trading_data-0.6.0/project-documents/user/reference/prod-scale-and-coverage-scan-baseline.md +141 -0
- manta_trading_data-0.6.0/project-documents/user/research/eodhd-adjustment-probe/01_intraday.json +79062 -0
- manta_trading_data-0.6.0/project-documents/user/research/eodhd-adjustment-probe/02_splits.json +22 -0
- manta_trading_data-0.6.0/project-documents/user/research/eodhd-adjustment-probe/03_dividends.json +902 -0
- manta_trading_data-0.6.0/project-documents/user/research/eodhd-adjustment-probe/04_eod.json +83 -0
- manta_trading_data-0.6.0/project-documents/user/research/eodhd-chunk-size-probe/results.json +200 -0
- manta_trading_data-0.6.0/project-documents/user/research/slice-127-followups.md +67 -0
- manta_trading_data-0.6.0/project-documents/user/research/slice-128-dry-run.md +246 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/100-review.arch.data-storage-1.md +137 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/100-review.arch.data-storage.md +229 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/100-review.slice.psycopg3-migration-and-connection-consolidation.md +79 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/100-review.tasks.psycopg3-migration-and-connection-consolidation.md +112 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/101-review.slice.coverage-analysis-and-data-inventory.md +153 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/101-review.tasks.coverage-analysis-and-data-inventory.md +124 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/102-review.slice.schema-instrument-registry-and-trading-calendar-tables.md +81 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/102-review.tasks.schema-instrument-registry-and-trading-calendar-tables.md +109 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/103-review.slice.instrument-registry-integration.md +48 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/103-review.tasks.instrument-registry-integration.md +28 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/104-review.slice.trading-calendar-integration.md +52 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/104-review.tasks.trading-calendar-integration.md +82 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/105-review.slice.tick-event-hypertable-schema.md +85 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/105-review.tasks.tick-event-hypertable-schema.md +106 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/120-review.arch.data-acquisition.md +181 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/121-review.slice.acquisition-state-schema-and-orchestrator-core.md +115 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/121-review.tasks.acquisition-state-schema-and-orchestrator-core.md +100 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/122-review.code.daily-provider-interface-and-alphavantage-daily-provider.md +20 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/122-review.slice.daily-provider-interface-and-alphavantage-daily-provider.md +117 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/122-review.tasks.daily-provider-interface-and-alphavantage-daily-provider.md +125 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/123-review.slice.daily-acquisition-daemon.md +87 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/123-review.tasks.daily-acquisition-daemon.md +104 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/124-review.slice.minute-provider-fixes-and-orchestrator-hardening.md +118 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/124-review.tasks.minute-provider-fixes-and-orchestrator-hardening.md +131 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/125-review.slice.minute-acquisition-daemon.md +39 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/125-review.tasks.minute-acquisition-daemon.md +100 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/128-review.slice.eodhd-catchup-and-production-cutover.md +93 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/128-review.tasks.eodhd-catchup-and-production-cutover.md +69 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/131-review.slice.unified-schema-migration-tracking-across-both-databases.md +77 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/131-review.tasks.unified-schema-migration-tracking-across-both-databases.md +90 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/140-review.arch.data-quality-operations.md +159 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/141-review.code.universe-rebuild-from-eodhd-instruments-schema-migration.md +78 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/141-review.slice.universe-rebuild-from-eodhd-instruments-schema-migration.md +84 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/141-review.tasks.universe-rebuild-from-eodhd-instruments-schema-migration.md +147 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/142-review.slice.schema-migration-and-cold-start.md +75 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/142-review.tasks.schema-migration-and-cold-start.md +158 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/143-review.slice.compute-k-factor-single-source-of-truth-daily-ohlcv-hypertable.md +86 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/143-review.tasks.compute-k-factor-single-source-of-truth-daily-ohlcv-hypertable.md +148 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/144-review.slice.trading-sessions-materialization-data-status-view-rewrite.md +86 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/144-review.tasks.trading-sessions-materialization-data-status-view-rewrite.md +88 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/145-review.slice.daemon-refactor-data-gaps-driven-backfill-advisory-locking-band-based-adj-writes.md +132 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/145-review.tasks.daemon-refactor-data-gaps-driven-backfill-advisory-locking-band-based-adj-writes.md +129 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/146-review.slice.long-running-daemon-named-lists-mt-data-ca-ca-drift-recompute.md +118 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/146-review.tasks.long-running-daemon-named-lists-mt-data-ca-ca-drift-recompute.part-1.md +102 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/146-review.tasks.long-running-daemon-named-lists-mt-data-ca-ca-drift-recompute.part-2.md +102 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/147-review.slice.mt-data-status.md +75 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/147-review.tasks.mt-data-status.md +57 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/148-review.slice.mt-data-refetch.md +74 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/148-review.tasks.mt-data-refetch.md +74 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/152-review.slice.consolidation.md +102 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/153-review.slice.adjusted-on-read-core.md +138 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/153-review.tasks.adjusted-on-read-core.md +167 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/156-review.slice.cold-start-integrity.md +66 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/156-review.tasks.cold-start-integrity.md +147 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/157-review.slice.preferred-stock-registry-filter.md +92 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/157-review.tasks.preferred-stock-registry-filter.md +115 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/158-review.slice.universe-delisted-filter.md +66 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/158-review.tasks.universe-delisted-filter.md +130 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/159-review.slice.point-in-time-universe-populate-lifecycle-dates-for-delisted-symbols.md +79 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/159-review.tasks.point-in-time-universe-populate-lifecycle-dates-for-delisted-symbols.md +104 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/160-review.slice.timescaledb-columnar-compression-on-minute-ohlcv-and-daily-ohlcv.md +106 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/160-review.tasks.timescaledb-columnar-compression-on-minute-ohlcv-and-daily-ohlcv.md +122 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/161-review.slice.index-constituent-tracking-daily-snapshot-of-sp500-r2000-nasdaq-100.md +93 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/161-review.tasks.index-constituent-tracking-daily-snapshot-of-sp500-r2000-nasdaq-100.md +129 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/162-review.code.coverage-aware-minute-gap-seeding.md +57 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/162-review.slice.coverage-aware-minute-gap-seeding.md +66 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/162-review.tasks.coverage-aware-minute-gap-seeding.md +103 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/163-review.code.minute-cagg-chunk-re-sizing.md +120 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/163-review.slice.minute-cagg-chunk-re-sizing.md +101 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/163-review.tasks.minute-cagg-chunk-re-sizing.md +75 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/165-review.code.unify-or-observably-distinguish-divergent-minute-fetch-code-paths.md +86 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/165-review.slice.unify-or-observably-distinguish-divergent-minute-fetch-code-paths.md +48 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/165-review.tasks.unify-or-observably-distinguish-divergent-minute-fetch-code-paths.md +66 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/166-review.code.urgent-diagnose-and-fix-pathological-minute-ohlcv-query-latency.md +140 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/166-review.slice.urgent-diagnose-and-fix-pathological-minute-ohlcv-query-latency.md +84 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/166-review.tasks.urgent-diagnose-and-fix-pathological-minute-ohlcv-query-latency.md +84 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/167-review.code.cagg-backed-data-status-bars-summary-reach-the-sub-second-nfr.md +185 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/167-review.slice.cagg-backed-data-status-bars-summary-reach-the-sub-second-nfr.md +84 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/167-review.tasks.cagg-backed-data-status-bars-summary-reach-the-sub-second-nfr.md +57 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/168-review.code.cagg-freshness-assertion-for-derived-data-readers.md +99 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/168-review.slice.cagg-freshness-assertion-for-derived-data-readers.md +135 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/168-review.tasks.cagg-freshness-assertion-for-derived-data-readers.md +121 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/180-review.arch.data-serving.md +168 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/181-review.slice.fastapi-skeleton-mt-serve-health-endpoint.md +102 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/181-review.tasks.fastapi-skeleton-mt-serve-health-endpoint.md +121 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/182-review.slice.bars-endpoint.md +180 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/182-review.tasks.bars-endpoint.md +125 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/183-review.slice.symbols-endpoints-available-ranges-view.md +93 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/183-review.tasks.symbols-endpoints-available-ranges-view.md +96 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/184-review.slice.polish-gaps-endpoint.md +93 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/184-review.tasks.polish-gaps-endpoint.md +100 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/900-review.arch.foundation-cleanup.md +129 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/900-review.slice.cli-scaffold-and-config-system.md +48 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/900-review.tasks.cli-scaffold-and-config-system.md +53 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/901-review.slice.logging-and-output-formatting.md +522 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/901-review.tasks.logging-and-output-formatting.md +66 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/902-review.code.provider-registry-and-status.md +1878 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/902-review.slice.provider-registry-and-status.md +104 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/902-review.tasks.provider-registry-and-status.md +77 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/903-review.slice.deprecated-code-removal-and-httpx-migration.md +189 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/903-review.tasks.deprecated-code-removal-and-httpx-migration.md +138 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/908-review.slice.pypi-distribution-and-production-cutover.md +75 -0
- manta_trading_data-0.6.0/project-documents/user/reviews/908-review.tasks.pypi-distribution-and-production-cutover.md +102 -0
- manta_trading_data-0.6.0/project-documents/user/runbooks/cagg-maintenance-pausing.md +238 -0
- manta_trading_data-0.6.0/project-documents/user/runbooks/production-deploy.md +312 -0
- manta_trading_data-0.6.0/project-documents/user/slices/100-slice.psycopg3-migration-and-connection-consolidation.md +337 -0
- manta_trading_data-0.6.0/project-documents/user/slices/101-slice.coverage-analysis-and-data-inventory.md +376 -0
- manta_trading_data-0.6.0/project-documents/user/slices/102-slice.schema-instrument-registry-and-trading-calendar-tables.md +512 -0
- manta_trading_data-0.6.0/project-documents/user/slices/103-slice.instrument-registry-integration.md +396 -0
- manta_trading_data-0.6.0/project-documents/user/slices/104-slice.trading-calendar-integration.md +330 -0
- manta_trading_data-0.6.0/project-documents/user/slices/105-slice.tick-event-hypertable-schema.md +487 -0
- manta_trading_data-0.6.0/project-documents/user/slices/121-slice.acquisition-state-schema-and-orchestrator-core.md +289 -0
- manta_trading_data-0.6.0/project-documents/user/slices/122-slice.daily-provider-interface-and-alphavantage-daily-provider.md +523 -0
- manta_trading_data-0.6.0/project-documents/user/slices/123-slice.daily-acquisition-daemon.md +479 -0
- manta_trading_data-0.6.0/project-documents/user/slices/124-slice.minute-provider-fixes-and-orchestrator-hardening.md +384 -0
- manta_trading_data-0.6.0/project-documents/user/slices/125-slice.minute-acquisition-daemon.md +541 -0
- manta_trading_data-0.6.0/project-documents/user/slices/126-slice.production-deployment.md +33 -0
- manta_trading_data-0.6.0/project-documents/user/slices/127-slice.eodhd-minute-provider-and-adjustment-layer.md +650 -0
- manta_trading_data-0.6.0/project-documents/user/slices/128-slice.eodhd-catchup-and-production-cutover.md +599 -0
- manta_trading_data-0.6.0/project-documents/user/slices/129-slice.eodhd-universe-and-symbol-hygiene.md +213 -0
- manta_trading_data-0.6.0/project-documents/user/slices/130-slice.survivorship-bias-free-universe.md +198 -0
- manta_trading_data-0.6.0/project-documents/user/slices/131-slice.unified-schema-migration-tracking-across-both-databases.md +357 -0
- manta_trading_data-0.6.0/project-documents/user/slices/141-slice.universe-rebuild-from-eodhd-instruments-schema-migration.md +1088 -0
- manta_trading_data-0.6.0/project-documents/user/slices/142-slice.schema-migration-and-cold-start.md +1470 -0
- manta_trading_data-0.6.0/project-documents/user/slices/143-slice.compute-k-factor-single-source-of-truth-daily-ohlcv-hypertable.md +588 -0
- manta_trading_data-0.6.0/project-documents/user/slices/144-slice.trading-sessions-materialization-data-status-view-rewrite.md +711 -0
- manta_trading_data-0.6.0/project-documents/user/slices/145-slice.daemon-refactor-data-gaps-driven-backfill-advisory-locking-band-based-adj-writes.md +1004 -0
- manta_trading_data-0.6.0/project-documents/user/slices/146-slice.long-running-daemon-named-lists-mt-data-ca-ca-drift-recompute.md +953 -0
- manta_trading_data-0.6.0/project-documents/user/slices/147-slice.mt-data-status.md +848 -0
- manta_trading_data-0.6.0/project-documents/user/slices/148-slice.mt-data-refetch.md +462 -0
- manta_trading_data-0.6.0/project-documents/user/slices/152-slice.consolidation.md +256 -0
- manta_trading_data-0.6.0/project-documents/user/slices/153-slice.adjusted-on-read-core.md +612 -0
- manta_trading_data-0.6.0/project-documents/user/slices/154-slice.cli-surface.md +130 -0
- manta_trading_data-0.6.0/project-documents/user/slices/156-slice.cold-start-integrity.md +577 -0
- manta_trading_data-0.6.0/project-documents/user/slices/157-slice.preferred-stock-registry-filter.md +248 -0
- manta_trading_data-0.6.0/project-documents/user/slices/158-slice.universe-delisted-filter.md +211 -0
- manta_trading_data-0.6.0/project-documents/user/slices/159-slice.point-in-time-universe-populate-lifecycle-dates-for-delisted-symbols.md +383 -0
- manta_trading_data-0.6.0/project-documents/user/slices/160-slice.timescaledb-columnar-compression-on-minute-ohlcv-and-daily-ohlcv.md +431 -0
- manta_trading_data-0.6.0/project-documents/user/slices/161-slice.index-constituent-tracking-daily-snapshot-of-sp500-r2000-nasdaq-100.md +307 -0
- manta_trading_data-0.6.0/project-documents/user/slices/162-slice.coverage-aware-minute-gap-seeding.md +654 -0
- manta_trading_data-0.6.0/project-documents/user/slices/163-slice.minute-cagg-chunk-re-sizing.md +506 -0
- manta_trading_data-0.6.0/project-documents/user/slices/165-slice.unify-or-observably-distinguish-divergent-minute-fetch-code-paths.md +490 -0
- manta_trading_data-0.6.0/project-documents/user/slices/166-slice.urgent-diagnose-and-fix-pathological-minute-ohlcv-query-latency.md +660 -0
- manta_trading_data-0.6.0/project-documents/user/slices/167-slice.cagg-backed-data-status-bars-summary-reach-the-sub-second-nfr.md +670 -0
- manta_trading_data-0.6.0/project-documents/user/slices/168-slice.cagg-freshness-assertion-for-derived-data-readers.md +404 -0
- manta_trading_data-0.6.0/project-documents/user/slices/181-slice.fastapi-skeleton-mt-serve-health-endpoint.md +357 -0
- manta_trading_data-0.6.0/project-documents/user/slices/182-slice.bars-endpoint.md +470 -0
- manta_trading_data-0.6.0/project-documents/user/slices/183-slice.symbols-endpoints-available-ranges-view.md +258 -0
- manta_trading_data-0.6.0/project-documents/user/slices/184-slice.polish-gaps-endpoint.md +326 -0
- manta_trading_data-0.6.0/project-documents/user/slices/900-slice.cli-scaffold-and-config-system.md +186 -0
- manta_trading_data-0.6.0/project-documents/user/slices/901-slice.logging-and-output-formatting.md +264 -0
- manta_trading_data-0.6.0/project-documents/user/slices/902-slice.provider-registry-and-status.md +363 -0
- manta_trading_data-0.6.0/project-documents/user/slices/903-slice.deprecated-code-removal-and-httpx-migration.md +379 -0
- manta_trading_data-0.6.0/project-documents/user/slices/906-slice.data-cli-module-decomposition.md +156 -0
- manta_trading_data-0.6.0/project-documents/user/slices/907-slice.ci-pipeline-and-load-test-gating.md +115 -0
- manta_trading_data-0.6.0/project-documents/user/slices/908-slice.pypi-distribution-and-production-cutover.md +192 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/100-tasks.psycopg3-migration-and-connection-consolidation.md +215 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/101-tasks.coverage-analysis-and-data-inventory.md +226 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/102-tasks.schema-instrument-registry-and-trading-calendar-tables.md +167 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/103-tasks.instrument-registry-integration.md +203 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/104-tasks.trading-calendar-integration.md +255 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/105-tasks.tick-event-hypertable-schema.md +193 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/121-tasks.acquisition-state-schema-and-orchestrator-core.md +243 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/122-tasks.daily-provider-interface-and-alphavantage-daily-provider.md +381 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/123-tasks.daily-acquisition-daemon.md +344 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/124-tasks.minute-provider-fixes-and-orchestrator-hardening.md +404 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/125-tasks.minute-acquisition-daemon.md +378 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/127-tasks.eodhd-minute-provider-and-adjustment-layer.md +551 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/128-tasks.eodhd-catchup-and-production-cutover.md +434 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/130-tasks.survivorship-bias-free-universe.md +146 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/131-tasks.unified-schema-migration-tracking-across-both-databases.md +183 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/141-tasks.universe-rebuild-from-eodhd-instruments-schema-migration.md +307 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/142-tasks.schema-migration-and-cold-start.md +327 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/143-tasks.compute-k-factor-single-source-of-truth-daily-ohlcv-hypertable.md +235 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/144-tasks.trading-sessions-materialization-data-status-view-rewrite.md +303 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/145-tasks.daemon-refactor-data-gaps-driven-backfill-advisory-locking-band-based-adj-writes-1.md +346 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/145-tasks.daemon-refactor-data-gaps-driven-backfill-advisory-locking-band-based-adj-writes-2.md +346 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/146-tasks.long-running-daemon-named-lists-mt-data-ca-ca-drift-recompute-1.md +512 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/146-tasks.long-running-daemon-named-lists-mt-data-ca-ca-drift-recompute-2.md +359 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/147-tasks.mt-data-status.md +433 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/148-tasks.mt-data-refetch.md +224 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/152-tasks.consolidation-1.md +242 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/153-tasks.adjusted-on-read-core.md +193 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/154-tasks.cli-surface.md +271 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/156-tasks.cold-start-integrity.md +358 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/157-tasks.preferred-stock-registry-filter.md +181 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/158-tasks.universe-delisted-filter.md +146 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/159-tasks.point-in-time-universe-populate-lifecycle-dates-for-delisted-symbols.md +170 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/160-tasks.timescaledb-columnar-compression-on-minute-ohlcv-and-daily-ohlcv.md +206 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/161-tasks.index-constituent-tracking-daily-snapshot-of-sp500-r2000-nasdaq-100.md +228 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/162-tasks.coverage-aware-minute-gap-seeding.md +246 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/163-tasks.minute-cagg-chunk-re-sizing.md +376 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/165-tasks.unify-or-observably-distinguish-divergent-minute-fetch-code-paths.md +277 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/166-tasks.urgent-diagnose-and-fix-pathological-minute-ohlcv-query-latency.md +387 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/167-tasks.cagg-backed-data-status-bars-summary-reach-the-sub-second-nfr.md +509 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/168-tasks.cagg-freshness-assertion-for-derived-data-readers.md +409 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/181-tasks.fastapi-skeleton-mt-serve-health-endpoint.md +248 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/182-tasks.bars-endpoint.md +276 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/183-tasks.symbols-endpoints-available-ranges-view.md +204 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/184-tasks.polish-gaps-endpoint.md +229 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/900-tasks.cli-scaffold-and-config-system.md +153 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/901-tasks.logging-and-output-formatting.md +178 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/902-tasks.provider-registry-and-status.md +240 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/903-tasks.deprecated-code-removal-and-httpx-migration.md +222 -0
- manta_trading_data-0.6.0/project-documents/user/tasks/908-tasks.pypi-distribution-and-production-cutover.md +213 -0
- manta_trading_data-0.6.0/pyproject.toml +77 -0
- manta_trading_data-0.6.0/readme-claude.md +17 -0
- manta_trading_data-0.6.0/recreate_aggregations.py +208 -0
- manta_trading_data-0.6.0/reference/SmaCross.html +61 -0
- manta_trading_data-0.6.0/reference/SmaCrossGuided_enableShort-False,maSignal-30_.html +61 -0
- manta_trading_data-0.6.0/reference/SmaCross_enableShort-False_.html +61 -0
- manta_trading_data-0.6.0/reference/dataset-exmaples/ESH20-20200103-20191227.csv +6388 -0
- manta_trading_data-0.6.0/reference/dataset-exmaples/ESH20_20200101_20200223.csv +29873 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/Activate.ps1 +399 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/activate +66 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/activate.bat +33 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/autopep8.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/deactivate.bat +21 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/dotenv.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/epylint.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/f2py.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/iptest.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/iptest3.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/ipython.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/ipython3.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/isort-identify-imports.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/isort.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/jupyter-kernel.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/jupyter-kernelspec.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/jupyter-migrate.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/jupyter-run.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/jupyter-troubleshoot.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/jupyter.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/normalizer.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pip.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pip3.10.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pip3.9.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pip3.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pycodestyle.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pygmentize.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pylint.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pyreverse.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/python.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pythonw.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pywin32_postinstall.py +633 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/pywin32_testall.py +80 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/symilar.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/tda-generate-token.py +84 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/tda-order-codegen.py +6 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/Scripts/tqdm.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/pyvenv.cfg +3 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/share/jupyter/kernels/python3/kernel.json +14 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/share/jupyter/kernels/python3/logo-32x32.png +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/share/jupyter/kernels/python3/logo-64x64.png +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/.lab10/share/man/man1/ipython.1.gz +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/databaselink.py +328 -0
- manta_trading_data-0.6.0/reference/labs/lab10/futuresQuote.py +309 -0
- manta_trading_data-0.6.0/reference/labs/lab10/linkreceiver.py +90 -0
- manta_trading_data-0.6.0/reference/labs/lab10/main.py +78 -0
- manta_trading_data-0.6.0/reference/labs/lab10/marketlink.py +392 -0
- manta_trading_data-0.6.0/reference/labs/lab10/readme.md +293 -0
- manta_trading_data-0.6.0/reference/labs/lab10/repeatedFunctionTimer.py +51 -0
- manta_trading_data-0.6.0/reference/labs/lab10/repeatedtimer.py +72 -0
- manta_trading_data-0.6.0/reference/labs/lab10/requirements.txt +0 -0
- manta_trading_data-0.6.0/reference/labs/lab10/tdapi.py +387 -0
- manta_trading_data-0.6.0/reference/labs/lab10/zmqReceiver.py +149 -0
- manta_trading_data-0.6.0/reference/labs/lab10/zmqSender.py +69 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/Activate.ps1 +437 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/activate +66 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/activate.bat +33 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/autopep8.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/bokeh.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/deactivate.bat +21 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/dotenv.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/epylint.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/f2py.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/iptest.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/iptest3.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/ipython.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/ipython3.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/isort-identify-imports.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/isort.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/jupyter-kernel.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/jupyter-kernelspec.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/jupyter-migrate.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/jupyter-run.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/jupyter-troubleshoot.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/jupyter.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/normalizer.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pip.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pip3.9.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pip3.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pycodestyle.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pygmentize.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pylint.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pyreverse.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/python.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pythonw.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pywin32_postinstall.py +633 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/pywin32_testall.py +80 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/symilar.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/tda-generate-token.py +84 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/tda-order-codegen.py +6 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/Scripts/tqdm.exe +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/main.py +56 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/pyvenv.cfg +3 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/share/jupyter/kernels/python3/kernel.json +14 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/share/jupyter/kernels/python3/logo-32x32.png +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/share/jupyter/kernels/python3/logo-64x64.png +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/share/man/man1/ipython.1.gz +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/.lab11/share/xyzservices/providers.json +9099 -0
- manta_trading_data-0.6.0/reference/labs/lab11/MarketStreamer.py +503 -0
- manta_trading_data-0.6.0/reference/labs/lab11/backtest.py +173 -0
- manta_trading_data-0.6.0/reference/labs/lab11/data/ESH20-20200103-20191227.csv +6388 -0
- manta_trading_data-0.6.0/reference/labs/lab11/data/ESH20_20200101_20200223.csv +29873 -0
- manta_trading_data-0.6.0/reference/labs/lab11/databaselink.py +352 -0
- manta_trading_data-0.6.0/reference/labs/lab11/futuresQuote.py +309 -0
- manta_trading_data-0.6.0/reference/labs/lab11/junk1.py +57 -0
- manta_trading_data-0.6.0/reference/labs/lab11/linkreceiver.py +90 -0
- manta_trading_data-0.6.0/reference/labs/lab11/main.py +61 -0
- manta_trading_data-0.6.0/reference/labs/lab11/marketlink.py +502 -0
- manta_trading_data-0.6.0/reference/labs/lab11/panda-lab.py +67 -0
- manta_trading_data-0.6.0/reference/labs/lab11/readme.md +308 -0
- manta_trading_data-0.6.0/reference/labs/lab11/repeatedFunctionTimer.py +46 -0
- manta_trading_data-0.6.0/reference/labs/lab11/repeatedThreadTimer.py +65 -0
- manta_trading_data-0.6.0/reference/labs/lab11/repeatedtimer.py +86 -0
- manta_trading_data-0.6.0/reference/labs/lab11/requirements.txt +0 -0
- manta_trading_data-0.6.0/reference/labs/lab11/tdapi.py +387 -0
- manta_trading_data-0.6.0/reference/labs/lab11/zmqReceiver.py +149 -0
- manta_trading_data-0.6.0/reference/labs/lab11/zmqSender.py +69 -0
- manta_trading_data-0.6.0/reference/labs/lab12/MarketStreamer.py +502 -0
- manta_trading_data-0.6.0/reference/labs/lab12/README.md +316 -0
- manta_trading_data-0.6.0/reference/labs/lab12/backtest.py +178 -0
- manta_trading_data-0.6.0/reference/labs/lab12/databaselink.py +352 -0
- manta_trading_data-0.6.0/reference/labs/lab12/futuresQuote.py +309 -0
- manta_trading_data-0.6.0/reference/labs/lab12/linkreceiver.py +78 -0
- manta_trading_data-0.6.0/reference/labs/lab12/main.py +59 -0
- manta_trading_data-0.6.0/reference/labs/lab12/marketlink.py +429 -0
- manta_trading_data-0.6.0/reference/labs/lab12/panda-lab.py +68 -0
- manta_trading_data-0.6.0/reference/labs/lab12/repeatedFunctionTimer.py +46 -0
- manta_trading_data-0.6.0/reference/labs/lab12/repeatedThreadTimer.py +65 -0
- manta_trading_data-0.6.0/reference/labs/lab12/repeatedtimer.py +86 -0
- manta_trading_data-0.6.0/reference/labs/lab12/requirements.txt +0 -0
- manta_trading_data-0.6.0/reference/labs/lab12/tdapi.py +387 -0
- manta_trading_data-0.6.0/reference/labs/lab12/zmqReceiver.py +149 -0
- manta_trading_data-0.6.0/reference/labs/lab12/zmqSender.py +69 -0
- manta_trading_data-0.6.0/reference/labs/readme.md +6 -0
- manta_trading_data-0.6.0/reference/notes/strategy action.txt +161 -0
- manta_trading_data-0.6.0/reference/sp500.csv +504 -0
- manta_trading_data-0.6.0/reference/symbol-lists/russell2000.txt +1783 -0
- manta_trading_data-0.6.0/reference/symbol-lists/sp500.txt +500 -0
- manta_trading_data-0.6.0/refresh_aggregations.py +104 -0
- manta_trading_data-0.6.0/refresh_as_postgres.py +121 -0
- manta_trading_data-0.6.0/refresh_direct.py +81 -0
- manta_trading_data-0.6.0/run_timescale_tests.py +153 -0
- manta_trading_data-0.6.0/scripts/README.md +62 -0
- manta_trading_data-0.6.0/scripts/capture_eodhd_fixture.py +82 -0
- manta_trading_data-0.6.0/scripts/probe_eodhd_adjustment.py +198 -0
- manta_trading_data-0.6.0/scripts/probe_eodhd_chunk_size.py +171 -0
- manta_trading_data-0.6.0/scripts/test_foundation_manual.py +187 -0
- manta_trading_data-0.6.0/scripts/update-guides +2 -0
- manta_trading_data-0.6.0/scripts/validate_750_calendar_data.sql +186 -0
- manta_trading_data-0.6.0/scripts/validate_750_instrument_data.sql +219 -0
- manta_trading_data-0.6.0/scripts/verify_750_migration.sql +104 -0
- manta_trading_data-0.6.0/setup.py +3 -0
- manta_trading_data-0.6.0/setup_clean_database.py +245 -0
- manta_trading_data-0.6.0/sql/DEPLOY_TO_PROD.md +67 -0
- manta_trading_data-0.6.0/sql/README_TIMESCALEDB_SETUP.md +145 -0
- manta_trading_data-0.6.0/sql/final_working.sql +172 -0
- manta_trading_data-0.6.0/sql/grand_trading_app.sql +27 -0
- manta_trading_data-0.6.0/src/manta_trading/__init__.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/agents/__init__.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/agents/newsagent.py +109 -0
- manta_trading_data-0.6.0/src/manta_trading/api/__init__.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/api/apireadstatus.py +134 -0
- manta_trading_data-0.6.0/src/manta_trading/api/eodhd_sync.py +206 -0
- manta_trading_data-0.6.0/src/manta_trading/api/finnhub/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/api/finnhub/finnhubapi.py +234 -0
- manta_trading_data-0.6.0/src/manta_trading/api/http_retry.py +109 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/__init__.py +7 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/app.py +119 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/deps.py +33 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/models/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/models/responses.py +133 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/routes/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/routes/bars.py +87 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/routes/gaps.py +108 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/routes/health.py +37 -0
- manta_trading_data-0.6.0/src/manta_trading/api_server/routes/symbols.py +153 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/__init__.py +1 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/app.py +66 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/commands/__init__.py +1 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/commands/config.py +137 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/commands/data.py +3397 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/commands/provider.py +178 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/commands/serve.py +34 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/commands/status.py +131 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/commands/universes.py +197 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/output.py +46 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/rendering/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/cli/rendering/status_table.py +360 -0
- manta_trading_data-0.6.0/src/manta_trading/config/__init__.py +69 -0
- manta_trading_data-0.6.0/src/manta_trading/config/keys.py +49 -0
- manta_trading_data-0.6.0/src/manta_trading/config/manager.py +145 -0
- manta_trading_data-0.6.0/src/manta_trading/constants.py +511 -0
- manta_trading_data-0.6.0/src/manta_trading/data/__init__.py +6 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/__init__.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daemon/__init__.py +1 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daemon/daily.py +598 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daemon/heartbeat.py +164 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daemon/minute.py +824 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daemon/runner.py +487 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daemon/types.py +62 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daily/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daily/freshness.py +161 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daily/provider.py +84 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daily/providers/__init__.py +46 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/daily/providers/eodhd.py +228 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/events.py +154 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/orchestrator.py +319 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/outcomes.py +168 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/quota.py +176 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/state.py +209 -0
- manta_trading_data-0.6.0/src/manta_trading/data/acquisition/symbols.py +105 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/__init__.py +31 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/_adjusted.py +108 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/ingest.py +189 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/k_factor.py +198 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/providers/__init__.py +119 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/providers/_http.py +202 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/providers/bulk_ca.py +204 -0
- manta_trading_data-0.6.0/src/manta_trading/data/adjustment/providers/eodhd.py +158 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/__init__.py +13 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/adjustment_policy.py +152 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/config.py +28 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/instrument_registry.py +423 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/session_classifier.py +140 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/session_population.py +90 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/tick_schema.py +18 -0
- manta_trading_data-0.6.0/src/manta_trading/data/base/trading_calendar.py +438 -0
- manta_trading_data-0.6.0/src/manta_trading/data/equity_universe.py +89 -0
- manta_trading_data-0.6.0/src/manta_trading/data/gaps/__init__.py +44 -0
- manta_trading_data-0.6.0/src/manta_trading/data/gaps/actionable_gap_selector.py +88 -0
- manta_trading_data-0.6.0/src/manta_trading/data/gaps/coalesce_data_gaps.py +192 -0
- manta_trading_data-0.6.0/src/manta_trading/data/gaps/compute_missing_ranges.py +256 -0
- manta_trading_data-0.6.0/src/manta_trading/data/gaps/minute_coverage.py +230 -0
- manta_trading_data-0.6.0/src/manta_trading/data/gaps/next_trading_session_after.py +36 -0
- manta_trading_data-0.6.0/src/manta_trading/data/gaps/update_data_gaps.py +341 -0
- manta_trading_data-0.6.0/src/manta_trading/data/historical_minute/__init__.py +7 -0
- manta_trading_data-0.6.0/src/manta_trading/data/historical_minute/data_structures.py +149 -0
- manta_trading_data-0.6.0/src/manta_trading/data/historical_minute/processor.py +294 -0
- manta_trading_data-0.6.0/src/manta_trading/data/historical_minute/provider.py +271 -0
- manta_trading_data-0.6.0/src/manta_trading/data/historical_minute/providers/__init__.py +69 -0
- manta_trading_data-0.6.0/src/manta_trading/data/historical_minute/providers/eodhd.py +346 -0
- manta_trading_data-0.6.0/src/manta_trading/data/lists.py +298 -0
- manta_trading_data-0.6.0/src/manta_trading/data/locking.py +186 -0
- manta_trading_data-0.6.0/src/manta_trading/data/maintenance/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/data/maintenance/auto_extend.py +208 -0
- manta_trading_data-0.6.0/src/manta_trading/data/maintenance/status_coverage.py +178 -0
- manta_trading_data-0.6.0/src/manta_trading/data/maintenance/status_queries.py +199 -0
- manta_trading_data-0.6.0/src/manta_trading/data/quality/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/data/quality/data_gaps.py +25 -0
- manta_trading_data-0.6.0/src/manta_trading/data/quality/fetch_status.py +18 -0
- manta_trading_data-0.6.0/src/manta_trading/data/quality/migrate_cold_start.py +330 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/__init__.py +0 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/constants.py +31 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/eodhd_classification.py +73 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/eodhd_symbol_list_client.py +113 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/finnhub_ipo_client.py +76 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/populate_delisted_dates.py +129 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/rebuild.py +411 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/tracking.py +204 -0
- manta_trading_data-0.6.0/src/manta_trading/data/universe/venue_mapping.py +128 -0
- manta_trading_data-0.6.0/src/manta_trading/embeddings/embeddingdb.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/logging.py +74 -0
- manta_trading_data-0.6.0/src/manta_trading/market/__init__.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/market/chunking_strategy.py +299 -0
- manta_trading_data-0.6.0/src/manta_trading/market/config.py +60 -0
- manta_trading_data-0.6.0/src/manta_trading/market/csv_export_service.py +334 -0
- manta_trading_data-0.6.0/src/manta_trading/market/maintenance/__init__.py +1 -0
- manta_trading_data-0.6.0/src/manta_trading/market/maintenance/cagg_freshness.py +633 -0
- manta_trading_data-0.6.0/src/manta_trading/market/maintenance/cagg_parity.py +409 -0
- manta_trading_data-0.6.0/src/manta_trading/market/maintenance/cagg_repair.py +540 -0
- manta_trading_data-0.6.0/src/manta_trading/market/maintenance/rechunk.py +357 -0
- manta_trading_data-0.6.0/src/manta_trading/market/schema/__init__.py +1 -0
- manta_trading_data-0.6.0/src/manta_trading/market/schema/migrations/README.md +65 -0
- manta_trading_data-0.6.0/src/manta_trading/market/schema/migrations/__init__.py +20 -0
- manta_trading_data-0.6.0/src/manta_trading/market/schema/migrations/daily.py +57 -0
- manta_trading_data-0.6.0/src/manta_trading/market/schema/migrations/minute.py +2024 -0
- manta_trading_data-0.6.0/src/manta_trading/market/schema/runner.py +157 -0
- manta_trading_data-0.6.0/src/manta_trading/market/schema/seed_calendar.py +237 -0
- manta_trading_data-0.6.0/src/manta_trading/market/timescale_daily_db.py +154 -0
- manta_trading_data-0.6.0/src/manta_trading/market/timescale_minute_db.py +417 -0
- manta_trading_data-0.6.0/src/manta_trading/market/timescale_monitoring.py +290 -0
- manta_trading_data-0.6.0/src/manta_trading/news/__init__.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/news/news.py +340 -0
- manta_trading_data-0.6.0/src/manta_trading/news/newsdb.py +594 -0
- manta_trading_data-0.6.0/src/manta_trading/news/newsdbmigrationutility.py +148 -0
- manta_trading_data-0.6.0/src/manta_trading/news/newsfields.py +44 -0
- manta_trading_data-0.6.0/src/manta_trading/news/newsservice.py +294 -0
- manta_trading_data-0.6.0/src/manta_trading/news/newsutility.py +16 -0
- manta_trading_data-0.6.0/src/manta_trading/providers/__init__.py +34 -0
- manta_trading_data-0.6.0/src/manta_trading/providers/auth.py +70 -0
- manta_trading_data-0.6.0/src/manta_trading/providers/errors.py +25 -0
- manta_trading_data-0.6.0/src/manta_trading/providers/profiles.py +89 -0
- manta_trading_data-0.6.0/src/manta_trading/providers/types.py +29 -0
- manta_trading_data-0.6.0/src/manta_trading/tasks/__init__.py +2 -0
- manta_trading_data-0.6.0/src/manta_trading/tasks/taskqueue.py +76 -0
- manta_trading_data-0.6.0/src/manta_trading/util/asynceventemitter.py +49 -0
- manta_trading_data-0.6.0/src/manta_trading/util/datetimehelper.py +188 -0
- manta_trading_data-0.6.0/src/manta_trading/util/pathutil.py +59 -0
- manta_trading_data-0.6.0/src/manta_trading/util/ratelimiter.py +59 -0
- manta_trading_data-0.6.0/src/manta_trading/util/threadedratelimiter.py +59 -0
- manta_trading_data-0.6.0/test/conftest.py +80 -0
- manta_trading_data-0.6.0/test/fixtures/eodhd/aapl_2025-01-15_day.json +1 -0
- manta_trading_data-0.6.0/test/integration/conftest.py +52 -0
- manta_trading_data-0.6.0/test/integration/data/__init__.py +0 -0
- manta_trading_data-0.6.0/test/integration/data/acquisition/__init__.py +0 -0
- manta_trading_data-0.6.0/test/integration/data/acquisition/daemon/__init__.py +0 -0
- manta_trading_data-0.6.0/test/integration/data/acquisition/daemon/test_minute_daemon_integration.py +332 -0
- manta_trading_data-0.6.0/test/integration/data/acquisition/daily/__init__.py +0 -0
- manta_trading_data-0.6.0/test/integration/data/adjustment/__init__.py +0 -0
- manta_trading_data-0.6.0/test/integration/data/test_locking.py +226 -0
- manta_trading_data-0.6.0/test/integration/testNewsIntegration.py +52 -0
- manta_trading_data-0.6.0/test/integration/test_auto_extend_daemon.py +89 -0
- manta_trading_data-0.6.0/test/integration/test_ca_update.py +66 -0
- manta_trading_data-0.6.0/test/integration/test_cagg_freshness.py +341 -0
- manta_trading_data-0.6.0/test/integration/test_cli_lists.py +98 -0
- manta_trading_data-0.6.0/test/integration/test_cold_start.py +338 -0
- manta_trading_data-0.6.0/test/integration/test_daemon_concurrency.py +227 -0
- manta_trading_data-0.6.0/test/integration/test_daemon_list_drains.py +98 -0
- manta_trading_data-0.6.0/test/integration/test_daemon_run.py +105 -0
- manta_trading_data-0.6.0/test/integration/test_data_status.py +214 -0
- manta_trading_data-0.6.0/test/integration/test_data_status_equivalence.py +420 -0
- manta_trading_data-0.6.0/test/integration/test_data_status_view.py +177 -0
- manta_trading_data-0.6.0/test/integration/test_instrument_registry_integration.py +292 -0
- manta_trading_data-0.6.0/test/integration/test_migration_028.py +171 -0
- manta_trading_data-0.6.0/test/integration/test_migration_043.py +67 -0
- manta_trading_data-0.6.0/test/integration/test_migrations_018_022.py +154 -0
- manta_trading_data-0.6.0/test/integration/test_migrations_023_024.py +140 -0
- manta_trading_data-0.6.0/test/integration/test_migrations_025_026.py +219 -0
- manta_trading_data-0.6.0/test/integration/test_migrations_029_036.py +243 -0
- manta_trading_data-0.6.0/test/integration/test_migrations_046_047.py +495 -0
- manta_trading_data-0.6.0/test/integration/test_rebuild_orchestrator.py +314 -0
- manta_trading_data-0.6.0/test/integration/test_rechunk_driver.py +304 -0
- manta_trading_data-0.6.0/test/integration/test_runner_ca_update.py +157 -0
- manta_trading_data-0.6.0/test/integration/test_runner_sigterm.py +101 -0
- manta_trading_data-0.6.0/test/integration/test_status_queries.py +193 -0
- manta_trading_data-0.6.0/test/integration/test_tick_schema_integration.py +272 -0
- manta_trading_data-0.6.0/test/integration/test_trading_calendar_integration.py +167 -0
- manta_trading_data-0.6.0/test/integration/testnewsdbintegration.py +281 -0
- manta_trading_data-0.6.0/test/integration/testnewsdbmigrationintegration.py +48 -0
- manta_trading_data-0.6.0/test/integration/testtimescaleminutedatadbintegration.py +289 -0
- manta_trading_data-0.6.0/test/load/__init__.py +0 -0
- manta_trading_data-0.6.0/test/load/test_146_part1_nfrs.py +202 -0
- manta_trading_data-0.6.0/test/load/test_146_part2_nfrs.py +182 -0
- manta_trading_data-0.6.0/test/load/test_167_data_status_nfr.py +217 -0
- manta_trading_data-0.6.0/test/performance/testtimescaleminutedatadbperformance.py +378 -0
- manta_trading_data-0.6.0/test/unit/api/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/api/test_finnhubapi.py +200 -0
- manta_trading_data-0.6.0/test/unit/api_server/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/api_server/test_bars.py +151 -0
- manta_trading_data-0.6.0/test/unit/api_server/test_gaps.py +184 -0
- manta_trading_data-0.6.0/test/unit/api_server/test_health.py +71 -0
- manta_trading_data-0.6.0/test/unit/api_server/test_symbols.py +192 -0
- manta_trading_data-0.6.0/test/unit/cli/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_ca.py +483 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_caggs.py +630 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_extend.py +189 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_get.py +244 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_init.py +124 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_instruments_populate_delisted_dates.py +108 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_pull.py +259 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_status_coverage.py +206 -0
- manta_trading_data-0.6.0/test/unit/cli/commands/test_data_universes.py +236 -0
- manta_trading_data-0.6.0/test/unit/cli/rendering/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/cli/rendering/test_status_table.py +453 -0
- manta_trading_data-0.6.0/test/unit/data/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_advance_minute_gap.py +295 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_daily.py +416 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_daily_bulk_eod.py +196 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_heartbeat.py +173 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_minute.py +765 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_resolve_minute_history_start.py +107 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_runner.py +381 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_runner_idle_hook.py +91 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daemon/test_types.py +15 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daily/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daily/test_freshness.py +192 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/daily/test_provider_eodhd.py +173 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_enums.py +87 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_eodhd_retry.py +177 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_events.py +196 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_orchestrator.py +440 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_outcomes.py +155 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_quota.py +115 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_state.py +423 -0
- manta_trading_data-0.6.0/test/unit/data/acquisition/test_symbols.py +95 -0
- manta_trading_data-0.6.0/test/unit/data/adjustment/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/adjustment/test_adjusted.py +213 -0
- manta_trading_data-0.6.0/test/unit/data/base/test_adjustment_policy.py +224 -0
- manta_trading_data-0.6.0/test/unit/data/base/test_instrument_registry.py +439 -0
- manta_trading_data-0.6.0/test/unit/data/base/test_session_classifier.py +367 -0
- manta_trading_data-0.6.0/test/unit/data/base/test_session_population.py +272 -0
- manta_trading_data-0.6.0/test/unit/data/base/test_tick_schema.py +46 -0
- manta_trading_data-0.6.0/test/unit/data/base/test_trading_calendar.py +647 -0
- manta_trading_data-0.6.0/test/unit/data/gaps/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/gaps/test_actionable_gap_selector.py +93 -0
- manta_trading_data-0.6.0/test/unit/data/gaps/test_coalesce_data_gaps.py +178 -0
- manta_trading_data-0.6.0/test/unit/data/gaps/test_compute_missing_ranges.py +221 -0
- manta_trading_data-0.6.0/test/unit/data/gaps/test_minute_coverage.py +462 -0
- manta_trading_data-0.6.0/test/unit/data/gaps/test_next_trading_session_after.py +47 -0
- manta_trading_data-0.6.0/test/unit/data/gaps/test_update_data_gaps.py +356 -0
- manta_trading_data-0.6.0/test/unit/data/historical_minute/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/historical_minute/providers/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/maintenance/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/maintenance/test_auto_extend.py +280 -0
- manta_trading_data-0.6.0/test/unit/data/quality/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/data/quality/test_fetch_status.py +38 -0
- manta_trading_data-0.6.0/test/unit/data/quality/test_migrate_cold_start.py +274 -0
- manta_trading_data-0.6.0/test/unit/data/test_equity_universe.py +247 -0
- manta_trading_data-0.6.0/test/unit/data/test_lists.py +162 -0
- manta_trading_data-0.6.0/test/unit/data/test_locking.py +176 -0
- manta_trading_data-0.6.0/test/unit/data/test_status_coverage.py +320 -0
- manta_trading_data-0.6.0/test/unit/market/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/market/test_cagg_freshness.py +753 -0
- manta_trading_data-0.6.0/test/unit/market/test_cagg_parity.py +250 -0
- manta_trading_data-0.6.0/test/unit/market/test_cagg_repair.py +452 -0
- manta_trading_data-0.6.0/test/unit/market/test_data_status_view_sql.py +186 -0
- manta_trading_data-0.6.0/test/unit/market/test_migration_helpers.py +74 -0
- manta_trading_data-0.6.0/test/unit/market/test_rechunk.py +128 -0
- manta_trading_data-0.6.0/test/unit/market/test_timescale_daily_db.py +104 -0
- manta_trading_data-0.6.0/test/unit/market/test_timescale_minute_db.py +134 -0
- manta_trading_data-0.6.0/test/unit/test_aggregation_views_152.py +33 -0
- manta_trading_data-0.6.0/test/unit/test_chunking_strategy.py +459 -0
- manta_trading_data-0.6.0/test/unit/test_cli_app.py +109 -0
- manta_trading_data-0.6.0/test/unit/test_cli_config.py +208 -0
- manta_trading_data-0.6.0/test/unit/test_cli_data.py +386 -0
- manta_trading_data-0.6.0/test/unit/test_cli_output.py +67 -0
- manta_trading_data-0.6.0/test/unit/test_cli_provider.py +137 -0
- manta_trading_data-0.6.0/test/unit/test_cli_status.py +153 -0
- manta_trading_data-0.6.0/test/unit/test_config_manager.py +165 -0
- manta_trading_data-0.6.0/test/unit/test_constants.py +164 -0
- manta_trading_data-0.6.0/test/unit/test_corporate_actions_provider.py +123 -0
- manta_trading_data-0.6.0/test/unit/test_data_processor.py +400 -0
- manta_trading_data-0.6.0/test/unit/test_eodhd_corporate_actions_provider.py +323 -0
- manta_trading_data-0.6.0/test/unit/test_eodhd_provider.py +376 -0
- manta_trading_data-0.6.0/test/unit/test_granularity.py +63 -0
- manta_trading_data-0.6.0/test/unit/test_k_factor.py +264 -0
- manta_trading_data-0.6.0/test/unit/test_logging.py +142 -0
- manta_trading_data-0.6.0/test/unit/test_minute_migrations_128.py +150 -0
- manta_trading_data-0.6.0/test/unit/test_provider_auth.py +96 -0
- manta_trading_data-0.6.0/test/unit/test_provider_profiles.py +106 -0
- manta_trading_data-0.6.0/test/unit/test_provider_seam.py +77 -0
- manta_trading_data-0.6.0/test/unit/test_provider_types.py +86 -0
- manta_trading_data-0.6.0/test/unit/test_schema_migrations.py +925 -0
- manta_trading_data-0.6.0/test/unit/test_seed_calendar.py +199 -0
- manta_trading_data-0.6.0/test/unit/test_settings.py +150 -0
- manta_trading_data-0.6.0/test/unit/test_snapshot.py +215 -0
- manta_trading_data-0.6.0/test/unit/testasyncevent.py +103 -0
- manta_trading_data-0.6.0/test/unit/testchunkingconfig.py +176 -0
- manta_trading_data-0.6.0/test/unit/testdatetimehelper.py +255 -0
- manta_trading_data-0.6.0/test/unit/testnews.py +50 -0
- manta_trading_data-0.6.0/test/unit/testnewsagent.py +62 -0
- manta_trading_data-0.6.0/test/unit/testnewsdb.py +356 -0
- manta_trading_data-0.6.0/test/unit/testnewsdbmigration.py +39 -0
- manta_trading_data-0.6.0/test/unit/testnewsservice.py +121 -0
- manta_trading_data-0.6.0/test/unit/testpathutil.py +61 -0
- manta_trading_data-0.6.0/test/unit/testratelimiter.py +56 -0
- manta_trading_data-0.6.0/test/unit/testtaskqueue.py +75 -0
- manta_trading_data-0.6.0/test/unit/testtimescaleminutedatadb.py +279 -0
- manta_trading_data-0.6.0/test/unit/universe/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/universe/conftest.py +86 -0
- manta_trading_data-0.6.0/test/unit/universe/test_eodhd_classification.py +95 -0
- manta_trading_data-0.6.0/test/unit/universe/test_eodhd_symbol_list_client.py +128 -0
- manta_trading_data-0.6.0/test/unit/universe/test_finnhub_ipo_client.py +109 -0
- manta_trading_data-0.6.0/test/unit/universe/test_populate_delisted_dates.py +151 -0
- manta_trading_data-0.6.0/test/unit/universe/test_tracking.py +208 -0
- manta_trading_data-0.6.0/test/unit/universe/test_venue_mapping.py +110 -0
- manta_trading_data-0.6.0/test/unit/util/__init__.py +0 -0
- manta_trading_data-0.6.0/test/unit/util/test_ratelimiter.py +101 -0
- manta_trading_data-0.6.0/test_db_inspection.py +284 -0
- manta_trading_data-0.6.0/test_db_performance.py +229 -0
- manta_trading_data-0.6.0/test_minute_data_api.py +203 -0
- manta_trading_data-0.6.0/test_real_symbol_performance.py +211 -0
- manta_trading_data-0.6.0/test_simple_query.py +46 -0
- manta_trading_data-0.6.0/test_symbols.txt +3 -0
- manta_trading_data-0.6.0/test_timescale_live.py +103 -0
- manta_trading_data-0.6.0/test_timescale_performance_demo.py +140 -0
- manta_trading_data-0.6.0/test_utc_query.py +72 -0
- manta_trading_data-0.6.0/tsla_minute_data_sample.json +712 -0
- manta_trading_data-0.6.0/uv.lock +2222 -0
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: analyze
|
|
3
|
+
description: Codebase analysis workflow — discover, categorize findings, create tasks, and implement fixes
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Codebase Analysis Workflow
|
|
8
|
+
|
|
9
|
+
This skill provides a complete analysis workflow for existing codebases. It is organized into stages that can be used independently or as a sequential pipeline.
|
|
10
|
+
|
|
11
|
+
**Usage**: Invoke `/analyze` and specify which stage to run, or start from Stage 1 for a full discovery workflow. Provide `{project}` and optionally `{subproject}` as context.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Stage 1: Analyze Codebase
|
|
16
|
+
|
|
17
|
+
Purpose: Perform discovery analysis of existing codebase to:
|
|
18
|
+
- Document system architecture and technology stack
|
|
19
|
+
- Identify technical debt and improvement opportunities
|
|
20
|
+
- Provide foundation for creating architectural components, slices, or maintenance tasks
|
|
21
|
+
- Create reference documentation for team members
|
|
22
|
+
|
|
23
|
+
This is reconnaissance work - not goal-oriented development.
|
|
24
|
+
|
|
25
|
+
Analyze the following existing codebase and document your findings. We want this to not only assist ourselves in updating and maintaining the codebase, but also to assist humans who may be working on the project.
|
|
26
|
+
|
|
27
|
+
### Expected Output
|
|
28
|
+
* Document your findings in `user/analysis/nnn-analysis.{topic}.md` where:
|
|
29
|
+
- nnn starts at 940 (analysis range)
|
|
30
|
+
- {topic} describes the analysis focus (e.g., "initial-codebase", "dependency-audit", "architecture-review")
|
|
31
|
+
* Write in markdown format, following our rules for markdown output.
|
|
32
|
+
|
|
33
|
+
### General Guidelines
|
|
34
|
+
* Document the codebase structure. Also note presence of any project-documents or similar folders which probably contain information for us.
|
|
35
|
+
* Document presence or average of tests, and an estimate of coverage if tests are present.
|
|
36
|
+
* Identify technologies and frameworks in use.
|
|
37
|
+
* What package managers are in use?
|
|
38
|
+
* Is there a DevOps pipeline indicated?
|
|
39
|
+
* Analysis should be concise and relevant - no pontificating.
|
|
40
|
+
* Add note in README as follows: Codex: please find code analysis details in {file mentioned above}.
|
|
41
|
+
|
|
42
|
+
### Front End (if applicable)
|
|
43
|
+
* If this is a JS app, does it use React? Vue? Is it NextJS? Is it typescript, javascript, or both? Does it use TailWind? ShadCN? Something else?
|
|
44
|
+
|
|
45
|
+
### NextJS, React (if applicable)
|
|
46
|
+
* Perform standard analysis and identify basic environment -- confirm NextJS, identify common packages in use (Tailwind, ShadCN, etc) and any unusual packages or features.
|
|
47
|
+
* If auth is present, attempt to determine its structure and describe its methodology
|
|
48
|
+
* Is the project containerized?
|
|
49
|
+
* If special scripts (ex: 'docker: {command}') are present, document them in the README.
|
|
50
|
+
* Provide a description of the UI style, interactivity, etc
|
|
51
|
+
* Document page structure.
|
|
52
|
+
* What type of architecture is used to manage SSR vs CSR?
|
|
53
|
+
|
|
54
|
+
### Tailwind (if applicable)
|
|
55
|
+
* Is cn used instead of string operations with parameterized or variable classNames?
|
|
56
|
+
* Prefer Tailwind classes, there should not be custom CSS classes.
|
|
57
|
+
* If this is Tailwind 4, are customizations correctly in CSS and no attempt to use tailwind.config.ts/.js.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Stage 2: Analysis Processing
|
|
62
|
+
|
|
63
|
+
We need to process the artifacts from our recent code analysis.
|
|
64
|
+
|
|
65
|
+
Role: Senior AI, processing analysis results into actionable items
|
|
66
|
+
Context: Analysis has been completed on {project} (optionally {subproject}) and findings need to be converted into proper maintenance tasks, code review issues, or GitHub issues as appropriate.
|
|
67
|
+
|
|
68
|
+
Notes:
|
|
69
|
+
- Be sure to know the current date first. Do not assume dates based on training data timeframes.
|
|
70
|
+
|
|
71
|
+
### Process
|
|
72
|
+
|
|
73
|
+
1. **Categorize Findings:**
|
|
74
|
+
- P0 Critical: Data loss, security vulnerabilities, system failures
|
|
75
|
+
- P1 High: Performance issues, major technical debt, broken features
|
|
76
|
+
- P2 Medium: Code quality, maintainability, best practices
|
|
77
|
+
- P3 Low: Optimizations, nice-to-have improvements
|
|
78
|
+
|
|
79
|
+
2. **Create File and Document by Priority:**
|
|
80
|
+
- Create markdown file `analysis/nnn-analysis.{project-name}{.subproject?}.md` where nnn starts at 940 (analysis range).
|
|
81
|
+
- Note that subproject is often not specified. Do not add its term to the name if this is the case.
|
|
82
|
+
- Divide file into Critical Issues (P0/P1) and Additional Issues (P2/P3)
|
|
83
|
+
- Add concise documentation of each issue -- overview, context, conditions.
|
|
84
|
+
|
|
85
|
+
3. **File Creation Rules:**
|
|
86
|
+
- Use existing file naming conventions from `file-naming-conventions.md`
|
|
87
|
+
- Include YAML front matter for all created files
|
|
88
|
+
- Add the correct date (YYYYMMDD) in the file's frontmatter
|
|
89
|
+
- Reference source analysis document (if applicable)
|
|
90
|
+
- Add line numbers and specific locations where applicable
|
|
91
|
+
|
|
92
|
+
4. **GitHub Integration (if available):**
|
|
93
|
+
- Create GitHub issues for P0/P1 items
|
|
94
|
+
- Label appropriately: `bug`, `critical`, `technical-debt`, `analysis`
|
|
95
|
+
- Reference analysis document in issue description
|
|
96
|
+
- Include reproduction steps and success criteria
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## Stage 3: Analysis Task Creation
|
|
101
|
+
|
|
102
|
+
Convert analysis findings into granular, actionable tasks.
|
|
103
|
+
|
|
104
|
+
We're working in our guide.ai-project.process, Phase 5: Slice Task Breakdown. Convert the issues from {analysis-file} into granular, actionable tasks if they are not already. Keep them in priority order (P0/P1/P2/P3).
|
|
105
|
+
|
|
106
|
+
If the tasks are already sufficiently granular and in checklist format, you do not need to modify them. Note that each success criteria needs a checkbox.
|
|
107
|
+
|
|
108
|
+
Your role is Senior AI. Use the specified analysis document `user/analysis/nnn-analysis.{project-name}{.subproject?}.md` as input. Note that subproject is optional (hence the ?). Avoid adding extra `.` characters to filename if subproject is not present.
|
|
109
|
+
|
|
110
|
+
Create task file at `user/tasks/nnn-analysis{.subproject?}-{date}.md` with:
|
|
111
|
+
1. YAML front matter including slice or subproject name, project, YYYYMMDD date, main analysis file reference, dependencies, and current project state
|
|
112
|
+
2. Context summary section
|
|
113
|
+
3. Granular tasks following Phase 5 guidelines
|
|
114
|
+
4. Keep success criteria with their respective task
|
|
115
|
+
5. Always use checklist format described in guide.ai-project.process under Task Files.
|
|
116
|
+
|
|
117
|
+
For each {tool} in use, consult knowledge in `ai-project-guide/tool-guides/{tool}/`. Follow all task creation guidelines from the Process Guide.
|
|
118
|
+
|
|
119
|
+
Each task must be completable by a junior AI with clear success criteria. If insufficient information is available, stop and request clarifying information.
|
|
120
|
+
|
|
121
|
+
This is a project planning task, not a coding task.
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## Stage 4: Analysis to LLD
|
|
126
|
+
|
|
127
|
+
*This stage is rarely needed. Normally, analysis findings should be addressed using the standard architectural component → slice plan → slices methodology. Use this only when a focused low-level design is needed for a specific analysis finding.*
|
|
128
|
+
|
|
129
|
+
We need to create a Low-Level Design (LLD) for {component} identified during codebase analysis or task planning in project {project}. It may be an expansion of an initial task section identified during analysis.
|
|
130
|
+
|
|
131
|
+
Your role is Architect as described in the Process Guide. This LLD will bridge the gap between high-level understanding and implementable tasks.
|
|
132
|
+
|
|
133
|
+
### Context
|
|
134
|
+
- Analysis document: `user/analysis/nnn-analysis.{project-name}{.subproject or analysis topic?}` (or specify location)
|
|
135
|
+
- Related task file: `user/tasks/nnn-analysis{.subproject?}-{date}.md` (if exists)
|
|
136
|
+
- Current issue: {brief description of what analysis revealed}
|
|
137
|
+
|
|
138
|
+
### Output
|
|
139
|
+
Create LLD document at: `user/slices/nnn-slice.{slice-name}.md`
|
|
140
|
+
|
|
141
|
+
Required YAML front matter:
|
|
142
|
+
```yaml
|
|
143
|
+
---
|
|
144
|
+
layer: project
|
|
145
|
+
docType: slice-design
|
|
146
|
+
slice: {slice-name}
|
|
147
|
+
project: {project}
|
|
148
|
+
triggeredBy: analysis|task-breakdown|architecture-review
|
|
149
|
+
sourceDocument: {path-to-analysis-or-task-file}
|
|
150
|
+
dependencies: [list-any-prerequisites]
|
|
151
|
+
affects: [list-components-or-slices-impacted]
|
|
152
|
+
complexity: low|medium|high
|
|
153
|
+
dateCreated: YYYYMMDD
|
|
154
|
+
dateUpdated: YYYYMMDD
|
|
155
|
+
status: not_started
|
|
156
|
+
---
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### Guidelines
|
|
160
|
+
|
|
161
|
+
**Cross-Reference Requirements:**
|
|
162
|
+
- Update source analysis/task document to reference this LLD
|
|
163
|
+
- Add back-reference in this LLD to triggering document
|
|
164
|
+
- Note any slice designs or existing slices this affects
|
|
165
|
+
|
|
166
|
+
**Focus Areas:**
|
|
167
|
+
- Keep design concrete and implementation-ready
|
|
168
|
+
- Include code examples or pseudocode where helpful
|
|
169
|
+
- Reference specific files, classes, or components by name
|
|
170
|
+
- Address both immediate needs and future extensibility
|
|
171
|
+
|
|
172
|
+
If you need more context about the analysis findings or existing system architecture, stop and request from Project Manager.
|
|
173
|
+
|
|
174
|
+
Note: This creates implementation-ready technical designs, not high-level planning documents.
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## Stage 5: Analysis Task Implementation
|
|
179
|
+
|
|
180
|
+
Execute tasks created from analysis findings.
|
|
181
|
+
|
|
182
|
+
We are working on the analysis file {analysis} in project {project}, phase 6 of `ai-project-guide/project-guides/guide.ai-project.process`.
|
|
183
|
+
|
|
184
|
+
Your role is "Senior AI". Your job is to complete the tasks in the `user/tasks/nnn-analysis-{topic}.md` file. Please work through the tasks, following the guidelines in our project guides, and using the rules in the rules/ directory.
|
|
185
|
+
|
|
186
|
+
The analysis overview is available at {analysis} for additional context.
|
|
187
|
+
|
|
188
|
+
STOP and confer with Project Manager after each task, unless directed otherwise by the Project Manager. Do not update any progress files until confirmation from Project Manager.
|
|
189
|
+
|
|
190
|
+
Work carefully and ensure that each task is verified complete before proceeding to the next. If an attempted solution does not work or you find reason to try another approach, do not make more than three attempts without stopping and obtaining confirmation from Project Manager.
|
|
191
|
+
|
|
192
|
+
Check off completed tasks in the task file when verified complete. When all tasks are complete, proceed to Phase 7 (integration) with Project Manager approval.
|
|
193
|
+
|
|
194
|
+
Notes:
|
|
195
|
+
* Use the task-checker to manage lists if it is available to you
|
|
196
|
+
* Ignore case sensitivity in all file and directory names
|
|
197
|
+
* If you cannot locate referenced files, STOP and request information from Project Manager
|
|
198
|
+
* Do not guess, assume, or proceed without required files.
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Automated code review agent configuration for comprehensive project codebase analysis
|
|
3
|
+
globs: ["**/*"]
|
|
4
|
+
alwaysApply: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Automated Code Review Agent
|
|
8
|
+
|
|
9
|
+
## Agent Purpose
|
|
10
|
+
This agent automatically performs comprehensive code reviews across the entire project codebase, generating review documents and task lists according to the guidelines in `.cursor/rules/review.md`.
|
|
11
|
+
|
|
12
|
+
## Agent Configuration
|
|
13
|
+
|
|
14
|
+
### Detection & Scope
|
|
15
|
+
- **Project Type Detection**: Automatically identify project type from file structure and configuration files
|
|
16
|
+
- **File Type Mapping**: Map project types to relevant source file extensions
|
|
17
|
+
- **Scope**: Full project crawl (not just changed files)
|
|
18
|
+
- **Frequency**: On-demand execution (not continuous monitoring)
|
|
19
|
+
|
|
20
|
+
### Project Type Detection Logic
|
|
21
|
+
|
|
22
|
+
#### NextJS Projects
|
|
23
|
+
- **Indicators**: `next.config.js/ts`, `package.json` with Next.js dependency, `app/` or `src/app/` directory
|
|
24
|
+
- **File Extensions**: `.tsx`, `.ts`, `.jsx`, `.js`, `.css`, `.scss`, `.mdx`
|
|
25
|
+
- **Key Directories**: `src/`, `app/`, `components/`, `lib/`, `types/`
|
|
26
|
+
|
|
27
|
+
#### Python Projects
|
|
28
|
+
- **Indicators**: `requirements.txt`, `pyproject.toml`, `setup.py`, `__init__.py` files
|
|
29
|
+
- **File Extensions**: `.py`, `.pyx`, `.pyi`
|
|
30
|
+
- **Key Directories**: `src/`, `app/`, `tests/`, `migrations/`
|
|
31
|
+
|
|
32
|
+
#### C++ Projects
|
|
33
|
+
- **Indicators**: `CMakeLists.txt`, `Makefile`, `*.vcxproj`, `*.sln`
|
|
34
|
+
- **File Extensions**: `.cpp`, `.cc`, `.cxx`, `.h`, `.hpp`, `.hxx`
|
|
35
|
+
- **Key Directories**: `src/`, `include/`, `lib/`, `tests/`
|
|
36
|
+
|
|
37
|
+
#### Rust Projects
|
|
38
|
+
- **Indicators**: `Cargo.toml`, `Cargo.lock`
|
|
39
|
+
- **File Extensions**: `.rs`
|
|
40
|
+
- **Key Directories**: `src/`, `tests/`, `examples/`
|
|
41
|
+
|
|
42
|
+
#### Generic/Unknown Projects
|
|
43
|
+
- **Fallback**: Review all common source files
|
|
44
|
+
- **File Extensions**: `.js`, `.ts`, `.jsx`, `.tsx`, `.py`, `.cpp`, `.h`, `.rs`, `.go`, `.java`
|
|
45
|
+
|
|
46
|
+
## Review Process
|
|
47
|
+
|
|
48
|
+
### Step 1: Project Analysis
|
|
49
|
+
1. **Detect Project Type**: Analyze project structure and configuration files
|
|
50
|
+
2. **Identify Source Files**: Map relevant file extensions and directories
|
|
51
|
+
3. **Generate File List**: Create comprehensive list of files to review
|
|
52
|
+
4. **Load Review Guidelines**: Read and parse `.cursor/rules/review.md`
|
|
53
|
+
|
|
54
|
+
### Step 2: File-by-File Review
|
|
55
|
+
For each source file:
|
|
56
|
+
1. **Read File Content**: Load and parse file content
|
|
57
|
+
2. **Apply Review Questionnaire**: Systematically evaluate against all 12 review criteria
|
|
58
|
+
3. **Generate Findings**: Document issues, improvements, and observations
|
|
59
|
+
4. **Categorize Issues**: Group by Critical Issues, Code Quality, Best Practices, etc.
|
|
60
|
+
|
|
61
|
+
### Step 3: Document Generation
|
|
62
|
+
1. **Create Review Documents**: Generate `review.{filename}.MMDD.md` files
|
|
63
|
+
2. **Create Task Lists**: Generate `tasks.code-review.{filename}.MMDD.md` files
|
|
64
|
+
3. **Organize by Priority**: P0 (Critical) → P1 (Quality) → P2 (Best Practices) → P3 (Enhancements)
|
|
65
|
+
4. **Add YAML Headers**: Include proper metadata for all generated files
|
|
66
|
+
|
|
67
|
+
### Step 4: Summary Report
|
|
68
|
+
1. **Generate Overview**: Create summary of all findings across the project
|
|
69
|
+
2. **Prioritize Actions**: Identify highest-impact improvements
|
|
70
|
+
3. **Create Index**: Generate master index of all review documents
|
|
71
|
+
|
|
72
|
+
## File Organization
|
|
73
|
+
|
|
74
|
+
### Output Structure
|
|
75
|
+
```
|
|
76
|
+
project-documents/
|
|
77
|
+
└── user/
|
|
78
|
+
└── reviews/
|
|
79
|
+
├── review-docs/
|
|
80
|
+
│ ├── review.component.tsx.0101.md
|
|
81
|
+
│ ├── review.utils.ts.0101.md
|
|
82
|
+
│ └── ...
|
|
83
|
+
├── tasks/
|
|
84
|
+
│ ├── tasks.code-review.component.tsx.0101.md
|
|
85
|
+
│ ├── tasks.code-review.utils.ts.0101.md
|
|
86
|
+
│ └── ...
|
|
87
|
+
├── summary/
|
|
88
|
+
│ ├── review-summary.0101.md
|
|
89
|
+
│ └── priority-actions.0101.md
|
|
90
|
+
└── index/
|
|
91
|
+
└── review-index.0101.md
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### YAML Headers
|
|
95
|
+
All generated files include:
|
|
96
|
+
```yaml
|
|
97
|
+
---
|
|
98
|
+
layer: project
|
|
99
|
+
docType: review
|
|
100
|
+
projectType: nextjs
|
|
101
|
+
reviewDate: 2025-01-01
|
|
102
|
+
reviewer: automated-agent
|
|
103
|
+
priority: P0|P1|P2|P3
|
|
104
|
+
---
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Review Criteria Application
|
|
108
|
+
|
|
109
|
+
### Platform-Specific Reviews
|
|
110
|
+
- **NextJS**: Focus on Sections 8, 11, 12 (Performance, Accessibility, React/TypeScript/NextJS)
|
|
111
|
+
- **Python**: Focus on Sections 1-7, 9-10 (Bugs, Code Quality, Security, Testing)
|
|
112
|
+
- **C++**: Focus on Sections 1-7, 9-10 (Bugs, Code Quality, Security, Testing)
|
|
113
|
+
- **Rust**: Focus on Sections 1-7, 9-10 (Bugs, Code Quality, Security, Testing)
|
|
114
|
+
|
|
115
|
+
### File Type Specifics
|
|
116
|
+
- **Component Files**: Emphasize Sections 5, 11, 12 (Component Structure, Accessibility, React patterns)
|
|
117
|
+
- **Utility Files**: Emphasize Sections 4, 6, 7 (Code Duplication, Patterns, Documentation)
|
|
118
|
+
- **Configuration Files**: Emphasize Sections 2, 6 (Hard-coded Elements, Best Practices)
|
|
119
|
+
- **Test Files**: Emphasize Sections 10, 7 (Testing Coverage, Documentation)
|
|
120
|
+
|
|
121
|
+
## Automation Triggers
|
|
122
|
+
|
|
123
|
+
### Manual Execution
|
|
124
|
+
- **Command**: `npm run code-review` or `pnpm code-review`
|
|
125
|
+
- **Scope**: Full project review
|
|
126
|
+
- **Output**: Complete review document set
|
|
127
|
+
|
|
128
|
+
### Scheduled Execution
|
|
129
|
+
- **Frequency**: Weekly automated reviews
|
|
130
|
+
- **Scope**: Changed files since last review
|
|
131
|
+
- **Output**: Incremental review updates
|
|
132
|
+
|
|
133
|
+
### CI/CD Integration
|
|
134
|
+
- **Trigger**: On pull requests
|
|
135
|
+
- **Scope**: Changed files in PR
|
|
136
|
+
- **Output**: PR-specific review comments
|
|
137
|
+
|
|
138
|
+
## Configuration Options
|
|
139
|
+
|
|
140
|
+
### Review Depth
|
|
141
|
+
- **Quick**: Surface-level review (5-10 minutes per file)
|
|
142
|
+
- **Standard**: Comprehensive review (15-30 minutes per file)
|
|
143
|
+
- **Deep**: In-depth analysis (30-60 minutes per file)
|
|
144
|
+
|
|
145
|
+
### Output Format
|
|
146
|
+
- **Markdown**: Standard markdown files
|
|
147
|
+
- **JSON**: Machine-readable format
|
|
148
|
+
- **HTML**: Web-viewable reports
|
|
149
|
+
- **PDF**: Printable reports
|
|
150
|
+
|
|
151
|
+
### Filtering Options
|
|
152
|
+
- **File Size**: Skip files larger than threshold
|
|
153
|
+
- **File Type**: Review only specific file types
|
|
154
|
+
- **Directory**: Limit to specific directories
|
|
155
|
+
- **Complexity**: Focus on high-complexity files
|
|
156
|
+
|
|
157
|
+
## Quality Assurance
|
|
158
|
+
|
|
159
|
+
### Review Validation
|
|
160
|
+
- **Consistency Check**: Ensure consistent application of guidelines
|
|
161
|
+
- **Coverage Verification**: Confirm all relevant files were reviewed
|
|
162
|
+
- **Priority Validation**: Verify appropriate priority assignments
|
|
163
|
+
- **Documentation Completeness**: Check for missing required sections
|
|
164
|
+
|
|
165
|
+
### Performance Optimization
|
|
166
|
+
- **Parallel Processing**: Review multiple files concurrently
|
|
167
|
+
- **Caching**: Cache file content and analysis results
|
|
168
|
+
- **Incremental Reviews**: Only review changed files when possible
|
|
169
|
+
- **Resource Limits**: Set memory and time limits per file
|
|
170
|
+
|
|
171
|
+
## Integration Points
|
|
172
|
+
|
|
173
|
+
### Existing Tools
|
|
174
|
+
- **Git Integration**: Use git for file discovery and change tracking
|
|
175
|
+
- **Linting Integration**: Incorporate existing linting results
|
|
176
|
+
- **Type Checking**: Include TypeScript/other type checker results
|
|
177
|
+
- **Build System**: Consider build warnings and errors
|
|
178
|
+
|
|
179
|
+
### External Services
|
|
180
|
+
- **Code Quality Tools**: Integrate with SonarQube, CodeClimate, etc.
|
|
181
|
+
- **Security Scanners**: Include security analysis results
|
|
182
|
+
- **Performance Tools**: Incorporate performance metrics
|
|
183
|
+
- **Documentation Generators**: Link to existing documentation
|
|
184
|
+
|
|
185
|
+
## Success Metrics
|
|
186
|
+
|
|
187
|
+
### Review Quality
|
|
188
|
+
- **Coverage**: Percentage of source files reviewed
|
|
189
|
+
- **Issues Found**: Number and severity of issues identified
|
|
190
|
+
- **Actionability**: Percentage of findings converted to tasks
|
|
191
|
+
- **Accuracy**: False positive rate of identified issues
|
|
192
|
+
|
|
193
|
+
### Process Efficiency
|
|
194
|
+
- **Review Speed**: Time per file reviewed
|
|
195
|
+
- **Output Quality**: Completeness and clarity of generated documents
|
|
196
|
+
- **Maintenance Overhead**: Time required to maintain and update agent
|
|
197
|
+
- **User Adoption**: Frequency of agent usage by team
|
|
198
|
+
|
|
199
|
+
## Maintenance
|
|
200
|
+
|
|
201
|
+
### Regular Updates
|
|
202
|
+
- **Guideline Updates**: Sync with changes to `.cursor/rules/review.md`
|
|
203
|
+
- **Project Type Detection**: Add support for new project types
|
|
204
|
+
- **File Type Mapping**: Update for new file extensions
|
|
205
|
+
- **Review Criteria**: Refine based on team feedback
|
|
206
|
+
|
|
207
|
+
### Performance Monitoring
|
|
208
|
+
- **Execution Time**: Track review duration
|
|
209
|
+
- **Resource Usage**: Monitor memory and CPU consumption
|
|
210
|
+
- **Error Rates**: Track failed reviews and analysis errors
|
|
211
|
+
- **User Feedback**: Collect and incorporate team input
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## Usage Instructions
|
|
216
|
+
|
|
217
|
+
### Quick Start
|
|
218
|
+
1. Ensure `.cursor/rules/review.md` is up to date
|
|
219
|
+
2. Run: `npm run code-review` or `pnpm code-review`
|
|
220
|
+
3. Review generated documents in `project-documents/user/code-reviews/`
|
|
221
|
+
4. Prioritize and implement tasks from generated task lists
|
|
222
|
+
|
|
223
|
+
### Customization
|
|
224
|
+
1. Modify project type detection logic for your specific needs
|
|
225
|
+
2. Adjust file type mappings for your project structure
|
|
226
|
+
3. Customize review criteria application based on your guidelines
|
|
227
|
+
4. Configure output formats and organization preferences
|
|
228
|
+
|
|
229
|
+
### Integration
|
|
230
|
+
1. Add to CI/CD pipeline for automated PR reviews
|
|
231
|
+
2. Schedule regular full-project reviews
|
|
232
|
+
3. Integrate with existing code quality tools
|
|
233
|
+
4. Connect to project management systems for task tracking
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
{
|
|
2
|
+
"agent": {
|
|
3
|
+
"name": "Automated Code Review Agent",
|
|
4
|
+
"version": "1.0.0",
|
|
5
|
+
"description": "Performs comprehensive code reviews across the entire project codebase"
|
|
6
|
+
},
|
|
7
|
+
"review": {
|
|
8
|
+
"guidelinesPath": ".cursor/rules/review.md",
|
|
9
|
+
"outputBasePath": "project-documents/our-project/code-reviews",
|
|
10
|
+
"dateFormat": "MMDD",
|
|
11
|
+
"maxFileSize": 500,
|
|
12
|
+
"parallelLimit": 5,
|
|
13
|
+
"defaultDepth": "standard",
|
|
14
|
+
"defaultFormat": "markdown"
|
|
15
|
+
},
|
|
16
|
+
"projectTypes": {
|
|
17
|
+
"nextjs": {
|
|
18
|
+
"indicators": ["next.config.js", "next.config.ts", "package.json"],
|
|
19
|
+
"directories": ["app", "src/app", "components", "lib", "types"],
|
|
20
|
+
"extensions": [".tsx", ".ts", ".jsx", ".js", ".css", ".scss", ".mdx"],
|
|
21
|
+
"focusCriteria": [8, 11, 12]
|
|
22
|
+
},
|
|
23
|
+
"python": {
|
|
24
|
+
"indicators": ["requirements.txt", "pyproject.toml", "setup.py"],
|
|
25
|
+
"directories": ["src", "app", "tests", "migrations"],
|
|
26
|
+
"extensions": [".py", ".pyx", ".pyi"],
|
|
27
|
+
"focusCriteria": [1, 2, 3, 4, 5, 6, 7, 9, 10]
|
|
28
|
+
},
|
|
29
|
+
"cpp": {
|
|
30
|
+
"indicators": ["CMakeLists.txt", "Makefile"],
|
|
31
|
+
"directories": ["src", "include", "lib", "tests"],
|
|
32
|
+
"extensions": [".cpp", ".cc", ".cxx", ".h", ".hpp", ".hxx"],
|
|
33
|
+
"focusCriteria": [1, 2, 3, 4, 5, 6, 7, 9, 10]
|
|
34
|
+
},
|
|
35
|
+
"rust": {
|
|
36
|
+
"indicators": ["Cargo.toml", "Cargo.lock"],
|
|
37
|
+
"directories": ["src", "tests", "examples"],
|
|
38
|
+
"extensions": [".rs"],
|
|
39
|
+
"focusCriteria": [1, 2, 3, 4, 5, 6, 7, 9, 10]
|
|
40
|
+
},
|
|
41
|
+
"generic": {
|
|
42
|
+
"indicators": [],
|
|
43
|
+
"directories": ["src", "app", "lib", "components"],
|
|
44
|
+
"extensions": [".js", ".ts", ".jsx", ".tsx", ".py", ".cpp", ".h", ".rs", ".go", ".java"],
|
|
45
|
+
"focusCriteria": [1, 2, 3, 4, 5, 6, 7, 9, 10]
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"filters": {
|
|
49
|
+
"excludeDirectories": ["node_modules", ".git", ".next", "dist", "build", "coverage", ".cache"],
|
|
50
|
+
"excludeFiles": ["*.min.js", "*.min.css", "*.bundle.js"],
|
|
51
|
+
"maxFileSize": 500,
|
|
52
|
+
"includePatterns": [],
|
|
53
|
+
"excludePatterns": []
|
|
54
|
+
},
|
|
55
|
+
"output": {
|
|
56
|
+
"formats": ["markdown", "json", "html"],
|
|
57
|
+
"organizeByPriority": true,
|
|
58
|
+
"includeYamlHeaders": true,
|
|
59
|
+
"generateSummary": true,
|
|
60
|
+
"generateIndex": true
|
|
61
|
+
},
|
|
62
|
+
"quality": {
|
|
63
|
+
"enableParallelProcessing": true,
|
|
64
|
+
"enableCaching": false,
|
|
65
|
+
"enableIncrementalReviews": false,
|
|
66
|
+
"resourceLimits": {
|
|
67
|
+
"maxMemoryMB": 512,
|
|
68
|
+
"maxTimePerFileSeconds": 30
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"integration": {
|
|
72
|
+
"gitIntegration": true,
|
|
73
|
+
"lintingIntegration": true,
|
|
74
|
+
"typeCheckingIntegration": true,
|
|
75
|
+
"buildSystemIntegration": true
|
|
76
|
+
}
|
|
77
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: task-checker
|
|
3
|
+
description: Use this agent when you need to manage, verify, or update task files and checklists, and whenever you complete a work item. Examples include: checking off completed tasks in project files, verifying the status of checklist items, updating task completion states after code changes, or managing any structured checklist documents. Examples: <example>Context: Agent has completed a feature, slice, section, task, or any subitem. Agent often forgets to maintain checklist. task-checker can manage the list. user: Have we checked off tasks @08-tasks.our-slice-tasks-n.md. assistant: I'll see whether there are any completed tasks not marked as complete.<commentary>Work has been completed (often by an agent). User wants to verify the current status of the relevant project tasks.<commentary></example><example>Context: agent has completed a task or todo item. user(agent): 'Let me update the task file'. assistant: 'I will use the task-checker to update the task file'. <commentary>The task-checker will update and check off items.</commentary></example>
|
|
4
|
+
model: haiku
|
|
5
|
+
color: orange
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are a meticulous Task Checklist Manager, an expert in maintaining and verifying structured task files and checklists. Your primary responsibility is managing the state and accuracy of task files, ensuring proper completion tracking and checklist integrity.
|
|
9
|
+
|
|
10
|
+
When working with task files, you will:
|
|
11
|
+
|
|
12
|
+
**File Analysis & Verification:**
|
|
13
|
+
- Carefully examine the referenced file structure and current state
|
|
14
|
+
- Identify all checklist items, their completion status, and any dependencies
|
|
15
|
+
- Verify that task descriptions match their current implementation status
|
|
16
|
+
- Check for consistency in formatting and checklist syntax
|
|
17
|
+
|
|
18
|
+
**Task Completion Management:**
|
|
19
|
+
- Mark tasks as complete (✓ or [x]) only when explicitly confirmed by the user or when you can verify completion through code examination
|
|
20
|
+
- Maintain detailed records of what was completed and when
|
|
21
|
+
- Preserve task context and success criteria even after completion
|
|
22
|
+
- Never assume completion without clear evidence or user confirmation
|
|
23
|
+
|
|
24
|
+
**Quality Assurance:**
|
|
25
|
+
- Ensure checklist formatting follows project standards (use [ ] for incomplete, [x] or ✓ for complete)
|
|
26
|
+
- Maintain consistent indentation and structure
|
|
27
|
+
- Preserve all task metadata including priorities, success criteria, and implementation notes
|
|
28
|
+
- Flag any ambiguous or unclear task descriptions that need clarification
|
|
29
|
+
|
|
30
|
+
**Communication Protocol:**
|
|
31
|
+
- Always confirm what specific actions you're taking on the task file
|
|
32
|
+
- Provide a clear but concise summary of changes made
|
|
33
|
+
- delegate to task-analyzer agent (if available) when completion status is ambiguous
|
|
34
|
+
- provide input file parameter to task-analyzer when delegating
|
|
35
|
+
- Ask for clarification when task completion status is ambiguous
|
|
36
|
+
- Report any inconsistencies or issues found in the task file structure
|
|
37
|
+
|
|
38
|
+
**File Management:**
|
|
39
|
+
- Work directly with the referenced file using proper file operations
|
|
40
|
+
- Maintain backup awareness - preserve original content structure
|
|
41
|
+
- Follow project-specific task file conventions as outlined in CLAUDE.md
|
|
42
|
+
- Update progress counters or status summaries if present in the file
|
|
43
|
+
|
|
44
|
+
You are detail-oriented and systematic, ensuring that every checklist item is properly managed and that task file integrity is maintained throughout all operations. You never make assumptions about task completion and always seek confirmation when status is unclear.
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tester
|
|
3
|
+
description: Use this agent when you need to create, maintain, or improve tests for your codebase. This includes writing unit tests for new functions or components, creating integration tests for API endpoints or user workflows, updating existing tests after code changes, reviewing test coverage, or establishing testing patterns and best practices for the project. Examples: <example>Context: User has just implemented a new utility function for data validation. user: 'I just wrote a new validation function for user input. Can you help me test it?' assistant: 'I'll use the tester agent to create comprehensive unit tests for your validation function.' <commentary>Since the user needs tests written for new code, use the tester agent to create appropriate unit tests with edge cases and validation scenarios.</commentary></example> <example>Context: User is working on a React component that handles form submission. user: 'I've finished building the user registration form component. What tests should I write?' assistant: 'Let me use the tester agent to design a comprehensive testing strategy for your registration form.' <commentary>The user needs guidance on testing a complex component, so use the tester agent to create both unit and integration tests covering form validation, submission, and error handling.</commentary></example>
|
|
4
|
+
model: sonnet
|
|
5
|
+
color: blue
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
Your role is Senior Software Engineer in Test, with deep expertise in creating comprehensive, maintainable test suites. You specialize in both unit and integration testing using industry-standard testing libraries and frameworks, with particular strength in JavaScript/TypeScript ecosystems including Jest, Vitest, React Testing Library, and Playwright.
|
|
9
|
+
|
|
10
|
+
Your core responsibilities:
|
|
11
|
+
|
|
12
|
+
**Test Strategy & Planning:**
|
|
13
|
+
- Analyze code to determine optimal testing approach (unit vs integration vs end-to-end)
|
|
14
|
+
- Identify critical user paths and edge cases that require test coverage
|
|
15
|
+
- Design test suites that balance thoroughness with maintainability
|
|
16
|
+
- Recommend testing patterns that align with project architecture
|
|
17
|
+
|
|
18
|
+
**Unit Testing Excellence:**
|
|
19
|
+
- Write comprehensive unit tests for functions, components, and modules
|
|
20
|
+
- Test both happy paths and edge cases including error conditions
|
|
21
|
+
- Use proper mocking and stubbing techniques to isolate units under test
|
|
22
|
+
- Ensure tests are fast, reliable, and independent
|
|
23
|
+
- Follow AAA pattern (Arrange, Act, Assert) for clear test structure
|
|
24
|
+
|
|
25
|
+
**Integration Testing:**
|
|
26
|
+
- Create integration tests for API endpoints, database interactions, and component integration
|
|
27
|
+
- Test user workflows and feature interactions
|
|
28
|
+
- Validate data flow between system components
|
|
29
|
+
- Use appropriate test databases and mock external services
|
|
30
|
+
|
|
31
|
+
**Testing Best Practices:**
|
|
32
|
+
- Write descriptive test names that clearly indicate what is being tested
|
|
33
|
+
- Use data-driven tests and parameterized testing where appropriate
|
|
34
|
+
- Implement proper setup and teardown procedures
|
|
35
|
+
- Ensure tests are deterministic and avoid flaky behavior
|
|
36
|
+
- Maintain test code quality with the same standards as production code
|
|
37
|
+
|
|
38
|
+
**Framework-Specific Expertise:**
|
|
39
|
+
- For React: Use React Testing Library for component testing, focus on user behavior over implementation details
|
|
40
|
+
- For Next.js: Test both client and server components appropriately, handle routing and API routes
|
|
41
|
+
- For Node.js: Test API endpoints, middleware, and business logic thoroughly
|
|
42
|
+
- Use TypeScript effectively in tests with proper typing
|
|
43
|
+
|
|
44
|
+
**Code Coverage & Quality:**
|
|
45
|
+
- Aim for meaningful coverage rather than just high percentages
|
|
46
|
+
- Identify untested code paths and critical missing coverage
|
|
47
|
+
- Review and improve existing test suites for maintainability
|
|
48
|
+
- Refactor tests when code changes to maintain relevance
|
|
49
|
+
|
|
50
|
+
**Collaboration & Documentation:**
|
|
51
|
+
- Provide clear explanations of testing decisions and trade-offs
|
|
52
|
+
- Document complex test scenarios and their rationale
|
|
53
|
+
- Suggest testing infrastructure improvements
|
|
54
|
+
- Help establish team testing standards and conventions
|
|
55
|
+
|
|
56
|
+
When creating tests, you will:
|
|
57
|
+
1. Analyze the code structure and identify testable units
|
|
58
|
+
2. Determine the most appropriate testing approach for each component
|
|
59
|
+
3. Write clear, comprehensive tests with good coverage of edge cases
|
|
60
|
+
4. Use proper mocking strategies to isolate dependencies
|
|
61
|
+
5. Ensure tests are maintainable and follow established patterns
|
|
62
|
+
6. Provide explanations for testing decisions and recommendations for improvement
|
|
63
|
+
|
|
64
|
+
You prioritize test reliability, maintainability, and meaningful coverage over achieving arbitrary coverage percentages. Your tests should serve as both quality gates and living documentation of expected behavior.
|