betterNAS/openspec/changes/scaffold-nextcloud-control-plane/tasks.md
2026-04-01 02:27:08 +00:00

1.7 KiB

1. Repository and local platform scaffold

  • 1.1 Create the top-level repository structure for docker/, apps/, exapps/, packages/, docs/, and scripts/
  • 1.2 Add a Docker Compose development stack for vanilla Nextcloud and its required backing services
  • 1.3 Add the betterNAS control-plane service container to the local development stack
  • 1.4 Add repeatable developer scripts and documentation for booting and stopping the local stack

2. Nextcloud shell app scaffold

  • 2.1 Generate the betterNAS Nextcloud app scaffold into apps/ainas-controlplane/
  • 2.2 Configure the shell app with betterNAS branding, navigation entry points, and basic settings surface
  • 2.3 Add an adapter layer in the shell app for calling betterNAS-owned service endpoints
  • 2.4 Verify the shell app installs and loads in the local Nextcloud runtime

3. Control-plane service scaffold

  • 3.1 Scaffold the betterNAS control-plane service in exapps/control-plane/
  • 3.2 Add a minimal internal HTTP API surface with health and version endpoints
  • 3.3 Create a dedicated Nextcloud adapter boundary inside the service for backend integrations
  • 3.4 Wire local service configuration so the shell app can discover and call the control-plane service

4. Shared contracts and verification

  • 4.1 Create the shared contracts package for internal API schemas and payload definitions
  • 4.2 Define the initial contracts used between the shell app and the control-plane service
  • 4.3 Document the architectural boundary that keeps business logic out of the Nextcloud app
  • 4.4 Verify end-to-end local startup with Nextcloud, the shell app, and the control-plane service all reachable