Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
699ea28
Add v6 post-mortem and calibrator decision for spec-based-ecps-rewire
MaxGhenis Apr 17, 2026
7186926
Amend calibrator-decision with sparse_coverage evidence; add scale-up…
MaxGhenis Apr 17, 2026
7d7ca66
Add MicrocalibrateAdapter as mainline calibration backend
MaxGhenis Apr 17, 2026
a408fb4
Diagnose PSID coverage = 0 in benchmark_multi_seed.json
MaxGhenis Apr 17, 2026
af62615
Add ScaleUpRunner harness for synthesizer scale-up benchmark
MaxGhenis Apr 17, 2026
c3672b1
Fix peak RSS reporting on macOS (ru_maxrss is bytes, not kilobytes)
MaxGhenis Apr 17, 2026
1576d06
Add stage-1 pilot results doc (pilot complete, full run in progress)
MaxGhenis Apr 17, 2026
6fa9417
Persist scale-up results incrementally as JSONL
MaxGhenis Apr 17, 2026
06367fa
Add __main__ entry point for bakeoff package + incremental-JSONL test
MaxGhenis Apr 17, 2026
e750dc4
Stage 1 scale-up results: small-benchmark ordering inverts at real scale
MaxGhenis Apr 17, 2026
d0fa450
Run stage 1 at full 77k; cap PRDC samples to fix OOM
MaxGhenis Apr 17, 2026
6763237
Stage 1 apples-to-apples 40k re-run + overnight session summary
MaxGhenis Apr 17, 2026
225eb36
Add per-column zero-rate breakdown + embedding-PRDC validation script
MaxGhenis Apr 17, 2026
31bae2a
Wire MicrocalibrateAdapter into us.py pipeline (G1 unblocker)
MaxGhenis Apr 17, 2026
e46eb49
Test zero_rate_per_column breakdown is populated on every stage result
MaxGhenis Apr 17, 2026
4e02048
Update overnight session summary with G1 unblocker + follow-on additions
MaxGhenis Apr 17, 2026
55d711f
Expose per-method hyperparameter overrides via method_kwargs
MaxGhenis Apr 17, 2026
cef213b
Add quickstart doc walking through rewire tooling end-to-end
MaxGhenis Apr 17, 2026
3d1ab93
Add calibrate-on-synthesizer experiment script
MaxGhenis Apr 17, 2026
298d915
ZI-MAF hyperparameter tuning result: 10x gap to ZI-QRF not closeable
MaxGhenis Apr 17, 2026
9163467
Embedding-PRDC validation: stage-1 ordering is not a metric artifact
MaxGhenis Apr 17, 2026
09ad0e1
Calibrate-on-synthesizer result: weighting doesn't rescue bad synthesis
MaxGhenis Apr 17, 2026
80dbfa1
Snap categorical shared cols in harness post-generation
MaxGhenis Apr 17, 2026
04def9b
Post-snap stage-1 results: ZI-QRF 0.928 coverage at 77k × 50
MaxGhenis Apr 17, 2026
226fd70
Note upstream PR #5 (microplex fix/shared-col-categorical-noise) in s…
MaxGhenis Apr 17, 2026
ddd9ee0
Expose --calibration-backend and --calibration-max-iter via checkpoin…
MaxGhenis Apr 17, 2026
ab26608
Add Quarto paper scaffold with literature survey and main manuscript
MaxGhenis Apr 18, 2026
fa959d3
Add consolidated referee review and revision plan
MaxGhenis Apr 18, 2026
23c6703
Rerun embedding-PRDC and calibrate-on-synth with post-snap microplex
MaxGhenis Apr 18, 2026
91fef66
Address review: Code/Data Availability, COI, first-person voice, tables
MaxGhenis Apr 18, 2026
1cd64a2
Draft §3 Architecture, §4 Methods, §5.3 rare cells, §6 Discussion, §8…
MaxGhenis Apr 18, 2026
613b477
Self-contain Related Work, add pipeline figure, voice pass on lit review
MaxGhenis Apr 18, 2026
4486f67
Add ZI-CART and factorialize zero-inflation × draw-method
MaxGhenis Apr 18, 2026
c35f885
ZI classifier comparison on QDNN: all five cluster within noise
MaxGhenis Apr 18, 2026
cbf1258
ZI classifier isolated eval: RF default is worst, QDNN draw swamps si…
MaxGhenis Apr 18, 2026
ca06f96
Make HistGB the ZI-QDNN zero-classifier default
MaxGhenis Apr 18, 2026
ed49d43
Mark B1 resolved: post-snap reruns already in place
MaxGhenis Apr 18, 2026
6ffdb06
Adapter builds float32 estimate_matrix; halve peak RSS at v7 scale
MaxGhenis Apr 18, 2026
704ff77
Bump microcalibrate to 0.22; wire batch_size=100_000 in adapter config
MaxGhenis Apr 18, 2026
c6ab4db
Bump microcalibrate pin to >=0.22 (the real metadata change)
MaxGhenis Apr 18, 2026
3ebc8d9
Re-export MicrocalibrateAdapter from upstream microplex.calibration
MaxGhenis Apr 18, 2026
45902f5
Paper §3.3: note the modular calibrator home and the batching fix
MaxGhenis Apr 18, 2026
8968a54
v8 plan: TDD pins for zi_qrf backend + run-plan doc
MaxGhenis Apr 18, 2026
e2db804
Sparse-native calibration build + identity preservation clarification
MaxGhenis Apr 19, 2026
da0aadd
Expose --donor-imputer-backend on checkpoint CLI
MaxGhenis Apr 19, 2026
8c88277
Fix v7 drop-negatives bug: zero gate labels `y != 0`, not `y > 0`
MaxGhenis Apr 19, 2026
e8ee44b
Add regime_aware donor imputer backend using microimpute.ZeroInflated…
MaxGhenis Apr 19, 2026
d9afdbc
Precompute constraint metadata once; avoid 3× coefficient-array rescans
MaxGhenis Apr 20, 2026
e442c08
Batched PolicyEngine variable materialization; fixes v7–v9 OOM root c…
MaxGhenis Apr 21, 2026
0dc92be
Simplify: consolidate subset helper, trim redundant docstrings
MaxGhenis Apr 21, 2026
07869d5
fixup! Simplify: consolidate subset helper, trim redundant docstrings
MaxGhenis Apr 21, 2026
21053e6
Per-stage lambda_l0 + post-imputation/post-microsim checkpoints
MaxGhenis Apr 22, 2026
2a59f38
Add recalibrate-from-checkpoint helper + CLI entry point
MaxGhenis Apr 22, 2026
8fa62e4
Enable post-microsim recalibration resume
MaxGhenis Apr 22, 2026
4b35735
Add downstream tax-aggregate validation module (paper B2)
MaxGhenis Apr 22, 2026
6482352
Add B2 validation runner script with per-variable checkpointing
MaxGhenis Apr 22, 2026
94e67e0
Add batched B2 aggregate runner + per-variable single-shot runner
MaxGhenis Apr 22, 2026
5796bf7
Record B2 downstream validation results on v11 output
MaxGhenis Apr 22, 2026
c08252f
Make downstream aggregate weighting explicit; seed regime-aware imputer
MaxGhenis Apr 23, 2026
a9262ea
Use PolicyEngine formulas for oracle targets
MaxGhenis Apr 25, 2026
e555ea8
Run site snapshot CI on Python 3.14
MaxGhenis Apr 25, 2026
7c67e54
Test site snapshot against core main
MaxGhenis Apr 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 82 additions & 0 deletions .claude/skills/gitnexus/gitnexus-cli/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
---
name: gitnexus-cli
description: "Use when the user needs to run GitNexus CLI commands like analyze/index a repo, check status, clean the index, generate a wiki, or list indexed repos. Examples: \"Index this repo\", \"Reanalyze the codebase\", \"Generate a wiki\""
---

# GitNexus CLI Commands

All commands work via `npx` — no global install required.

## Commands

### analyze — Build or refresh the index

```bash
npx gitnexus analyze
```

Run from the project root. This parses all source files, builds the knowledge graph, writes it to `.gitnexus/`, and generates CLAUDE.md / AGENTS.md context files.

| Flag | Effect |
| -------------- | ---------------------------------------------------------------- |
| `--force` | Force full re-index even if up to date |
| `--embeddings` | Enable embedding generation for semantic search (off by default) |

**When to run:** First time in a project, after major code changes, or when `gitnexus://repo/{name}/context` reports the index is stale. In Claude Code, a PostToolUse hook runs `analyze` automatically after `git commit` and `git merge`, preserving embeddings if previously generated.

### status — Check index freshness

```bash
npx gitnexus status
```

Shows whether the current repo has a GitNexus index, when it was last updated, and symbol/relationship counts. Use this to check if re-indexing is needed.

### clean — Delete the index

```bash
npx gitnexus clean
```

Deletes the `.gitnexus/` directory and unregisters the repo from the global registry. Use before re-indexing if the index is corrupt or after removing GitNexus from a project.

| Flag | Effect |
| --------- | ------------------------------------------------- |
| `--force` | Skip confirmation prompt |
| `--all` | Clean all indexed repos, not just the current one |

### wiki — Generate documentation from the graph

```bash
npx gitnexus wiki
```

Generates repository documentation from the knowledge graph using an LLM. Requires an API key (saved to `~/.gitnexus/config.json` on first use).

| Flag | Effect |
| ------------------- | ----------------------------------------- |
| `--force` | Force full regeneration |
| `--model <model>` | LLM model (default: minimax/minimax-m2.5) |
| `--base-url <url>` | LLM API base URL |
| `--api-key <key>` | LLM API key |
| `--concurrency <n>` | Parallel LLM calls (default: 3) |
| `--gist` | Publish wiki as a public GitHub Gist |

### list — Show all indexed repos

```bash
npx gitnexus list
```

Lists all repositories registered in `~/.gitnexus/registry.json`. The MCP `list_repos` tool provides the same information.

## After Indexing

1. **Read `gitnexus://repo/{name}/context`** to verify the index loaded
2. Use the other GitNexus skills (`exploring`, `debugging`, `impact-analysis`, `refactoring`) for your task

## Troubleshooting

- **"Not inside a git repository"**: Run from a directory inside a git repo
- **Index is stale after re-analyzing**: Restart Claude Code to reload the MCP server
- **Embeddings slow**: Omit `--embeddings` (it's off by default) or set `OPENAI_API_KEY` for faster API-based embedding
89 changes: 89 additions & 0 deletions .claude/skills/gitnexus/gitnexus-debugging/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
---
name: gitnexus-debugging
description: "Use when the user is debugging a bug, tracing an error, or asking why something fails. Examples: \"Why is X failing?\", \"Where does this error come from?\", \"Trace this bug\""
---

# Debugging with GitNexus

## When to Use

- "Why is this function failing?"
- "Trace where this error comes from"
- "Who calls this method?"
- "This endpoint returns 500"
- Investigating bugs, errors, or unexpected behavior

## Workflow

```
1. gitnexus_query({query: "<error or symptom>"}) → Find related execution flows
2. gitnexus_context({name: "<suspect>"}) → See callers/callees/processes
3. READ gitnexus://repo/{name}/process/{name} → Trace execution flow
4. gitnexus_cypher({query: "MATCH path..."}) → Custom traces if needed
```

> If "Index is stale" → run `npx gitnexus analyze` in terminal.
## Checklist

```
- [ ] Understand the symptom (error message, unexpected behavior)
- [ ] gitnexus_query for error text or related code
- [ ] Identify the suspect function from returned processes
- [ ] gitnexus_context to see callers and callees
- [ ] Trace execution flow via process resource if applicable
- [ ] gitnexus_cypher for custom call chain traces if needed
- [ ] Read source files to confirm root cause
```

## Debugging Patterns

| Symptom | GitNexus Approach |
| -------------------- | ---------------------------------------------------------- |
| Error message | `gitnexus_query` for error text → `context` on throw sites |
| Wrong return value | `context` on the function → trace callees for data flow |
| Intermittent failure | `context` → look for external calls, async deps |
| Performance issue | `context` → find symbols with many callers (hot paths) |
| Recent regression | `detect_changes` to see what your changes affect |

## Tools

**gitnexus_query** — find code related to error:

```
gitnexus_query({query: "payment validation error"})
→ Processes: CheckoutFlow, ErrorHandling
→ Symbols: validatePayment, handlePaymentError, PaymentException
```

**gitnexus_context** — full context for a suspect:

```
gitnexus_context({name: "validatePayment"})
→ Incoming calls: processCheckout, webhookHandler
→ Outgoing calls: verifyCard, fetchRates (external API!)
→ Processes: CheckoutFlow (step 3/7)
```

**gitnexus_cypher** — custom call chain traces:

```cypher
MATCH path = (a)-[:CodeRelation {type: 'CALLS'}*1..2]->(b:Function {name: "validatePayment"})
RETURN [n IN nodes(path) | n.name] AS chain
```

## Example: "Payment endpoint returns 500 intermittently"

```
1. gitnexus_query({query: "payment error handling"})
→ Processes: CheckoutFlow, ErrorHandling
→ Symbols: validatePayment, handlePaymentError
2. gitnexus_context({name: "validatePayment"})
→ Outgoing calls: verifyCard, fetchRates (external API!)
3. READ gitnexus://repo/my-app/process/CheckoutFlow
→ Step 3: validatePayment → calls fetchRates (external)
4. Root cause: fetchRates calls external API without proper timeout
```
78 changes: 78 additions & 0 deletions .claude/skills/gitnexus/gitnexus-exploring/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
---
name: gitnexus-exploring
description: "Use when the user asks how code works, wants to understand architecture, trace execution flows, or explore unfamiliar parts of the codebase. Examples: \"How does X work?\", \"What calls this function?\", \"Show me the auth flow\""
---

# Exploring Codebases with GitNexus

## When to Use

- "How does authentication work?"
- "What's the project structure?"
- "Show me the main components"
- "Where is the database logic?"
- Understanding code you haven't seen before

## Workflow

```
1. READ gitnexus://repos → Discover indexed repos
2. READ gitnexus://repo/{name}/context → Codebase overview, check staleness
3. gitnexus_query({query: "<what you want to understand>"}) → Find related execution flows
4. gitnexus_context({name: "<symbol>"}) → Deep dive on specific symbol
5. READ gitnexus://repo/{name}/process/{name} → Trace full execution flow
```

> If step 2 says "Index is stale" → run `npx gitnexus analyze` in terminal.

## Checklist

```
- [ ] READ gitnexus://repo/{name}/context
- [ ] gitnexus_query for the concept you want to understand
- [ ] Review returned processes (execution flows)
- [ ] gitnexus_context on key symbols for callers/callees
- [ ] READ process resource for full execution traces
- [ ] Read source files for implementation details
```

## Resources

| Resource | What you get |
| --------------------------------------- | ------------------------------------------------------- |
| `gitnexus://repo/{name}/context` | Stats, staleness warning (~150 tokens) |
| `gitnexus://repo/{name}/clusters` | All functional areas with cohesion scores (~300 tokens) |
| `gitnexus://repo/{name}/cluster/{name}` | Area members with file paths (~500 tokens) |
| `gitnexus://repo/{name}/process/{name}` | Step-by-step execution trace (~200 tokens) |

## Tools

**gitnexus_query** — find execution flows related to a concept:

```
gitnexus_query({query: "payment processing"})
→ Processes: CheckoutFlow, RefundFlow, WebhookHandler
→ Symbols grouped by flow with file locations
```

**gitnexus_context** — 360-degree view of a symbol:

```
gitnexus_context({name: "validateUser"})
→ Incoming calls: loginHandler, apiMiddleware
→ Outgoing calls: checkToken, getUserById
→ Processes: LoginFlow (step 2/5), TokenRefresh (step 1/3)
```

## Example: "How does payment processing work?"

```
1. READ gitnexus://repo/my-app/context → 918 symbols, 45 processes
2. gitnexus_query({query: "payment processing"})
→ CheckoutFlow: processPayment → validateCard → chargeStripe
→ RefundFlow: initiateRefund → calculateRefund → processRefund
3. gitnexus_context({name: "processPayment"})
→ Incoming: checkoutHandler, webhookHandler
→ Outgoing: validateCard, chargeStripe, saveTransaction
4. Read src/payments/processor.ts for implementation details
```
64 changes: 64 additions & 0 deletions .claude/skills/gitnexus/gitnexus-guide/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
name: gitnexus-guide
description: "Use when the user asks about GitNexus itself — available tools, how to query the knowledge graph, MCP resources, graph schema, or workflow reference. Examples: \"What GitNexus tools are available?\", \"How do I use GitNexus?\""
---

# GitNexus Guide

Quick reference for all GitNexus MCP tools, resources, and the knowledge graph schema.

## Always Start Here

For any task involving code understanding, debugging, impact analysis, or refactoring:

1. **Read `gitnexus://repo/{name}/context`** — codebase overview + check index freshness
2. **Match your task to a skill below** and **read that skill file**
3. **Follow the skill's workflow and checklist**

> If step 1 warns the index is stale, run `npx gitnexus analyze` in the terminal first.

## Skills

| Task | Skill to read |
| -------------------------------------------- | ------------------- |
| Understand architecture / "How does X work?" | `gitnexus-exploring` |
| Blast radius / "What breaks if I change X?" | `gitnexus-impact-analysis` |
| Trace bugs / "Why is X failing?" | `gitnexus-debugging` |
| Rename / extract / split / refactor | `gitnexus-refactoring` |
| Tools, resources, schema reference | `gitnexus-guide` (this file) |
| Index, status, clean, wiki CLI commands | `gitnexus-cli` |

## Tools Reference

| Tool | What it gives you |
| ---------------- | ------------------------------------------------------------------------ |
| `query` | Process-grouped code intelligence — execution flows related to a concept |
| `context` | 360-degree symbol view — categorized refs, processes it participates in |
| `impact` | Symbol blast radius — what breaks at depth 1/2/3 with confidence |
| `detect_changes` | Git-diff impact — what do your current changes affect |
| `rename` | Multi-file coordinated rename with confidence-tagged edits |
| `cypher` | Raw graph queries (read `gitnexus://repo/{name}/schema` first) |
| `list_repos` | Discover indexed repos |

## Resources Reference

Lightweight reads (~100-500 tokens) for navigation:

| Resource | Content |
| ---------------------------------------------- | ----------------------------------------- |
| `gitnexus://repo/{name}/context` | Stats, staleness check |
| `gitnexus://repo/{name}/clusters` | All functional areas with cohesion scores |
| `gitnexus://repo/{name}/cluster/{clusterName}` | Area members |
| `gitnexus://repo/{name}/processes` | All execution flows |
| `gitnexus://repo/{name}/process/{processName}` | Step-by-step trace |
| `gitnexus://repo/{name}/schema` | Graph schema for Cypher |

## Graph Schema

**Nodes:** File, Function, Class, Interface, Method, Community, Process
**Edges (via CodeRelation.type):** CALLS, IMPORTS, EXTENDS, IMPLEMENTS, DEFINES, MEMBER_OF, STEP_IN_PROCESS

```cypher
MATCH (caller)-[:CodeRelation {type: 'CALLS'}]->(f:Function {name: "myFunc"})
RETURN caller.name, caller.filePath
```
Loading
Loading