Perseus
GitLab Transcend Hackathon — Showcase Track

Don't Guess What Breaks.

One mention. Instant dependency impact analysis. @blast-radius src/auth/tokens.py and the agent maps every file that depends on your change — direct, transitive, across projects.

Direct Impact
12files
Transitive Dependents
47files
target api db ui sdk cli server tests worker target direct transitive far
§ 01

Mention. Analyze. Ship.

Blast Radius plugs directly into GitLab Duo. Mention @blast-radius in any issue or MR comment, and the agent queries GitLab Orbit's knowledge graph to trace every dependency chain in real time.

GitLab MR Comment
@blast-radius src/auth/tokens.py --function checkToken

Blast Radius — @blast-radius

DIRECT IMPACT (12 files):
  • src/api/middleware.py — imports checkToken
  • src/db/sessions.py — calls checkToken on session init
  • src/ui/login.py — token validation in login flow
  • ...

TRANSITIVE IMPACT (47 files):
  • src/cli/main.py — depends on middleware.py
  • src/server/app.py — depends on sessions.py
  • ...

RISK SCORE: HIGH — 59 total dependents across 3 projects
§ 02

GitLab Native

Native

Orbit Knowledge Graph

Queries GitLab Orbit directly — no external services, no API keys. Traverses gl_definition nodes and gl_reference edges to map every dependency.

Native

MR Comment Integration

Results posted as structured MR comments. Direct impact, transitive impact, project impact, risk score — all in the MR thread where teams discuss the change.

Native

CI/CD Pipeline

Run blast-radius in CI with a single include in .gitlab-ci.yml. Block MRs that exceed a risk threshold.

.gitlab-ci.yml
include:
  - template: Workflows/MergeRequest-Pipelines.gitlab-ci.yml

blast_radius:
  stage: test
  script:
    - blast-radius $CI_MERGE_REQUEST_DIFF_BASE_SHA..$CI_MERGE_REQUEST_SOURCE_BRANCH_SHA
  rules:
    - if: $CI_PIPELINE_SOURCE == "merge_request_event"
§ 03

Cannot Fail On Stage

Blast Radius bundles an offline fixture mode. The dependency graph is pre-computed from a snapshot — demos run identically every time, regardless of network availability or Orbit API status. This is a feature, not a workaround.

Production

Live Orbit Query

Connects to GitLab Orbit's MCP interface. Real-time dependency traversal across active projects. Cypher-style query_graph and get_graph_schema tools.

Demo / Stage

Offline Fixture Mode

Pre-computed graph snapshot. Zero network calls. Identical output every run. Hackathon judges see exactly the same thing every time — no live service dependency.

§ 04

Quickstart Setup

1. Install
pip install blast-radius-agent
2. Configure
# Add to GitLab AI Catalog (Project → AI → Agents)
# Or use the agent.yml file from this repo
3. Use It
# In any GitLab issue or MR comment:
@blast-radius src/models/user.py

# With a specific function:
@blast-radius src/auth/tokens.py --function checkToken

# In CI/CD:
blast-radius $CI_MERGE_REQUEST_DIFF_BASE_SHA..HEAD
Blast Radius on GitHub →