tda-codebase-design

Designs deep pipeline modules around scientific seams for TDL topological data analysis code.

1|Updated Dec 13, 2025
One-click install
npx skills add https://github.com/ZK-Theory/TDL --skill tda-codebase-design-zk-theory
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tda-codebase-design
Source: https://github.com/ZK-Theory/TDL/tree/main/.agents/skills/tda-codebase-design
Command: npx skills add https://github.com/ZK-Theory/TDL --skill tda-codebase-design-zk-theory

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Refactoring or adding modules to a topological data analysis (TDA) pipeline often produces shallow adapters, duplicated logic across battery scripts, and unclear module boundaries that silently alter committed research results. This Skill provides a disciplined procedure for defining module boundaries and interfaces around clean scientific seams. ## Core Features & Use Cases - Seam Vocabulary: Names modules against a fixed vocabulary (trajectory_loader, embedding_transform, null_generator, diagram_computer, permutation_test, result_writer, and more) so boundaries stay consistent. - Full Interface Definition: Forces interfaces to cover invariants, error modes, seed handling, performance, provenance fields, and output schemas — not just function signatures. - Paper-Result Risk Control: Flags any refactor that could change committed result values, requiring a rerun plan and a [DECISION] record instead of a silent change. - Use Case: When adding a new null-generation step to a persistent homology pipeline, use this Skill to decide whether it is its own seam, define its contract surface, and plan migration of existing result JSONs. ## Quick Start Ask the AI to apply the tda-codebase-design skill to plan the module boundary and interface for a new permutation testing step in the TDL pipeline.

Frequently Asked Questions about tda-codebase-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I design module boundaries in a data analysis pipeline?

Identify the scientific seam the module sits on, then define its full interface: parameters, invariants, ordering constraints, randomness and seeds, error modes, performance, provenance fields, and output schema. Name the module against a fixed seam vocabulary and fold in single-implementation pass-through adapters.

What is a deep module in scientific software design?

A deep module hides substantial behaviour behind a small interface, so callers need no unstated assumptions to use it safely. A shallow pass-through adapter with one implementation is noise and should be folded into the module it wraps.

How do I refactor pipeline code without changing committed results?

Map current callers and downstream consumers of committed result JSONs first, then state a migration plan with backward-compatibility requirements. Any change that could alter a committed result's value gets a rerun plan and a recorded [DECISION], never a silent change.

When should duplicated logic across analysis scripts be consolidated?

Consolidate duplication at the scientific seam, not with a leaky helper function. Duplication across battery scripts is the recurring pattern this Skill targets; the fix is a properly interfaced module on the seam that all scripts cross.

When should I not use this module design procedure?

Do not use it for prose editing, literature work, or note cleanup — it targets pipeline module boundaries only. Also stop and escalate when a proposed seam conflicts with locked conventions like metric order, landmark count, or dedup strategy.