@growthub/cli 0.6.0 → 0.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/agent-jwt-env.test.d.ts +2 -0
- package/dist/__tests__/agent-jwt-env.test.d.ts.map +1 -0
- package/dist/__tests__/agent-jwt-env.test.js +57 -0
- package/dist/__tests__/agent-jwt-env.test.js.map +1 -0
- package/dist/__tests__/allowed-hostname.test.d.ts +2 -0
- package/dist/__tests__/allowed-hostname.test.d.ts.map +1 -0
- package/dist/__tests__/allowed-hostname.test.js +75 -0
- package/dist/__tests__/allowed-hostname.test.js.map +1 -0
- package/dist/__tests__/auth-login-flow.test.d.ts +2 -0
- package/dist/__tests__/auth-login-flow.test.d.ts.map +1 -0
- package/dist/__tests__/auth-login-flow.test.js +62 -0
- package/dist/__tests__/auth-login-flow.test.js.map +1 -0
- package/dist/__tests__/auth-session.test.d.ts +2 -0
- package/dist/__tests__/auth-session.test.d.ts.map +1 -0
- package/dist/__tests__/auth-session.test.js +128 -0
- package/dist/__tests__/auth-session.test.js.map +1 -0
- package/dist/__tests__/common.test.d.ts +2 -0
- package/dist/__tests__/common.test.d.ts.map +1 -0
- package/dist/__tests__/common.test.js +73 -0
- package/dist/__tests__/common.test.js.map +1 -0
- package/dist/__tests__/company-delete.test.d.ts +2 -0
- package/dist/__tests__/company-delete.test.d.ts.map +1 -0
- package/dist/__tests__/company-delete.test.js +78 -0
- package/dist/__tests__/company-delete.test.js.map +1 -0
- package/dist/__tests__/context.test.d.ts +2 -0
- package/dist/__tests__/context.test.d.ts.map +1 -0
- package/dist/__tests__/context.test.js +50 -0
- package/dist/__tests__/context.test.js.map +1 -0
- package/dist/__tests__/create-growthub-local-installer.test.d.ts +21 -0
- package/dist/__tests__/create-growthub-local-installer.test.d.ts.map +1 -0
- package/dist/__tests__/create-growthub-local-installer.test.js +205 -0
- package/dist/__tests__/create-growthub-local-installer.test.js.map +1 -0
- package/dist/__tests__/data-dir.test.d.ts +2 -0
- package/dist/__tests__/data-dir.test.d.ts.map +1 -0
- package/dist/__tests__/data-dir.test.js +61 -0
- package/dist/__tests__/data-dir.test.js.map +1 -0
- package/dist/__tests__/doctor.test.d.ts +2 -0
- package/dist/__tests__/doctor.test.d.ts.map +1 -0
- package/dist/__tests__/doctor.test.js +93 -0
- package/dist/__tests__/doctor.test.js.map +1 -0
- package/dist/__tests__/effective-profile.test.d.ts +2 -0
- package/dist/__tests__/effective-profile.test.d.ts.map +1 -0
- package/dist/__tests__/effective-profile.test.js +91 -0
- package/dist/__tests__/effective-profile.test.js.map +1 -0
- package/dist/__tests__/execute-hosted-pipeline.test.d.ts +2 -0
- package/dist/__tests__/execute-hosted-pipeline.test.d.ts.map +1 -0
- package/dist/__tests__/execute-hosted-pipeline.test.js +131 -0
- package/dist/__tests__/execute-hosted-pipeline.test.js.map +1 -0
- package/dist/__tests__/fork-policy.test.d.ts +12 -0
- package/dist/__tests__/fork-policy.test.d.ts.map +1 -0
- package/dist/__tests__/fork-policy.test.js +132 -0
- package/dist/__tests__/fork-policy.test.js.map +1 -0
- package/dist/__tests__/fork-trace.test.d.ts +12 -0
- package/dist/__tests__/fork-trace.test.d.ts.map +1 -0
- package/dist/__tests__/fork-trace.test.js +90 -0
- package/dist/__tests__/fork-trace.test.js.map +1 -0
- package/dist/__tests__/home-paths.test.d.ts +2 -0
- package/dist/__tests__/home-paths.test.d.ts.map +1 -0
- package/dist/__tests__/home-paths.test.js +32 -0
- package/dist/__tests__/home-paths.test.js.map +1 -0
- package/dist/__tests__/hosted-execution-client.test.d.ts +2 -0
- package/dist/__tests__/hosted-execution-client.test.d.ts.map +1 -0
- package/dist/__tests__/hosted-execution-client.test.js +100 -0
- package/dist/__tests__/hosted-execution-client.test.js.map +1 -0
- package/dist/__tests__/http.test.d.ts +2 -0
- package/dist/__tests__/http.test.d.ts.map +1 -0
- package/dist/__tests__/http.test.js +42 -0
- package/dist/__tests__/http.test.js.map +1 -0
- package/dist/__tests__/integrations-github-resolver.test.d.ts +14 -0
- package/dist/__tests__/integrations-github-resolver.test.d.ts.map +1 -0
- package/dist/__tests__/integrations-github-resolver.test.js +103 -0
- package/dist/__tests__/integrations-github-resolver.test.js.map +1 -0
- package/dist/__tests__/kit-command.test.d.ts +2 -0
- package/dist/__tests__/kit-command.test.d.ts.map +1 -0
- package/dist/__tests__/kit-command.test.js +134 -0
- package/dist/__tests__/kit-command.test.js.map +1 -0
- package/dist/__tests__/kit-core.test.d.ts +17 -0
- package/dist/__tests__/kit-core.test.d.ts.map +1 -0
- package/dist/__tests__/kit-core.test.js +403 -0
- package/dist/__tests__/kit-core.test.js.map +1 -0
- package/dist/__tests__/kit-fork-command.test.d.ts +11 -0
- package/dist/__tests__/kit-fork-command.test.d.ts.map +1 -0
- package/dist/__tests__/kit-fork-command.test.js +183 -0
- package/dist/__tests__/kit-fork-command.test.js.map +1 -0
- package/dist/__tests__/kit-fork-phase-1.test.d.ts +13 -0
- package/dist/__tests__/kit-fork-phase-1.test.d.ts.map +1 -0
- package/dist/__tests__/kit-fork-phase-1.test.js +220 -0
- package/dist/__tests__/kit-fork-phase-1.test.js.map +1 -0
- package/dist/__tests__/kit-fork-registry.test.d.ts +8 -0
- package/dist/__tests__/kit-fork-registry.test.d.ts.map +1 -0
- package/dist/__tests__/kit-fork-registry.test.js +183 -0
- package/dist/__tests__/kit-fork-registry.test.js.map +1 -0
- package/dist/__tests__/kit-fork-sync-agent.test.d.ts +13 -0
- package/dist/__tests__/kit-fork-sync-agent.test.d.ts.map +1 -0
- package/dist/__tests__/kit-fork-sync-agent.test.js +262 -0
- package/dist/__tests__/kit-fork-sync-agent.test.js.map +1 -0
- package/dist/__tests__/kit-fork-sync.test.d.ts +12 -0
- package/dist/__tests__/kit-fork-sync.test.d.ts.map +1 -0
- package/dist/__tests__/kit-fork-sync.test.js +455 -0
- package/dist/__tests__/kit-fork-sync.test.js.map +1 -0
- package/dist/__tests__/kit-zernio-social.test.d.ts +16 -0
- package/dist/__tests__/kit-zernio-social.test.d.ts.map +1 -0
- package/dist/__tests__/kit-zernio-social.test.js +528 -0
- package/dist/__tests__/kit-zernio-social.test.js.map +1 -0
- package/dist/__tests__/kit.test.d.ts +2 -0
- package/dist/__tests__/kit.test.d.ts.map +1 -0
- package/dist/__tests__/kit.test.js +359 -0
- package/dist/__tests__/kit.test.js.map +1 -0
- package/dist/__tests__/native-intelligence-normalizer.test.d.ts +2 -0
- package/dist/__tests__/native-intelligence-normalizer.test.d.ts.map +1 -0
- package/dist/__tests__/native-intelligence-normalizer.test.js +200 -0
- package/dist/__tests__/native-intelligence-normalizer.test.js.map +1 -0
- package/dist/__tests__/native-intelligence-planner.test.d.ts +2 -0
- package/dist/__tests__/native-intelligence-planner.test.d.ts.map +1 -0
- package/dist/__tests__/native-intelligence-planner.test.js +208 -0
- package/dist/__tests__/native-intelligence-planner.test.js.map +1 -0
- package/dist/__tests__/native-intelligence-recommender.test.d.ts +2 -0
- package/dist/__tests__/native-intelligence-recommender.test.d.ts.map +1 -0
- package/dist/__tests__/native-intelligence-recommender.test.js +212 -0
- package/dist/__tests__/native-intelligence-recommender.test.js.map +1 -0
- package/dist/__tests__/native-intelligence-summarizer.test.d.ts +2 -0
- package/dist/__tests__/native-intelligence-summarizer.test.d.ts.map +1 -0
- package/dist/__tests__/native-intelligence-summarizer.test.js +195 -0
- package/dist/__tests__/native-intelligence-summarizer.test.js.map +1 -0
- package/dist/__tests__/open-agents.test.d.ts +2 -0
- package/dist/__tests__/open-agents.test.d.ts.map +1 -0
- package/dist/__tests__/open-agents.test.js +174 -0
- package/dist/__tests__/open-agents.test.js.map +1 -0
- package/dist/__tests__/progress.test.d.ts +5 -0
- package/dist/__tests__/progress.test.d.ts.map +1 -0
- package/dist/__tests__/progress.test.js +55 -0
- package/dist/__tests__/progress.test.js.map +1 -0
- package/dist/__tests__/qwen-code.test.d.ts +2 -0
- package/dist/__tests__/qwen-code.test.d.ts.map +1 -0
- package/dist/__tests__/qwen-code.test.js +125 -0
- package/dist/__tests__/qwen-code.test.js.map +1 -0
- package/dist/__tests__/source-import-agent.test.d.ts +9 -0
- package/dist/__tests__/source-import-agent.test.d.ts.map +1 -0
- package/dist/__tests__/source-import-agent.test.js +124 -0
- package/dist/__tests__/source-import-agent.test.js.map +1 -0
- package/dist/__tests__/source-import-detect.test.d.ts +8 -0
- package/dist/__tests__/source-import-detect.test.d.ts.map +1 -0
- package/dist/__tests__/source-import-detect.test.js +91 -0
- package/dist/__tests__/source-import-detect.test.js.map +1 -0
- package/dist/__tests__/source-import-plan.test.d.ts +8 -0
- package/dist/__tests__/source-import-plan.test.d.ts.map +1 -0
- package/dist/__tests__/source-import-plan.test.js +170 -0
- package/dist/__tests__/source-import-plan.test.js.map +1 -0
- package/dist/__tests__/source-import-security.test.d.ts +8 -0
- package/dist/__tests__/source-import-security.test.d.ts.map +1 -0
- package/dist/__tests__/source-import-security.test.js +111 -0
- package/dist/__tests__/source-import-security.test.js.map +1 -0
- package/dist/__tests__/source-import-skills-source.test.d.ts +11 -0
- package/dist/__tests__/source-import-skills-source.test.d.ts.map +1 -0
- package/dist/__tests__/source-import-skills-source.test.js +181 -0
- package/dist/__tests__/source-import-skills-source.test.js.map +1 -0
- package/dist/__tests__/table-renderer.test.d.ts +12 -0
- package/dist/__tests__/table-renderer.test.d.ts.map +1 -0
- package/dist/__tests__/table-renderer.test.js +86 -0
- package/dist/__tests__/table-renderer.test.js.map +1 -0
- package/dist/__tests__/worktree.test.d.ts +2 -0
- package/dist/__tests__/worktree.test.d.ts.map +1 -0
- package/dist/__tests__/worktree.test.js +399 -0
- package/dist/__tests__/worktree.test.js.map +1 -0
- package/dist/adapters/http/format-event.d.ts +2 -0
- package/dist/adapters/http/format-event.d.ts.map +1 -0
- package/dist/adapters/http/format-event.js +6 -0
- package/dist/adapters/http/format-event.js.map +1 -0
- package/dist/adapters/http/index.d.ts +3 -0
- package/dist/adapters/http/index.d.ts.map +1 -0
- package/dist/adapters/http/index.js +6 -0
- package/dist/adapters/http/index.js.map +1 -0
- package/dist/adapters/index.d.ts +3 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +2 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/open-agents/format-event.d.ts +2 -0
- package/dist/adapters/open-agents/format-event.d.ts.map +1 -0
- package/dist/adapters/open-agents/format-event.js +39 -0
- package/dist/adapters/open-agents/format-event.js.map +1 -0
- package/dist/adapters/open-agents/index.d.ts +3 -0
- package/dist/adapters/open-agents/index.d.ts.map +1 -0
- package/dist/adapters/open-agents/index.js +6 -0
- package/dist/adapters/open-agents/index.js.map +1 -0
- package/dist/adapters/process/format-event.d.ts +2 -0
- package/dist/adapters/process/format-event.d.ts.map +1 -0
- package/dist/adapters/process/format-event.js +6 -0
- package/dist/adapters/process/format-event.js.map +1 -0
- package/dist/adapters/process/index.d.ts +3 -0
- package/dist/adapters/process/index.d.ts.map +1 -0
- package/dist/adapters/process/index.js +6 -0
- package/dist/adapters/process/index.js.map +1 -0
- package/dist/adapters/qwen/format-event.d.ts +8 -0
- package/dist/adapters/qwen/format-event.d.ts.map +1 -0
- package/dist/adapters/qwen/format-event.js +28 -0
- package/dist/adapters/qwen/format-event.js.map +1 -0
- package/dist/adapters/qwen/index.d.ts +3 -0
- package/dist/adapters/qwen/index.d.ts.map +1 -0
- package/dist/adapters/qwen/index.js +6 -0
- package/dist/adapters/qwen/index.js.map +1 -0
- package/dist/adapters/registry.d.ts +3 -0
- package/dist/adapters/registry.d.ts.map +1 -0
- package/dist/adapters/registry.js +56 -0
- package/dist/adapters/registry.js.map +1 -0
- package/dist/auth/effective-profile.d.ts +61 -0
- package/dist/auth/effective-profile.d.ts.map +1 -0
- package/dist/auth/effective-profile.js +127 -0
- package/dist/auth/effective-profile.js.map +1 -0
- package/dist/auth/hosted-client.d.ts +107 -0
- package/dist/auth/hosted-client.d.ts.map +1 -0
- package/dist/auth/hosted-client.js +140 -0
- package/dist/auth/hosted-client.js.map +1 -0
- package/dist/auth/hosted-integrations.d.ts +33 -0
- package/dist/auth/hosted-integrations.d.ts.map +1 -0
- package/dist/auth/hosted-integrations.js +51 -0
- package/dist/auth/hosted-integrations.js.map +1 -0
- package/dist/auth/login-flow.d.ts +27 -0
- package/dist/auth/login-flow.d.ts.map +1 -0
- package/dist/auth/login-flow.js +212 -0
- package/dist/auth/login-flow.js.map +1 -0
- package/dist/auth/overlay-store.d.ts +52 -0
- package/dist/auth/overlay-store.d.ts.map +1 -0
- package/dist/auth/overlay-store.js +123 -0
- package/dist/auth/overlay-store.js.map +1 -0
- package/dist/auth/paths.d.ts +15 -0
- package/dist/auth/paths.d.ts.map +1 -0
- package/dist/auth/paths.js +27 -0
- package/dist/auth/paths.js.map +1 -0
- package/dist/auth/session-store.d.ts +35 -0
- package/dist/auth/session-store.d.ts.map +1 -0
- package/dist/auth/session-store.js +73 -0
- package/dist/auth/session-store.js.map +1 -0
- package/dist/auth/workflow-access.d.ts +7 -0
- package/dist/auth/workflow-access.d.ts.map +1 -0
- package/dist/auth/workflow-access.js +27 -0
- package/dist/auth/workflow-access.js.map +1 -0
- package/dist/checks/agent-jwt-secret-check.d.ts +3 -0
- package/dist/checks/agent-jwt-secret-check.d.ts.map +1 -0
- package/dist/checks/agent-jwt-secret-check.js +31 -0
- package/dist/checks/agent-jwt-secret-check.js.map +1 -0
- package/dist/checks/config-check.d.ts +3 -0
- package/dist/checks/config-check.d.ts.map +1 -0
- package/dist/checks/config-check.js +31 -0
- package/dist/checks/config-check.js.map +1 -0
- package/dist/checks/database-check.d.ts +4 -0
- package/dist/checks/database-check.d.ts.map +1 -0
- package/dist/checks/database-check.js +54 -0
- package/dist/checks/database-check.js.map +1 -0
- package/dist/checks/deployment-auth-check.d.ts +4 -0
- package/dist/checks/deployment-auth-check.d.ts.map +1 -0
- package/dist/checks/deployment-auth-check.js +83 -0
- package/dist/checks/deployment-auth-check.js.map +1 -0
- package/dist/checks/index.d.ts +18 -0
- package/dist/checks/index.d.ts.map +1 -0
- package/dist/checks/index.js +10 -0
- package/dist/checks/index.js.map +1 -0
- package/dist/checks/llm-check.d.ts +4 -0
- package/dist/checks/llm-check.d.ts.map +1 -0
- package/dist/checks/llm-check.js +80 -0
- package/dist/checks/llm-check.js.map +1 -0
- package/dist/checks/log-check.d.ts +4 -0
- package/dist/checks/log-check.d.ts.map +1 -0
- package/dist/checks/log-check.js +27 -0
- package/dist/checks/log-check.js.map +1 -0
- package/dist/checks/path-resolver.d.ts +2 -0
- package/dist/checks/path-resolver.d.ts.map +1 -0
- package/dist/checks/path-resolver.js +2 -0
- package/dist/checks/path-resolver.js.map +1 -0
- package/dist/checks/port-check.d.ts +4 -0
- package/dist/checks/port-check.d.ts.map +1 -0
- package/dist/checks/port-check.js +20 -0
- package/dist/checks/port-check.js.map +1 -0
- package/dist/checks/secrets-check.d.ts +4 -0
- package/dist/checks/secrets-check.d.ts.map +1 -0
- package/dist/checks/secrets-check.js +123 -0
- package/dist/checks/secrets-check.js.map +1 -0
- package/dist/checks/storage-check.d.ts +4 -0
- package/dist/checks/storage-check.d.ts.map +1 -0
- package/dist/checks/storage-check.js +46 -0
- package/dist/checks/storage-check.js.map +1 -0
- package/dist/client/context.d.ts +21 -0
- package/dist/client/context.d.ts.map +1 -0
- package/dist/client/context.js +136 -0
- package/dist/client/context.js.map +1 -0
- package/dist/client/http.d.ts +29 -0
- package/dist/client/http.d.ts.map +1 -0
- package/dist/client/http.js +120 -0
- package/dist/client/http.js.map +1 -0
- package/dist/commands/allowed-hostname.d.ts +4 -0
- package/dist/commands/allowed-hostname.d.ts.map +1 -0
- package/dist/commands/allowed-hostname.js +31 -0
- package/dist/commands/allowed-hostname.js.map +1 -0
- package/dist/commands/artifact.d.ts +12 -0
- package/dist/commands/artifact.d.ts.map +1 -0
- package/dist/commands/artifact.js +167 -0
- package/dist/commands/artifact.js.map +1 -0
- package/dist/commands/auth-bootstrap-ceo.d.ts +8 -0
- package/dist/commands/auth-bootstrap-ceo.d.ts.map +1 -0
- package/dist/commands/auth-bootstrap-ceo.js +108 -0
- package/dist/commands/auth-bootstrap-ceo.js.map +1 -0
- package/dist/commands/auth-login.d.ts +24 -0
- package/dist/commands/auth-login.d.ts.map +1 -0
- package/dist/commands/auth-login.js +270 -0
- package/dist/commands/auth-login.js.map +1 -0
- package/dist/commands/capability.d.ts +15 -0
- package/dist/commands/capability.d.ts.map +1 -0
- package/dist/commands/capability.js +366 -0
- package/dist/commands/capability.js.map +1 -0
- package/dist/commands/client/activity.d.ts +3 -0
- package/dist/commands/client/activity.d.ts.map +1 -0
- package/dist/commands/client/activity.js +49 -0
- package/dist/commands/client/activity.js.map +1 -0
- package/dist/commands/client/agent.d.ts +3 -0
- package/dist/commands/client/agent.d.ts.map +1 -0
- package/dist/commands/client/agent.js +224 -0
- package/dist/commands/client/agent.js.map +1 -0
- package/dist/commands/client/approval.d.ts +3 -0
- package/dist/commands/client/approval.d.ts.map +1 -0
- package/dist/commands/client/approval.js +193 -0
- package/dist/commands/client/approval.js.map +1 -0
- package/dist/commands/client/common.d.ts +33 -0
- package/dist/commands/client/common.d.ts.map +1 -0
- package/dist/commands/client/common.js +140 -0
- package/dist/commands/client/common.js.map +1 -0
- package/dist/commands/client/company.d.ts +14 -0
- package/dist/commands/client/company.d.ts.map +1 -0
- package/dist/commands/client/company.js +346 -0
- package/dist/commands/client/company.js.map +1 -0
- package/dist/commands/client/context.d.ts +3 -0
- package/dist/commands/client/context.d.ts.map +1 -0
- package/dist/commands/client/context.js +92 -0
- package/dist/commands/client/context.js.map +1 -0
- package/dist/commands/client/dashboard.d.ts +3 -0
- package/dist/commands/client/dashboard.d.ts.map +1 -0
- package/dist/commands/client/dashboard.js +19 -0
- package/dist/commands/client/dashboard.js.map +1 -0
- package/dist/commands/client/issue.d.ts +3 -0
- package/dist/commands/client/issue.d.ts.map +1 -0
- package/dist/commands/client/issue.js +229 -0
- package/dist/commands/client/issue.js.map +1 -0
- package/dist/commands/client/plugin.d.ts +3 -0
- package/dist/commands/client/plugin.d.ts.map +1 -0
- package/dist/commands/client/plugin.js +252 -0
- package/dist/commands/client/plugin.js.map +1 -0
- package/dist/commands/configure.d.ts +5 -0
- package/dist/commands/configure.d.ts.map +1 -0
- package/dist/commands/configure.js +167 -0
- package/dist/commands/configure.js.map +1 -0
- package/dist/commands/db-backup.d.ts +10 -0
- package/dist/commands/db-backup.d.ts.map +1 -0
- package/dist/commands/db-backup.js +74 -0
- package/dist/commands/db-backup.js.map +1 -0
- package/dist/commands/doctor.d.ts +10 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +154 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/env.d.ts +4 -0
- package/dist/commands/env.d.ts.map +1 -0
- package/dist/commands/env.js +355 -0
- package/dist/commands/env.js.map +1 -0
- package/dist/commands/fleet.d.ts +39 -0
- package/dist/commands/fleet.d.ts.map +1 -0
- package/dist/commands/fleet.js +281 -0
- package/dist/commands/fleet.js.map +1 -0
- package/dist/commands/github.d.ts +29 -0
- package/dist/commands/github.d.ts.map +1 -0
- package/dist/commands/github.js +205 -0
- package/dist/commands/github.js.map +1 -0
- package/dist/commands/gtm.d.ts +3 -0
- package/dist/commands/gtm.d.ts.map +1 -0
- package/dist/commands/gtm.js +134 -0
- package/dist/commands/gtm.js.map +1 -0
- package/dist/commands/heartbeat-run.d.ts +16 -0
- package/dist/commands/heartbeat-run.d.ts.map +1 -0
- package/dist/commands/heartbeat-run.js +294 -0
- package/dist/commands/heartbeat-run.js.map +1 -0
- package/dist/commands/integrations.d.ts +20 -0
- package/dist/commands/integrations.d.ts.map +1 -0
- package/dist/commands/integrations.js +98 -0
- package/dist/commands/integrations.js.map +1 -0
- package/dist/commands/kit-fork-remote.d.ts +46 -0
- package/dist/commands/kit-fork-remote.d.ts.map +1 -0
- package/dist/commands/kit-fork-remote.js +489 -0
- package/dist/commands/kit-fork-remote.js.map +1 -0
- package/dist/commands/kit-fork.d.ts +39 -0
- package/dist/commands/kit-fork.d.ts.map +1 -0
- package/dist/commands/kit-fork.js +1338 -0
- package/dist/commands/kit-fork.js.map +1 -0
- package/dist/commands/kit.d.ts +7 -0
- package/dist/commands/kit.d.ts.map +1 -0
- package/dist/commands/kit.js +585 -0
- package/dist/commands/kit.js.map +1 -0
- package/dist/commands/onboard.d.ts +9 -0
- package/dist/commands/onboard.d.ts.map +1 -0
- package/dist/commands/onboard.js +425 -0
- package/dist/commands/onboard.js.map +1 -0
- package/dist/commands/open-agents.d.ts +19 -0
- package/dist/commands/open-agents.d.ts.map +1 -0
- package/dist/commands/open-agents.js +689 -0
- package/dist/commands/open-agents.js.map +1 -0
- package/dist/commands/pipeline.d.ts +20 -0
- package/dist/commands/pipeline.d.ts.map +1 -0
- package/dist/commands/pipeline.js +863 -0
- package/dist/commands/pipeline.js.map +1 -0
- package/dist/commands/profile.d.ts +3 -0
- package/dist/commands/profile.d.ts.map +1 -0
- package/dist/commands/profile.js +282 -0
- package/dist/commands/profile.js.map +1 -0
- package/dist/commands/qwen-code.d.ts +19 -0
- package/dist/commands/qwen-code.d.ts.map +1 -0
- package/dist/commands/qwen-code.js +286 -0
- package/dist/commands/qwen-code.js.map +1 -0
- package/dist/commands/run.d.ts +9 -0
- package/dist/commands/run.d.ts.map +1 -0
- package/dist/commands/run.js +156 -0
- package/dist/commands/run.js.map +1 -0
- package/dist/commands/source-import-discovery.d.ts +28 -0
- package/dist/commands/source-import-discovery.d.ts.map +1 -0
- package/dist/commands/source-import-discovery.js +327 -0
- package/dist/commands/source-import-discovery.js.map +1 -0
- package/dist/commands/starter.d.ts +27 -0
- package/dist/commands/starter.d.ts.map +1 -0
- package/dist/commands/starter.js +358 -0
- package/dist/commands/starter.js.map +1 -0
- package/dist/commands/status.d.ts +18 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +84 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/template.d.ts +18 -0
- package/dist/commands/template.d.ts.map +1 -0
- package/dist/commands/template.js +341 -0
- package/dist/commands/template.js.map +1 -0
- package/dist/commands/workflow.d.ts +24 -0
- package/dist/commands/workflow.d.ts.map +1 -0
- package/dist/commands/workflow.js +1350 -0
- package/dist/commands/workflow.js.map +1 -0
- package/dist/commands/worktree-lib.d.ts +49 -0
- package/dist/commands/worktree-lib.d.ts.map +1 -0
- package/dist/commands/worktree-lib.js +220 -0
- package/dist/commands/worktree-lib.js.map +1 -0
- package/dist/commands/worktree.d.ts +60 -0
- package/dist/commands/worktree.d.ts.map +1 -0
- package/dist/commands/worktree.js +874 -0
- package/dist/commands/worktree.js.map +1 -0
- package/dist/config/data-dir.d.ts +12 -0
- package/dist/config/data-dir.d.ts.map +1 -0
- package/dist/config/data-dir.js +25 -0
- package/dist/config/data-dir.js.map +1 -0
- package/dist/config/env.d.ts +15 -0
- package/dist/config/env.d.ts.map +1 -0
- package/dist/config/env.js +105 -0
- package/dist/config/env.js.map +1 -0
- package/dist/config/github-home.d.ts +17 -0
- package/dist/config/github-home.d.ts.map +1 -0
- package/dist/config/github-home.js +29 -0
- package/dist/config/github-home.js.map +1 -0
- package/dist/config/home.d.ts +23 -0
- package/dist/config/home.d.ts.map +1 -0
- package/dist/config/home.js +65 -0
- package/dist/config/home.js.map +1 -0
- package/dist/config/hostnames.d.ts +3 -0
- package/dist/config/hostnames.d.ts.map +1 -0
- package/dist/config/hostnames.js +27 -0
- package/dist/config/hostnames.js.map +1 -0
- package/dist/config/kit-forks-home.d.ts +26 -0
- package/dist/config/kit-forks-home.d.ts.map +1 -0
- package/dist/config/kit-forks-home.js +44 -0
- package/dist/config/kit-forks-home.js.map +1 -0
- package/dist/config/schema.d.ts +2 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +2 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/config/secrets-key.d.ts +16 -0
- package/dist/config/secrets-key.d.ts.map +1 -0
- package/dist/config/secrets-key.js +34 -0
- package/dist/config/secrets-key.js.map +1 -0
- package/dist/config/store.d.ts +6 -0
- package/dist/config/store.d.ts.map +1 -0
- package/dist/config/store.js +102 -0
- package/dist/config/store.js.map +1 -0
- package/dist/fleet/agent-plan.d.ts +20 -0
- package/dist/fleet/agent-plan.d.ts.map +1 -0
- package/dist/fleet/agent-plan.js +61 -0
- package/dist/fleet/agent-plan.js.map +1 -0
- package/dist/fleet/approvals.d.ts +10 -0
- package/dist/fleet/approvals.d.ts.map +1 -0
- package/dist/fleet/approvals.js +33 -0
- package/dist/fleet/approvals.js.map +1 -0
- package/dist/fleet/drift-summary.d.ts +13 -0
- package/dist/fleet/drift-summary.d.ts.map +1 -0
- package/dist/fleet/drift-summary.js +120 -0
- package/dist/fleet/drift-summary.js.map +1 -0
- package/dist/fleet/summary.d.ts +9 -0
- package/dist/fleet/summary.d.ts.map +1 -0
- package/dist/fleet/summary.js +161 -0
- package/dist/fleet/summary.js.map +1 -0
- package/dist/fleet/types.d.ts +149 -0
- package/dist/fleet/types.d.ts.map +1 -0
- package/dist/fleet/types.js +12 -0
- package/dist/fleet/types.js.map +1 -0
- package/dist/github/client.d.ts +42 -0
- package/dist/github/client.d.ts.map +1 -0
- package/dist/github/client.js +174 -0
- package/dist/github/client.js.map +1 -0
- package/dist/github/token-store.d.ts +11 -0
- package/dist/github/token-store.d.ts.map +1 -0
- package/dist/github/token-store.js +74 -0
- package/dist/github/token-store.js.map +1 -0
- package/dist/github/types.d.ts +69 -0
- package/dist/github/types.d.ts.map +1 -0
- package/dist/github/types.js +8 -0
- package/dist/github/types.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/integrations/bridge.d.ts +43 -0
- package/dist/integrations/bridge.d.ts.map +1 -0
- package/dist/integrations/bridge.js +148 -0
- package/dist/integrations/bridge.js.map +1 -0
- package/dist/integrations/github-resolver.d.ts +31 -0
- package/dist/integrations/github-resolver.d.ts.map +1 -0
- package/dist/integrations/github-resolver.js +44 -0
- package/dist/integrations/github-resolver.js.map +1 -0
- package/dist/integrations/types.d.ts +46 -0
- package/dist/integrations/types.d.ts.map +1 -0
- package/dist/integrations/types.js +11 -0
- package/dist/integrations/types.js.map +1 -0
- package/dist/kits/catalog.d.ts +12 -0
- package/dist/kits/catalog.d.ts.map +1 -0
- package/dist/kits/catalog.js +93 -0
- package/dist/kits/catalog.js.map +1 -0
- package/dist/kits/contract.d.ts +153 -0
- package/dist/kits/contract.d.ts.map +1 -0
- package/dist/kits/contract.js +89 -0
- package/dist/kits/contract.js.map +1 -0
- package/dist/kits/core/adapter-core/contracts.d.ts +108 -0
- package/dist/kits/core/adapter-core/contracts.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/contracts.js +17 -0
- package/dist/kits/core/adapter-core/contracts.js.map +1 -0
- package/dist/kits/core/adapter-core/env-gate.d.ts +29 -0
- package/dist/kits/core/adapter-core/env-gate.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/env-gate.js +143 -0
- package/dist/kits/core/adapter-core/env-gate.js.map +1 -0
- package/dist/kits/core/adapter-core/fork-inspector.d.ts +42 -0
- package/dist/kits/core/adapter-core/fork-inspector.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/fork-inspector.js +141 -0
- package/dist/kits/core/adapter-core/fork-inspector.js.map +1 -0
- package/dist/kits/core/adapter-core/index.d.ts +20 -0
- package/dist/kits/core/adapter-core/index.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/index.js +13 -0
- package/dist/kits/core/adapter-core/index.js.map +1 -0
- package/dist/kits/core/adapter-core/output-contract.d.ts +25 -0
- package/dist/kits/core/adapter-core/output-contract.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/output-contract.js +114 -0
- package/dist/kits/core/adapter-core/output-contract.js.map +1 -0
- package/dist/kits/core/adapter-core/provider-adapter.d.ts +26 -0
- package/dist/kits/core/adapter-core/provider-adapter.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/provider-adapter.js +119 -0
- package/dist/kits/core/adapter-core/provider-adapter.js.map +1 -0
- package/dist/kits/core/adapter-core/runtime-surface.d.ts +25 -0
- package/dist/kits/core/adapter-core/runtime-surface.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/runtime-surface.js +100 -0
- package/dist/kits/core/adapter-core/runtime-surface.js.map +1 -0
- package/dist/kits/core/adapter-core/setup-validation.d.ts +28 -0
- package/dist/kits/core/adapter-core/setup-validation.d.ts.map +1 -0
- package/dist/kits/core/adapter-core/setup-validation.js +145 -0
- package/dist/kits/core/adapter-core/setup-validation.js.map +1 -0
- package/dist/kits/core/factory/index.d.ts +25 -0
- package/dist/kits/core/factory/index.d.ts.map +1 -0
- package/dist/kits/core/factory/index.js +21 -0
- package/dist/kits/core/factory/index.js.map +1 -0
- package/dist/kits/core/factory/operator-kit.d.ts +50 -0
- package/dist/kits/core/factory/operator-kit.d.ts.map +1 -0
- package/dist/kits/core/factory/operator-kit.js +88 -0
- package/dist/kits/core/factory/operator-kit.js.map +1 -0
- package/dist/kits/core/factory/ops-kit.d.ts +57 -0
- package/dist/kits/core/factory/ops-kit.d.ts.map +1 -0
- package/dist/kits/core/factory/ops-kit.js +115 -0
- package/dist/kits/core/factory/ops-kit.js.map +1 -0
- package/dist/kits/core/factory/studio-kit.d.ts +39 -0
- package/dist/kits/core/factory/studio-kit.d.ts.map +1 -0
- package/dist/kits/core/factory/studio-kit.js +96 -0
- package/dist/kits/core/factory/studio-kit.js.map +1 -0
- package/dist/kits/core/factory/workflow-kit.d.ts +57 -0
- package/dist/kits/core/factory/workflow-kit.d.ts.map +1 -0
- package/dist/kits/core/factory/workflow-kit.js +107 -0
- package/dist/kits/core/factory/workflow-kit.js.map +1 -0
- package/dist/kits/core/index.d.ts +25 -0
- package/dist/kits/core/index.d.ts.map +1 -0
- package/dist/kits/core/index.js +111 -0
- package/dist/kits/core/index.js.map +1 -0
- package/dist/kits/core/types/index.d.ts +65 -0
- package/dist/kits/core/types/index.d.ts.map +1 -0
- package/dist/kits/core/types/index.js +49 -0
- package/dist/kits/core/types/index.js.map +1 -0
- package/dist/kits/core/validation/index.d.ts +42 -0
- package/dist/kits/core/validation/index.d.ts.map +1 -0
- package/dist/kits/core/validation/index.js +128 -0
- package/dist/kits/core/validation/index.js.map +1 -0
- package/dist/kits/fork-policy.d.ts +78 -0
- package/dist/kits/fork-policy.d.ts.map +1 -0
- package/dist/kits/fork-policy.js +92 -0
- package/dist/kits/fork-policy.js.map +1 -0
- package/dist/kits/fork-registry.d.ts +54 -0
- package/dist/kits/fork-registry.d.ts.map +1 -0
- package/dist/kits/fork-registry.js +201 -0
- package/dist/kits/fork-registry.js.map +1 -0
- package/dist/kits/fork-remote.d.ts +52 -0
- package/dist/kits/fork-remote.d.ts.map +1 -0
- package/dist/kits/fork-remote.js +116 -0
- package/dist/kits/fork-remote.js.map +1 -0
- package/dist/kits/fork-sync-agent.d.ts +51 -0
- package/dist/kits/fork-sync-agent.d.ts.map +1 -0
- package/dist/kits/fork-sync-agent.js +435 -0
- package/dist/kits/fork-sync-agent.js.map +1 -0
- package/dist/kits/fork-sync.d.ts +32 -0
- package/dist/kits/fork-sync.d.ts.map +1 -0
- package/dist/kits/fork-sync.js +590 -0
- package/dist/kits/fork-sync.js.map +1 -0
- package/dist/kits/fork-trace.d.ts +29 -0
- package/dist/kits/fork-trace.d.ts.map +1 -0
- package/dist/kits/fork-trace.js +54 -0
- package/dist/kits/fork-trace.js.map +1 -0
- package/dist/kits/fork-types.d.ts +198 -0
- package/dist/kits/fork-types.d.ts.map +1 -0
- package/dist/kits/fork-types.js +16 -0
- package/dist/kits/fork-types.js.map +1 -0
- package/dist/kits/service.d.ts +63 -0
- package/dist/kits/service.d.ts.map +1 -0
- package/dist/kits/service.js +630 -0
- package/dist/kits/service.js.map +1 -0
- package/dist/prompts/database.d.ts +3 -0
- package/dist/prompts/database.d.ts.map +1 -0
- package/dist/prompts/database.js +144 -0
- package/dist/prompts/database.js.map +1 -0
- package/dist/prompts/llm.d.ts +3 -0
- package/dist/prompts/llm.d.ts.map +1 -0
- package/dist/prompts/llm.js +37 -0
- package/dist/prompts/llm.js.map +1 -0
- package/dist/prompts/logging.d.ts +3 -0
- package/dist/prompts/logging.d.ts.map +1 -0
- package/dist/prompts/logging.js +31 -0
- package/dist/prompts/logging.js.map +1 -0
- package/dist/prompts/secrets.d.ts +4 -0
- package/dist/prompts/secrets.d.ts.map +1 -0
- package/dist/prompts/secrets.js +85 -0
- package/dist/prompts/secrets.js.map +1 -0
- package/dist/prompts/server.d.ts +9 -0
- package/dist/prompts/server.d.ts.map +1 -0
- package/dist/prompts/server.js +154 -0
- package/dist/prompts/server.js.map +1 -0
- package/dist/prompts/storage.d.ts +4 -0
- package/dist/prompts/storage.d.ts.map +1 -0
- package/dist/prompts/storage.js +129 -0
- package/dist/prompts/storage.js.map +1 -0
- package/dist/runtime/agent-harness/auth-store.d.ts +8 -0
- package/dist/runtime/agent-harness/auth-store.d.ts.map +1 -0
- package/dist/runtime/agent-harness/auth-store.js +92 -0
- package/dist/runtime/agent-harness/auth-store.js.map +1 -0
- package/dist/runtime/artifact-contracts/index.d.ts +47 -0
- package/dist/runtime/artifact-contracts/index.d.ts.map +1 -0
- package/dist/runtime/artifact-contracts/index.js +153 -0
- package/dist/runtime/artifact-contracts/index.js.map +1 -0
- package/dist/runtime/artifact-contracts/types.d.ts +82 -0
- package/dist/runtime/artifact-contracts/types.d.ts.map +1 -0
- package/dist/runtime/artifact-contracts/types.js +16 -0
- package/dist/runtime/artifact-contracts/types.js.map +1 -0
- package/dist/runtime/cms-capability-registry/index.d.ts +30 -0
- package/dist/runtime/cms-capability-registry/index.d.ts.map +1 -0
- package/dist/runtime/cms-capability-registry/index.js +183 -0
- package/dist/runtime/cms-capability-registry/index.js.map +1 -0
- package/dist/runtime/cms-capability-registry/types.d.ts +109 -0
- package/dist/runtime/cms-capability-registry/types.d.ts.map +1 -0
- package/dist/runtime/cms-capability-registry/types.js +19 -0
- package/dist/runtime/cms-capability-registry/types.js.map +1 -0
- package/dist/runtime/cms-node-contracts/compile.d.ts +6 -0
- package/dist/runtime/cms-node-contracts/compile.d.ts.map +1 -0
- package/dist/runtime/cms-node-contracts/compile.js +57 -0
- package/dist/runtime/cms-node-contracts/compile.js.map +1 -0
- package/dist/runtime/cms-node-contracts/index.d.ts +6 -0
- package/dist/runtime/cms-node-contracts/index.d.ts.map +1 -0
- package/dist/runtime/cms-node-contracts/index.js +5 -0
- package/dist/runtime/cms-node-contracts/index.js.map +1 -0
- package/dist/runtime/cms-node-contracts/introspect.d.ts +5 -0
- package/dist/runtime/cms-node-contracts/introspect.d.ts.map +1 -0
- package/dist/runtime/cms-node-contracts/introspect.js +61 -0
- package/dist/runtime/cms-node-contracts/introspect.js.map +1 -0
- package/dist/runtime/cms-node-contracts/normalize.d.ts +5 -0
- package/dist/runtime/cms-node-contracts/normalize.d.ts.map +1 -0
- package/dist/runtime/cms-node-contracts/normalize.js +112 -0
- package/dist/runtime/cms-node-contracts/normalize.js.map +1 -0
- package/dist/runtime/cms-node-contracts/presenter.d.ts +9 -0
- package/dist/runtime/cms-node-contracts/presenter.d.ts.map +1 -0
- package/dist/runtime/cms-node-contracts/presenter.js +117 -0
- package/dist/runtime/cms-node-contracts/presenter.js.map +1 -0
- package/dist/runtime/cms-node-contracts/types.d.ts +76 -0
- package/dist/runtime/cms-node-contracts/types.d.ts.map +1 -0
- package/dist/runtime/cms-node-contracts/types.js +2 -0
- package/dist/runtime/cms-node-contracts/types.js.map +1 -0
- package/dist/runtime/dynamic-registry-pipeline/index.d.ts +41 -0
- package/dist/runtime/dynamic-registry-pipeline/index.d.ts.map +1 -0
- package/dist/runtime/dynamic-registry-pipeline/index.js +224 -0
- package/dist/runtime/dynamic-registry-pipeline/index.js.map +1 -0
- package/dist/runtime/dynamic-registry-pipeline/types.d.ts +61 -0
- package/dist/runtime/dynamic-registry-pipeline/types.d.ts.map +1 -0
- package/dist/runtime/dynamic-registry-pipeline/types.js +14 -0
- package/dist/runtime/dynamic-registry-pipeline/types.js.map +1 -0
- package/dist/runtime/hosted-execution-client/index.d.ts +45 -0
- package/dist/runtime/hosted-execution-client/index.d.ts.map +1 -0
- package/dist/runtime/hosted-execution-client/index.js +527 -0
- package/dist/runtime/hosted-execution-client/index.js.map +1 -0
- package/dist/runtime/hosted-execution-client/types.d.ts +125 -0
- package/dist/runtime/hosted-execution-client/types.d.ts.map +1 -0
- package/dist/runtime/hosted-execution-client/types.js +9 -0
- package/dist/runtime/hosted-execution-client/types.js.map +1 -0
- package/dist/runtime/index.d.ts +24 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +24 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/machine-capability-resolver/index.d.ts +32 -0
- package/dist/runtime/machine-capability-resolver/index.d.ts.map +1 -0
- package/dist/runtime/machine-capability-resolver/index.js +131 -0
- package/dist/runtime/machine-capability-resolver/index.js.map +1 -0
- package/dist/runtime/machine-capability-resolver/types.d.ts +46 -0
- package/dist/runtime/machine-capability-resolver/types.d.ts.map +1 -0
- package/dist/runtime/machine-capability-resolver/types.js +13 -0
- package/dist/runtime/machine-capability-resolver/types.js.map +1 -0
- package/dist/runtime/native-intelligence/contract.d.ts +174 -0
- package/dist/runtime/native-intelligence/contract.d.ts.map +1 -0
- package/dist/runtime/native-intelligence/contract.js +23 -0
- package/dist/runtime/native-intelligence/contract.js.map +1 -0
- package/dist/runtime/native-intelligence/index.d.ts +38 -0
- package/dist/runtime/native-intelligence/index.d.ts.map +1 -0
- package/dist/runtime/native-intelligence/index.js +121 -0
- package/dist/runtime/native-intelligence/index.js.map +1 -0
- package/dist/runtime/native-intelligence/normalizer.d.ts +22 -0
- package/dist/runtime/native-intelligence/normalizer.d.ts.map +1 -0
- package/dist/runtime/native-intelligence/normalizer.js +307 -0
- package/dist/runtime/native-intelligence/normalizer.js.map +1 -0
- package/dist/runtime/native-intelligence/planner.d.ts +22 -0
- package/dist/runtime/native-intelligence/planner.d.ts.map +1 -0
- package/dist/runtime/native-intelligence/planner.js +312 -0
- package/dist/runtime/native-intelligence/planner.js.map +1 -0
- package/dist/runtime/native-intelligence/provider.d.ts +27 -0
- package/dist/runtime/native-intelligence/provider.d.ts.map +1 -0
- package/dist/runtime/native-intelligence/provider.js +221 -0
- package/dist/runtime/native-intelligence/provider.js.map +1 -0
- package/dist/runtime/native-intelligence/recommender.d.ts +23 -0
- package/dist/runtime/native-intelligence/recommender.d.ts.map +1 -0
- package/dist/runtime/native-intelligence/recommender.js +299 -0
- package/dist/runtime/native-intelligence/recommender.js.map +1 -0
- package/dist/runtime/native-intelligence/summarizer.d.ts +22 -0
- package/dist/runtime/native-intelligence/summarizer.d.ts.map +1 -0
- package/dist/runtime/native-intelligence/summarizer.js +228 -0
- package/dist/runtime/native-intelligence/summarizer.js.map +1 -0
- package/dist/runtime/open-agents/contract.d.ts +58 -0
- package/dist/runtime/open-agents/contract.d.ts.map +1 -0
- package/dist/runtime/open-agents/contract.js +26 -0
- package/dist/runtime/open-agents/contract.js.map +1 -0
- package/dist/runtime/open-agents/index.d.ts +15 -0
- package/dist/runtime/open-agents/index.d.ts.map +1 -0
- package/dist/runtime/open-agents/index.js +72 -0
- package/dist/runtime/open-agents/index.js.map +1 -0
- package/dist/runtime/open-agents/provider.d.ts +32 -0
- package/dist/runtime/open-agents/provider.d.ts.map +1 -0
- package/dist/runtime/open-agents/provider.js +190 -0
- package/dist/runtime/open-agents/provider.js.map +1 -0
- package/dist/runtime/qwen-code/contract.d.ts +79 -0
- package/dist/runtime/qwen-code/contract.d.ts.map +1 -0
- package/dist/runtime/qwen-code/contract.js +40 -0
- package/dist/runtime/qwen-code/contract.js.map +1 -0
- package/dist/runtime/qwen-code/health.d.ts +11 -0
- package/dist/runtime/qwen-code/health.d.ts.map +1 -0
- package/dist/runtime/qwen-code/health.js +111 -0
- package/dist/runtime/qwen-code/health.js.map +1 -0
- package/dist/runtime/qwen-code/index.d.ts +26 -0
- package/dist/runtime/qwen-code/index.d.ts.map +1 -0
- package/dist/runtime/qwen-code/index.js +93 -0
- package/dist/runtime/qwen-code/index.js.map +1 -0
- package/dist/runtime/qwen-code/provider.d.ts +23 -0
- package/dist/runtime/qwen-code/provider.d.ts.map +1 -0
- package/dist/runtime/qwen-code/provider.js +134 -0
- package/dist/runtime/qwen-code/provider.js.map +1 -0
- package/dist/runtime/workflow-hygiene/index.d.ts +4 -0
- package/dist/runtime/workflow-hygiene/index.d.ts.map +1 -0
- package/dist/runtime/workflow-hygiene/index.js +3 -0
- package/dist/runtime/workflow-hygiene/index.js.map +1 -0
- package/dist/runtime/workflow-hygiene/labels.d.ts +4 -0
- package/dist/runtime/workflow-hygiene/labels.d.ts.map +1 -0
- package/dist/runtime/workflow-hygiene/labels.js +64 -0
- package/dist/runtime/workflow-hygiene/labels.js.map +1 -0
- package/dist/runtime/workflow-hygiene/summaries.d.ts +11 -0
- package/dist/runtime/workflow-hygiene/summaries.d.ts.map +1 -0
- package/dist/runtime/workflow-hygiene/summaries.js +17 -0
- package/dist/runtime/workflow-hygiene/summaries.js.map +1 -0
- package/dist/runtime/workflow-hygiene/types.d.ts +12 -0
- package/dist/runtime/workflow-hygiene/types.d.ts.map +1 -0
- package/dist/runtime/workflow-hygiene/types.js +2 -0
- package/dist/runtime/workflow-hygiene/types.js.map +1 -0
- package/dist/starter/init.d.ts +18 -0
- package/dist/starter/init.d.ts.map +1 -0
- package/dist/starter/init.js +108 -0
- package/dist/starter/init.js.map +1 -0
- package/dist/starter/source-import/agent.d.ts +60 -0
- package/dist/starter/source-import/agent.d.ts.map +1 -0
- package/dist/starter/source-import/agent.js +302 -0
- package/dist/starter/source-import/agent.js.map +1 -0
- package/dist/starter/source-import/detect.d.ts +20 -0
- package/dist/starter/source-import/detect.d.ts.map +1 -0
- package/dist/starter/source-import/detect.js +197 -0
- package/dist/starter/source-import/detect.js.map +1 -0
- package/dist/starter/source-import/github-source.d.ts +66 -0
- package/dist/starter/source-import/github-source.d.ts.map +1 -0
- package/dist/starter/source-import/github-source.js +233 -0
- package/dist/starter/source-import/github-source.js.map +1 -0
- package/dist/starter/source-import/index.d.ts +31 -0
- package/dist/starter/source-import/index.d.ts.map +1 -0
- package/dist/starter/source-import/index.js +31 -0
- package/dist/starter/source-import/index.js.map +1 -0
- package/dist/starter/source-import/materialize.d.ts +61 -0
- package/dist/starter/source-import/materialize.d.ts.map +1 -0
- package/dist/starter/source-import/materialize.js +260 -0
- package/dist/starter/source-import/materialize.js.map +1 -0
- package/dist/starter/source-import/plan.d.ts +39 -0
- package/dist/starter/source-import/plan.d.ts.map +1 -0
- package/dist/starter/source-import/plan.js +158 -0
- package/dist/starter/source-import/plan.js.map +1 -0
- package/dist/starter/source-import/security.d.ts +42 -0
- package/dist/starter/source-import/security.d.ts.map +1 -0
- package/dist/starter/source-import/security.js +323 -0
- package/dist/starter/source-import/security.js.map +1 -0
- package/dist/starter/source-import/skills-source.d.ts +28 -0
- package/dist/starter/source-import/skills-source.d.ts.map +1 -0
- package/dist/starter/source-import/skills-source.js +419 -0
- package/dist/starter/source-import/skills-source.js.map +1 -0
- package/dist/starter/source-import/summarize.d.ts +25 -0
- package/dist/starter/source-import/summarize.d.ts.map +1 -0
- package/dist/starter/source-import/summarize.js +107 -0
- package/dist/starter/source-import/summarize.js.map +1 -0
- package/dist/starter/source-import/types.d.ts +357 -0
- package/dist/starter/source-import/types.d.ts.map +1 -0
- package/dist/starter/source-import/types.js +28 -0
- package/dist/starter/source-import/types.js.map +1 -0
- package/dist/starter/types.d.ts +46 -0
- package/dist/starter/types.d.ts.map +1 -0
- package/dist/starter/types.js +11 -0
- package/dist/starter/types.js.map +1 -0
- package/dist/status/probes.d.ts +25 -0
- package/dist/status/probes.d.ts.map +1 -0
- package/dist/status/probes.js +297 -0
- package/dist/status/probes.js.map +1 -0
- package/dist/status/runner.d.ts +18 -0
- package/dist/status/runner.d.ts.map +1 -0
- package/dist/status/runner.js +185 -0
- package/dist/status/runner.js.map +1 -0
- package/dist/status/types.d.ts +60 -0
- package/dist/status/types.d.ts.map +1 -0
- package/dist/status/types.js +13 -0
- package/dist/status/types.js.map +1 -0
- package/dist/templates/catalog.d.ts +12 -0
- package/dist/templates/catalog.d.ts.map +1 -0
- package/dist/templates/catalog.js +226 -0
- package/dist/templates/catalog.js.map +1 -0
- package/dist/templates/contract.d.ts +62 -0
- package/dist/templates/contract.d.ts.map +1 -0
- package/dist/templates/contract.js +12 -0
- package/dist/templates/contract.js.map +1 -0
- package/dist/templates/index.d.ts +5 -0
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +2 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/templates/service.d.ts +19 -0
- package/dist/templates/service.d.ts.map +1 -0
- package/dist/templates/service.js +132 -0
- package/dist/templates/service.js.map +1 -0
- package/dist/utils/banner.d.ts +2 -0
- package/dist/utils/banner.d.ts.map +1 -0
- package/dist/utils/banner.js.map +1 -0
- package/dist/utils/net.d.ts +5 -0
- package/dist/utils/net.d.ts.map +1 -0
- package/dist/utils/net.js +19 -0
- package/dist/utils/net.js.map +1 -0
- package/dist/utils/path-resolver.d.ts +2 -0
- package/dist/utils/path-resolver.d.ts.map +1 -0
- package/dist/utils/path-resolver.js +22 -0
- package/dist/utils/path-resolver.js.map +1 -0
- package/dist/utils/progress.d.ts +24 -0
- package/dist/utils/progress.d.ts.map +1 -0
- package/dist/utils/progress.js +57 -0
- package/dist/utils/progress.js.map +1 -0
- package/dist/utils/table-renderer.d.ts +28 -0
- package/dist/utils/table-renderer.d.ts.map +1 -0
- package/dist/utils/table-renderer.js +83 -0
- package/dist/utils/table-renderer.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,403 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fork Adapter Core — Test Suite
|
|
3
|
+
*
|
|
4
|
+
* Covers:
|
|
5
|
+
* - Type taxonomy constants
|
|
6
|
+
* - Env gate runner (with and without .env file)
|
|
7
|
+
* - Setup validation
|
|
8
|
+
* - Fork inspector (fork present and absent)
|
|
9
|
+
* - Provider adapter contract validator
|
|
10
|
+
* - Runtime surface contract validator
|
|
11
|
+
* - Output contract validator
|
|
12
|
+
* - Studio kit factory
|
|
13
|
+
* - Full adapter validation runner
|
|
14
|
+
* - Open Higgsfield reference config
|
|
15
|
+
*/
|
|
16
|
+
import fs from "node:fs";
|
|
17
|
+
import os from "node:os";
|
|
18
|
+
import path from "node:path";
|
|
19
|
+
import { afterEach, beforeEach, describe, expect, it } from "vitest";
|
|
20
|
+
import {
|
|
21
|
+
// Types
|
|
22
|
+
KIT_FAMILIES, REQUIRED_PROVIDER_OPERATIONS, RUNTIME_SURFACE_TYPES, makeError, makeWarning, makeInfo,
|
|
23
|
+
// Env gate
|
|
24
|
+
parseEnvFile, runEnvGate,
|
|
25
|
+
// Setup validation
|
|
26
|
+
validateSetup, validateEnvExample,
|
|
27
|
+
// Fork inspector
|
|
28
|
+
inspectFork, assertForkFileExists,
|
|
29
|
+
// Provider adapter
|
|
30
|
+
validateProviderContract, buildMuapiProviderContract, buildProviderContract,
|
|
31
|
+
// Runtime surface
|
|
32
|
+
validateRuntimeSurfaceContract, buildStudioRuntimeSurfaceContract, formatSurfaceSelectionNote,
|
|
33
|
+
// Output contract
|
|
34
|
+
validateOutputContract, buildStudioOutputContract,
|
|
35
|
+
// Factory
|
|
36
|
+
createStudioKitConfig, STUDIO_KIT_DEFAULTS, createWorkflowKitConfig, createOperatorKitConfig, createOpsKitConfig,
|
|
37
|
+
// Validation runner
|
|
38
|
+
runAdapterValidation, formatAdapterValidationReport,
|
|
39
|
+
// Reference config
|
|
40
|
+
buildOpenHiggsfieldStudioConfig, } from "../kits/core/index.js";
|
|
41
|
+
// ---------------------------------------------------------------------------
|
|
42
|
+
// Test utilities
|
|
43
|
+
// ---------------------------------------------------------------------------
|
|
44
|
+
function makeTempDir(prefix) {
|
|
45
|
+
return fs.mkdtempSync(path.join(os.tmpdir(), prefix));
|
|
46
|
+
}
|
|
47
|
+
function writeFile(dir, relativePath, content) {
|
|
48
|
+
const fullPath = path.resolve(dir, relativePath);
|
|
49
|
+
fs.mkdirSync(path.dirname(fullPath), { recursive: true });
|
|
50
|
+
fs.writeFileSync(fullPath, content, "utf8");
|
|
51
|
+
return fullPath;
|
|
52
|
+
}
|
|
53
|
+
// ---------------------------------------------------------------------------
|
|
54
|
+
// Types
|
|
55
|
+
// ---------------------------------------------------------------------------
|
|
56
|
+
describe("core types", () => {
|
|
57
|
+
it("exports all four kit families", () => {
|
|
58
|
+
expect(KIT_FAMILIES).toEqual(["studio", "workflow", "operator", "ops"]);
|
|
59
|
+
});
|
|
60
|
+
it("exports all five required provider operations", () => {
|
|
61
|
+
expect(REQUIRED_PROVIDER_OPERATIONS).toHaveLength(5);
|
|
62
|
+
expect(REQUIRED_PROVIDER_OPERATIONS).toContain("UPLOAD_ASSET");
|
|
63
|
+
expect(REQUIRED_PROVIDER_OPERATIONS).toContain("SUBMIT_GENERATION");
|
|
64
|
+
expect(REQUIRED_PROVIDER_OPERATIONS).toContain("POLL_RESULT");
|
|
65
|
+
expect(REQUIRED_PROVIDER_OPERATIONS).toContain("NORMALIZE_RESULT");
|
|
66
|
+
expect(REQUIRED_PROVIDER_OPERATIONS).toContain("LIST_MODEL_CAPABILITIES");
|
|
67
|
+
});
|
|
68
|
+
it("exports all four runtime surface types", () => {
|
|
69
|
+
expect(RUNTIME_SURFACE_TYPES).toContain("local-fork");
|
|
70
|
+
expect(RUNTIME_SURFACE_TYPES).toContain("browser-hosted");
|
|
71
|
+
expect(RUNTIME_SURFACE_TYPES).toContain("desktop-app");
|
|
72
|
+
expect(RUNTIME_SURFACE_TYPES).toContain("custom");
|
|
73
|
+
});
|
|
74
|
+
it("issue builders produce correct severity", () => {
|
|
75
|
+
expect(makeError("CODE", "msg").severity).toBe("error");
|
|
76
|
+
expect(makeWarning("CODE", "msg").severity).toBe("warning");
|
|
77
|
+
expect(makeInfo("CODE", "msg").severity).toBe("info");
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
// ---------------------------------------------------------------------------
|
|
81
|
+
// Env gate
|
|
82
|
+
// ---------------------------------------------------------------------------
|
|
83
|
+
describe("env gate", () => {
|
|
84
|
+
let tmpDir;
|
|
85
|
+
beforeEach(() => { tmpDir = makeTempDir("env-gate-"); });
|
|
86
|
+
afterEach(() => { fs.rmSync(tmpDir, { recursive: true, force: true }); });
|
|
87
|
+
it("fails when .env is missing", () => {
|
|
88
|
+
const result = runEnvGate(tmpDir, { requiredEnvVars: ["MY_KEY"] });
|
|
89
|
+
expect(result.valid).toBe(false);
|
|
90
|
+
expect(result.envFileExists).toBe(false);
|
|
91
|
+
expect(result.issues.some((i) => i.code === "ENV_FILE_MISSING")).toBe(true);
|
|
92
|
+
});
|
|
93
|
+
it("passes when .env has all required vars", () => {
|
|
94
|
+
writeFile(tmpDir, ".env", "MY_KEY=abc123\n");
|
|
95
|
+
const result = runEnvGate(tmpDir, { requiredEnvVars: ["MY_KEY"] });
|
|
96
|
+
expect(result.valid).toBe(true);
|
|
97
|
+
expect(result.presentVars).toContain("MY_KEY");
|
|
98
|
+
});
|
|
99
|
+
it("fails when required var is missing from .env", () => {
|
|
100
|
+
writeFile(tmpDir, ".env", "OTHER_KEY=foo\n");
|
|
101
|
+
const result = runEnvGate(tmpDir, { requiredEnvVars: ["MY_KEY"] });
|
|
102
|
+
expect(result.valid).toBe(false);
|
|
103
|
+
expect(result.missingVars).toContain("MY_KEY");
|
|
104
|
+
});
|
|
105
|
+
it("fails when var is set to placeholder value", () => {
|
|
106
|
+
writeFile(tmpDir, ".env", "MY_KEY=your_muapi_key_here\n");
|
|
107
|
+
const result = runEnvGate(tmpDir, {
|
|
108
|
+
requiredEnvVars: ["MY_KEY"],
|
|
109
|
+
placeholderGuardedVars: [{ key: "MY_KEY", placeholder: "your_muapi_key_here" }],
|
|
110
|
+
});
|
|
111
|
+
expect(result.valid).toBe(false);
|
|
112
|
+
expect(result.placeholderVars).toContain("MY_KEY");
|
|
113
|
+
});
|
|
114
|
+
it("parseEnvFile ignores comments and blank lines", () => {
|
|
115
|
+
writeFile(tmpDir, ".env", "# comment\n\nKEY=value\n");
|
|
116
|
+
const vars = parseEnvFile(path.join(tmpDir, ".env"));
|
|
117
|
+
expect(vars["KEY"]).toBe("value");
|
|
118
|
+
expect(Object.keys(vars)).toHaveLength(1);
|
|
119
|
+
});
|
|
120
|
+
});
|
|
121
|
+
// ---------------------------------------------------------------------------
|
|
122
|
+
// Setup validation
|
|
123
|
+
// ---------------------------------------------------------------------------
|
|
124
|
+
describe("setup validation", () => {
|
|
125
|
+
let tmpDir;
|
|
126
|
+
beforeEach(() => { tmpDir = makeTempDir("setup-val-"); });
|
|
127
|
+
afterEach(() => { fs.rmSync(tmpDir, { recursive: true, force: true }); });
|
|
128
|
+
it("fails when QUICKSTART.md is missing", () => {
|
|
129
|
+
const result = validateSetup(tmpDir, {
|
|
130
|
+
quickstart: "QUICKSTART.md",
|
|
131
|
+
envExample: ".env.example",
|
|
132
|
+
setupDir: "setup/",
|
|
133
|
+
outputDir: "output/",
|
|
134
|
+
files: [],
|
|
135
|
+
});
|
|
136
|
+
expect(result.valid).toBe(false);
|
|
137
|
+
expect(result.quickstartExists).toBe(false);
|
|
138
|
+
});
|
|
139
|
+
it("passes when all required setup files exist", () => {
|
|
140
|
+
writeFile(tmpDir, "QUICKSTART.md", "# Quick Start\n\nStep 1: do the thing.\nStep 2: do the other thing.\n");
|
|
141
|
+
writeFile(tmpDir, ".env.example", "MY_KEY=placeholder\n");
|
|
142
|
+
writeFile(tmpDir, "output/README.md", "# Output\n");
|
|
143
|
+
const result = validateSetup(tmpDir, {
|
|
144
|
+
quickstart: "QUICKSTART.md",
|
|
145
|
+
envExample: ".env.example",
|
|
146
|
+
setupDir: "setup/",
|
|
147
|
+
outputDir: "output/",
|
|
148
|
+
files: [],
|
|
149
|
+
});
|
|
150
|
+
expect(result.valid).toBe(true);
|
|
151
|
+
expect(result.quickstartExists).toBe(true);
|
|
152
|
+
expect(result.envExampleExists).toBe(true);
|
|
153
|
+
});
|
|
154
|
+
it("validateEnvExample detects missing keys", () => {
|
|
155
|
+
writeFile(tmpDir, ".env.example", "ONLY_THIS_KEY=placeholder\n");
|
|
156
|
+
const result = validateEnvExample(tmpDir, ["ONLY_THIS_KEY", "MISSING_KEY"]);
|
|
157
|
+
expect(result.valid).toBe(false);
|
|
158
|
+
expect(result.issues.some((i) => i.code === "ENV_EXAMPLE_KEY_MISSING")).toBe(true);
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
// ---------------------------------------------------------------------------
|
|
162
|
+
// Fork inspector
|
|
163
|
+
// ---------------------------------------------------------------------------
|
|
164
|
+
describe("fork inspector", () => {
|
|
165
|
+
let tmpDir;
|
|
166
|
+
beforeEach(() => { tmpDir = makeTempDir("fork-inspect-"); });
|
|
167
|
+
afterEach(() => { fs.rmSync(tmpDir, { recursive: true, force: true }); });
|
|
168
|
+
it("returns assumption-based status when fork not found", () => {
|
|
169
|
+
const result = inspectFork({
|
|
170
|
+
upstreamRepoUrl: "https://github.com/example/repo",
|
|
171
|
+
defaultLocalPath: path.join(tmpDir, "nonexistent-fork"),
|
|
172
|
+
integrationDocPath: "docs/fork.md",
|
|
173
|
+
inspectionRules: { requiredPlanningFiles: ["src/models.js"], sourceOfTruthFiles: [] },
|
|
174
|
+
});
|
|
175
|
+
expect(result.forkFound).toBe(false);
|
|
176
|
+
expect(result.verificationStatus).toBe("assumption-based");
|
|
177
|
+
expect(result.valid).toBe(true); // non-blocking
|
|
178
|
+
});
|
|
179
|
+
it("returns fork-verified when all planning files present", () => {
|
|
180
|
+
writeFile(tmpDir, "src/models.js", "module.exports = {};\n");
|
|
181
|
+
const result = inspectFork({
|
|
182
|
+
upstreamRepoUrl: "https://github.com/example/repo",
|
|
183
|
+
defaultLocalPath: tmpDir,
|
|
184
|
+
integrationDocPath: "docs/fork.md",
|
|
185
|
+
inspectionRules: { requiredPlanningFiles: ["src/models.js"], sourceOfTruthFiles: [] },
|
|
186
|
+
}, { forkRootOverride: tmpDir });
|
|
187
|
+
expect(result.forkFound).toBe(true);
|
|
188
|
+
expect(result.verificationStatus).toBe("fork-verified");
|
|
189
|
+
expect(result.presentPlanningFiles).toContain("src/models.js");
|
|
190
|
+
});
|
|
191
|
+
it("assertForkFileExists returns correct result", () => {
|
|
192
|
+
writeFile(tmpDir, "models.js", "export default {};\n");
|
|
193
|
+
expect(assertForkFileExists(tmpDir, "models.js").exists).toBe(true);
|
|
194
|
+
expect(assertForkFileExists(tmpDir, "missing.js").exists).toBe(false);
|
|
195
|
+
});
|
|
196
|
+
});
|
|
197
|
+
// ---------------------------------------------------------------------------
|
|
198
|
+
// Provider adapter
|
|
199
|
+
// ---------------------------------------------------------------------------
|
|
200
|
+
describe("provider adapter", () => {
|
|
201
|
+
let tmpDir;
|
|
202
|
+
beforeEach(() => { tmpDir = makeTempDir("provider-"); });
|
|
203
|
+
afterEach(() => { fs.rmSync(tmpDir, { recursive: true, force: true }); });
|
|
204
|
+
it("validates a complete Muapi contract", () => {
|
|
205
|
+
writeFile(tmpDir, "docs/provider-adapter-layer.md", "# Provider Adapter\n");
|
|
206
|
+
const contract = buildMuapiProviderContract();
|
|
207
|
+
const result = validateProviderContract(tmpDir, contract);
|
|
208
|
+
expect(result.valid).toBe(true);
|
|
209
|
+
expect(result.missingRequiredOperations).toHaveLength(0);
|
|
210
|
+
expect(result.referenceDocPresent).toBe(true);
|
|
211
|
+
});
|
|
212
|
+
it("fails when required operations are missing", () => {
|
|
213
|
+
const contract = buildProviderContract("myapi", "My API", "https://api.example.com", "x-api-key", "docs/adapter.md");
|
|
214
|
+
// Strip operations to simulate incomplete declaration
|
|
215
|
+
const incomplete = { ...contract, operations: [] };
|
|
216
|
+
const result = validateProviderContract(tmpDir, incomplete);
|
|
217
|
+
expect(result.valid).toBe(false);
|
|
218
|
+
expect(result.missingRequiredOperations.length).toBeGreaterThan(0);
|
|
219
|
+
});
|
|
220
|
+
it("buildMuapiProviderContract produces correct defaults", () => {
|
|
221
|
+
const contract = buildMuapiProviderContract();
|
|
222
|
+
expect(contract.providerId).toBe("muapi");
|
|
223
|
+
expect(contract.authField).toBe("x-api-key");
|
|
224
|
+
expect(contract.baseUrl).toBe("https://api.muapi.io");
|
|
225
|
+
});
|
|
226
|
+
});
|
|
227
|
+
// ---------------------------------------------------------------------------
|
|
228
|
+
// Runtime surface
|
|
229
|
+
// ---------------------------------------------------------------------------
|
|
230
|
+
describe("runtime surface", () => {
|
|
231
|
+
it("validates a well-formed studio surface contract", () => {
|
|
232
|
+
const contract = buildStudioRuntimeSurfaceContract();
|
|
233
|
+
const result = validateRuntimeSurfaceContract(contract);
|
|
234
|
+
expect(result.valid).toBe(true);
|
|
235
|
+
expect(result.supportedSurfaces).toContain("local-fork");
|
|
236
|
+
expect(result.supportedSurfaces).toContain("browser-hosted");
|
|
237
|
+
});
|
|
238
|
+
it("fails when no surfaces are declared", () => {
|
|
239
|
+
const result = validateRuntimeSurfaceContract({
|
|
240
|
+
supportedSurfaces: [],
|
|
241
|
+
defaultSurface: "local-fork",
|
|
242
|
+
surfaceProbes: { "local-fork": null, "browser-hosted": null, "desktop-app": null, "custom": null },
|
|
243
|
+
});
|
|
244
|
+
expect(result.valid).toBe(false);
|
|
245
|
+
});
|
|
246
|
+
it("fails when defaultSurface is not in supportedSurfaces", () => {
|
|
247
|
+
const result = validateRuntimeSurfaceContract({
|
|
248
|
+
supportedSurfaces: ["browser-hosted"],
|
|
249
|
+
defaultSurface: "local-fork",
|
|
250
|
+
surfaceProbes: { "local-fork": null, "browser-hosted": null, "desktop-app": null, "custom": null },
|
|
251
|
+
});
|
|
252
|
+
expect(result.valid).toBe(false);
|
|
253
|
+
expect(result.issues.some((i) => i.code === "DEFAULT_SURFACE_NOT_SUPPORTED")).toBe(true);
|
|
254
|
+
});
|
|
255
|
+
it("formatSurfaceSelectionNote returns a string for all surface types", () => {
|
|
256
|
+
for (const surface of RUNTIME_SURFACE_TYPES) {
|
|
257
|
+
const note = formatSurfaceSelectionNote(surface);
|
|
258
|
+
expect(typeof note).toBe("string");
|
|
259
|
+
expect(note.length).toBeGreaterThan(0);
|
|
260
|
+
}
|
|
261
|
+
});
|
|
262
|
+
});
|
|
263
|
+
// ---------------------------------------------------------------------------
|
|
264
|
+
// Output contract
|
|
265
|
+
// ---------------------------------------------------------------------------
|
|
266
|
+
describe("output contract", () => {
|
|
267
|
+
let tmpDir;
|
|
268
|
+
beforeEach(() => { tmpDir = makeTempDir("output-contract-"); });
|
|
269
|
+
afterEach(() => { fs.rmSync(tmpDir, { recursive: true, force: true }); });
|
|
270
|
+
it("validates the studio output contract", () => {
|
|
271
|
+
writeFile(tmpDir, "output-standards.md", "# Output Standards\n");
|
|
272
|
+
const contract = buildStudioOutputContract();
|
|
273
|
+
const result = validateOutputContract(tmpDir, contract);
|
|
274
|
+
expect(result.valid).toBe(true);
|
|
275
|
+
expect(result.artifactCount).toBe(9);
|
|
276
|
+
expect(result.duplicateArtifactNames).toHaveLength(0);
|
|
277
|
+
});
|
|
278
|
+
it("fails on duplicate artifact names", () => {
|
|
279
|
+
const result = validateOutputContract(tmpDir, {
|
|
280
|
+
outputRootPattern: "output/<client-slug>/<project-slug>/",
|
|
281
|
+
requiresDeliverableLog: true,
|
|
282
|
+
outputStandardsDocPath: "output-standards.md",
|
|
283
|
+
artifacts: [
|
|
284
|
+
{ name: "Dupe", relativePath: "a.md", required: true, description: "First" },
|
|
285
|
+
{ name: "Dupe", relativePath: "b.md", required: true, description: "Second" },
|
|
286
|
+
],
|
|
287
|
+
});
|
|
288
|
+
expect(result.valid).toBe(false);
|
|
289
|
+
expect(result.duplicateArtifactNames).toContain("Dupe");
|
|
290
|
+
});
|
|
291
|
+
});
|
|
292
|
+
// ---------------------------------------------------------------------------
|
|
293
|
+
// Studio kit factory
|
|
294
|
+
// ---------------------------------------------------------------------------
|
|
295
|
+
describe("studio kit factory", () => {
|
|
296
|
+
it("createStudioKitConfig produces a valid config", () => {
|
|
297
|
+
const config = createStudioKitConfig({
|
|
298
|
+
kitId: "test-studio-v1",
|
|
299
|
+
});
|
|
300
|
+
expect(config.family).toBe("studio");
|
|
301
|
+
expect(config.kitId).toBe("test-studio-v1");
|
|
302
|
+
expect(config.provider.providerId).toBe("muapi");
|
|
303
|
+
expect(config.envGate.requiredEnvVars).toContain("MUAPI_API_KEY");
|
|
304
|
+
expect(config.runtimeSurface.supportedSurfaces).toContain("local-fork");
|
|
305
|
+
expect(config.output.artifacts).toHaveLength(9);
|
|
306
|
+
});
|
|
307
|
+
it("STUDIO_KIT_DEFAULTS are correct", () => {
|
|
308
|
+
expect(STUDIO_KIT_DEFAULTS.defaultDevPort).toBe(3001);
|
|
309
|
+
expect(STUDIO_KIT_DEFAULTS.apiKeyEnvVar).toBe("MUAPI_API_KEY");
|
|
310
|
+
expect(STUDIO_KIT_DEFAULTS.providerId).toBe("muapi");
|
|
311
|
+
});
|
|
312
|
+
});
|
|
313
|
+
// ---------------------------------------------------------------------------
|
|
314
|
+
// All four kit family factories
|
|
315
|
+
// ---------------------------------------------------------------------------
|
|
316
|
+
describe("kit family factories", () => {
|
|
317
|
+
it("createWorkflowKitConfig sets family correctly", () => {
|
|
318
|
+
const config = createWorkflowKitConfig({
|
|
319
|
+
kitId: "test-workflow-v1",
|
|
320
|
+
apiKeyEnvVar: "MY_KEY",
|
|
321
|
+
providerId: "myapi",
|
|
322
|
+
providerName: "My API",
|
|
323
|
+
providerBaseUrl: "https://api.example.com",
|
|
324
|
+
});
|
|
325
|
+
expect(config.family).toBe("workflow");
|
|
326
|
+
expect(config.kitId).toBe("test-workflow-v1");
|
|
327
|
+
});
|
|
328
|
+
it("createOperatorKitConfig sets family correctly", () => {
|
|
329
|
+
const config = createOperatorKitConfig({
|
|
330
|
+
kitId: "test-operator-v1",
|
|
331
|
+
vertical: "email",
|
|
332
|
+
apiKeyEnvVar: "EMAIL_KEY",
|
|
333
|
+
providerId: "emailapi",
|
|
334
|
+
providerName: "Email API",
|
|
335
|
+
providerBaseUrl: "https://email.example.com",
|
|
336
|
+
});
|
|
337
|
+
expect(config.family).toBe("operator");
|
|
338
|
+
expect(config.runtimeSurface.defaultSurface).toBe("browser-hosted");
|
|
339
|
+
});
|
|
340
|
+
it("createOpsKitConfig sets family correctly with no provider", () => {
|
|
341
|
+
const config = createOpsKitConfig({
|
|
342
|
+
kitId: "test-ops-v1",
|
|
343
|
+
domain: "ci-pipeline",
|
|
344
|
+
});
|
|
345
|
+
expect(config.family).toBe("ops");
|
|
346
|
+
expect(config.provider.providerId).toBe("none");
|
|
347
|
+
expect(config.runtimeSurface.defaultSurface).toBe("local-fork");
|
|
348
|
+
});
|
|
349
|
+
});
|
|
350
|
+
// ---------------------------------------------------------------------------
|
|
351
|
+
// Full validation runner
|
|
352
|
+
// ---------------------------------------------------------------------------
|
|
353
|
+
describe("adapter validation runner", () => {
|
|
354
|
+
let tmpDir;
|
|
355
|
+
beforeEach(() => { tmpDir = makeTempDir("adapter-val-"); });
|
|
356
|
+
afterEach(() => { fs.rmSync(tmpDir, { recursive: true, force: true }); });
|
|
357
|
+
it("produces a report with correct structure", () => {
|
|
358
|
+
const config = buildOpenHiggsfieldStudioConfig();
|
|
359
|
+
const report = runAdapterValidation(tmpDir, config, {
|
|
360
|
+
skipEnvGate: true,
|
|
361
|
+
skipForkInspection: true,
|
|
362
|
+
});
|
|
363
|
+
expect(report.kitId).toBe("growthub-open-higgsfield-studio-v1");
|
|
364
|
+
expect(report.family).toBe("studio");
|
|
365
|
+
expect(Array.isArray(report.sections)).toBe(true);
|
|
366
|
+
expect(typeof report.totalErrors).toBe("number");
|
|
367
|
+
});
|
|
368
|
+
it("formatAdapterValidationReport returns a non-empty string", () => {
|
|
369
|
+
const config = buildOpenHiggsfieldStudioConfig();
|
|
370
|
+
const report = runAdapterValidation(tmpDir, config, {
|
|
371
|
+
skipEnvGate: true,
|
|
372
|
+
skipForkInspection: true,
|
|
373
|
+
});
|
|
374
|
+
const formatted = formatAdapterValidationReport(report);
|
|
375
|
+
expect(typeof formatted).toBe("string");
|
|
376
|
+
expect(formatted.length).toBeGreaterThan(0);
|
|
377
|
+
expect(formatted).toContain("growthub-open-higgsfield-studio-v1");
|
|
378
|
+
});
|
|
379
|
+
});
|
|
380
|
+
// ---------------------------------------------------------------------------
|
|
381
|
+
// Reference config
|
|
382
|
+
// ---------------------------------------------------------------------------
|
|
383
|
+
describe("Open Higgsfield reference config", () => {
|
|
384
|
+
it("buildOpenHiggsfieldStudioConfig produces correct kitId and family", () => {
|
|
385
|
+
const config = buildOpenHiggsfieldStudioConfig();
|
|
386
|
+
expect(config.kitId).toBe("growthub-open-higgsfield-studio-v1");
|
|
387
|
+
expect(config.family).toBe("studio");
|
|
388
|
+
expect(config.forkInspection.upstreamRepoUrl).toBe("https://github.com/Anil-matcha/Open-Higgsfield-AI");
|
|
389
|
+
expect(config.forkInspection.defaultLocalPath).toBe("~/open-higgsfield-ai");
|
|
390
|
+
});
|
|
391
|
+
it("reference config declares all 9 studio output artifacts", () => {
|
|
392
|
+
const config = buildOpenHiggsfieldStudioConfig();
|
|
393
|
+
expect(config.output.artifacts).toHaveLength(9);
|
|
394
|
+
const names = config.output.artifacts.map((a) => a.name);
|
|
395
|
+
expect(names).toContain("VisualCampaignBrief");
|
|
396
|
+
expect(names).toContain("PlatformReadyExecutionHandoff");
|
|
397
|
+
});
|
|
398
|
+
it("reference config requires deliverable log", () => {
|
|
399
|
+
const config = buildOpenHiggsfieldStudioConfig();
|
|
400
|
+
expect(config.output.requiresDeliverableLog).toBe(true);
|
|
401
|
+
});
|
|
402
|
+
});
|
|
403
|
+
//# sourceMappingURL=kit-core.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kit-core.test.js","sourceRoot":"","sources":["../../src/__tests__/kit-core.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAErE,OAAO;AACL,QAAQ;AACR,YAAY,EACZ,4BAA4B,EAC5B,qBAAqB,EACrB,SAAS,EACT,WAAW,EACX,QAAQ;AACR,WAAW;AACX,YAAY,EACZ,UAAU;AACV,mBAAmB;AACnB,aAAa,EACb,kBAAkB;AAClB,iBAAiB;AACjB,WAAW,EACX,oBAAoB;AACpB,mBAAmB;AACnB,wBAAwB,EACxB,0BAA0B,EAC1B,qBAAqB;AACrB,kBAAkB;AAClB,8BAA8B,EAC9B,iCAAiC,EACjC,0BAA0B;AAC1B,kBAAkB;AAClB,sBAAsB,EACtB,yBAAyB;AACzB,UAAU;AACV,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,kBAAkB;AAClB,oBAAoB;AACpB,oBAAoB,EACpB,6BAA6B;AAC7B,mBAAmB;AACnB,+BAA+B,GAChC,MAAM,uBAAuB,CAAC;AAE/B,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,SAAS,WAAW,CAAC,MAAc;IACjC,OAAO,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,SAAS,CAAC,GAAW,EAAE,YAAoB,EAAE,OAAe;IACnE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IACjD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC5C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,CAAC,4BAA4B,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC/D,MAAM,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QACpE,MAAM,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC9D,MAAM,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACnE,MAAM,CAAC,4BAA4B,CAAC,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC1D,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACvD,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,IAAI,MAAc,CAAC;IAEnB,UAAU,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,eAAe,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,8BAA8B,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE;YAChC,eAAe,EAAE,CAAC,QAAQ,CAAC;YAC3B,sBAAsB,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE,CAAC;SAChF,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,0BAA0B,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,IAAI,MAAc,CAAC;IAEnB,UAAU,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE;YACnC,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,cAAc;YAC1B,QAAQ,EAAE,QAAQ;YAClB,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,EAAE;SACV,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,uEAAuE,CAAC,CAAC;QAC5G,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,sBAAsB,CAAC,CAAC;QAC1D,SAAS,CAAC,MAAM,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,EAAE;YACnC,UAAU,EAAE,eAAe;YAC3B,UAAU,EAAE,cAAc;YAC1B,QAAQ,EAAE,QAAQ;YAClB,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,EAAE;SACV,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,6BAA6B,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAI,MAAc,CAAC;IAEnB,UAAU,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,MAAM,GAAG,WAAW,CAAC;YACzB,eAAe,EAAE,iCAAiC;YAClD,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,kBAAkB,CAAC;YACvD,kBAAkB,EAAE,cAAc;YAClC,eAAe,EAAE,EAAE,qBAAqB,EAAE,CAAC,eAAe,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;SACtF,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,wBAAwB,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,WAAW,CACxB;YACE,eAAe,EAAE,iCAAiC;YAClD,gBAAgB,EAAE,MAAM;YACxB,kBAAkB,EAAE,cAAc;YAClC,eAAe,EAAE,EAAE,qBAAqB,EAAE,CAAC,eAAe,CAAC,EAAE,kBAAkB,EAAE,EAAE,EAAE;SACtF,EACD,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAC7B,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;QACvD,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpE,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,IAAI,MAAc,CAAC;IAEnB,UAAU,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,SAAS,CAAC,MAAM,EAAE,gCAAgC,EAAE,sBAAsB,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,0BAA0B,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,EAAE,QAAQ,EAAE,yBAAyB,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACrH,sDAAsD;QACtD,MAAM,UAAU,GAAG,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,EAAS,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,wBAAwB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC5D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC9D,MAAM,QAAQ,GAAG,0BAA0B,EAAE,CAAC;QAC9C,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,QAAQ,GAAG,iCAAiC,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,8BAA8B,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,MAAM,GAAG,8BAA8B,CAAC;YAC5C,iBAAiB,EAAE,EAAE;YACrB,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;SACnG,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,MAAM,GAAG,8BAA8B,CAAC;YAC5C,iBAAiB,EAAE,CAAC,gBAAgB,CAAC;YACrC,cAAc,EAAE,YAAY;YAC5B,aAAa,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;SACnG,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,+BAA+B,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;YACjD,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,MAAc,CAAC;IAEnB,UAAU,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,SAAS,CAAC,MAAM,EAAE,qBAAqB,EAAE,sBAAsB,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,yBAAyB,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,EAAE;YAC5C,iBAAiB,EAAE,sCAAsC;YACzD,sBAAsB,EAAE,IAAI;YAC5B,sBAAsB,EAAE,qBAAqB;YAC7C,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC5E,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE;aAC9E;SACF,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,MAAM,GAAG,qBAAqB,CAAC;YACnC,KAAK,EAAE,gBAAgB;SACxB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;QAClE,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QACxE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC/D,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,gCAAgC;AAChC,8EAA8E;AAE9E,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,MAAM,GAAG,uBAAuB,CAAC;YACrC,KAAK,EAAE,kBAAkB;YACzB,YAAY,EAAE,QAAQ;YACtB,UAAU,EAAE,OAAO;YACnB,YAAY,EAAE,QAAQ;YACtB,eAAe,EAAE,yBAAyB;SAC3C,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,MAAM,GAAG,uBAAuB,CAAC;YACrC,KAAK,EAAE,kBAAkB;YACzB,QAAQ,EAAE,OAAO;YACjB,YAAY,EAAE,WAAW;YACzB,UAAU,EAAE,UAAU;YACtB,YAAY,EAAE,WAAW;YACzB,eAAe,EAAE,2BAA2B;SAC7C,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,MAAM,GAAG,kBAAkB,CAAC;YAChC,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,yBAAyB;AACzB,8EAA8E;AAE9E,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,IAAI,MAAc,CAAC;IAEnB,UAAU,CAAC,GAAG,EAAE,GAAG,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,MAAM,GAAG,+BAA+B,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE;YAClD,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,IAAI;SACzB,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;QAClE,MAAM,MAAM,GAAG,+BAA+B,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE;YAClD,WAAW,EAAE,IAAI;YACjB,kBAAkB,EAAE,IAAI;SACzB,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,6BAA6B,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,oCAAoC,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,MAAM,GAAG,+BAA+B,EAAE,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QACxG,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC9E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACjE,MAAM,MAAM,GAAG,+BAA+B,EAAE,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzD,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,MAAM,GAAG,+BAA+B,EAAE,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Kit Fork Command — CLI Registration Tests
|
|
3
|
+
*
|
|
4
|
+
* Covers:
|
|
5
|
+
* - Commander subcommand registration (fork subcommands under kit)
|
|
6
|
+
* - Top-level fork-sync alias registration
|
|
7
|
+
* - runKitForkHub export shape
|
|
8
|
+
* - registerKitForkSubcommands registered by registerKitCommands
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=kit-fork-command.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kit-fork-command.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/kit-fork-command.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Kit Fork Command — CLI Registration Tests
|
|
3
|
+
*
|
|
4
|
+
* Covers:
|
|
5
|
+
* - Commander subcommand registration (fork subcommands under kit)
|
|
6
|
+
* - Top-level fork-sync alias registration
|
|
7
|
+
* - runKitForkHub export shape
|
|
8
|
+
* - registerKitForkSubcommands registered by registerKitCommands
|
|
9
|
+
*/
|
|
10
|
+
import { describe, expect, it, vi } from "vitest";
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
// Mocks (must be declared before import)
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
vi.mock("@clack/prompts", () => ({
|
|
15
|
+
select: vi.fn(),
|
|
16
|
+
confirm: vi.fn(),
|
|
17
|
+
text: vi.fn(),
|
|
18
|
+
intro: vi.fn(),
|
|
19
|
+
outro: vi.fn(),
|
|
20
|
+
cancel: vi.fn(),
|
|
21
|
+
note: vi.fn(),
|
|
22
|
+
spinner: vi.fn(() => ({ start: vi.fn(), stop: vi.fn(), message: vi.fn() })),
|
|
23
|
+
log: { error: vi.fn(), info: vi.fn() },
|
|
24
|
+
isCancel: () => false,
|
|
25
|
+
}));
|
|
26
|
+
vi.mock("../utils/banner.js", () => ({ printPaperclipCliBanner: vi.fn() }));
|
|
27
|
+
vi.mock("../kits/service.js", () => ({
|
|
28
|
+
listBundledKits: vi.fn(() => []),
|
|
29
|
+
inspectBundledKit: vi.fn(),
|
|
30
|
+
downloadBundledKit: vi.fn(),
|
|
31
|
+
validateKitDirectory: vi.fn(),
|
|
32
|
+
resolveKitPath: vi.fn(),
|
|
33
|
+
fuzzyResolveKitId: vi.fn((id) => id),
|
|
34
|
+
}));
|
|
35
|
+
vi.mock("../kits/fork-registry.js", () => ({
|
|
36
|
+
registerKitFork: vi.fn(),
|
|
37
|
+
loadKitForkRegistration: vi.fn(() => null),
|
|
38
|
+
listKitForkRegistrations: vi.fn(() => []),
|
|
39
|
+
updateKitForkRegistration: vi.fn(),
|
|
40
|
+
deregisterKitFork: vi.fn(() => true),
|
|
41
|
+
resolveKitForksRoot: vi.fn(() => "/tmp/test-forks"),
|
|
42
|
+
}));
|
|
43
|
+
vi.mock("../kits/fork-sync.js", () => ({
|
|
44
|
+
detectKitForkDrift: vi.fn(),
|
|
45
|
+
buildKitForkHealPlan: vi.fn(),
|
|
46
|
+
applyKitForkHealPlan: vi.fn(),
|
|
47
|
+
}));
|
|
48
|
+
vi.mock("../kits/fork-sync-agent.js", () => ({
|
|
49
|
+
runKitForkSyncJob: vi.fn(),
|
|
50
|
+
dispatchKitForkSyncJobBackground: vi.fn(() => "kfj-test-job-id"),
|
|
51
|
+
getKitForkSyncJob: vi.fn(() => null),
|
|
52
|
+
listKitForkSyncJobs: vi.fn(() => []),
|
|
53
|
+
cancelKitForkSyncJob: vi.fn(() => false),
|
|
54
|
+
pruneKitForkSyncJobs: vi.fn(() => 0),
|
|
55
|
+
}));
|
|
56
|
+
// ---------------------------------------------------------------------------
|
|
57
|
+
// Tests
|
|
58
|
+
// ---------------------------------------------------------------------------
|
|
59
|
+
describe("kit-fork.ts exports", () => {
|
|
60
|
+
it("exports registerKitForkCommands and runKitForkHub", async () => {
|
|
61
|
+
const mod = await import("../commands/kit-fork.js");
|
|
62
|
+
expect(typeof mod.registerKitForkCommands).toBe("function");
|
|
63
|
+
expect(typeof mod.runKitForkHub).toBe("function");
|
|
64
|
+
expect(typeof mod.registerKitForkSubcommands).toBe("function");
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
describe("registerKitForkCommands — top-level fork-sync alias", () => {
|
|
68
|
+
it("registers fork-sync command with all expected subcommands", async () => {
|
|
69
|
+
const { Command } = await import("commander");
|
|
70
|
+
const { registerKitForkCommands } = await import("../commands/kit-fork.js");
|
|
71
|
+
const program = new Command();
|
|
72
|
+
program.exitOverride();
|
|
73
|
+
registerKitForkCommands(program);
|
|
74
|
+
const forkSync = program.commands.find((c) => c.name() === "fork-sync");
|
|
75
|
+
expect(forkSync).toBeDefined();
|
|
76
|
+
const subNames = forkSync.commands.map((c) => c.name());
|
|
77
|
+
expect(subNames).toContain("register");
|
|
78
|
+
expect(subNames).toContain("list");
|
|
79
|
+
expect(subNames).toContain("status");
|
|
80
|
+
expect(subNames).toContain("heal");
|
|
81
|
+
expect(subNames).toContain("jobs");
|
|
82
|
+
expect(subNames).toContain("deregister");
|
|
83
|
+
});
|
|
84
|
+
it("fork-sync has a default action (interactive hub)", async () => {
|
|
85
|
+
const { Command } = await import("commander");
|
|
86
|
+
const { registerKitForkCommands } = await import("../commands/kit-fork.js");
|
|
87
|
+
const program = new Command();
|
|
88
|
+
program.exitOverride();
|
|
89
|
+
registerKitForkCommands(program);
|
|
90
|
+
const forkSync = program.commands.find((c) => c.name() === "fork-sync");
|
|
91
|
+
expect(forkSync).toBeDefined();
|
|
92
|
+
// Commander stores the action — it will not be null
|
|
93
|
+
expect(forkSync._actionHandler).not.toBeNull();
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
describe("registerKitForkSubcommands — kit fork sub-tree", () => {
|
|
97
|
+
it("adds fork subcommand with all expected sub-subcommands under a kit Command", async () => {
|
|
98
|
+
const { Command } = await import("commander");
|
|
99
|
+
const { registerKitForkSubcommands } = await import("../commands/kit-fork.js");
|
|
100
|
+
const kitCmd = new Command("kit");
|
|
101
|
+
kitCmd.exitOverride();
|
|
102
|
+
registerKitForkSubcommands(kitCmd);
|
|
103
|
+
const forkCmd = kitCmd.commands.find((c) => c.name() === "fork");
|
|
104
|
+
expect(forkCmd).toBeDefined();
|
|
105
|
+
const subNames = forkCmd.commands.map((c) => c.name());
|
|
106
|
+
expect(subNames).toContain("register");
|
|
107
|
+
expect(subNames).toContain("list");
|
|
108
|
+
expect(subNames).toContain("status");
|
|
109
|
+
expect(subNames).toContain("heal");
|
|
110
|
+
expect(subNames).toContain("jobs");
|
|
111
|
+
expect(subNames).toContain("deregister");
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
describe("registerKitCommands — wires fork subcommands into kit tree", () => {
|
|
115
|
+
it("kit command has a fork subcommand after registerKitCommands", async () => {
|
|
116
|
+
// Reset module cache for kit.ts since it imports from kit-fork.ts
|
|
117
|
+
vi.resetModules();
|
|
118
|
+
// Re-apply mocks after reset
|
|
119
|
+
vi.mock("@clack/prompts", () => ({
|
|
120
|
+
select: vi.fn(),
|
|
121
|
+
confirm: vi.fn(),
|
|
122
|
+
text: vi.fn(),
|
|
123
|
+
intro: vi.fn(),
|
|
124
|
+
outro: vi.fn(),
|
|
125
|
+
cancel: vi.fn(),
|
|
126
|
+
note: vi.fn(),
|
|
127
|
+
spinner: vi.fn(() => ({ start: vi.fn(), stop: vi.fn(), message: vi.fn() })),
|
|
128
|
+
log: { error: vi.fn(), info: vi.fn() },
|
|
129
|
+
isCancel: () => false,
|
|
130
|
+
}));
|
|
131
|
+
vi.mock("../utils/banner.js", () => ({ printPaperclipCliBanner: vi.fn() }));
|
|
132
|
+
vi.mock("../kits/service.js", () => ({
|
|
133
|
+
listBundledKits: vi.fn(() => []),
|
|
134
|
+
inspectBundledKit: vi.fn(),
|
|
135
|
+
downloadBundledKit: vi.fn(),
|
|
136
|
+
validateKitDirectory: vi.fn(),
|
|
137
|
+
resolveKitPath: vi.fn(),
|
|
138
|
+
fuzzyResolveKitId: vi.fn((id) => id),
|
|
139
|
+
}));
|
|
140
|
+
vi.mock("../kits/fork-registry.js", () => ({
|
|
141
|
+
registerKitFork: vi.fn(),
|
|
142
|
+
loadKitForkRegistration: vi.fn(() => null),
|
|
143
|
+
listKitForkRegistrations: vi.fn(() => []),
|
|
144
|
+
updateKitForkRegistration: vi.fn(),
|
|
145
|
+
deregisterKitFork: vi.fn(() => true),
|
|
146
|
+
resolveKitForksRoot: vi.fn(() => "/tmp/test-forks"),
|
|
147
|
+
}));
|
|
148
|
+
vi.mock("../kits/fork-sync.js", () => ({
|
|
149
|
+
detectKitForkDrift: vi.fn(),
|
|
150
|
+
buildKitForkHealPlan: vi.fn(),
|
|
151
|
+
applyKitForkHealPlan: vi.fn(),
|
|
152
|
+
}));
|
|
153
|
+
vi.mock("../kits/fork-sync-agent.js", () => ({
|
|
154
|
+
runKitForkSyncJob: vi.fn(),
|
|
155
|
+
dispatchKitForkSyncJobBackground: vi.fn(() => "kfj-test-job-id"),
|
|
156
|
+
getKitForkSyncJob: vi.fn(() => null),
|
|
157
|
+
listKitForkSyncJobs: vi.fn(() => []),
|
|
158
|
+
cancelKitForkSyncJob: vi.fn(() => false),
|
|
159
|
+
pruneKitForkSyncJobs: vi.fn(() => 0),
|
|
160
|
+
}));
|
|
161
|
+
const { Command } = await import("commander");
|
|
162
|
+
const { registerKitCommands } = await import("../commands/kit.js");
|
|
163
|
+
const program = new Command();
|
|
164
|
+
program.exitOverride();
|
|
165
|
+
registerKitCommands(program);
|
|
166
|
+
const kitCmd = program.commands.find((c) => c.name() === "kit");
|
|
167
|
+
expect(kitCmd).toBeDefined();
|
|
168
|
+
const forkCmd = kitCmd.commands.find((c) => c.name() === "fork");
|
|
169
|
+
expect(forkCmd).toBeDefined();
|
|
170
|
+
});
|
|
171
|
+
});
|
|
172
|
+
describe("kit fork subcommand help text", () => {
|
|
173
|
+
it("fork command description mentions Fork Sync Agent", async () => {
|
|
174
|
+
const { Command } = await import("commander");
|
|
175
|
+
const { registerKitForkSubcommands } = await import("../commands/kit-fork.js");
|
|
176
|
+
const kitCmd = new Command("kit");
|
|
177
|
+
kitCmd.exitOverride();
|
|
178
|
+
registerKitForkSubcommands(kitCmd);
|
|
179
|
+
const forkCmd = kitCmd.commands.find((c) => c.name() === "fork");
|
|
180
|
+
expect(forkCmd.description()).toMatch(/fork sync agent/i);
|
|
181
|
+
});
|
|
182
|
+
});
|
|
183
|
+
//# sourceMappingURL=kit-fork-command.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kit-fork-command.test.js","sourceRoot":"","sources":["../../src/__tests__/kit-fork-command.test.ts"],"names":[],"mappings":"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"}
|