Changelogs

Project
GlyphMotion

Project Age Calculating...
Tracked Updates 25 Core Commits
Last Updated Calculating...
Fri Apr 17, 2026 • 01:06:49 IST
Precision Overhaul

Admin Tracker Full Rebuild + Uptime Truth Pipeline

Why it matters: this commit upgrades admin uptime from coarse status rendering to transition-accurate telemetry, preserving micro-downtime and preventing stale offline carryover after fast restarts.

Frontend re-architecture: tracker and uptime ingestion are unified across API pull, SSE streams, and snapshot fallback with stronger reconnect choreography.

Precision timeline semantics: short-window controls, deterministic hover mapping, mixed-bin logic, and event-transition overlap now preserve 3s-level outages accurately.

Backend truth preservation: uptime persistence and SSE signatures now emit repaired/session-level changes and avoid collapsing rapid off/on transitions.

View Commit dc26a35

Tracker Frontend Rebuild

Reworked admin tracker runtime into clearer state domains for auth, transport, tracking payloads, uptime events/sessions, and chart lifecycle. Snapshot freshness indicators and offline fallback flow now keep operators informed during network disruption.

Uptime Precision + Zoom Controls

Added 10m/30m/1h/2h controls, tighter short-window buckets, deterministic hover mapping, and transition-driven bin overlap math with mixed-state bins. This prevents same-minute micro-outages from being flattened into misleading multi-minute offline spans.

Backend Uptime Integrity

Upgraded uptime persistence and repair path to preserve rapid transitions with sub-second timing fidelity, rebuild sessions from events safely, and prevent aggressive commonization that previously erased short drop/recover sequences.

Realtime SSE Reliability

Expanded uptime stream signatures to include event and session markers so repaired/open-session changes are emitted consistently. Added guarded uptime sync pulls on reconnect and tracker-only payloads to heal stale client state faster.

Files touched (3 files, +2058 / -1682)

  • admin_tracker.html - +1690 / -1670
  • service-worker.js - +1 / -1
  • tg.py - +367 / -11
Wed Apr 15, 2026 • 22:05:57 IST
Reliability Epoch

Cancellation + Realtime Stability Framework

Why it matters: cancellation becomes a reliable production control instead of a best-effort stop button, while ownership checks and status hardening prevent unsafe cancels and stale UI states under load.

Control-plane upgrade: active job IDs, cancel-request state, and benchmark task tracking now keep processing lifecycle explicit and inspectable.

Safety boundaries: only the initiating client or an admin can cancel active work, preventing cross-user interruption in shared sessions.

Recovery speed: faster SSE reattach and status polling recovery cuts offline-to-online lag after transient failures.

View Commit 6d1dd7c

Safe Cancellation

Added explicit processing job IDs, owner-safe cancellation checks, tracked subprocess teardown, and benchmark task cancellation with deterministic status transitions. Cancellation now behaves as a first-class lifecycle event, not a passive interruption hint.

Realtime Transport Hardening

Enhanced status payloads, runtime progress with ETA, accelerated SSE reconnect loops, and stronger offline-to-online recovery behavior across dashboard and upload flows. Recovery paths now prioritize fast re-attachment without sacrificing signal clarity.

Ownership Authorization

Introduced owner metadata in active-job state and enforced owner-or-admin cancel permissions in backend endpoints. This closes unsafe multi-user cancellation paths while preserving emergency override for admins.

Runtime Progress Semantics

Benchmark runtime status now includes stage, progress percentage, detail text, and ETA windows with emission throttling. Long-running phases remain visibly alive without flooding logs or causing front-end flicker.

Files touched (5 files, +1775 / -126)

  • benchmark.html - +498 / -36
  • index.html - +286 / -21
  • ot.py - +16 / -2
  • service-worker.js - +1 / -1
  • tg.py - +974 / -66
Wed Apr 15, 2026 • 03:12:13 IST
UX Overhaul

Admin Modal Re-Architecture

Why it matters: this removes fragmented admin flows and centralizes critical actions in one controlled modal state machine, reducing navigation drift and reset-flow errors on mobile.

Single interaction surface: login actions, password reset, and admin options now share one modal stack with predictable transitions.

Failure clarity: password-change success/error banners and countdown redirect behavior make auth outcomes obvious without forcing ambiguous retries.

Device parity: backdrop/keyboard/back-gesture handling now behaves consistently across phone, tablet, and desktop contexts.

View Commit a845b27

Modal Navigation

Added options/password panel transitions, back/close actions, backdrop and escape handling, plus mobile popstate support for native-feeling back gestures. The modal now follows predictable state transitions instead of ad-hoc toggles.

Password UX Hardening

Improved caps-lock detection, success/error banner states, and post-reset countdown redirection without forcing unreliable logout behavior on wrong-password attempts. Credential update outcomes now present clear actionability at every branch.

In-Modal Flow Consolidation

Moved standalone password-reset UI into the same admin modal surface, eliminating context jumps between page-level sections. This reduces lost state and misclick loops during sensitive auth operations.

Responsive Interaction Refinement

Repeated spacing and scale passes aligned desktop, tablet, and mobile modal proportions while keeping controls readable under dense layouts. Back and close controls now adapt correctly by viewport mode.

Files touched (2 files, +1114 / -243)

  • index.html - +1113 / -242
  • service-worker.js - +1 / -1
Tue Apr 14, 2026 • 22:54:25 IST
Upload Resilience

Large Upload Recovery + Bot Stability

Why it matters: heavy video uploads are no longer all-or-nothing. Chunk retries and progress continuity drastically reduce failed publish cycles for long, high-frame jobs.

Transfer robustness: resumable chunked upload with exponential backoff survives transient network drops mid-transfer.

Operator visibility: upload percentage and MB progress are pushed through the standard status channel to keep UI and terminal in sync.

Runtime stability: Telegram polling timeout/error handling now tolerates long post-processing phases without noisy crash loops.

View Commit 4ea49af

Chunked Drive Uploads

Migrated from single-shot upload to resumable chunk flow with exponential backoff retry logic and progress callbacks for smoother large-media transfer behavior. Large frame-heavy files can now survive intermittent network instability mid-stream.

Polling Error Hardening

Extended Telegram network timeouts and introduced cleaner network error handling so transient failures stop spamming logs and no longer destabilize long runs. Runtime stays resilient when uploads and post-processing span longer windows.

Retry and Backoff Discipline

Each upload chunk now has bounded retry attempts with backoff spacing, balancing reliability and rate-limit safety. This prevents immediate fail-fast exits on temporary upstream or socket pressure spikes.

Status-Channel Progress Bridge

Upload progress is now fed into the same processing-status stream used by frontend and operators, keeping percent and MB telemetry consistent across UI and server console observation.

Files touched (2 files, +151 / -22)

  • gh.py - +120 / -13
  • tg.py - +31 / -9
Mon Apr 13, 2026 • 01:39:23 IST
Quality Recovery

1080p/720p Benchmark Collapse Fix

Why it matters: this restores trust in benchmark numbers for mobile/VFR material by fixing timeline misalignment that was producing falsely catastrophic VMAF readings.

Metric integrity: benchmark comparison now handles phone-style frame timing variance without poisoning VMAF/PSNR/SSIM interpretation.

Pipeline observability: recon intake and post-process score propagation are aligned so logs and final metrics describe the same processed output.

Decision quality: recovered score realism prevents bad tuning decisions caused by false low-quality alerts.

View Commit 7a2c785

Temporal Alignment Repair

Normalized phone/VFR handling in the benchmark path to prevent timeline mismatches that were poisoning VMAF/PSNR/SSIM interpretation on mobile-heavy clips. Comparison stages are now less vulnerable to variable frame pacing artifacts.

Recon Integration Flow

Clarified recon intake/post-process linkage and benchmark-state visibility, improving observability from pipeline execution through final report and index updates. Intake and post-process stages now narrate the same effective output context.

Benchmark Lifecycle Coherence

Status propagation during benchmark phases was stabilized to avoid ambiguous transitions in active-run visibility. Frontend lock behavior now tracks the true benchmark lifecycle more deterministically.

Score Realism Recovery

Post-fix runs returned to credible ranges for affected mobile resolutions, reducing false low-quality verdicts that could mislead pipeline tuning and codec-policy decisions.

Files touched (3 files, +161 / -25)

  • index.html - +13 / -3
  • ot.py - +106 / -3
  • tg.py - +42 / -19
Sun Apr 12, 2026 • 16:26:19 IST
Analytics Expansion

Precision Delete + Advanced Benchmark Charts

Why it matters: benchmark data can now be curated safely without direct file edits, and richer analytics exposes regressions and trade-offs that were previously hidden in flat summaries.

Data governance: authenticated delete endpoint plus staged confirmation gates reduces accidental destructive edits.

Schema resilience: alias-based metric fallback improves chart reliability across mixed historical benchmark schemas.

Debug depth: new panels connect quality, tracking, resource stress, and latency into one operational view for faster tuning loops.

View Commit 2bd93f1

Record Governance

Introduced precision selection mode, authenticated deletion endpoint, and multi-stage safety confirmations before destructive benchmark-record removal operations. Destructive actions now pass through explicit intent checkpoints.

Pipeline Intelligence Panels

Expanded the chart stack with MOTA/VMAF dual-axis trends, quality radar, latency spread, resource stress, compression efficiency, HFDR behavior, and bubble-map diagnostics. Benchmark interpretation now supports richer multi-dimensional regression hunting.

Precision Delete Workflow

Selection-mode UI keeps records stable while adding an explicit trailing selection column and bulk-safe deletion controls. This avoids accidental index drift when operators filter or sort during cleanup.

Metric Alias Compatibility

Alias fallback handling bridges naming differences across historical telemetry schemas, so charts remain populated even when older runs use variant metric keys.

Files touched (2 files, +596 / -8)

  • benchmark.html - +515 / -8
  • tg.py - +81 / -0
Mon Mar 23, 2026 • 20:26:17 IST
Access Alignment

Admin Auth UX + Offline Benchmark Snapshot

Why it matters: benchmark operations remain useful even during backend outages, and auth/session UX is clearer and safer for admins managing production diagnostics.

Continuity mode: local benchmark snapshot cache with freshness labels keeps the dashboard informative when live APIs are unreachable.

Recovery workflow: reconnect auto-resync and delta summaries surface exactly what changed after the backend returns.

Auth ergonomics: remember-me, caps-lock warnings, and stronger payload/session checks reduce login friction and false auth confusion.

View Commit 00d602c

Offline Benchmark Survivability

Added local benchmark snapshot cache, freshness tracking, reconnect delta sync, and snapshot export to keep dashboard operations meaningful during backend interruptions. Operators can continue analysis with known context rather than blank-state fallback.

Auth UX Refinements

Improved admin login responsiveness, remember-me username persistence, robust caps-lock hints, and cleaner token payload handling for master-admin-aware sessions. Authentication behavior now communicates intent and state transitions more clearly.

Freshness and Snapshot Telemetry

Added freshness indicators and snapshot-vs-last-sync context so users can distinguish live data from cached state immediately, avoiding silent staleness during outage windows.

Session Integrity Enforcement

Session checks were tightened to validate token payload consistency and user context before privileged operations, reducing edge-case auth drift after logout/login state changes.

Files touched (4 files, +517 / -23)

  • admin.html - +169 / -10
  • benchmark.html - +337 / -11
  • service-worker.js - +1 / -1
  • tg.py - +10 / -1
Flagship v4.0
Shitij Halder Shitij Halder Author Next-Gen Architecture
Sat Mar 21, 2026 • 07:38:10 IST
Release Class
Foundation Rewrite
Control Loop
Frame-Adaptive
Inference Target
ROI-Priority Fidelity
Operational Mode
Realtime + Verified
v4.0 Architecture Epoch

feat(v4.0): architect the Adaptive Media Intelligence Engine — HFDR×NVENC orchestration, benchmark-proofed control loop, and instant SSE admin revocation

This release promotes GlyphMotion into a next-gen media intelligence stack: a state-aware controller that dynamically balances quality, bitrate, and compute in realtime. The pipeline now outperforms raw baseline perceptual quality while maintaining aggressive size control and stable operations under production telemetry validation.

At an architecture level, v4.0 shifts decision-making from static encode presets to adaptive control logic: every frame path is selected based on motion, ROI relevance, and hardware capability. Instead of a monolithic "process-all-the-same" flow, GlyphMotion now behaves like a quality scheduler that routes detail reinjection, compression intensity, and compute load dynamically—delivering superior perceptual fidelity without runaway bandwidth or CPU saturation.

Architectural delta snapshot
  • Before: mostly linear processing with static compression behavior per run.
  • Now: frame-aware controller dynamically chooses enhancement + encode strategy in real time.
  • Before: quality and latency trade-offs were coupled and hard to tune.
  • Now: policy-driven routing separates quality objectives from throughput safeguards.
Perceptual Peak
VMAF 96.71
Exceeds raw native baseline (91.97)
Compression Control
34.33 MB
~50% smaller than native 42.67 MB path
Runtime Throughput
16.87 FPS
Near-realtime under adaptive control regime
Compute Shift
NVENC HEVC
Hardware encode path offloads CPU pressure
Baseline Raw YOLOv8 Native
VMAF
91.97
Size
42.67MB
FPS
17.60
Jitter
312.75ms
Old pipeline (CRF_24 draft)
VMAF
80.20
Size
26.18MB
FPS
18.19
Jitter
26.29ms
New pipeline (NVENC adaptive)
VMAF
96.71
Size
34.33MB
FPS
16.87
Jitter
27.04ms
comparative performance graph (zoom-normalized)
Raw YOLOv8 Native CRF_24 Draft NVENC Adaptive
VMAF (Higher Better)
91.97
Raw
80.20
Old
96.71
New
Output Size MB (Lower Better)
42.67
Raw
26.18
Old
34.33
New
Pipeline FPS (Higher Better)
17.60
Raw
18.19
Old
16.87
New
Latency Jitter ms (Lower Better)
312.75
Raw
26.29
Old
27.04
New

Interpretation note: FPS and other close-range runtime deltas (e.g., ~16.87 vs ~18.19 FPS, ~26.29 vs ~27.04ms jitter) are practically marginal in many deployments; the more material architectural shift is quality-control behavior and stability envelope under adaptive orchestration.

Benchmark Device Context (for metric interpretation)
  • Host: Dell G15 5530 (Ubuntu 24.04), NVIDIA RTX 3050 6GB (Ampere, CUDA 8.6).
  • GPU compute: 2,560 CUDA cores, 80 Tensor cores, 96-bit bus, ~168 GB/s bandwidth.
  • Video engines: 7th Gen NVENC + 5th Gen NVDEC, H.264/H.265 hardware acceleration, AV1 decode (no AV1 encode).
  • CPU + memory: Intel Core i5-13450HX (10C/16T) with 16GB DDR5-4800 RAM.
  • Storage: 1TB PCIe Gen4 x4 NVMe SSD for high-throughput media I/O during benchmarks.

Flagship Outcome: GlyphMotion no longer behaves like a tracker script with post-compression. It now operates as a frame-level decision engine that preserves semantically critical detail while actively minimizing bitrate and compute waste.

Quality Envelope

HFDR keeps object-edge detail stable in fast motion where plain compression previously smeared critical regions.

Compute Policy

Mode gating avoids unnecessary full-frame enhancement when scene complexity is low, preserving throughput.

Security Plane

Realtime SSE auth revocation removes stale admin sessions instantly across active dashboards.

Security note: production_benchmark.py remains private and is intentionally excluded from public GitHub pushes to preserve benchmarking-environment integrity and prevent external contamination of evaluation logic.

Files touched (7 files, +3018 / -98)

  • benchmark.htmladded (+1847 / -0)
  • ot.py — modified (+641 / -68)
  • tg.py — modified (+299 / -8)
  • index.html — modified (+133 / -0)
  • admin_tracker.html — modified (+80 / -5)
  • gh.py — modified (+16 / -16)
  • service-worker.js — modified (+2 / -1)
View Commit 9a6c544

Production Evidence + Systems Breakdown

HFDR Reinjection Adaptive Temporal + ROI NVIDIA NVENC HEVC Realtime Admin SSE Guard

Architecture map (control/data flow)

Source Frames
Signal Analyzer
Mode Selector
HFDR Path
NVENC / SW Encode
Telemetry + SSE

Architecture comparison (previous stack vs v4.0)

Dimension Previous Stack v4.0 Engine
Control Model Preset-oriented, mostly static path Adaptive controller with per-frame mode decisions
Detail Recovery Uniform post-processing ROI+temporal HFDR reinjection based on motion/context
Encode Strategy Primarily software-bound Hardware-aware `hevc_nvenc` path with deterministic fallback
Observability Limited telemetry granularity Mode counters + latency + stability metrics persisted by stage
Admin Security Session invalidation with delay windows Instant SSE auth revocation across active surfaces

HFDR execution pipeline (frame lifecycle)

1
Decode + inspection: each frame is profiled for motion delta, region complexity, and active object boxes from detector state.
2
Mode decision: controller chooses temporal-only or ROI+temporal reinjection based on change intensity and object relevance.
3
HFDR application: FFmpeg filter chain (`scale` + `unsharp`) applies localized high-frequency recovery where detail is most valuable.
4
Encode routing: runtime dispatches to `hevc_nvenc` on supported NVIDIA systems, else controlled software fallback path.
5
Telemetry commit: mode counts, latency stats, detections, confidence and stability metrics are persisted for benchmark collation.

Adaptive mode trigger matrix (what switches what)

Trigger Signal Controller Action Primary Goal
Low frame delta + static scene Reuse cached temporal detail path Reduce redundant compute
Object-heavy ROI motion Activate ROI+temporal HFDR mode Protect object-edge fidelity
Rising latency / throughput pressure Gate expensive full-frame reinjection Preserve realtime behavior
NVENC capability detected Route encode to `hevc_nvenc` Offload CPU, stabilize pipeline
No compatible GPU encoder Graceful fallback to software path Deterministic output continuity

NVIDIA NVENC integration (GPU-specific execution path)

  • Capability probe at startup: encoder negotiation checks for `hevc_nvenc` and initializes hardware path when available.
  • Workload separation: YOLO CUDA inference and NVENC hardware encoding run as coordinated but distinct execution layers.
  • CPU pressure relief: encode work exits hot CPU loops, allowing better scheduling headroom for detection/tracking operations.
  • Quality retention strategy: HFDR reinjection is preserved pre-encode so NVENC receives detail-enriched frames, not flattened inputs.

Benchmark harness and validation semantics

  • Subprocess isolation: benchmark runner executes production core as independent jobs per operating mode.
  • Quality + tracking fusion: `libvmaf` outputs are correlated with mode counters, latency metrics, and tracking consistency signals.
  • Ablation comparability: all variants use the same source asset and reporting envelope for fair stage-to-stage interpretation.
  • Integrity posture: private benchmark runner prevents external environment drift from polluting score reproducibility.

Admin control-plane hardening: realtime forced logout via SSE auth stream

Authenticated `/events/admin_auth` now emits `authRevoked` for immediate session invalidation. Active admin surfaces (`index`, `admin_tracker`, `benchmark`) instantly clear credentials and redirect without refresh, preserving cross-session security invariants during master-level logout-all actions.

v4.0 reliability guarantees

Deterministic fallback: pipeline degrades gracefully to software encode when hardware paths are unavailable.

Policy isolation: quality policy and throughput policy run separately to avoid instability cascades.

Validation integrity: private benchmark harness keeps score evolution reproducible and contamination-resistant.

Wed Mar 19, 2026 • 00:08:57 IST (18:38:57 UTC)
Crucial Fix

fix(sw): resolve stale cache preventing new video cards on normal refresh

Fixed critical PWA caching issue where video cards weren't appearing on normal refresh—only hard refresh worked. Bumped cache version, added network-first strategy for dynamic content, removed kill switches, and implemented auto-reload on SW activation.

View Commit f9a029f

Service Worker Cache & Update Orchestration

Cache Version Bump to v1.0.16

Incremented `CACHE_NAME` to force cache invalidation across all clients, ensuring stale cached pages and video metadata are evicted on first visit.

Network-First for Dynamic Content

Added `/videos.json`, `/changelogs.html`, `/about.html`, `/playground.html` to `networkFirstUrls` so service worker always fetches fresh copies from network first, then falls back to cache only when offline.

Auto-Reload on SW Activation

Implemented `onupdatefound + controllerchange` detection in index.html. When a new service worker activates, the page automatically reloads to ensure users see the latest assets without manual intervention.

Removed SW Unregister Kill Switches

Deleted forced `navigator.serviceWorker.unregister()` code from changelogs.html and about.html that was globally unregistering the SW on every page load, preventing normal PWA updates.

Files touched (5 files, +35 / -19)

  • service-worker.js — +12 / -1
  • index.html — +23 / -0
  • changelogs.html — +0 / -9
  • about.html — +0 / -9
Tue Mar 17, 2026 • 01:12:14 IST (19:42:14 UTC)
Cache & UI Sync

fix: PWA thumbnail caching and synchronize UI progress bars

Resolved severe caching issue where PWA Service Worker persistently locked in opaque fallback thumbnails for Drive requests, and perfected UI progress bar timings.

View Commit f541db4

Critical Cache Eviction

Fixed Stale Opaque Fallbacks

Added forceful Cache API eviction inside `onerror` event. If an opaque 404/broken image is served by Service Worker, the frontend actively deletes it to unstick the thumbnail cache.

PWA Caching Strategy Overhaul

Updated caching strategy for Drive thumbnails in `service-worker.js`. Intercepts retry URLs to cache canonical (query-less) paths, clearing corrupted states (bumped to v1.0.15 & Thumb cache v3).

Progress Bar UI Synchronization

Tightened target substrings for event streaming in `tg.py` & `index.html` to eliminate premature visual progress bar trigger events. Corrected `onload` bug improperly halting the thumbnail retry timer.

Files touched (3 files, +253 / -35)

  • index.html — +235 / -31
  • service-worker.js — +37 / -2
  • tg.py — +16 / -2
Mon Mar 16, 2026 • 22:43:04 IST (17:13:04 UTC)
Realtime + Admin

feat(realtime,admin): unblock admin actions during processing; migrate polling to SSE; stabilize gallery refresh/caching

Major realtime and concurrency upgrade: moved key status paths to SSE, hardened gallery refresh behavior, reduced request load, and removed backend bottlenecks so admin delete/fetch operations stay usable even while videos are processing.

View Commit 042d57c

Realtime + Stability Changes

SSE-first status and tracker updates

Shifted realtime status delivery to SSE across user/admin pages, added authenticated tracker stream, and retained resilient fallback polling with reconnect + heartbeat behavior.

Smarter gallery/network behavior

Prevented blank gallery flashes on transient errors by preserving last-good data, added conditional fetches (ETag/If-None-Match), request de-duplication, and adaptive passive/aggressive polling transitions.

Thumbnail render + cache hardening

Improved media UX with lazy thumbnail loading, cache warming, deterministic signature-based rerender checks, and service-worker runtime caching for external Drive thumbnail requests.

Admin concurrency unblocked

Enabled EventSource-compatible auth token transport for protected streams and removed backend responsiveness bottlenecks by offloading blocking Drive/GitHub I/O, so admin delete/fetch actions can run during active processing.

Operational polish

Reduced noisy backend logging for high-frequency status/event endpoints while preserving existing auth validation, status semantics, and failure fallbacks.

Files touched (6 files, +794 / -285)

  • admin.html — +60 / -18
  • admin_tracker.html — +106 / -7
  • gh.py — +158 / -156
  • index.html — +292 / -87
  • service-worker.js — +36 / -2
  • tg.py — +142 / -15
Mon Mar 16, 2026
Design Overhaul

Complete site-wide UI revamp and new documentation page

Built documentation from scratch with a premium dark-mode design system. Applied new visual language (mesh backgrounds, standard headers/footers) across all HTML pages, and added universal scaling fixes.

View Commit fb058aa

Design Changes

New Documentation

Built documentation.html completely from scratch, establishing a new premium aesthetic.

Universal Scaling Fix

Implemented a custom scaling function ensuring visual consistency and perfect aspect ratios across all screen sizes and devices.

Unified Components

Standardized page headers, titles, mesh/glow backgrounds, and introduced a unified global footer utilizing Lucide icons across all instances.

Files touched (6 files, +2266 / -1873)

  • admin.html — +293 / -46
  • admin_tracker.html — +248 / -130
  • changelogs.html — +80 / -0
  • documentation.html — +1167 / -1498
  • index.html — +148 / -4
  • playground.html — +330 / -195
Sun Mar 15, 2026
Runtime Reliability

fix(async): restore web video processing by isolating backend task loop

Introduced deterministic backend async scheduling so web-triggered processing and deletion tasks run independently from Telegram lifecycle events.

View Commit 0d10478

Execution Layer Updates

Dedicated web async loop

Created a background asyncio event loop in tg.py for web-triggered processing/deletion tasks to avoid dependence on Telegram polling loop lifecycle.

Coroutine failure visibility

Added done-callback exception logging for run_coroutine_threadsafe futures so failed operations are no longer silent.

API behavior preserved

Maintained the existing web API contract while improving scheduling determinism and shutdown safety for the backend runtime.

Files touched (1 file, +30 / -4)

  • tg.py — +30 / -4
Sun Mar 15, 2026
Stability Fix

fix(status): stop delete-status flashing and fix localhost live-status polling

Patched stale status replay and endpoint mismatch issues that caused repeated delete-message flashes and false "live status" errors in local development.

View Commit 7d799f5

Operational Fixes

Deletion status reset hardening

Introduced race-safe status resets in tg.py so delayed timers can’t overwrite fresh status updates from new jobs.

Localhost polling correction

Fixed frontend status polling in index.html and made backend routing query-tolerant via parsed path matching, preventing GET /status false failures in Live Server mode.

Cache invalidation + anti-stale status

Updated service-worker.js to bypass caching for dynamic API routes (including /status) and added strict no-cache headers on API responses.

Files touched (3 files, +102 / -37)

  • index.html — +51 / -27
  • service-worker.js — +13 / -1
  • tg.py — +38 / -9
Mon Feb 23, 2026
Visual Overhaul

Complete UI redesign and performance optimization

A massive frontend transformation standardizing the app on a modern, dark, AI-centric aesthetic while aggressively stripping out performance-heavy CSS.

View Commit fb6fe23

Architecture Changes

The Redesign

  • Removed password generator entirely.
  • Implemented modern AI-tools inspired dark theme with pitch black backgrounds.
  • Removed compact mode; standardized on full-screen layout only.
  • Added orange accent borders to upload areas.
  • Changed subtitle font to monospace for a tech aesthetic.

Performance

  • Eliminated heavy blur animations and background glow elements causing GPU lag.
  • Converted @apply directives to regular CSS.
  • Fixed 15+ CSS syntax errors.
  • Removed will-change memory bloat.

Files touched (1 file, +978 / -488)

  • index.html — +978 / -488
Mon Feb 23, 2026
Backend Core

Resolve yt-dlp playlist filename & dot-in-title output path bugs

Critical backend patches fixing file truncation issues on Linux, broken extensions from complex YouTube titles, and adding aggressive frontend polling.

View Commit 81b10a1

Code Diagnostics

tg.py dry-run

Added --no-playlist and --restrict-filenames. Forced script to take only the first line of output, and truncated file stems to >180 bytes to strictly adhere to the Linux 255-byte limit.

tg.py run

Passed the full .mp4 path directly to ot.py --output_video instead of stripping extensions. Previously, titles with dots (e.g., "R.D. Burman") caused splitext to drop segments, breaking the upload chain.

gh.py & App

Added an early os.path.exists guard to fail missing files fast without hanging the server. On the frontend, added an immediate pollForNewVideos() call with an aggressive 3-minute retry loop to bypass GitHub Pages CDN propagation delays.

Files touched (3 files, +227 / -33)

  • gh.py — +4 / -0
  • index.html — +12 / -0
  • tg.py — +211 / -33
Fri Jan 16, 2026
Mobile Experience

Playground Mobile Fixes

A massive accessibility update for mobile users interacting with the AI Playground. It introduces logical scaling for the detection boxes so they aren't massive on small screens, and fixes camera switching bugs on Android/AOSP devices.

View Commit d9a8661

Developer Diagnostics

Detection Scaling

Line width now actively scales based on canvas size. Font sizes and box corner radii scale proportionally, preventing overlapping blobs on phones.

Hardware Targeting

Camera detection improved to use index fallback (cam0 = rear, cam1 = front) specifically resolving stream freezing for AOSP hardware limits.

Files touched (2 files, +725 / -38)

  • index.html — +238 / -7
  • playground.html — +487 / -31
Fri Jan 16, 2026
Major Feature

Add AI Playground page with custom tracker options

Creation of the dedicated playground.html environment introducing live client-side tracking and advanced server-side YOLOv8 configs.

View Commit 69b7e6b

Architecture Changes

Neural Cam

Real-time browser-based object detection using TensorFlow.js + COCO-SSD.

  • Live bounding box overlays
  • Active readouts for FPS, inference time, & GPU
  • Video recording (WebM export)
  • Mirrored video with un-mirrored text labels

Tracker Studio

Advanced UI for server-side YOLOv8 processing configs connecting to tg.py.

  • Filter from 80 distinct COCO classes
  • Confidence threshold slider adjustments
  • Backend accepts allowed_classes natively

Files touched (3 files, +1291 / -6)

  • index.html — +3 / -0
  • playground.html — +1243 / -0
  • tg.py — +45 / -6
Thu Jan 15, 2026
System Architecture

Comprehensive ROI Selection Engine

A monumental feature allowing users to draw a "Region of Interest" directly on the video frame before processing. We implemented a secure server-side preview system that generates snapshots via FFmpeg for both uploaded files and YouTube URLs, storing them temporarily in memory.

View Commit 39279d2

Developer Diagnostics

Session Cache Management

Added /get_video_preview endpoint. The backend maintains active preview sessions that automatically clean up abandoned preview_temp files after 5 minutes using a 60-second polling scheduler thread.

Canvas Mapping

The UI handles mapping the user's drawn 2D-context rectangle directly to the original video dimensions, bypassing CSS distortion issues across portrait/landscape resolutions.

Files touched (3 files, +1693 / -94)

  • index.html — +1005 / -61
  • ot.py — +159 / -0
  • tg.py — +529 / -33
Thu Jan 15, 2026
Security

Watermark Output Videos

Implemented a small unobtrusive watermark to all server-processed videos. This acts as a protective measure to ensure content processed by our models isn't copied or falsely claimed by unknown external sources.

View Commit cd3bfee

OpenCV VideoWriter logic updated in core tracking module.

Files touched (1 file, +88 / -4)

  • ot.py — +88 / -4
Tue Jul 1, 2025
Open Source

Backend Fully Public

Taking the next major step by fully releasing the backend code to the public. This allows developers to self-host the Flask and YOLOv8 pipeline locally instead of relying solely on our servers.

View Commit ef40f67

tg.py and associated tracking logic open-sourced to public.

Files touched (7 files, +3248 / -0)

  • admin_auth.py — +157 / -0
  • admin_hash_gen.py — +79 / -0
  • config.yml — +72 / -0
  • gh.py — +537 / -0
  • ot.py — +842 / -0
  • tg.py — +1323 / -0
  • web_server_public.py — +238 / -0
Sun Jun 15, 2025
The Beginning

Initial Public Release

The absolute genesis of Project GlyphMotion. This marks the day the repository was established, launching the initial static Progressive Web App infrastructure and paving the way for everything to come.

View Commit 4c42c66

Developer Diagnostics

Infrastructure Setup

Configured GitHub Pages static routing via CNAME records and pushed the core UI logic mapping to our custom domains.

Files touched (4 files, +6365 / -0)

  • admin.html — +373 / -0
  • admin_tracker.html — +1443 / -0
  • documentation.html — +1564 / -0
  • index.html — +2985 / -0

End of git history