Skip to content
Back to skills

Pythia Impact

ASecurity

Use before proposing or writing any change to an Oracle object - a procedure, package, function, trigger, view, or table. Impact analysis comes first, because what depends on an object decides how careful the change must be, and Oracle invalidates dependents in cascade.

  • 4 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added October 14, 2026
ai-agentsgodatabase

Security analysis

A100/100

Scanned October 14, 2026

npx -y skills add thaildhe172591/pythia --skill pythia-impact --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Pythia Impact?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Pythia Impact
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/thaildhe172591-pythia-impact/badge)](https://www.skillsdirectory.com/skills/thaildhe172591-pythia-impact)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: pythia-impact
description: Use before proposing or writing any change to an Oracle object - a procedure, package, function, trigger, view, or table. Impact analysis comes first, because what depends on an object decides how careful the change must be, and Oracle invalidates dependents in cascade.
---

# Impact Before Change

**Announce at start:** "Using pythia-impact to measure the blast radius first."

**Phase:** Learn — and the first Ask gate: a large blast radius reaches the developer before any code is written

Changing an Oracle object recompiles or invalidates everything that depends
on it — immediately, schema-wide, for every user of a shared database. The
cost of knowing first is one command.

## The Iron Law

```
NO CHANGE PROPOSED WITHOUT ITS IMPACT MEASURED FIRST
```

## The Workflow

1. `pythia impact <OBJECT> --depth 2` — everything that depends on it,
   as a tree, ending with the line that matters:
   `-- impact: N dependent objects, M currently VALID`.
2. `pythia deps <OBJECT> --depth 2` — the other direction, what it uses;
   read it when the change touches calls or table access.
3. `pythia invalid` — the baseline. Anything already INVALID before the
   change must not be blamed on the change later; apply compares against
   this automatically, but you should know the starting state too.

## Reading the numbers

| Result | What to do |
|---|---|
| 0 dependents | Say so and proceed; verify after apply anyway. |
| 1–9 dependents | List them to the developer alongside the proposal. |
| 10+ dependents, or any cross-schema dependent | Show the tree and get an explicit go-ahead **before writing any code**. |
| Dependents already INVALID | Point them out — the area is already unstable. |

Tables deserve the same treatment as code: `impact` on a table shows every
program that would be invalidated by an `ALTER`.

## Red Flags — STOP if you catch yourself thinking

| Thought | Reality |
|---------|---------|
| "It's just a small helper" | Helpers are the most-depended-on objects there are. |
| "I'll check impact after writing the code" | Then the number cannot change the design. Too late. |
| "The preview in apply shows impact anyway" | That line is confirmation of a number you already knew — not discovery. |
| "It's a new object, nothing depends on it" | True — say that, with `impact` output as evidence, not as an assumption. |

## Hand-off

Impact known and acceptable → `pythia-write` to write the change following
the codebase's conventions → `pythia-apply` to land it with preview and
verification.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.