147 lines
4.6 KiB
Bash
Executable File
147 lines
4.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
required_paths=(
|
|
"AGENTS.md"
|
|
"README.md"
|
|
"scripts/check-all.sh"
|
|
"run/AGENTS.md"
|
|
"run/README.md"
|
|
"run/go.mod"
|
|
"run/cmd/run/main.go"
|
|
"platform/AGENTS.md"
|
|
"platform/README.md"
|
|
"platform/go.mod"
|
|
"platform/cmd/platform/main.go"
|
|
"platform_web/AGENTS.md"
|
|
"platform_web/README.md"
|
|
"platform_web/package.json"
|
|
"platform_web/package-lock.json"
|
|
"platform_web/tsconfig.json"
|
|
"platform_web/vite.config.ts"
|
|
"platform_web/index.html"
|
|
"plugins/AGENTS.md"
|
|
"plugins/README.md"
|
|
"plugins/package.json"
|
|
"plugins/package-lock.json"
|
|
"plugins/tsconfig.json"
|
|
"platform/api"
|
|
"platform/dto"
|
|
"platform/domain"
|
|
"platform/model"
|
|
"platform/repo"
|
|
"platform/service"
|
|
"platform/protocol"
|
|
"platform/validator"
|
|
"platform/config"
|
|
"platform/shared"
|
|
"platform/api/health_handler.go"
|
|
"platform/api/health_handler_test.go"
|
|
"platform/config/config.go"
|
|
"platform/config/config_test.go"
|
|
"platform/dto/health.go"
|
|
"platform/domain/resources.md"
|
|
"platform/api/routes.md"
|
|
"platform/protocol/run-contracts.md"
|
|
"platform/protocol/ai-provider-contracts.md"
|
|
"platform/protocol/server-lifecycle.md"
|
|
"run/api"
|
|
"run/protocol"
|
|
"run/domain"
|
|
"run/runtime"
|
|
"run/spool"
|
|
"run/artifact"
|
|
"run/logingest"
|
|
"run/config"
|
|
"run/shared"
|
|
"run/api/platform_client.go"
|
|
"run/api/platform_client_test.go"
|
|
"run/config/config.go"
|
|
"run/config/config_test.go"
|
|
"run/domain/status.go"
|
|
"run/runtime/smoke.go"
|
|
"run/runtime/smoke_test.go"
|
|
"run/protocol/control.md"
|
|
"run/protocol/job.md"
|
|
"run/protocol/log-ingest.md"
|
|
"run/protocol/artifact.md"
|
|
"run/protocol/game-client-bridge.md"
|
|
"platform_web/api"
|
|
"platform_web/routes"
|
|
"platform_web/pages"
|
|
"platform_web/components"
|
|
"platform_web/stores"
|
|
"platform_web/contracts"
|
|
"platform_web/schemas"
|
|
"platform_web/theme"
|
|
"platform_web/utils"
|
|
"platform_web/app/App.tsx"
|
|
"platform_web/app/App.test.tsx"
|
|
"platform_web/app/main.tsx"
|
|
"platform_web/components/AppShell.tsx"
|
|
"platform_web/components/MagicalParticleLayer.tsx"
|
|
"platform_web/components/PageFrame.tsx"
|
|
"platform_web/contracts/page.ts"
|
|
"platform_web/pages/HomePage.tsx"
|
|
"platform_web/pages/ServersPage.tsx"
|
|
"platform_web/pages/PluginsPage.tsx"
|
|
"platform_web/pages/UsersPage.tsx"
|
|
"platform_web/pages/AiProvidersPage.tsx"
|
|
"platform_web/pages/pageRegistry.tsx"
|
|
"platform_web/routes/routes.ts"
|
|
"platform_web/theme/base.css"
|
|
"platform_web/theme/README.md"
|
|
"platform_web/theme/tokens.ts"
|
|
"platform_web/routes/routes.md"
|
|
"platform_web/api/contracts.md"
|
|
"platform_web/api/client.ts"
|
|
"platform_web/api/types.ts"
|
|
"platform_web/contracts/pages.md"
|
|
"platform_web/contracts/plugin-page-bridge.md"
|
|
"platform_web/schemas/env.ts"
|
|
"platform_web/stores/navigation.ts"
|
|
"platform_web/utils/classes.ts"
|
|
"plugins/manifests"
|
|
"plugins/schemas"
|
|
"plugins/sdk"
|
|
"plugins/examples"
|
|
"plugins/tests"
|
|
"plugins/manifests/game-plugin.manifest.schema.json"
|
|
"plugins/schemas/create-form.schema.json"
|
|
"plugins/sdk/bridge-contract.md"
|
|
"plugins/sdk/index.ts"
|
|
"plugins/examples/dev-game-plugin/manifest.json"
|
|
"plugins/examples/dev-game-plugin/schemas/create-form.schema.json"
|
|
"plugins/examples/scum-server-plugin/manifest.json"
|
|
"plugins/examples/scum-server-plugin/schemas/create-form.schema.json"
|
|
"plugins/examples/scum-server-plugin/actions/install.json"
|
|
"plugins/examples/scum-server-plugin/actions/start.json"
|
|
"plugins/examples/scum-server-plugin/actions/stop.json"
|
|
"plugins/examples/scum-server-plugin/actions/restart.json"
|
|
"plugins/examples/scum-server-plugin/actions/status.json"
|
|
"plugins/scripts/validate-manifest.ts"
|
|
"plugins/tests/manifest-validation.test.ts"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/proposal.md"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/design.md"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/tasks.md"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/specs/project-workspace-governance/spec.md"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/specs/game-server-platform-core/spec.md"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/specs/run-execution-channel/spec.md"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/specs/game-plugin-system/spec.md"
|
|
"openspec/changes/bootstrap-game-server-platform-architecture/specs/platform-web-console/spec.md"
|
|
)
|
|
|
|
missing=0
|
|
for path in "${required_paths[@]}"; do
|
|
if [[ ! -e "$path" ]]; then
|
|
printf 'missing required path: %s\n' "$path" >&2
|
|
missing=1
|
|
fi
|
|
done
|
|
|
|
if [[ "$missing" -ne 0 ]]; then
|
|
exit 1
|
|
fi
|
|
|
|
printf 'structure check passed\n'
|