blasttrace 1.2.2__cp313-cp313-win_amd64.whl
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.
Potentially problematic release.
This version of blasttrace might be problematic. Click here for more details.
- blasttrace/__init__.py +7 -0
- blasttrace/classifier.cp313-win_amd64.pyd +0 -0
- blasttrace/install_agent.cp313-win_amd64.pyd +0 -0
- blasttrace/license.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/__init__.py +4 -0
- blasttrace/parsers/api_route_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/contract_linker.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/dart_flutter_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/go_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/kotlin_android_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/python_ast_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/sql_schema_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/swift_ios_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/test_mapper.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/ts_react_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/parsers/vue_nuxt_parser.cp313-win_amd64.pyd +0 -0
- blasttrace/remediation.cp313-win_amd64.pyd +0 -0
- blasttrace/server.cp313-win_amd64.pyd +0 -0
- blasttrace/visualizer.cp313-win_amd64.pyd +0 -0
- blasttrace-1.2.2.dist-info/METADATA +193 -0
- blasttrace-1.2.2.dist-info/RECORD +25 -0
- blasttrace-1.2.2.dist-info/WHEEL +5 -0
- blasttrace-1.2.2.dist-info/entry_points.txt +3 -0
- blasttrace-1.2.2.dist-info/top_level.txt +2 -0
- blasttrace_cpp_core.cp313-win_amd64.pyd +0 -0
blasttrace/__init__.py
ADDED
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: blasttrace
|
|
3
|
+
Version: 1.2.2
|
|
4
|
+
Summary: Pre-Edit Full-Stack Breaking-Change & Contract Blast-Radius Engine
|
|
5
|
+
Home-page: https://blasttrace.dev
|
|
6
|
+
Author: Moin Hasan
|
|
7
|
+
Author-email: Moin Hasan <moin_hasan@live.com>
|
|
8
|
+
License: Proprietary
|
|
9
|
+
Project-URL: Homepage, https://blasttrace.dev
|
|
10
|
+
Project-URL: Documentation, https://blasttrace.dev
|
|
11
|
+
Classifier: Programming Language :: Python :: 3
|
|
12
|
+
Classifier: Programming Language :: C++
|
|
13
|
+
Classifier: Development Status :: 5 - Production/Stable
|
|
14
|
+
Classifier: Topic :: Software Development :: Testing
|
|
15
|
+
Classifier: Topic :: Software Development :: Quality Assurance
|
|
16
|
+
Description-Content-Type: text/markdown
|
|
17
|
+
Requires-Dist: fastmcp>=0.1.0
|
|
18
|
+
Requires-Dist: requests>=2.28.0
|
|
19
|
+
Dynamic: author
|
|
20
|
+
Dynamic: home-page
|
|
21
|
+
|
|
22
|
+
# BlastTrace
|
|
23
|
+
|
|
24
|
+
> **Pre-Edit Full-Stack Breaking-Change & Contract Blast-Radius Engine**
|
|
25
|
+
> `Database Schema` $\longleftrightarrow$ `Backend ORM & Go Services` $\longleftrightarrow$ `API Contracts` $\longleftrightarrow$ `Web (React/Vue)` $\longleftrightarrow$ `Mobile (Flutter/iOS/Android)` $\longleftrightarrow$ `Tests`
|
|
26
|
+
|
|
27
|
+
[](https://pypi.org/project/blasttrace/)
|
|
28
|
+
[](https://blasttrace.dev)
|
|
29
|
+
[](https://blasttrace.dev)
|
|
30
|
+
[](https://blasttrace.dev)
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## ⚡ What is BlastTrace?
|
|
35
|
+
|
|
36
|
+
**BlastTrace** is a high-performance **Model Context Protocol (FastMCP)** server and standalone developer CLI that prevents AI coding agents (and engineering teams) from silently breaking full-stack web and mobile applications.
|
|
37
|
+
|
|
38
|
+
Existing linters and AST tools only trace single-language file imports (`File A -> File B`). They go **100% blind** when a schema edit cascades across architectural boundaries:
|
|
39
|
+
|
|
40
|
+
```text
|
|
41
|
+
[Database Column: users.billing_balance]
|
|
42
|
+
↓
|
|
43
|
+
[Backend ORM / Go Microservice: User.billing_balance]
|
|
44
|
+
↓
|
|
45
|
+
[API Endpoint: GET /api/v1/user/summary]
|
|
46
|
+
↓
|
|
47
|
+
[Web & Mobile Clients]:
|
|
48
|
+
├─ React Storefront (CheckoutModal.tsx)
|
|
49
|
+
├─ Vue / Nuxt 3 Storefront (UserProfile.vue)
|
|
50
|
+
├─ Flutter POS Client (product_model.dart)
|
|
51
|
+
├─ Native iOS App (UserProfileDto.swift)
|
|
52
|
+
└─ Native Android App (UserProfileResponse.kt)
|
|
53
|
+
↓
|
|
54
|
+
[Targeted Test Suites: pytest, vitest, flutter test]
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Powered by the **BlastTrace Native Core**, BlastTrace deterministically connects schema, code, network contracts, and client consumers into an actionable topology **before** files are saved, before `git commit`, and before pull requests merge.
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## 🚀 Quick Start
|
|
62
|
+
|
|
63
|
+
### 1. Installation
|
|
64
|
+
```bash
|
|
65
|
+
pip install --upgrade blasttrace
|
|
66
|
+
```
|
|
67
|
+
*Supports Windows, macOS, and Linux out-of-the-box.*
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
### 2. Universal 1-Click AI Agent Setup
|
|
72
|
+
Automatically connect BlastTrace's 10 pre-edit safety tools to your AI coding agents in **1 single command**:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
blasttrace install-agent
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
BlastTrace automatically scans your machine and configures:
|
|
79
|
+
- **Cursor IDE** (workspace `.cursor/mcp.json` and global settings)
|
|
80
|
+
- **Claude Desktop** (`claude_desktop_config.json`)
|
|
81
|
+
- **Claude Code CLI** (`~/.claude.json`)
|
|
82
|
+
- **VS Code Extensions** (Cline & Roo Code)
|
|
83
|
+
- **Windsurf** (`mcp_config.json`)
|
|
84
|
+
- **Zed Editor** (`settings.json`)
|
|
85
|
+
- **Custom Frameworks** (prints standard universal MCP snippet for LangChain, LlamaIndex, Aider)
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
### 3. Standalone Developer CLI (Zero AI Required)
|
|
90
|
+
|
|
91
|
+
Run pre-edit contract reachability checks directly from your terminal:
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
# Check full-stack blast radius of any symbol or file
|
|
95
|
+
blasttrace check User.balance
|
|
96
|
+
|
|
97
|
+
# Or inspect blast radius across a specific repository
|
|
98
|
+
blasttrace check User.balance /path/to/repo
|
|
99
|
+
|
|
100
|
+
# Output raw JSON for custom CI/CD pipelines
|
|
101
|
+
blasttrace check User.balance --json
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
#### Clean Executive Terminal Output:
|
|
105
|
+
```text
|
|
106
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
107
|
+
BlastTrace Contract Reachability Summary
|
|
108
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
109
|
+
Target Symbol : User.balance
|
|
110
|
+
License Tier : PRO
|
|
111
|
+
Total Blast Radius : 28 downstream node(s)
|
|
112
|
+
|
|
113
|
+
Downstream Breakdown by Layer:
|
|
114
|
+
• Backend : 3 impacted
|
|
115
|
+
• API : 5 impacted
|
|
116
|
+
• Web Storefront (React) : 7 impacted
|
|
117
|
+
• Vue / Nuxt Storefront : 2 impacted
|
|
118
|
+
• Flutter POS / Client : 3 impacted
|
|
119
|
+
• iOS Client (Swift) : 3 impacted
|
|
120
|
+
• Android Client (Kotlin) : 2 impacted
|
|
121
|
+
• Tests : 3 impacted
|
|
122
|
+
|
|
123
|
+
Immediate Downstream Paths (Top 5):
|
|
124
|
+
-> sample_backend.py (User.balance)
|
|
125
|
+
-> sample_backend.py (User.balance) -> sample_backend.py (process_user_checkout)
|
|
126
|
+
-> sample_backend.py (User.balance) -> sample_backend.py (get_user_profile)
|
|
127
|
+
-> sample_backend.py (User.balance) -> sample_go_service.go (GET /api/v1/user)
|
|
128
|
+
-> sample_backend.py (User.balance) -> sample_backend.py (GET /api/v1/user [balance])
|
|
129
|
+
... and 23 more path(s) (pass --json for full trace)
|
|
130
|
+
|
|
131
|
+
Targeted Test Command:
|
|
132
|
+
pytest sample_test.py:test_user_checkout_and_balance
|
|
133
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
---
|
|
137
|
+
|
|
138
|
+
### 4. Git Pre-Commit Breaking-Change Gate
|
|
139
|
+
|
|
140
|
+
Install the automatic pre-commit safety gate across your repository:
|
|
141
|
+
```bash
|
|
142
|
+
blasttrace pre-commit --install
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Whenever you or an AI agent attempts to stage breaking contract edits without updating client consumers, BlastTrace halts the commit and outputs the exact impacted consumers.
|
|
146
|
+
|
|
147
|
+
---
|
|
148
|
+
|
|
149
|
+
## 🛡️ Supported Technology Stacks
|
|
150
|
+
|
|
151
|
+
| Architectural Layer | Supported Technologies & Frameworks |
|
|
152
|
+
| :--- | :--- |
|
|
153
|
+
| **Database & Migrations** | PostgreSQL, MySQL, SQLite, SQL DDL migrations (`.sql`), SQLAlchemy, Alembic, Prisma (`schema.prisma`), GORM. |
|
|
154
|
+
| **Backend & Microservices** | Python (FastAPI, Flask, Django REST, Pydantic, SQLAlchemy), **Go / Golang** (Gin, Fiber, Chi, standard `net/http`, GORM). |
|
|
155
|
+
| **API Contract Layer** | REST endpoints, JSON request/response payloads, OpenAPI / Swagger specifications. |
|
|
156
|
+
| **Web Frontends** | **React & Next.js** (TypeScript AST, prop-chains, property destructuring), **Vue.js & Nuxt 3** (`.vue` templates, `<script setup>`, Pinia stores, `$fetch`, `useFetch`, Axios). |
|
|
157
|
+
| **Mobile Client Suite** | **Flutter / Dart** (Dio, HTTP client, `fromJson`/`toJson` models), **Native iOS** (Swift `Codable` structs, `CodingKeys`, `URLSession`, Alamofire), **Native Android** (Kotlin `data class`, `@SerializedName`, Retrofit `@GET`/`@POST`, Ktor). |
|
|
158
|
+
| **Test Suites** | Pytest, Unittest, Jest, Vitest, Flutter test (change-aware test selection). |
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## 🔑 Licensing & Tiers
|
|
163
|
+
|
|
164
|
+
| Tier | Price | Access | Capabilities |
|
|
165
|
+
| :--- | :---: | :--- | :--- |
|
|
166
|
+
| **Community** | **$0** (Free Forever) | Zero key needed | Read-only repository topology indexing (`index_repository_topology`) and basic symbol reachability (`analyze_symbol_reachability`). |
|
|
167
|
+
| **Pro License** | **$19/mo** (or $180/yr) | Lemon Squeezy Store Key | All 10 FastMCP safety tools, automated Pre-Edit Breaking-Change Gate (PASS/WARN/BLOCK), surgical sync patch generation, and circular dependency interceptor. |
|
|
168
|
+
| **Team / CI Gate** | **$99/mo** (or $990/yr) | Lemon Squeezy Store Key | Everything in Pro, 5 seats, git pre-commit hook enforcement, and CI/CD PR Gate integration. |
|
|
169
|
+
|
|
170
|
+
Activate your Pro license:
|
|
171
|
+
```bash
|
|
172
|
+
blasttrace activate YOUR-LICENSE-KEY
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
Check current license status:
|
|
176
|
+
```bash
|
|
177
|
+
blasttrace status
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## 🔒 100% Local & Privacy-Preserving
|
|
183
|
+
|
|
184
|
+
BlastTrace executes entirely on your local machine:
|
|
185
|
+
- **Zero telemetry:** No metrics or usage sent to external servers.
|
|
186
|
+
- **Air-gapped operation:** Deterministic Dependency Reachability Engine runs locally.
|
|
187
|
+
- **Zero cloud code uploads:** Your intellectual property never leaves your workstation.
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## 🌐 Official Links
|
|
192
|
+
- **Website & Documentation:** [https://blasttrace.dev](https://blasttrace.dev)
|
|
193
|
+
- **PyPI Package:** [https://pypi.org/project/blasttrace/](https://pypi.org/project/blasttrace/)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
blasttrace_cpp_core.cp313-win_amd64.pyd,sha256=CgNewVouTCbZUDvK_41vQRyQh3oKmtdbBUZ9S67waMU,251904
|
|
2
|
+
blasttrace/__init__.py,sha256=bDtwKjN0Mqa7fBSank7vC4u9KZdX5UnSap-ruFNOtd0,160
|
|
3
|
+
blasttrace/classifier.cp313-win_amd64.pyd,sha256=UvXgc1Q5Jzgf0w0Yh9kZqk0ORmUdXuwqihr6_rARxgw,172032
|
|
4
|
+
blasttrace/install_agent.cp313-win_amd64.pyd,sha256=56Tgikx7gAOd_7OcKAJxiVCcKc6Wze9iTxSdyHa9_As,96768
|
|
5
|
+
blasttrace/license.cp313-win_amd64.pyd,sha256=dmnX_ofwGtBb3KHtJumM4WzxrpTOsBFtBLIzTrRMTqs,142848
|
|
6
|
+
blasttrace/remediation.cp313-win_amd64.pyd,sha256=-ccdtC3g9LW4di1jiVAomUG-33zBWwmp_ynnuu-sheA,76800
|
|
7
|
+
blasttrace/server.cp313-win_amd64.pyd,sha256=CdD53Gcbyx5yNejD2go0j7oCm6Dgt6DJNK4pvmXgyF0,252928
|
|
8
|
+
blasttrace/visualizer.cp313-win_amd64.pyd,sha256=OPmZjo6oS942xiWI-kGURjiD9N5e_MAawnKZaDqQl_U,87040
|
|
9
|
+
blasttrace/parsers/__init__.py,sha256=YZz8WFIdpQ31f4w_ldnp6YONucgrcwDO-gOtc1SpzEw,74
|
|
10
|
+
blasttrace/parsers/api_route_parser.cp313-win_amd64.pyd,sha256=JPl4xUFwKowKYl1pP6uJlQuvxoODJpB-uoqf7948ACY,112128
|
|
11
|
+
blasttrace/parsers/contract_linker.cp313-win_amd64.pyd,sha256=257iUp4VQMx0ca86zrHW6vfBJxO3Wj3C9Wt-7E3nzYY,277504
|
|
12
|
+
blasttrace/parsers/dart_flutter_parser.cp313-win_amd64.pyd,sha256=7jN62DHLKxDZgxqS-BAA21fIDZHoy4e1Wl_j0Dnba-E,83968
|
|
13
|
+
blasttrace/parsers/go_parser.cp313-win_amd64.pyd,sha256=-njVXOQBmOvbqoYaAF9E-T_aD6Iwbj5dCKJBvGpLvqs,78848
|
|
14
|
+
blasttrace/parsers/kotlin_android_parser.cp313-win_amd64.pyd,sha256=HE9hxL-pfNKYrQpiWizJbqzwOM1xQ8j356rOBFXQX7o,85504
|
|
15
|
+
blasttrace/parsers/python_ast_parser.cp313-win_amd64.pyd,sha256=xka6LcAmBPI5tEvTHYtg68FuL7bOBD4ZrRQ968BlBuY,121344
|
|
16
|
+
blasttrace/parsers/sql_schema_parser.cp313-win_amd64.pyd,sha256=ItdzhF_-BwgSSCmvjbbpZsbsGiaP21Qc4b9XMXy1C8E,109056
|
|
17
|
+
blasttrace/parsers/swift_ios_parser.cp313-win_amd64.pyd,sha256=t-HlgnV57mSZtqXwMUXgTKQxDgIJw31v8fPo9m8n0a4,89600
|
|
18
|
+
blasttrace/parsers/test_mapper.cp313-win_amd64.pyd,sha256=0qwK--UhTQpRI7pj2rXfElDtOJ1vnAh7llkIKccqRZg,96256
|
|
19
|
+
blasttrace/parsers/ts_react_parser.cp313-win_amd64.pyd,sha256=5xHlVguQ9IiA9-oZ5E_AqOh9vhq5yELhMN94goW_AkM,97280
|
|
20
|
+
blasttrace/parsers/vue_nuxt_parser.cp313-win_amd64.pyd,sha256=iJkC_EMfFoaDhT3xfWrnXg9oVDv5equoEoJRn-jF-WI,81920
|
|
21
|
+
blasttrace-1.2.2.dist-info/METADATA,sha256=2gIT-bgnF3q1FUs3vnfrOrOhUJ5YZUB9_PozBDlf2SQ,8638
|
|
22
|
+
blasttrace-1.2.2.dist-info/WHEEL,sha256=fOyJWI5N6P4iPL9_doBC3lf0L4Z-hcIkjNV5ilMSlqY,101
|
|
23
|
+
blasttrace-1.2.2.dist-info/entry_points.txt,sha256=YqImtXzrUYt4ugt24ZrSX8OhCzEsLAJbtl1izOx9dq0,94
|
|
24
|
+
blasttrace-1.2.2.dist-info/top_level.txt,sha256=_P_mAPAvSB8xQJylCKQqteQmeC48BYmGItyYFPZfQ_s,31
|
|
25
|
+
blasttrace-1.2.2.dist-info/RECORD,,
|
|
Binary file
|