Notes from my online journal [krishna-bhatt.com]

A collection of notes, random thoughts, and observations (mostly unintelligible). Unfortunately, I cannot post everything publicly due to IP. Cheers! -Krishna

Latest posts

EvolMoves: benchmark harness and source identity

score row → family → input → chains → decoder. keep that trail intact or this becomes a spreadsheet séance... which is a terrible debugging strategy September 17 evidence cutoff: local repository e2b603d5 , as recorded in the milestone...

EvolMoves: topology-proposal calibration

C = 36 from the one-SE rule, raw max was 144. ESS/iteration jump looks huge, ESS/hour much less dramatic... use the latter for compute planning. recorded calibration: fifteen proposal weights × three seeds = 45 points, each with 2,000...

EvolMoves: modern-versus-archived comparison limits

keep chain-specific points next to pooled results. starts, decoder, version, model, budget all differ here, so don't squint at a scatterplot and blame everything on one thing. diagnostic panel: 24 families, two 30-minute chains per family. The...

EvolMoves: alignment-space convergence diagnostics

flat alignment length trace can still hide completely different homology. ugh, need diagnostics that actually notice that. Save idea: animate samples w/ residue identities fixed, watch the pairings move instead. why scalar traces are...

EvolMoves: runtime extrapolation and cloud packing

runtime fit ends way before the longest family, big extrapolation gap. Need an actual packed-VM throughput test before trusting the cost math; 3 chains on one machine might just slow each other down. runtime model: nonnegative fit using sequence...

EvolMoves: smoke tests and failure-mechanism probes

tiny smoke runs for execution → decode → burn-in → pooling. raw-OK can still leave zero usable samples... useful failure to catch before paying for the bigger run. simulation panel: six original conditions, twenty datasets each, 27 taxa,...

TDA manuscript: exact fixed-two-bar deficit

fixed two-bar case, actually enumerate the source + diagonal options. ties count with multiplicity; don't lose one just because the costs happen to match Worked window in Supplement S2: a=0.049 , b=0.105 , midpoint c=0.077 , half-width h=0.028 ....

TDA manuscript: AI-review questions and framing

Interesting experiment- how well does AI critique? useful ones: what am i preserving, what gets discarded, why choose this over the simpler calculation? source provenance: the files are stored under Claude Review . Their referee-report style and...

NeuroReach: prototype-to-pilot boundary

rehab game work + support groups + a few test users over the summer. Clinic access still slow; keep track of what was actually running in each session, live EEG vs mock vs camera stub recorded summer activity: adapting the EEG-control project...

EvolMoves: cloud-budget reference structure

cloud budget = more than chains × CPU price. include parsing, retries, idle VM time, storage etc... all the tiny charges add up :/ retrospective summer 2026 direction: move the evaluation framework toward standard published protocols and cloud...

NeuroReach: feasibility measures and data model

first things to track: setup time, comfort, instructions making sense, abandoned sessions. Save difficulty + normalization alongside scores or future me gets a graph of ??? First evaluation goal: setup feasibility, instruction comprehension,...

NeuroReach: v1-to-v2 architecture map

Unity → React/TS for the patient side, Electron console + Python signal engine. Keeping the folder map here; check the pending list before assuming a whole path is hooked up architecture revision in the engineering specification: replace the...

NeuroReach: ERD features and calibration contract

ERD formula + calibration timings here so I stop hunting around. near-zero baseline? check trial split BEFORE generating overlapping windows, sneaky leakage possibility Feature definitions recorded: ERD% = (Pbaseline - Ptask) / Pbaseline * 100 ;...

NeuroReach: score fusion, holds and wire payload

held score ≠ fresh score. Need artifact flag + null sub-scores, and don’t keep updating EMA/normalization while holding Specified score: IntentScore = w_eeg*EEG_Score + w_kin*Kinematic_Score - Penalty_Compensation , normalized to 0–100....

NeuroReach: pairing and local delivery contract

pairing codes: expiry, second browser, reconnect, sidecar dying. Need to try all the annoying paths, especially browser still connected while Python is gone lAN responsibilities: serve the React build over HTTPS, pair one browser to a live...

NeuroReach: game-state and validation references

same packets through pure model + rendered game, compare behavior. Log the difficulty staircase too; higher score could just be easier targets game references: docs/gardengrow.md and docs/reachcollect.md ; patient-web/src/garden|reach/ for...

EvolMoves: evaluation axes and code-reading map

alignment accuracy, tree recovery, parameter recovery, mixing — separate axes. faster iterations are nice but ESS/time is the more useful number. Also come back to the fixed-tree vs fixed-alignment controls. code-reading pointers in the plan:...

Biological and simulated alignment benchmarks

need both biological + simulated cases. simulation gives known history; structural references are a different check, can't just call both “truth” and move on. saved reference: BAli-Phy biological-versus-simulation evaluation . The June 13...

THALis: primer-to-code consistency checklist

trace ONE window all the way from filter to hand command. primer and code should agree on the intermediate objects, especially covariance / tangent space / readout primer architecture: filter EEG, estimate sliding covariance, log-map it to...

THALis: seven-population anatomical model

7 populations, signed connections, PT readout. check the stability notation... spectral radius can't be negative, need the largest real part where i'm talking about continuous-time stability model in the anatomical draft: a two-dimensional...

THALis: tangents worth keeping as questions

tangents parking lot: Takens, PLLs, bifurcations, time scales... a loop still doesn't tell me speed or phase. keep coming back to that manifold question: does low-dimensional activity reflect a circuit constraint, a restricted task, or both?...

THALis: literature-review map for EEG topology

TDA on EEG can mean direct signal, connectivity, or delay clouds. need to check which object each paper is actually using before borrowing the method three analysis routes preserved in the review notes: filtration directly on a signal, topology...

THALis: March-session postprocessing checklist

header fixes + video conversions, keep source → derived links. column reorder or just relabel? also frame timing, same recurring headache archived changes: b6b6d90 organizes March 1 trials, remaps electrode headers and fixes...

THALis: reservoir-realization draft

what do i mean by realization here, precisely. connect the state / observation / readout objects to the features in code, don't leave the math floating off by itself archived document (ac4a37c): realization.tex/pdf replaces an earlier proposal,...

THALis: March 1 recording inventory

March 1 recordings need an index. montage + clock info + matching files + exclusions, folders alone aren't enough for me to reconstruct the session Date provenance: the archive's March 2 commits 10aff2b , 0fca0e9 and b6b6d90 contain recordings...

THALis: rhythmic-EEG TDA comparisons

Riemannian vs no-Riemannian runs: what actually changed besides the name? scale, dimension, distance... keep those matched before getting excited about different loops commit 09f599e: tda_eeg_pipeline.py , playground.py , extensions to tda.py ,...

THALis: experiment-folder and conversion map

folder rename ≠ new experiment, keep the mapping. also check what WebM → MP4 does to timestamps / frame count, don't quietly lose the original timing folder changes (4585bf7, 723d039): rhythmic February 22 runs become feb22lt_rhythmic/run1...

THALis: electrode-header remapping

electrode rename vs physically different montage — need to be VERY clear which. model won't complain if i feed it the wrong channel order, it'll just use it Manual and automated changes ( 4aacf54 , aad3c28 ): electrode names are remapped in...

THALis: covariance and Riemannian feature pipeline

window → covariance → tangent features, interesting shift from looking at each channel alone. draw what shrinkage does to a nearly flat covariance ellipsoid later archived module (fb0bfe7): src/control/riemann_features.py implements...

THALis: data collector repository extraction

collector moving out of the main repo. pin both versions with the session somehow, otherwise which frontend produced which analysis input?? archived change (f5ccae3): the React eeg-collector application is removed from the main repository and...

THALis: February 22 multimodal session bundle

Feb 22 bundle: EEG, cue times, video, overlay, landmarks. make a per-trial map before this turns into matching files by vibes Archived acquisition ( 1f8e3eb ): the session includes rhythmic and sustained/practice-style trial groups, each with EEG...

THALis: retaining raw and overlaid video

keep raw video AND overlay. rerunning the tracker later is much easier if i haven't baked its guesses into the only copy archived change (a932083): CameraRecorder.jsx saves the unprocessed webcam feed alongside the MediaPipe-overlay recording....

THALis: theory directory and open-problem index

proof/ → theory/, plus a place for open problems. separate what needs a derivation from what needs an experiment; otherwise i just keep circling the same questions reorganization (3fda9ec): src/proof/ becomes src/theory/ ; formal documents and...

THALis: constructive reservoir-weight problem

can i build W and U around the feature geometry instead of hoping a random matrix behaves? keep the desired modes + input projection explicit, spectral radius alone isn't the full story february open problem: given Riemannian feature trajectories...

THALis: formal setup and technical summary

write out latent dynamics → EEG observation → readout assumptions. where does the actual code fit into this, and what would make the model inapplicable? archived documents (5cb035f): m1_reservoir_formal.tex and technical_summary.md ,...

THALis: repository artifact policy

LaTeX crumbs everywhere... aux, log, fls etc can go. keep enough to rebuild, but check i'm not ignoring the only surviving output along with the junk cleanup (6a5adaf, 0640c79): LaTeX auxiliary files are removed and ignore rules expanded for...

THALis: README and figure provenance

README figures need breadcrumbs back to the run. data id + config + script near the image would save so much hunting later documentation commits: 4f4b43e adds the project title and status; 124da36 adds figures under img/ . The archive identifies...

THALis: phase-specific TDA

prep / execution / rest: where exactly am i cutting these? cue time isn't necessarily movement onset, and windows crossing the boundary could get messy recorded extension (e7f5e25): the TDA pipeline adds multiphase analysis and generates another...

THALis: virtual-hand collection interface

50 poses, 2 s holds, 1.2 s transitions — need a clear target without making the UI distracting. maybe previewing the next pose helps timing, or maybe it just encourages anticipation app split (0d32926): ClassificationMode.jsx ,...

THALis: initial topological-analysis pipeline

window → delay cloud → persistence diagram, lots of knobs in between. keep delay / dimension / filtration / scale with the output or i'll just have a folder of mysterious plots archive (eb1afda): tda.py adds delay-coordinate embedding,...

THALis: anatomical-prior model

anatomical prior could take some of the burden off EEG. how much motion comes from the signal vs constraints though? similar question in animation, good rig doing half the work archived artifact (1e6fa3d): anatomical.py , later reorganized as...