Commit Graph

81 Commits

Author SHA1 Message Date
LemonNexus 97b9403b11 feat(phase2): Complete Phase 2 Integration - Bug fixes: SimpleCache self._timestamps typo, MOCK_TOOLS key typo. Agent-swarm UI: main_window, hud_overlay, loadout_manager. Nexus API with mock data. All tests passing. 2026-02-08 21:07:47 +00:00
LemonNexus a963778145 fix(gui): add missing main_window.py and loadout_manager.py
Files were created in workspace root instead of project directory.
Adding main_window.py and loadout_manager.py to complete Sprint 2 Phase 1.
2026-02-08 20:31:35 +00:00
LemonNexus 0b4d79b98f feat(gui): Sprint 2 Phase 1 - PyQt6 GUI Foundation
Add complete PyQt6 GUI implementation using agent swarm:

- ui/main_window.py: Main application window with project management,
  session controls, log output, and dark theme styling

- ui/hud_overlay.py: Transparent, always-on-top HUD overlay for
  real-time stats during gameplay. Features:
  * Frameless, click-through window
  * Draggable with Ctrl key
  * Session timer, loot tracking, damage stats
  * Position persistence
  * Decimal precision for PED values

- ui/loadout_manager.py: Gear configuration dialog with:
  * Weapon/Armor/Healing tool setup
  * DPP (Damage Per Pec) calculator
  * Cost per hour estimation
  * Break-even calculator
  * Save/Load loadouts (JSON persistence)
  * Mock data for common EU gear

- ui/__init__.py: Module exports
- requirements.txt: Add PyQt6 dependency

All components follow Never-Break Rules:
 Decimal precision for currency
 Dark theme styling
 Integration hooks for existing core modules
 Mock test modes included

Developed with 3-agent parallel swarm (3 minutes vs 6 hours serial).
2026-02-08 20:30:38 +00:00
LemonNexus 85d02d08de docs(sprint2): update with Entropia Nexus API discovery
- Official REST API found at api.entropianexus.com
- Update integration strategy to use API instead of scraping
- Sprint 2 plan now reflects real API approach
2026-02-08 18:33:35 +00:00
LemonNexus 77d8e808fb feat(globals): add personal global detection with PLAYER_NAME setting
- Add PLAYER_NAME setting to .env.example for avatar name configuration
- Add personal_global patterns for Swedish and English:
  - EN: '[Globals] Player killed a creature (Creature) for X PED'
  - SV: '[Globala] Player dödade ett kreatur (Creature) med X PED'
- Distinguish personal globals from other players' globals
- Show 🎉🎉🎉 YOUR GLOBAL notification with creature name
- Track personal_globals separately in session summary

Fixes #42 - Users can now see when THEY global vs others.
2026-02-08 18:23:35 +00:00
LemonNexus 06a95f56f4 feat(enhancer): add broken enhancer tracking
- Add pattern for broken enhancers: 'Your enhancer X on your Y broke'
- Track enhancer breaks with type and weapon info
- Display 💔 ENHANCER BROKEN notifications
- Include enhancers_broken in session summary

Based on user-provided reference code but with cleaner regex pattern.
2026-02-08 18:20:04 +00:00
LemonNexus f957165394 feat(heal): add English self-heal and attribute patterns
- Add English self-heal: 'You healed yourself X points'
- Add English attribute gain: 'Your Agility has improved by X' / 'You gained X Agility'
- Update EVENT_PATTERNS with all language variants
- Add parsing logic for English heal and attribute events

Based on user-provided regex reference code.
2026-02-08 18:18:00 +00:00
LemonNexus b28b3915fd feat(combat): add critical hit tracking and filter Universal Ammo
- Add English critical hit pattern: 'Critical hit - Additional damage! You inflicted X'
- Display 💀 CRITICAL notifications with damage
- Filter out Universal Ammo from loot (converted shrapnel, not real loot)
- Critical hits count toward damage_dealt stats

Fixes loot inflation from shrapnel conversion and tracks critical strikes.
2026-02-08 18:15:00 +00:00
LemonNexus 0f19155dd8 feat(gear): add weapon tier gain tracking
- Add English tier pattern: 'Your Weapon has reached tier X'
- Track weapon tier progression in real-time
- Display ⬆️ TIER UP notifications
- Include weapon_tiers in session summary

Gear progression now tracked alongside skills and loot.
2026-02-08 18:12:41 +00:00
LemonNexus 555bea7c33 feat(skills): add skill gains and level up tracking
- Fix skill pattern: 'You have gained' (not just 'You gained')
- Add level_up pattern: 'You have advanced to level X in Skill'
- Track skill experience gains in real-time
- Display 🎉 LEVEL UP notifications
- Include level_ups in session summary
- Add level_up event subscription

Skill progression now tracked alongside combat and loot events.
2026-02-08 18:11:33 +00:00
LemonNexus e3f3a595fb feat(combat): add damage tracking and combat events
- Add English damage taken pattern: 'You took X points of damage'
- Add damage_dealt, damage_taken, evade subscriptions in main.py
- Update evade pattern for 'The target Evaded your attack' and 'The attack missed you'
- Show combat stats in session summary
- Display real-time damage dealt/taken/evade events

Combat events now tracked alongside loot for complete hunting analytics.
2026-02-08 18:07:06 +00:00
LemonNexus 39d1b0d48d chore(deps): add python-dotenv to requirements
Required for loading .env configuration file.
2026-02-08 18:01:54 +00:00
LemonNexus 6ce23718bc fix(main): load .env file and respect USE_MOCK_DATA setting
- Add python-dotenv to load .env configuration
- Read USE_MOCK_DATA and EU_CHAT_LOG_PATH from environment
- Use real game log when USE_MOCK_DATA=false
- Show correct mode (Mock vs Live) in header
- Import os module for environment access

Fixes issue where app always used mock data regardless of .env settings.
2026-02-08 18:01:39 +00:00
LemonNexus bd506e53c2 fix(logs): update English patterns for actual game output format
- English loot uses parentheses: 'x (2)' not 'x 2'
- Add English damage pattern: 'You inflicted X points of damage'
- Support both Swedish and English damage dealt events
- Fix empty bracket pattern: [System] [] Message

Tested with real log output showing English client format.
2026-02-08 17:54:48 +00:00
LemonNexus c511ff2042 feat(logs): add Swedish language support from real game logs
- Add Swedish regex patterns based on real chat.log from user session
- Support loot, globals, skills, damage, healing, weapon tier
- Add real-chat-sample.log for testing (14 events parsed)
- LogWatcher now parses Swedish game client output correctly
2026-02-08 17:30:31 +00:00
LemonNexus dfe4e8125f feat: add gear management + Windows testing guide
- Fix terminology: Projects (activities) vs Sessions (gameplay)
- Add EntropiaNexusAPI integration for weapon/armor/tool stats
- Implement GearLoadout class for equipment management
- Calculate hunting/mining costs per hour
- Add DPP (Damage Per PEC) efficiency tracking
- Create comprehensive WINDOWS_TESTING_GUIDE.md
- Document live game testing scenarios
- Explain ROI calculations and data model

Ready for Windows PC live testing with game client.
2026-02-08 17:17:37 +00:00
LemonNexus a516ff4d0c fix(db): correct SQL comment syntax for SQLite compatibility
- Replace Python-style # comments with SQL-standard -- comments
- SQLite does not recognize # as comment character
- Fixes database initialization failure on first run

Test: Database now initializes successfully.
2026-02-08 17:06:45 +00:00
LemonNexus df5c0212e8 docs: update PROJECT_RESUME for Sprint 1 completion
- Mark Sprint 1 as complete with all deliverables
- Add main.py and USER_TEST_GUIDE.md to key files
- Update status: Ready for user testing v0.1.0
- Add Sprint 2 planning (GUI Foundation)

Application is now runnable and ready for first user test.
2026-02-08 17:03:38 +00:00
LemonNexus eae846ee6b feat(app): add main.py and user test guide for v0.1.0
- Create main.py with interactive CLI for user testing
- Implement menu system: projects, sessions, stats, archive
- Add live session mode with mock log watching
- Real-time event display (loot, globals, skills)
- Auto-generate mock chat.log on first run
- Add USER_TEST_GUIDE.md with test checklist
- Document expected output and troubleshooting

Application is now runnable for first user test.
2026-02-08 17:02:37 +00:00
LemonNexus 24a450de5e test(core): add pytest suite for Data Capture Engine
- Create comprehensive test suite for core modules
- Test DatabaseManager initialization and queries
- Test ProjectManager Data Principle implementation
- Test LogWatcher regex patterns (global, hof, loot, skill, decay)
- Test Observer Pattern subscribe/unsubscribe
- Test async polling functionality
- Test mock log generation
- Add integration test: Log -> Project -> Database flow

Tests validate Never-Break Rules #4 (Decimal precision) and #5 (testing).
2026-02-08 16:56:56 +00:00
LemonNexus 4efbf39e7e feat(core): implement LogWatcher with Observer Pattern
- Create LogWatcher using Observer Pattern for loose coupling
- Implement compiled regex patterns for EU chat.log parsing:
  - Global/HoF detection
  - Regular loot parsing
  - Skill gain tracking
  - Weapon decay monitoring
- Add async polling loop (1s interval for 60+ FPS compliance)
- Implement MockLogGenerator for testing
- Efficient file seeking (only reads new lines)
- Event types: global, hof, loot, skill, decay, kill, enhancer_break

Performance optimized: minimal CPU, non-blocking async.
2026-02-08 16:56:49 +00:00
LemonNexus 28b8921efa feat(core): implement ProjectManager with Data Principle
- Create ProjectManager class enforcing Data Principle
- Implement ProjectData, SessionData, LootEvent dataclasses
- Add create_project, load_project, archive_project methods
- Implement session lifecycle (start_session, end_session)
- Add loot recording with auto-screenshot trigger (>50 PED)
- Include analytics: get_project_summary, compare_to_historical
- All PED calculations use Decimal for precision (Rule #4)

Every session is a Project: auto-saved, archivable, comparable.
2026-02-08 16:56:40 +00:00
LemonNexus b47ddbec2e feat(db): initialize SQLite schema and DatabaseManager
- Create schema.sql with Data Principle support (projects, sessions, loot)
- Implement DatabaseManager with connection pooling and WAL mode
- Add Decimal adapter for PED/PEC precision (Rule #4)
- Enable foreign keys and performance optimizations (Rule #3)
- Add backup functionality for data safety

Database supports project archiving, session tracking, and
historical data comparison per Data Principle.
2026-02-08 16:56:32 +00:00
LemonNexus a630e25898 docs: add PROJECT_INDEX.md and update PROJECT_RESUME
- Create comprehensive PROJECT_INDEX.md with full directory structure
- Document current (documentation) vs target (implementation) structure
- Map all core modules and technology stack
- Update PROJECT_RESUME with Sprint 0 completion status
- Mark agent identity synchronization complete
- Reference AGENTS.md Never-Break Rules

Establishes canonical project reference for Lead Engineer workflow.
2026-02-08 16:45:58 +00:00
LemonNexus 63c5c8f624 feat: add Obsidian REST API endpoint configuration
- Add OBSIDIAN_API_URL for flexible endpoint configuration
- Default: localhost (127.0.0.1:27123) for local Obsidian
- Configurable for remote Obsidian instances (e.g., main PC)
- Requires Local REST API community plugin enabled

Allows agents to connect to Obsidian running on different
machines within the network.
2026-02-08 16:30:16 +00:00
LemonNexus d4f4fc9ecb feat: add Obsidian API integration configuration
- Add OBSIDIAN_API_KEY for agent integration with notes vault
- Add OBSIDIAN_VAULT_PATH for local file access
- Add OBSIDIAN_PROJECT_TEMPLATE for documentation templates

Enables AI agents to read/write project notes and maintain
knowledge base synchronization with Obsidian.
2026-02-08 16:28:41 +00:00
LemonNexus 355c5f27fe chore: add comprehensive .env.example and project resume
- Add complete .env.example template with all 15+ configuration sections
- Include Gitea SSH key configuration
- Update .gitignore to track .env.example while securing .env
- Add PROJECT_RESUME.md for development state tracking
- Create project directory structure

Resolves merge conflict with remote version by combining both
approaches: comprehensive documentation + SSH configuration.
2026-02-08 16:27:10 +00:00
LemonNexus ccee4841a6 chore: add .env.example template and project resume
- Add comprehensive .env.example with all configuration options documented
- Update .gitignore to track .env.example while keeping .env secure
- Add PROJECT_RESUME.md for development state tracking
- Create project directory structure (data, screenshots, logs, etc.)

The .env.example serves as documentation and setup reference for
new deployments while actual credentials remain gitignored.
2026-02-08 16:26:19 +00:00
ImpulsiveFPS c4ff917d75 feat(config): add .env.example template and update .gitignore 2026-02-08 17:24:49 +01:00
ImpulsiveFPS 2f29640ed3 docs: add AI knowledge base with project configuration and MCP server details 2026-02-08 17:07:36 +01:00
ImpulsiveFPS 420a03c4eb chore: initial secure push 2026-02-08 16:01:50 +01:00