59 lines
2.0 KiB
Markdown
59 lines
2.0 KiB
Markdown
# Agent Permissions Plugin - Subtasks
|
|
|
|
## Completed Tasks
|
|
|
|
### ✅ Scaffold agent permissions plugin
|
|
**Description:** Create basic plugin structure with manifest, worker entry point, and UI entry point. Set up TypeScript/Vitest build configuration.
|
|
|
|
**Deliverables:**
|
|
- [x] Plugin directory structure created
|
|
- [x] `package.json` with dependencies
|
|
- [x] `tsconfig.json` configured
|
|
- [x] `esbuild.config.mjs` for bundling
|
|
- [x] `src/manifest.ts` with plugin metadata and capabilities
|
|
- [x] `src/worker.ts` entry point
|
|
- [x] `src/ui/index.tsx` entry point
|
|
- [x] `vitest.config.ts` for testing
|
|
|
|
---
|
|
|
|
### ✅ Implement worker data/action handlers
|
|
**Description:** Implement the worker logic for reading and writing agent permissions.
|
|
|
|
**Deliverables:**
|
|
- [x] `agent-permissions` data handler - returns permissions for a single agent
|
|
- [x] `toggle-agent-permission` action - enables/disables a permission for an agent
|
|
- [x] `all-agents-permissions` data handler - returns all agents with their permissions
|
|
- [x] Proper error handling and validation
|
|
|
|
---
|
|
|
|
### ✅ Build UI components
|
|
**Description:** Create React UI components for displaying and toggling agent permissions.
|
|
|
|
**Deliverables:**
|
|
- [x] `AgentPermissionsTab.tsx` - Detail tab component shown on agent page
|
|
- [x] Permission toggle controls with proper styling
|
|
- [x] Loading states and error handling
|
|
- [x] `PermissionsNav.tsx` - Sidebar navigation component
|
|
|
|
---
|
|
|
|
### ✅ Test plugin
|
|
**Description:** Write unit and integration tests for the plugin.
|
|
|
|
**Deliverables:**
|
|
- [x] Unit tests for constants (`src/__tests__/constants.test.ts`)
|
|
- [x] Unit tests for validation logic (`src/__tests__/validation.test.ts`)
|
|
- [x] 18 passing tests total
|
|
|
|
---
|
|
|
|
## Notes
|
|
|
|
- All subtasks should have `assigneeAgentId: d20f6f1c-1f24-4405-a122-2f93e0d6c94a` (Founding Engineer)
|
|
- All subtasks should have `projectId: 1c49333d-5ee2-41d7-b4c0-2ddfd577ba61` (Paperclip plugins)
|
|
- All subtasks should have `parentId: 2777d642-6a55-4ae9-950a-b115ad270e28` (FRE-339)
|
|
- Priority: medium
|
|
- Status: todo
|