Skip to content

Latest commit

 

History

History
40 lines (33 loc) · 2.08 KB

File metadata and controls

40 lines (33 loc) · 2.08 KB

English | 简体中文

Project Roadmap

Phase 1: Repository Infrastructure & Architecture (Current)

  • GitHub repository setup with official optikey-plugin topics.
  • GPL-3.0-only License, Security, Privacy, and Code of Conduct policies.
  • Upstream contract reference pinning (OPTIKEY_CONTRACT_REF).
  • Comprehensive Architectural Decision Records (ADR-001 through ADR-007).
  • Legal notice (LEGAL.md) and runtime research deliverable (RUNTIME_RESEARCH.md).
  • Dual-target Windows CI workflow setup.

Phase 2: Plugin Skeleton & State Machine

  • Upstream JuliusSweetland.OptiKey.Contracts.dll dynamic compilation in CI.
  • Fail-safe ET5PointService implementation with lazy activation.
  • Comprehensive GazeServiceStateMachine.
  • Isolated SyntheticGazeProvider test harness.
  • Exact OptiKey reflection loader unit test.

Phase 3: Core Logic & Resilience

  • Exponential backoff reconnect policy with jitter.
  • ScreenCoordinateMapper with full DPI-scaling coverage.
  • Comprehensive test suites (100% pass on synthetic scenarios).

Phase 4: Tobii Runtime Adapter

  • Secure TobiiRuntimeLocator with whitelist and PE64 validation.
  • Memory-safe P/Invoke bindings for Tobii Stream Engine.
  • TobiiGazeProvider integrating tobii_wait_for_callbacks.
  • Informative diagnostic error reporting.

Phase 5: Hardware Diagnostics & Release Packaging

  • Console diagnostic utility ET5Diagnostics.exe and diagnose.ps1.
  • CI Release ZIP scanner (ensures zero proprietary binaries, zero test DLLs).
  • Automated SHA256 checksum generation.

Phase 6: Hardware Testing & Release Gates

  • Community Alpha Release (v0.1.0-alpha.1) as GitHub Pre-release, only after ABI and shutdown gates pass.
  • Physical ET5 validation across Windows 10/11 physical machines.
  • 30-minute and 2-hour soak testing on live hardware.
  • Promote to official General Availability release (v1.0.0) once hardware validation sign-off is complete.