thaildhe172591/pythia

pythia-impact

Use before proposing or writing any change to an Oracle object - a procedure, package, function, trigger, view, or table.

Quelltext ansehen

Verwendung

  1. Installationsbefehl kopieren und das Quellpaket vor der Installation in der eigenen Agentenumgebung prüfen.
  2. Benötigte Werkzeuge, Zugangsdaten und Hosts im Original prüfen.
  3. Eingabe und gewünschtes Ergebnis beschreiben und die Ausgabe mit den Quellen abgleichen.
npx skills add https://github.com/thaildhe172591/pythia --skill pythia-impact

Vor dem Start

  • Die Installation umfasst weder Modellabo noch API-Kontingent oder Dateizugriffsrechte.
  • Sterne und Installationen zeigen Aktivität, keine unabhängige Qualitäts- oder Sicherheitsprüfung.
Originales Skill-Dokument

Aus dem Quell-Repository gerendert; Überschriften, Beispiele, Code, Tabellen, Links und Bilder bleiben erhalten.

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.

  1. pythia deps <OBJECT> --depth 2 — the other direction, what it uses;

read it when the change touches calls or table access.

  1. 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

ResultWhat to do
0 dependentsSay so and proceed; verify after apply anyway.
1–9 dependentsList them to the developer alongside the proposal.
10+ dependents, or any cross-schema dependentShow the tree and get an explicit go-ahead before writing any code.
Dependents already INVALIDPoint 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

ThoughtReality
"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.

Verwandte Aufgaben

aus demselben Repository

Weitere Skills

Alle Skills
thaildhe172591
Community

pythia-apply

Use when a PL/SQL change is ready to reach the database - applying a CREATE OR REPLACE, restoring from the journal, or any other write. Runs the six-step flow through pythia apply and enforces the gate - the developer sees the preview and approves in chat before anything is written, and a broken result is never reported as success.

Installationen
2
GitHub Stars
4
Aktualisiert
16. Okt.
thaildhe172591
Community

pythia-comment

Use when you are about to write or edit a comment in PL/SQL you are changing, or in a .sql deliverable headed for the database. One line, one fixed shape, and anything longer goes where it belongs instead. It fires on the act of commenting rather than on a request - catching yourself opening a second comment line above one statement is the trigger.

Installationen
2
GitHub Stars
4
Aktualisiert
16. Okt.
thaildhe172591
Community

pythia-deploy

Use when a change spans more than one statement or file - a release or migration script, "chay script DDL", "deploy ban release", "run these .sql files", a table with its comments and indexes, a package spec and body together, a directory of numbered scripts. Orders the statements, previews every one, gets one approval for the set, runs them through apply's six steps in order and stops at the first failure.

Installationen
2
GitHub Stars
4
Aktualisiert
16. Okt.
thaildhe172591
Community

pythia-table

Use when creating or changing a table, column, constraint, index, sequence or comment - "add a column", "create a table for X", "them cot", "tao bang", "sua kieu du lieu", "comment cho cot", a migration script, or a column type change. Designs the DDL to the house standard and Oracle practice, documents every table and column with COMMENT ON, and lands it through pythia deploy with the honest rollback.

Installationen
2
GitHub Stars
4
Aktualisiert
16. Okt.