-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Summary
Phase 1 establishes Data Machine Code as a working standalone extension by completing the extraction from Data Machine core. The plugin already has all ported code — this phase makes it fully functional and removes the duplicates from core.
Tasks
Extension Plugin (data-machine-code)
- Scaffold plugin structure with PSR-4 autoloading
- Port GitHubAbilities (6 abilities)
- Port WorkspaceAbilities (14 abilities)
- Port Workspace, WorkspaceReader, WorkspaceWriter core classes
- Port GitHubIssueTool, GitHubTools (5 tools), WorkspaceTools (5 tools)
- Port GitHubIssueTask system task
- Port GitHubCommand and WorkspaceCommand CLI
- Port GitHub fetch handler and settings
- Own settings management for
github_patandgithub_default_repo - Settings migration: read from core, write to own options
- Settings admin UI panel (React or simple form)
Core Removal (data-machine)
- Remove GitHubAbilities from core (guard with
class_existscheck) - Remove WorkspaceAbilities from core
- Remove Workspace, WorkspaceReader, WorkspaceWriter from core
- Remove GitHub/Workspace tools from ToolServiceProvider
- Remove GitHubIssueTask from SystemAgentServiceProvider
- Remove GitHub settings from SettingsAbilities
- Remove GitHub CLI commands from Bootstrap.php
- Remove GitHub section from SystemContextDirective (already has
class_existsguard) - Update data-machine.php require/instantiation
Integration Testing
- Verify plugin activates cleanly with Data Machine core
- Verify CLI commands work:
wp datamachine-code github status - Verify CLI commands work:
wp datamachine-code workspace list - Verify chat tools register properly
- Verify system task registers via
datamachine_tasksfilter - Verify GitHub fetch handler registers for pipelines
Dependencies
- Data Machine core (base classes: BaseTool, SystemTask, BaseCommand, FetchHandler, PermissionHelper)
- WordPress 6.9+ Abilities API
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels