I build systems that meet cameras, electrodes, users, and imperfect inputs as they actually are — AI engineering undergrad @ Amrita Vishwa Vidyapeetham.
every card on this page is hand-built SVG, regenerated nightly from public GitHub data. no third-party widgets.
I contribute upstream where a small, precise change removes a real developer paper-cut — then add the regression test or documentation that keeps it fixed.
|
accepted upstream
|
in review — 34 signals awaiting a verdict
| lab | what i shipped | pr | state |
|---|---|---|---|
| Meta · astryx | guard TextInput.onEnter against Japanese-IME conversion commits |
#6083 | 🟢 open |
| Meta · astryx | scale TextInput/TextArea control type with size + new theme target |
#6086 | 🟢 open |
| deepset · haystack | cross-batch write–write conflicts in the agent tool scheduler now resolve by LLM call order | #12628 | 🟢 open |
| Keras | -inf gradients in normalize() for float16 — L2 norm computed in float32 |
#23566 | 🟢 open |
| vLLM | install numactl in ROCm images so --numa-bind isn't a silent no-op |
#55433 | 🟢 open |
| Ollama | normalize escaped pattern literals in tool/format schemas at the llama-server boundary |
#18248 | 🟢 open |
| Microsoft · autogen | reject stale hunks in TextCanvas.apply_patch with context validation |
#8195 | 🟢 open |
| Microsoft · PyRIT | Garak exploitation scenario — Jinja template injection + SQLi echo | #2576 | 🟢 open |
| Anthropic · claude-code-action | skip malformed buffered comment lines instead of failing the CI post step | #1797 | 🟢 open |
| NVIDIA · Megatron-Bridge | in-process HashStore for temporary_distributed_context rendezvous |
#5989 | 🟢 open |
| NVIDIA · Speech | repair ConvSubsampling forward paths missed by the MaskedConvSequential refactor |
#16225 | 🟢 open |
| NVIDIA · DataDesigner | tolerate literal braces in prompt validation (valid Jinja text) | #923 | 🟢 open |
rest of the board — 22 more across astryx, NeMo Run/Curator/Speech, transformers, weaviate, mujoco, datasets, aws-cdk, ComfyUI, lm-eval-harness, autogen, ollama
| lab | what i shipped | pr | state |
|---|---|---|---|
| facebook/astryx | floor SegmentedControlItem to a 44px touch target on coarse pointers |
#6084 | 🟢 open |
| facebook/astryx | scope the 16px input font floor to iOS only | #6085 | 🟢 open |
| facebook/astryx | render plain Link anchors inline so ancestor Text clamps can truncate them |
#6038 | 🟢 open |
| NVIDIA-NeMo/Run | only treat delimited run/executor/plugins prefixes as overwrites | #605 | 🟢 open |
| NVIDIA-NeMo/Run | handle unparameterized list/dict annotations in the CLI value parser | #607 | 🟢 open |
| NVIDIA-NeMo/Run | forward entrypoint skip_confirmation to the generated command |
#609 | 🟢 open |
| NVIDIA-NeMo/Run | remove stray "Configuring global options" debug print | #611 | 🟢 open |
| NVIDIA-NeMo/Megatron-Bridge | allow Energon native sequence packing with MTP | #5990 | 🟢 open |
| NVIDIA-NeMo/Curator | treat DocumentSplitter separator as a literal string |
#2376 | 🟢 open |
| NVIDIA-NeMo/Curator | fix split_large_files RecursionError on single rows larger than target size |
#2377 | 🟢 open |
| NVIDIA-NeMo/Speech | SubsamplingReductionModule pooling computes lengths for a single MaxPool1d pass |
#16226 | 🟢 open |
| anthropics/claude-code-action | extract the user request only from word-boundary trigger occurrences | #1799 | 🟢 open |
| huggingface/transformers | skip the symlinked hub-cache test on platforms that can't create symlinks | #48530 | 🟢 open |
| huggingface/datasets | fix typo in guide template | #8567 | 🟢 open |
| weaviate/weaviate | fix object_count Prometheus help text (copy-pasted from async_operations_running) |
#12951 | 🟢 open |
| weaviate/weaviate | docs: add rq-4 to ALLOWED_COMPRESSION_TYPES valid entries |
#12950 | 🟢 open |
| aws/aws-cdk | drop stale sep reference from ArnComponents.arnFormat default docs |
#38775 | 🟢 open |
| Comfy-Org/ComfyUI | mask-editor painted uploads no longer destroy the original image under the mask | #16141 | 🟢 open |
| google-deepmind/mujoco | fix inconsistent axis labels in solimp documentation figures |
#3548 | 🟢 open |
| EleutherAI/lm-evaluation-harness | verified typo fixes across 16 task docs | #4102 | 🟢 open |
| microsoft/autogen | docs typo sweep — 16 files | #8196 | 🟢 open |
| ollama/ollama | log the provenance of the loaded context length | #18249 | 🟢 open |
SPX-01 · MOTION — markerless motion capture
friction: useful motion capture still lives in laboratories — special suits, special cameras, special rooms.
approach: connect two ordinary camera views through MediaPipe pose landmarks, triangulate with stereo DLT, filter the trajectory, and derive joint kinematics instead of stopping at landmarks.
proof: an offline-first pipeline with live 3D inspection and motion-capture export formats.
Python FastAPI React Three.js OpenCVSPX-02 · DECISIONS — self-play reinforcement learning
friction: "the agent learned something" is not evidence unless the learning is tested against a known-optimal opponent.
approach: train a Double/Dueling DQN agent with NoisyNet exploration and prioritized experience replay, then confront it with self-play pressure and a minimax baseline.
proof: the system exposes both the learned policy and the sanity check — not just the exciting score.
Python PyTorch reinforcement learningSPX-03 · BIOSIGNALS — EEG artifact recovery
friction: real EEG is eye movement, muscle activity, electrode noise — and somewhere in there, the neural signal.
approach: use SVD to separate low-rank artifact structure from the underlying 14-channel Emotiv EPOC X recordings rather than pretending the acquisition was sterile.
proof: denoising treated as signal recovery, with the assumptions made visible.
MATLAB SVD signal processingSPX-04 · ON-DEVICE VISION — projX OMR grading
friction: document evaluation often becomes "upload everything to a server and wait."
approach: keep capture, bubble detection, answer-key comparison, and result export on the mobile device.
proof: a complete grading workflow that works without a server round trip.
Flutter Dart OpenCVSPX-05 · SYSTEMS — POSIX file manager
friction: abstractions hide what the machine actually does.
approach: a file manager built directly on raw POSIX system calls — every operation mapped to its visible syscall boundary, no convenience layers.
proof: know what's underneath your abstractions.
C POSIX system callsBuild it from scratch at least once — the magic disappears, the understanding stays.
If you can't reproduce it, you don't understand it yet.
Real data over clean examples — messy input teaches what tutorials hide.
Know what's underneath your abstractions. They all leak eventually.
Email · LinkedIn · Repositories
a self-updating instrument · hero + telemetry regenerated nightly from public GitHub data
