Skip to content

Example Workflows

Substrate + ecosystem integrations. Each workflow reads through Franklin's surface, converts through an industry bridge, and verifies federation cosignature.


numpy — substrate cadence sliding window

import numpy as np
from gaiaftcl import FranklinClient
from gaiaftcl.bridges.numpy_bridge import heartbeat_counters_to_array

with FranklinClient.connect() as franklin:
    hbs = franklin.heartbeat_history(limit=200)
    obs = heartbeat_counters_to_array(hbs, "observations_count")
    print(f"window mean: {obs.mean():.2f}")
    print(f"deltas: {np.diff(obs)}")

pandas — substrate timeline + cadence health

from gaiaftcl import FranklinClient
from gaiaftcl.bridges.pandas_bridge import (
    heartbeats_to_dataframe, cadence_summary
)

with FranklinClient.connect() as franklin:
    hbs = franklin.heartbeat_history(limit=1000)
    df = heartbeats_to_dataframe(hbs)
    df["tick_at"] = pd.to_datetime(df["tick_at_iso"])
    df.set_index("tick_at")[
        ["observations_count", "filtering_decisions_applied"]
    ].plot(figsize=(10, 4))

    print(cadence_summary(hbs))

scikit-learn — cluster substrate measurement windows

from gaiaftcl import FranklinClient
from gaiaftcl.bridges.sklearn_bridge import SubstrateFeatureExtractor
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
from sklearn.pipeline import Pipeline

with FranklinClient.connect() as franklin:
    rows = franklin.research_telemetry(limit=2000)
    pipe = Pipeline([
        ("extract", SubstrateFeatureExtractor(
            fields=["substrate_iteration_count", "tick_within_window"])),
        ("scale", StandardScaler()),
        ("cluster", KMeans(n_clusters=4, n_init=10)),
    ])
    pipe.fit(rows)
    print("cluster centers:", pipe["cluster"].cluster_centers_)

biopython — substrate pathway projection corpus

from gaiaftcl import FranklinClient
from gaiaftcl.bridges.biopython_bridge import telemetry_to_seqrecords
from Bio import SeqIO

with FranklinClient.connect() as franklin:
    rows = franklin.research_telemetry(limit=500)
    records = telemetry_to_seqrecords(rows, alphabet="ACGT")
    with open("substrate_pathways.fasta", "w") as f:
        SeqIO.write(records, f, "fasta")

rdkit — Validated Cures corpus + substrate identity

from gaiaftcl.bridges.rdkit_bridge import (
    project_validated_cure_row, mol_to_substrate_projection_canonical
)
# Validated Cures corpus loaded via scripts/load_validated_cures.py;
# query the loaded SQLite for canonical SMILES.

cure_rows = [...]   # from validated_cures table
for row in cure_rows[:10]:
    mol = project_validated_cure_row(row)
    if mol is None:
        continue
    print(row["name"], "→", mol_to_substrate_projection_canonical(mol))

ase — substrate lattice → ASE workflow

from gaiaftcl.bridges.ase_bridge import lattice_canonical_to_atoms
from ase.calculators.emt import EMT

canonical = "symbols=['Cu','Cu'];positions=[[0,0,0],[1.8,1.8,1.8]];cell=[3.6,3.6,3.6]"
atoms = lattice_canonical_to_atoms(canonical)
atoms.calc = EMT()
print(f"potential energy: {atoms.get_potential_energy():.4f} eV")

pymatgen — substrate structure → phase diagram

from gaiaftcl.bridges.pymatgen_bridge import (
    structure_canonical_to_structure
)
from pymatgen.analysis.phase_diagram import PhaseDiagram

s = structure_canonical_to_structure("Fe2O3 (R-3c)", lattice_a=5.03)
print(s.composition.reduced_formula)
print(s.lattice.parameters)

root / uproot — substrate research telemetry → ROOT file

import uproot
from gaiaftcl import FranklinClient
from gaiaftcl.bridges.root_bridge import telemetry_to_uproot_tree

with FranklinClient.connect() as franklin:
    rows = franklin.research_telemetry(limit=50000)
    with uproot.recreate("substrate_telemetry.root") as f:
        f["telemetry"] = telemetry_to_uproot_tree(rows)

Read back in another tool:

import uproot
tree = uproot.open("substrate_telemetry.root")["telemetry"]
print(tree.keys())
arrays = tree.arrays(library="np")

Composing — federation-verify then bridge to pandas

from gaiaftcl import FranklinClient
from gaiaftcl.federation.cosignature import verify_signature_quintet
from gaiaftcl.bridges.pandas_bridge import heartbeats_to_dataframe

with FranklinClient.connect() as franklin:
    hbs = franklin.heartbeat_history(limit=1000)
    verified = [hb for hb in hbs
                if verify_signature_quintet(
                    hb.canonical_witness,
                    hb.witness_hash_sha256,
                    hb.signature_quintet)]
    df = heartbeats_to_dataframe(verified)
    print(f"verified: {len(verified)} / {len(hbs)}")

Bridges compose freely. Federation verification + ecosystem analysis are orthogonal layers in your Python pipeline.


Federation-cosigned

This page's source is sealed in the GaiaFTCL federation manifest — page SHA-256 99befcead5c69b42…, manifest witness a090592e0609adc8…, signed 2026-06-02T18:58:22Z by cell gaiaftcl-mac-cell. Verify with gaiaftcl wiki sign --all and compare wiki-all-signatures.json.