Skip to content

ServerBuilder wiring and E2E tests #3655

@JAORMX

Description

@JAORMX

Description

Wire the SkillService into the ServerBuilder, initialize all skill dependencies when thv serve starts, and add E2E tests covering the full skill lifecycle.

Context

Part of the Skills Lifecycle Management epic. This is the final integration task that brings all components together and validates the full workflow end-to-end.

Dependencies: REST API skills handlers, Groups integration for skills
Blocks: None (final task)

Acceptance Criteria

  • thv serve initializes skill dependencies (OCI store, registry client, packager, state manager, installer, skill service)
  • ServerBuilder.Build() wires SkillService into the skills router
  • createDefaultManagers() or equivalent creates skill service with all dependencies
  • E2E tests cover full lifecycle:
    • Build a test skill → push to test registry → install → list (verify present) → info → uninstall → list (verify absent)
    • Validate command with valid/invalid skill directories
    • Overwrite protection (install over unmanaged skill fails without --force)
    • Group assignment on install, group-filtered listing
  • E2E tests verify CLI → REST API → service flow
  • All tests pass, SPDX headers present

Technical Approach

Follow existing thv serve initialization patterns. E2E tests follow test/e2e/ patterns.

Code Pointers

  • pkg/api/server.gocreateDefaultManagers() for initialization pattern
  • cmd/thv/app/serve.go — serve command setup
  • test/e2e/ — E2E test patterns

Metadata

Metadata

Assignees

No one assigned

    Labels

    apiItems related to the APIcliChanges that impact CLI functionalityenhancementNew feature or requestskillsSkills lifecycle managementtoolhive-platformToolHive Platform team

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions