{
  "schemaVersion": 1,
  "generatedAt": "2026-06-17T22:58:43.229Z",
  "status": "VERSION_CONTROL_WAITING_ON_HANDOFFS",
  "label": "Version Control Waiting On Handoffs",
  "local": {
    "packageVersion": "0.1.0-alpha.76",
    "gitAvailable": true,
    "gitVersion": "git version 2.45.1.windows.1",
    "gitError": "",
    "gitExecutable": "git",
    "hasGitDirectory": true,
    "hasGitHubDirectory": true,
    "hasGitHubWorkflows": true,
    "gitHubWorkflowFiles": [
      "nyra-command-center-ci.yml",
      "nyra-release-rehearsal.yml"
    ],
    "githubCliAvailable": true,
    "githubCliExecutable": "C:\\Users\\porte\\AppData\\Local\\NyrA\\tools\\gh\\gh.exe",
    "githubCliVersion": "gh version 2.93.0 (2026-05-27)",
    "githubCliAuthenticated": false,
    "githubCliAuthSummary": "You are not logged into any GitHub hosts. To log in, run: gh auth login",
    "currentBranch": "main",
    "remoteUrl": "",
    "statusSummary": "## main; 867 changed path(s). Sample: M .gitignore; M android/app/build.gradle; M android/app/src/main/AndroidManifest.xml; D android/app/src/main/java/com/desktop/buddy/MainActivity.java; M android/app/src/main/res/layout/activity_main.xml; M android/app/src/main/res/values/strings.xml; M android/app/src/main/res/v...",
    "statusBranch": "## main",
    "statusChangedPathCount": 867,
    "statusSampleChangedPaths": [
      "M .gitignore",
      "M android/app/build.gradle",
      "M android/app/src/main/AndroidManifest.xml",
      "D android/app/src/main/java/com/desktop/buddy/MainActivity.java",
      "M android/app/src/main/res/layout/activity_main.xml",
      "M android/app/src/main/res/values/strings.xml",
      "M android/app/src/main/res/values/styles.xml",
      "M capacitor.config.ts"
    ]
  },
  "checks": [
    {
      "id": "git-cli",
      "phase": "1. Local Tooling",
      "owner": "User",
      "status": "pass",
      "label": "Git CLI available in this shell",
      "detail": "git version 2.45.1.windows.1",
      "action": "Git is available for release history checks.",
      "dashboardField": "versionControl.gitInstallStatus",
      "noGoRule": "Paid release work must have git available so tags, remotes, and branch state can be verified."
    },
    {
      "id": "git-repository",
      "phase": "2. Repository Baseline",
      "owner": "User + Codex",
      "status": "pass",
      "label": ".git repository exists",
      "detail": "Local repository metadata exists.",
      "action": "Keep the working tree auditable and commit intentionally.",
      "dashboardField": "versionControl.sourceControlDecision",
      "noGoRule": "No paid beta release without traceable source-control history for the shipped build."
    },
    {
      "id": "github-remote",
      "phase": "2. Repository Baseline",
      "owner": "User",
      "status": "blocked",
      "label": "GitHub remote or repo URL saved",
      "detail": "No remote URL is detectable or saved.",
      "action": "Save the intended GitHub repository owner/name or remote URL in the dashboard.",
      "dashboardField": "versionControl.repoRemoteUrl",
      "noGoRule": "No public paid release until the source repo and release evidence location are known."
    },
    {
      "id": "github-cli-auth",
      "phase": "2. Repository Baseline",
      "owner": "User + Codex",
      "status": "blocked",
      "label": "GitHub repo creation or push path available",
      "detail": "You are not logged into any GitHub hosts. To log in, run: gh auth login",
      "action": "Authenticate GitHub CLI or save an existing remote URL in the dashboard.",
      "dashboardField": "versionControl.repoRemoteUrl",
      "noGoRule": "No paid beta release until source history can be pushed to the chosen GitHub repository."
    },
    {
      "id": "github-workflows",
      "phase": "3. CI Release Gates",
      "owner": "Codex",
      "status": "pass",
      "label": ".github/workflows release gates exist",
      "detail": ".github/workflows contains nyra-command-center-ci.yml, nyra-release-rehearsal.yml.",
      "action": "Keep CI wired to build/test release gates.",
      "dashboardField": "versionControl.ciProvider",
      "noGoRule": "No paid beta release without a repeatable CI or documented release verification path."
    },
    {
      "id": "release-tag-strategy",
      "phase": "4. Release Policy",
      "owner": "User + Codex",
      "status": "pass",
      "label": "Branch and tag strategy saved",
      "detail": "branch=Use main for active development and release/x.y branches for paid beta release stabilization.; tag=Use semantic version tags such as v0.1.0-alpha.1, v0.1.0-beta.1, and v1.0.0 for customer-facing release builds.",
      "action": "Choose release branch and tag rules, for example release/x.y branches and v0.1.0-beta.1 tags.",
      "dashboardField": "versionControl.releaseBranchStrategy",
      "noGoRule": "No customer build is published without a retraceable branch/tag policy."
    },
    {
      "id": "release-evidence",
      "phase": "5. Release Evidence",
      "owner": "Codex",
      "status": "pass",
      "label": "Release manifest and checksums exist",
      "detail": "Release evidence exists for 0.1.0-alpha.76.",
      "action": "Run release evidence generation after each clean release candidate build.",
      "dashboardField": "releasePackage.lastExecutableSha256",
      "verificationCommand": "npm run release:evidence && npm run release:candidate:preflight",
      "noGoRule": "No release candidate is handed to a customer without manifest and checksum evidence."
    },
    {
      "id": "release-docs",
      "phase": "5. Release Evidence",
      "owner": "Codex",
      "status": "pass",
      "label": "Release trust and version docs exist",
      "detail": "signingDoc=true; appRoadmap=true",
      "action": "Keep signing/distribution and app-version docs current with dashboard decisions.",
      "dashboardField": "appVersion.nextVersion",
      "noGoRule": "Release decisions must be visible in the dashboard and generated docs before paid launch."
    },
    {
      "id": "working-tree-state",
      "phase": "6. Daily Audit",
      "owner": "Codex",
      "status": "info",
      "label": "Working tree status readable",
      "detail": "## main; 867 changed path(s). Sample: M .gitignore; M android/app/build.gradle; M android/app/src/main/AndroidManifest.xml; D android/app/src/main/java/com/desktop/buddy/MainActivity.java; M android/app/src/main/res/layout/activity_main.xml; M android/app/src/main/res/values/strings.xml; M android/app/src/main/res/v...",
      "action": "Daily agents can audit changed files.",
      "dashboardField": "versionControl.workingTreePolicy",
      "noGoRule": "Do not publish a build when changed files are unaudited or outside the intended release scope."
    },
    {
      "id": "backup-archive",
      "phase": "7. Backup",
      "owner": "User + Codex",
      "status": "pass",
      "label": "Backup/archive path saved",
      "detail": "G:\\My Drive\\AI Stuff\\NyrA Release Evidence Archive",
      "action": "Save where release evidence and dashboard backups should live outside the local machine.",
      "dashboardField": "versionControl.backupPath",
      "noGoRule": "Do not rely on a single local folder for business-critical launch evidence."
    }
  ],
  "actions": [
    {
      "id": "github-remote",
      "source": "version-control-pack",
      "phase": "2. Repository Baseline",
      "priority": "P0",
      "owner": "User",
      "status": "Waiting on handoff",
      "label": "GitHub remote or repo URL saved",
      "detail": "No remote URL is detectable or saved.",
      "action": "Save the intended GitHub repository owner/name or remote URL in the dashboard.",
      "evidenceNeeded": "Save versionControl.repoRemoteUrl in the dashboard and upload sanitized repo/CI evidence to version-control.",
      "dashboardPage": "pages/version-control.html",
      "dashboardField": "versionControl.repoRemoteUrl",
      "uploadSlot": "version-control",
      "verificationCommand": "npm run version:control-pack && npm run test:version-control-pack",
      "noGoRule": "No public paid release until the source repo and release evidence location are known."
    },
    {
      "id": "github-cli-auth",
      "source": "version-control-pack",
      "phase": "2. Repository Baseline",
      "priority": "P0",
      "owner": "User + Codex",
      "status": "Waiting on handoff",
      "label": "GitHub repo creation or push path available",
      "detail": "You are not logged into any GitHub hosts. To log in, run: gh auth login",
      "action": "Authenticate GitHub CLI or save an existing remote URL in the dashboard.",
      "evidenceNeeded": "Save versionControl.repoRemoteUrl in the dashboard and upload sanitized repo/CI evidence to version-control.",
      "dashboardPage": "pages/version-control.html",
      "dashboardField": "versionControl.repoRemoteUrl",
      "uploadSlot": "version-control",
      "verificationCommand": "npm run version:control-pack && npm run test:version-control-pack",
      "noGoRule": "No paid beta release until source history can be pushed to the chosen GitHub repository."
    }
  ],
  "safeCommands": [
    {
      "id": "refresh-version-control-pack",
      "phase": "0. Dashboard Sync",
      "owner": "Codex",
      "command": "npm run version:control-pack && npm run test:version-control-pack",
      "purpose": "Refresh local git/GitHub/CI evidence and command-center state.",
      "noGoRule": "Do not rely on old repo status before release work."
    },
    {
      "id": "install-git-check",
      "phase": "1. Local Tooling",
      "owner": "User",
      "command": "git --version",
      "purpose": "Confirm Git is available in the shell that builds release evidence.",
      "noGoRule": "If git is missing, leave repo creation/commit/tag work blocked."
    },
    {
      "id": "repo-status-check",
      "phase": "2. Repository Baseline",
      "owner": "Codex",
      "command": "git status --short --branch",
      "purpose": "Verify branch, remote tracking, and changed files before release work.",
      "noGoRule": "Do not publish customer builds from unaudited local changes."
    },
    {
      "id": "github-cli-auth-check",
      "phase": "2. Repository Baseline",
      "owner": "User + Codex",
      "command": "gh auth status",
      "purpose": "Confirm local GitHub CLI can create/push the selected private repository.",
      "noGoRule": "If gh is missing or unauthenticated, keep remote creation/push blocked until a browser-created repo URL is saved."
    },
    {
      "id": "portable-github-cli-install",
      "phase": "2. Repository Baseline",
      "owner": "Codex",
      "command": "npm run tools:install-gh",
      "purpose": "Install or refresh the portable GitHub CLI under the NyrA local tools folder without requiring admin rights.",
      "noGoRule": "Do not call the GitHub remote path ready until gh is authenticated or a browser-created remote URL is saved."
    },
    {
      "id": "ci-release-gate",
      "phase": "3. CI Release Gates",
      "owner": "Codex",
      "command": "npm run command-center:build && npm run build:clean",
      "purpose": "Keep generated dashboard evidence and clean release gates reproducible before CI is wired.",
      "noGoRule": "No paid beta until clean release gates pass locally and the CI path is approved."
    },
    {
      "id": "github-actions-workflow-check",
      "phase": "3. CI Release Gates",
      "owner": "Codex",
      "command": "npm run test:github-actions-workflows",
      "purpose": "Verify GitHub Actions CI/release rehearsal workflows match the command-center release gates.",
      "noGoRule": "Do not treat CI as configured unless workflow files are present and checked for required gates."
    }
  ],
  "dashboardFields": [
    "versionControl.sourceControlDecision",
    "versionControl.gitInstallStatus",
    "versionControl.repoProvider",
    "versionControl.repoOwner",
    "versionControl.repoName",
    "versionControl.repoRemoteUrl",
    "versionControl.ciProvider",
    "versionControl.releaseBranchStrategy",
    "versionControl.tagStrategy",
    "versionControl.workingTreePolicy",
    "versionControl.backupPath",
    "versionControl.repoConnectedDate"
  ],
  "handoffs": {
    "waitingOnUser": 2,
    "waitingOnCodex": 0,
    "requiredBlockedChecks": 2
  },
  "counts": {
    "checks": 10,
    "passedChecks": 7,
    "blockedChecks": 2,
    "totalActions": 2,
    "userActions": 2,
    "codexActions": 1,
    "safeCommands": 7
  },
  "outputs": {
    "json": "docs/launch_command_center/version-control-pack.json",
    "csv": "docs/launch_command_center/version-control-pack.csv",
    "report": "docs/launch_command_center/VERSION_CONTROL_PACK.md",
    "dashboard": "docs/launch_command_center/pages/version-control.html"
  }
}
