3.5 KiB
Current Context
Active development focused on the signetai project's NPM packaging, OpenMarketUI interactions, and the Rust-based pm-kalshi trading server. Currently resolving build dependencies, fixing UI keybindings, and ensuring the trading environment (paper mode) is operational.
Active Projects
Signetai NPM Compatibility
Location: /home/nicholai/signet/signetai
Status: bin/postinstall converted to CJS to resolve NPM installation errors.
Next Steps: Monitor for Dependabot security advisories. Ensure the Predictive Memory Scorer (Rust) builds correctly and the daemon starts on port 3850.
pm-kalshi Trading System
Location: Rust crate (within signetai directory).
Status: pm-server is a library crate (no main.rs entry), while pm-kalshi contains the binary targets. Currently running kalshi-paper to launch the web dashboard on 127.0.0.1:3030.
Blocker/Issue: The data/markets.csv file is 6.7GB; may cause slow loading or backtest errors. Requires just fetch-kalshi or the Python data fetcher to populate.
Next Steps: Verify web dashboard responsiveness and data loading speed.
OpenMarketUI / Watchtower Interaction
Location: /home/nicholai/signet/signetai (UI components).
Status: Working on interactive pipeline visualization and data collection.
Next Steps: Continue debugging trait-based architecture (Source → Filter → Scorer → Selector → OrderExecutor) to ensure smooth data flow.
Recent Work
Feb 26 NPM Install Fix: Modified the postinstall script from JavaScript to C-Node to ensure npm install works without requiring Node.js runtime, allowing the binary distribution to be used directly.
Keybinding Bug Resolution: Identified and fixed a bug where the Enter key (mapped as "enter") was not triggering actions in the data tab because the system sent "return". Updated opentui/keybindings.ts.
Server Initialization: Successfully started the pm-kalshi paper trading server with the web dashboard enabled, though compilation in release mode is taking time.
Technical Notes
Signet Architecture & Standards:
Path: Agent profile is stored at ~/.agents/, NOT ~/.signet/.
Linting: Uses Biome.
Commits: Must follow Conventional Commits format.
TypeScript: Strict mode is enforced; any types are strictly prohibited. All null checks must be explicit.
Predictive Memory Scorer: A Rust component that trains models locally; requires specific configuration to integrate with the main daemon.
Rust Build Distinctions:
pm-server is a library crate containing routes and WebSocket modules; it lacks a main.rs and requires a binary entry point (like pm-kalshi) to execute.
pm-kalshi acts as the binary crate containing the entry point logic for the paper trading mode.
OpenMarketUI Architecture:
Utilizes a trait-based architecture for trading logic: Data Source -> Filter -> Scorer -> Selector -> Order Execution.
Environment: Development is performed on Hyprland (Wayland compositor) running on Arch Linux.
Rules & Warnings
UI Development: CRITICAL. Never delegate UI tasks (buttons, dashboards, complex layouts) to subagents. Perform them directly according to Opus rules, ensuring all visual references are passed.
Database Safety: CRITICAL. Never delete a production database without first creating a backup.
Type Safety: Enforce strict TypeScript typing. Do not use any types; use explicit null checks.