/01

Architecture

Thirteen modules across four functional layers — ingest, transform, orchestrate, output. Click any node to open its manifest. Hover to isolate its dependency edges. Drag to pan. Scroll to zoom.

▾ module graph · click · hover · pan · scroll
file tree
/02

Data flows

Three end-to-end paths through the system. Each arrow is a function call carrying a typed value.

/03

Interface

Five subcommands. Two working today; three planned. Python API surface mirrors the CLI for embedding in notebooks.

subcommands
commandpurposestatusflags
python api
example invocations
/04

Data schemas

The two CSVs that flow between stages. Column-level types and descriptions.

/05

Filesystem

Where everything lives.

inputs
outputs
/06

Run results · V0.2

psf_mode distribution
status distribution
pa flip diagnostic — direct vs 180-flipped, per band
bandnmed |Δ| directmed |Δ| flippedflip wins
/07

Cluster ops

SGE submission scripts and the gotchas they exist to protect against.

submission scripts
cluster gotchas
    shell session — laptop + cluster
    # laptop — push the feature branch
    $ git push origin feature/v0.2-psf
    
    # cluster — pull, install, submit
    $ cd ~/palfitology && git pull
    $ pip install -e . --no-deps && hash -r
    
    $ cd ~/PALFITology_OLD
    $ ./scripts/submit_all.sh 1638518.csv
      array job     -> 806464 (8 tasks)
      reconcile job -> held on 806464
    
    $ qstat -u $USER
      806464 .... running on 8 nodes
    /08

    Conventions

    Rules of the road. Every convention exists because a previous attempt was bitten by its absence.

    /09

    Constraints

    Hard limits — numerical, data, performance, cluster, and process.

    /10

    Architecture decisions

    Why the codebase looks the way it does.

    /11

    Open questions

    /12

    Roadmap

    v0.1 to v0.6 (cluster validation in progress).

    tests · coverage
    fileLOCcovers