mirror of
https://github.com/soconnor0919/hristudio.git
synced 2025-12-11 22:54:45 -05:00
feat: implement complete plugin store repository synchronization system
• Fix repository sync implementation in admin API (was TODO placeholder) - Add full fetch/parse logic for repository.json and plugin index - Implement robot matching by name/manufacturer patterns - Handle plugin creation/updates with proper error handling - Add comprehensive TypeScript typing throughout • Fix plugin store installation state detection - Add getStudyPlugins API integration to check installed plugins - Update PluginCard component with isInstalled prop and correct button states - Fix repository name display using metadata.repositoryId mapping - Show "Installed" (disabled) vs "Install" (enabled) based on actual state • Resolve admin access and authentication issues - Add missing administrator role to user system roles table - Fix admin route access for repository management - Enable repository sync functionality in admin dashboard • Add repository metadata integration - Update plugin records with proper repositoryId references - Add metadata field to robots.plugins.list API response - Enable repository name display for all plugins from metadata • Fix TypeScript compliance across plugin system - Replace unsafe 'any' types with proper interfaces - Add type definitions for repository and plugin data structures - Use nullish coalescing operators for safer null handling - Remove unnecessary type assertions • Integrate live repository at https://repo.hristudio.com - Successfully loads 3 robot plugins (TurtleBot3 Burger/Waffle, NAO) - Complete ROS2 action definitions with parameter schemas - Trust level categorization (official, verified, community) - Platform and documentation metadata preservation • Update documentation and development workflow - Document plugin repository system in work_in_progress.md - Update quick-reference.md with repository sync examples - Add plugin installation and management guidance - Remove problematic test script with TypeScript errors BREAKING CHANGE: Plugin store now requires repository sync for robot plugins. Run repository sync in admin dashboard after deployment to populate plugin store. Closes: Plugin store repository integration Resolves: Installation state detection and repository name display Fixes: Admin authentication and TypeScript compliance issues
This commit is contained in:
51
public/hristudio-core/plugins/index.json
Normal file
51
public/hristudio-core/plugins/index.json
Normal file
@@ -0,0 +1,51 @@
|
||||
{
|
||||
"plugins": [
|
||||
{
|
||||
"id": "events",
|
||||
"name": "Event Triggers",
|
||||
"description": "Blocks that initiate and respond to experiment events",
|
||||
"version": "1.0.0",
|
||||
"category": "events",
|
||||
"file": "events.json",
|
||||
"blockCount": 4,
|
||||
"lastUpdated": "2025-02-13T00:00:00Z",
|
||||
"tags": ["events", "triggers", "trial-start", "participant-interaction"]
|
||||
},
|
||||
{
|
||||
"id": "wizard-actions",
|
||||
"name": "Wizard Actions",
|
||||
"description": "Actions performed by the human wizard during experiment execution",
|
||||
"version": "1.0.0",
|
||||
"category": "wizard-actions",
|
||||
"file": "wizard-actions.json",
|
||||
"blockCount": 6,
|
||||
"lastUpdated": "2025-02-13T00:00:00Z",
|
||||
"tags": ["wizard", "human", "speech", "gestures", "observation"]
|
||||
},
|
||||
{
|
||||
"id": "control-flow",
|
||||
"name": "Control Flow",
|
||||
"description": "Logic blocks for conditionals, loops, timing, and experiment flow control",
|
||||
"version": "1.0.0",
|
||||
"category": "control-flow",
|
||||
"file": "control-flow.json",
|
||||
"blockCount": 8,
|
||||
"lastUpdated": "2025-02-13T00:00:00Z",
|
||||
"tags": ["logic", "conditionals", "loops", "timing", "flow-control"]
|
||||
},
|
||||
{
|
||||
"id": "observation",
|
||||
"name": "Observation & Sensing",
|
||||
"description": "Data collection and behavioral observation blocks for capturing experiment metrics",
|
||||
"version": "1.0.0",
|
||||
"category": "sensors",
|
||||
"file": "observation.json",
|
||||
"blockCount": 9,
|
||||
"lastUpdated": "2025-02-13T00:00:00Z",
|
||||
"tags": ["observation", "data-collection", "sensors", "measurement", "recording"]
|
||||
}
|
||||
],
|
||||
"total": 4,
|
||||
"version": "1.0.0",
|
||||
"lastUpdated": "2025-02-13T00:00:00Z"
|
||||
}
|
||||
Reference in New Issue
Block a user