@frankzhang2026/opencode-android-orchestrator 0.8.1 → 0.9.0

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.
@@ -5,7 +5,8 @@ import { compareSemanticVersions, parseOpenCodeVersion, } from "../compatibility
5
5
  import { AUTOMATION_CONFIG_RELATIVE_PATH, matchesManifestModuloVerificationPolicy, } from "../config/verification-policy.js";
6
6
  import { formatDoctorReport, runDoctor, } from "../doctor/index.js";
7
7
  import { mergeAgentsConfigForUpgradeText } from "./agents-config.js";
8
- import { detectAndroidProject } from "./android-project.js";
8
+ import { detectAndroidProject, } from "./android-project.js";
9
+ import { GradleVerificationDiscoveryError, discoverGradleProjectConfiguration, } from "./gradle-verification.js";
9
10
  import { INSTALLATION_BACKUPS_DIRECTORY, INSTALLATION_CONTROL_DIRECTORY, INSTALLATION_HISTORY_DIRECTORY, INSTALLATION_MANIFEST_RELATIVE_PATH, readInstallationManifest, } from "./install-manifest.js";
10
11
  import { planProjectResourceInputs, runInitProcess, verifyInitializedProject, } from "./init.js";
11
12
  import { ORCHESTRATOR_PACKAGE_NAME, ORCHESTRATOR_PACKAGE_VERSION, mergeOpenCodeConfigText, } from "./opencode-config.js";
@@ -593,7 +594,27 @@ export function planProjectUpgrade(directory, options = {}) {
593
594
  if (primaryModule !== undefined) {
594
595
  adaptiveOptions.primaryModule = primaryModule;
595
596
  }
596
- const gradleVerification = options.gradleVerification ?? configured.gradleVerification;
597
+ let runtimeProjectDetection = options.projectDetection;
598
+ let refreshedGradle;
599
+ if (options.refreshGradleDiscovery === true &&
600
+ runtimeProjectDetection === undefined) {
601
+ try {
602
+ refreshedGradle = discoverGradleProjectConfiguration(requestedTarget, options.processRunner ?? runInitProcess, primaryModule === undefined ? {} : { primaryModule });
603
+ runtimeProjectDetection = refreshedGradle.detection;
604
+ }
605
+ catch (error) {
606
+ if (error instanceof GradleVerificationDiscoveryError) {
607
+ throw new ProjectUpgradeError("GRADLE_DISCOVERY_FAILED", error.message, error.details);
608
+ }
609
+ throw error;
610
+ }
611
+ }
612
+ if (runtimeProjectDetection !== undefined) {
613
+ adaptiveOptions.projectDetection = runtimeProjectDetection;
614
+ }
615
+ const gradleVerification = options.gradleVerification ??
616
+ refreshedGradle?.gradleVerification ??
617
+ configured.gradleVerification;
597
618
  if (gradleVerification !== undefined) {
598
619
  adaptiveOptions.gradleVerification = gradleVerification;
599
620
  }
@@ -624,16 +645,21 @@ export function planProjectUpgrade(directory, options = {}) {
624
645
  const paths = upgradeControlPaths(requestedTarget, upgradeId);
625
646
  const sameVersion = relation === 0;
626
647
  const resourcesMatch = desiredFilesMatchCurrent(stable.manifest, manifest);
627
- if (sameVersion && !resourcesMatch) {
648
+ if (sameVersion &&
649
+ !resourcesMatch &&
650
+ runtimeProjectDetection === undefined) {
628
651
  throw new ProjectUpgradeError("UPGRADE_NOT_REQUIRED", "The installed package has the same version but different managed resources.", [
629
652
  "Package versions are immutable; install a newer package version before upgrading.",
630
653
  ]);
631
654
  }
632
655
  return {
633
- status: sameVersion ? "already-current" : "upgrade",
656
+ status: sameVersion && resourcesMatch ? "already-current" : "upgrade",
634
657
  targetDirectory: requestedTarget,
635
658
  moduleScope: resources.adaptiveTemplates.moduleScope,
636
659
  primaryModule: resources.adaptiveTemplates.primaryModule.gradlePath,
660
+ projectDetection: runtimeProjectDetection ?? null,
661
+ gradleVerification: resources.adaptiveTemplates.automationConfig.gradleVerification,
662
+ longCommandTimeoutMs,
637
663
  fromVersion: stable.manifest.package.version,
638
664
  toVersion: ORCHESTRATOR_PACKAGE_VERSION,
639
665
  upgradeId,
@@ -658,6 +684,9 @@ function planFingerprint(plan) {
658
684
  targetDirectory: plan.targetDirectory,
659
685
  moduleScope: plan.moduleScope,
660
686
  primaryModule: plan.primaryModule,
687
+ projectDetection: plan.projectDetection,
688
+ gradleVerification: plan.gradleVerification,
689
+ longCommandTimeoutMs: plan.longCommandTimeoutMs,
661
690
  fromVersion: plan.fromVersion,
662
691
  toVersion: plan.toVersion,
663
692
  upgradeId: plan.upgradeId,
@@ -695,6 +724,13 @@ function assertPlanConsistent(plan) {
695
724
  const replanned = planProjectUpgrade(plan.targetDirectory, {
696
725
  moduleScope: plan.moduleScope,
697
726
  primaryModule: plan.primaryModule,
727
+ ...(plan.projectDetection === null
728
+ ? {}
729
+ : { projectDetection: plan.projectDetection }),
730
+ gradleVerification: plan.gradleVerification,
731
+ ...(plan.longCommandTimeoutMs === undefined
732
+ ? {}
733
+ : { longCommandTimeoutMs: plan.longCommandTimeoutMs }),
698
734
  upgradeId: plan.upgradeId,
699
735
  preparedAt: plan.preparedAt,
700
736
  installedAt: plan.installedAt,
@@ -1135,6 +1171,9 @@ export function applyProjectUpgrade(plan, verify) {
1135
1171
  }
1136
1172
  function doctorForUpgrade(directory, options, runner) {
1137
1173
  const report = runDoctor({
1174
+ ...(options.projectDetection === undefined
1175
+ ? {}
1176
+ : { androidProjectDetection: options.projectDetection }),
1138
1177
  ...(options.androidSdkDirectory === undefined
1139
1178
  ? {}
1140
1179
  : { androidSdkDirectory: options.androidSdkDirectory }),
@@ -1161,8 +1200,10 @@ function assertVerificationPassed(report) {
1161
1200
  }
1162
1201
  export function runProjectUpgrade(directory, options = {}) {
1163
1202
  const runner = options.processRunner ?? runInitProcess;
1164
- const doctor = doctorForUpgrade(directory, options, runner);
1165
1203
  const plan = planProjectUpgrade(directory, options);
1204
+ const doctor = doctorForUpgrade(directory, plan.projectDetection === null
1205
+ ? options
1206
+ : { ...options, projectDetection: plan.projectDetection }, runner);
1166
1207
  if (plan.status === "already-current") {
1167
1208
  const verification = verifyInitializedProject(plan.targetDirectory, runner);
1168
1209
  assertVerificationPassed(verification);
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../src/installer/upgrade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../src/installer/upgrade.ts"],"names":[],"mappings":"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"}
package/docs/MIGRATION.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Migration guide
2
2
 
3
3
  This guide covers migration to
4
- `@frankzhang2026/opencode-android-orchestrator@0.8.1`. Pin the exact version and
4
+ `@frankzhang2026/opencode-android-orchestrator@0.9.0`. Pin the exact version and
5
5
  prove the migration in a disposable clone before changing a long-lived
6
6
  repository.
7
7
 
@@ -9,13 +9,13 @@ repository.
9
9
 
10
10
  | Current state | Correct command after release | Important distinction |
11
11
  | --- | --- | --- |
12
- | No orchestrator files or manifest | `npx @frankzhang2026/opencode-android-orchestrator@0.8.1 init .` | Normal new installation; all detected Android modules and registered debug verification tasks are discovered automatically. |
12
+ | No orchestrator files or manifest | `npx @frankzhang2026/opencode-android-orchestrator@0.9.0 init .` | Normal new installation; all runtime-detected Android modules and registered debug verification tasks are discovered automatically. |
13
13
  | Published `0.1.0` scaffold only | Remove any project-local `@0.1.0` plugin reference after review, then run `init`. | `0.1.0` did not create a usable managed installation and cannot be upgraded. |
14
- | `0.2.0` through `0.8.0` manifest-managed installation with intact managed/backup content | Run the fixed `0.8.1` `upgrade`. | Existing module scope, verification tasks, policy values, and user-owned AGENTS content are preserved. Mode-only drift is accepted. The old managed Superpowers plugin reference is replaced by bundled skills. Pre-`0.6.1` configurations receive the 30-minute long-command timeout default. |
14
+ | `0.2.0` through `0.8.1` manifest-managed installation with intact managed/backup content | Run the `0.9.0` `upgrade`; add `--refresh-gradle-discovery` when generated module/task lists are incomplete. | Refresh replaces all derived module metadata, source paths, protected build files, and task allowlists from one Gradle runtime snapshot. Module scope, boolean verification policies, and user-owned AGENTS content remain preserved. |
15
15
  | Manually copied V3 files, no `.automation-plugin/manifest.json` | Finish active tasks, preserve historical evidence separately, then run `init`. | Exact files can be reused; differing managed files fail as conflicts. |
16
16
  | Healthy older manifest-managed installation | Run `doctor`, then the fixed target version's `upgrade`. | `upgrade` requires a valid installed manifest and intact original backups. |
17
17
  | Healthy current-version manifest | Run `doctor`; repeated `init` or same-version `upgrade` is verification-only and byte-idempotent. | Do not reinstall or delete the manifest. |
18
- | Damaged manifest, ordinary managed-content drift, or damaged backup content | Stop and investigate. | `init` and `upgrade` intentionally refuse to overwrite this state. AGENTS content outside its managed block and Unix-mode drift are handled by `0.8.1 upgrade`. |
18
+ | Damaged manifest, ordinary managed-content drift, or damaged backup content | Stop and investigate. | `init` and `upgrade` intentionally refuse to overwrite this state. AGENTS content outside its managed block and Unix-mode drift are handled by `0.9.0 upgrade`. |
19
19
 
20
20
  `uninstall` is not an upgrade shortcut. It restores verified pre-install files,
21
21
  removes unchanged plugin-created files, and retains drift for manual review.
@@ -35,7 +35,7 @@ removes unchanged plugin-created files, and retains drift for manual review.
35
35
  support bundle.
36
36
  5. If a managed manifest already exists, the installed version's doctor may be
37
37
  used to collect read-only evidence. A mode warning/failure or an AGENTS
38
- content mismatch does not by itself prevent `0.8.1 upgrade`; the target
38
+ content mismatch does not by itself prevent `0.9.0 upgrade`; the target
39
39
  upgrade performs its own content-safe checks. Do not edit manifest hashes to
40
40
  make doctor pass.
41
41
  6. Prove the migration in a disposable clone or temporary Android fixture
@@ -50,14 +50,14 @@ scaffold, not as an older managed installation.
50
50
  If the project OpenCode configuration contains an exact
51
51
  `@frankzhang2026/opencode-android-orchestrator@0.1.0` entry, save the file and
52
52
  remove only that obsolete entry in a reviewed Git change before running
53
- `0.8.1 init`. The merger deliberately rejects a different version of the same
53
+ `0.9.0 init`. The merger deliberately rejects a different version of the same
54
54
  managed package; it will not silently replace the reference. A global npm
55
55
  installation of `0.1.0` alone does not require project-file cleanup.
56
56
 
57
57
  After release, initialize with the fixed version:
58
58
 
59
59
  ```sh
60
- npx @frankzhang2026/opencode-android-orchestrator@0.8.1 init .
60
+ npx @frankzhang2026/opencode-android-orchestrator@0.9.0 init .
61
61
  ```
62
62
 
63
63
  New installations default to all-module scope, so multiple application modules
@@ -105,7 +105,7 @@ Use the lifecycle command selected by the active manifest:
105
105
 
106
106
  ```sh
107
107
  npx --yes --registry=https://registry.npmjs.org/ \
108
- @frankzhang2026/opencode-android-orchestrator@0.8.1 upgrade . --json
108
+ @frankzhang2026/opencode-android-orchestrator@0.9.0 upgrade . --json
109
109
  ```
110
110
 
111
111
  The command-level Registry option is useful when a company-wide npm Registry
@@ -128,6 +128,27 @@ which prevents an upgrade from silently expanding its editable module set. To
128
128
  adopt all-module scope during a version upgrade, pass `--module-scope all` and
129
129
  review the regenerated task example before approving automation.
130
130
 
131
+ Versions through `0.8.1` could undercount modules when `settings.gradle[.kts]`
132
+ computed includes dynamically or a company convention plugin applied
133
+ `com.android.*` indirectly. If `androidProject.modules` or
134
+ `gradleVerification.focusedTestTasks` is incomplete, use the one-shot refresh:
135
+
136
+ ```sh
137
+ npx --yes --registry=https://registry.npmjs.org/ \
138
+ @frankzhang2026/opencode-android-orchestrator@0.9.0 upgrade . \
139
+ --refresh-gradle-discovery --json
140
+ ```
141
+
142
+ This does not run or parse `tasks --all`. It configures Gradle once with a
143
+ temporary init script, asks each evaluated project which Android plugin is
144
+ actually applied, and reads registered task names without realizing the full
145
+ task report. The resulting module/path/task configuration is written through
146
+ the normal verified upgrade transaction. Omit the flag when the installed task
147
+ matrix was intentionally supplied with `--gradle-verification-config` and must
148
+ remain unchanged. An explicit refresh may be rerun on an already installed
149
+ `0.9.0` after the Gradle module graph changes; if its generated resources are
150
+ unchanged, the operation remains byte-idempotent.
151
+
131
152
  Upgrade also preserves an installed `longCommandTimeoutMs`. Installations from
132
153
  before `0.6.1` have no value to preserve and receive `1800000` milliseconds.
133
154
  To choose another value during migration, pass
@@ -167,7 +188,7 @@ the source of drift and use the recorded recovery data.
167
188
  Run all checks from the detected Git root:
168
189
 
169
190
  ```sh
170
- npx @frankzhang2026/opencode-android-orchestrator@0.8.1 doctor .
191
+ npx @frankzhang2026/opencode-android-orchestrator@0.9.0 doctor .
171
192
  opencode debug config
172
193
  opencode debug skill
173
194
  opencode debug agent scheduled-planner
package/docs/SECURITY.md CHANGED
@@ -1,9 +1,9 @@
1
1
  # Security model
2
2
 
3
3
  This document describes the security properties of
4
- `@frankzhang2026/opencode-android-orchestrator@0.8.1`. The lifecycle foundation
4
+ `@frankzhang2026/opencode-android-orchestrator@0.9.0`. The lifecycle foundation
5
5
  completed the real OpenCode `1.14.22` and `1.15.13` release matrix in `0.2.0`;
6
- `0.8.1` retains that compatibility boundary.
6
+ `0.9.0` retains that compatibility boundary.
7
7
 
8
8
  ## Security goals and non-goals
9
9
 
@@ -1,7 +1,7 @@
1
1
  # Troubleshooting
2
2
 
3
3
  Use this guide for
4
- `@frankzhang2026/opencode-android-orchestrator@0.8.1`.
4
+ `@frankzhang2026/opencode-android-orchestrator@0.9.0`.
5
5
 
6
6
  ## Start with read-only evidence
7
7
 
@@ -11,7 +11,7 @@ From the repository root, capture:
11
11
  git status --short --branch
12
12
  git rev-parse HEAD
13
13
  opencode --version
14
- npx @frankzhang2026/opencode-android-orchestrator@0.8.1 doctor . --json
14
+ npx @frankzhang2026/opencode-android-orchestrator@0.9.0 doctor . --json
15
15
  ```
16
16
 
17
17
  If installation never completed, doctor will correctly report a missing or
@@ -39,9 +39,9 @@ command-scoped override:
39
39
 
40
40
  ```sh
41
41
  npm --registry=https://registry.npmjs.org/ view \
42
- @frankzhang2026/opencode-android-orchestrator@0.8.1 version
42
+ @frankzhang2026/opencode-android-orchestrator@0.9.0 version
43
43
  npx --yes --registry=https://registry.npmjs.org/ \
44
- @frankzhang2026/opencode-android-orchestrator@0.8.1 upgrade . --json
44
+ @frankzhang2026/opencode-android-orchestrator@0.9.0 upgrade . --json
45
45
  ```
46
46
 
47
47
  This leaves the company's saved npm configuration unchanged. Use the option
@@ -60,7 +60,8 @@ Git-backed Superpowers plugin at runtime.
60
60
  | `MODULE_SCOPE_INVALID` or an invalid `--module-scope` argument | The value is not `all` or `primary`. | Use `all` for the default all-module contract or `primary` for an intentional single-module restriction. |
61
61
  | `PRIMARY_MODULE_AMBIGUOUS` | Restrictive `primary` scope has multiple possible Android modules. | Supply an exact Gradle path, for example `--module-scope primary --primary-module :mobile`, or use the default `all` scope. |
62
62
  | `PRIMARY_MODULE_NOT_FOUND` | The selected Gradle path was not detected. | Use a module path reported by doctor/project detection; do not pass a filesystem directory. |
63
- | `GRADLE_DISCOVERY_FAILED` | The temporary read-only Gradle configuration failed, or registered tasks could not form every required verification group. | Run `./gradlew help --no-configuration-cache --console=plain` and fix the reported project/JDK/dependency issue. Use `--gradle-verification-config` only for an intentional nonstandard task policy, and keep that file inside the target repository. |
63
+ | `GRADLE_DISCOVERY_FAILED` | The temporary read-only Gradle configuration failed, or registered tasks could not form every required verification group. | Run `./gradlew help --no-configuration-cache --console=plain` and fix the reported project/JDK/dependency issue. Do not use the much larger `tasks --all` report as a discovery workaround. Use `--gradle-verification-config` only for an intentional nonstandard task policy. |
64
+ | A real task exists but `jq '.gradleVerification.focusedTestTasks | index(":component_me:testDebugUnitTest")' automation/config.json` prints `null` | A version through `0.8.1` generated configuration from a partial static module set, commonly because settings logic was dynamic or a convention plugin applied Android indirectly. | Upgrade with `--refresh-gradle-discovery`; do not add 30+ modules or tasks by hand. Then rerun the `jq` check and review the regenerated module/path/task diff. |
64
65
  | Unit tests did not run | `unitTestsEnabled` is false. | Set it to `true` in `automation/config.json`, commit the change, and rerun the gate. |
65
66
  | Unit tests run but should be skipped | `unitTestsEnabled` is true, which is the default. | Set it to `false` in `automation/config.json`; RED evidence remains mandatory. |
66
67
  | Lint did not run | `lintEnabled` is false, which is the default. | Set it to `true` in `automation/config.json`, commit the change, and rerun the gate. |
@@ -68,7 +69,7 @@ Git-backed Superpowers plugin at runtime.
68
69
  | Invalid `--long-command-timeout-ms` | The value is not an integer from `120000` through `7200000`. | Use the `1800000` ms default or pass an intentional bounded value to `init`/`upgrade`; do not edit the generated config directly. |
69
70
  | Android SDK failure | No valid explicit SDK, `ANDROID_HOME`, `ANDROID_SDK_ROOT`, or `local.properties` `sdk.dir` was found. | Configure one real SDK root containing `platforms/` and `build-tools/`. Do not publish `local.properties`. |
70
71
  | Missing `git`, `jq`, `rg`, `shasum`, or Java | Required deterministic command is unavailable on `PATH`. | Install or restore the missing command, record its version, and rerun the read-only checks. |
71
- | `Bundled Orchestrator skill is unavailable` | The installed `0.8.1` package is incomplete, damaged, or loaded from an unsupported partial copy. | Reinstall the exact package, inspect its `resources/third-party/superpowers-v6.2.0/skills/` entries, restart OpenCode, and rerun `opencode debug skill`. Do not add an external Superpowers plugin as a fallback. |
72
+ | `Bundled Orchestrator skill is unavailable` | The installed `0.9.0` package is incomplete, damaged, or loaded from an unsupported partial copy. | Reinstall the exact package, inspect its `resources/third-party/superpowers-v6.2.0/skills/` entries, restart OpenCode, and rerun `opencode debug skill`. Do not add an external Superpowers plugin as a fallback. |
72
73
  | The exact Superpowers v6.2.0 plugin remains after upgrade | That entry existed in the verified pre-install OpenCode file and is therefore user-owned. | Leave it in place or remove it as a separate reviewed configuration change. Upgrade only removes the old Orchestrator-managed entry. |
73
74
 
74
75
  Version `0.6.0` always passes `--no-configuration-cache` to its temporary
@@ -77,12 +78,23 @@ Gradle task-discovery invocation. This overrides a repository-level
77
78
  the project's files or normal build behavior. Deleting the project's
78
79
  Configuration Cache is therefore neither required nor a durable repair.
79
80
 
81
+ Version `0.9.0` makes the same bounded Gradle invocation authoritative for
82
+ both modules and tasks. It checks applied `com.android.*` plugins after project
83
+ evaluation and reads `TaskContainer.names`, avoiding the volume and apparent
84
+ silence of `./gradlew tasks --all --console=plain | rg ...` in a large build.
85
+ For an existing installation, run:
86
+
87
+ ```sh
88
+ npx @frankzhang2026/opencode-android-orchestrator@0.9.0 upgrade . \
89
+ --refresh-gradle-discovery
90
+ ```
91
+
80
92
  Version `0.7.0` raises direct managed long-running lifecycle commands to at
81
93
  least `1800000` milliseconds. A higher timeout already supplied by the caller
82
94
  is preserved; unrelated Bash commands are unchanged. To configure one hour,
83
95
  run `upgrade . --long-command-timeout-ms 3600000` on a healthy installation.
84
96
  If a command still reports `120000 ms`, confirm that the project manifest and
85
- OpenCode plugin reference are both `0.8.1`, restart the OpenCode session so the
97
+ OpenCode plugin reference are both `0.9.0`, restart the OpenCode session so the
86
98
  plugin reloads, and rerun doctor before attempting recovery.
87
99
 
88
100
  After installation, inspect OpenCode discovery separately:
@@ -137,7 +149,7 @@ Common fail-closed codes include:
137
149
  | `PLUGIN_VERSION_CONFLICT` | The same managed package identity has another reference/version. | Review and remove or migrate only the obsolete entry; never let init silently replace it. |
138
150
  | `DUPLICATE_PLUGIN` or `DUPLICATE_PROPERTY` | Configuration identity is ambiguous. | Correct the JSON/JSONC structure without discarding unrelated fields or comments. |
139
151
  | `INVALID_JSONC` or `ROOT_NOT_OBJECT` | OpenCode configuration cannot be merged safely. | Repair the user-owned file and validate it before retrying. |
140
- | `AGENTS_BLOCK_CONFLICT` or `AGENTS_MARKERS_INVALID` | During `init`, the bounded block was modified; or a lifecycle command found partial, out-of-order, or duplicate markers. | Keep project-specific instructions outside one valid marker pair. `0.8.1 upgrade` preserves marker-external changes and replaces the old managed block; malformed marker structure still requires manual repair. |
152
+ | `AGENTS_BLOCK_CONFLICT` or `AGENTS_MARKERS_INVALID` | During `init`, the bounded block was modified; or a lifecycle command found partial, out-of-order, or duplicate markers. | Keep project-specific instructions outside one valid marker pair. `0.9.0 upgrade` preserves marker-external changes and replaces the old managed block; malformed marker structure still requires manual repair. |
141
153
  | `FILE_SYMLINK`, `TARGET_SYMLINK`, or `CONFIG_SYMLINK` | A managed target or ancestor is a symbolic link. | Replace it only after understanding ownership and destination. The installer intentionally does not follow it. |
142
154
  | `PLAN_STALE` or `TARGET_MODIFIED` | A file changed between planning and application. | Stop concurrent edits, inspect the diff, and rerun from a stable state. |
143
155
 
@@ -156,8 +168,8 @@ configuration.
156
168
  | --- | --- | --- |
157
169
  | `MANIFEST_MISSING`, `MANIFEST_INVALID`, or `MANIFEST_STATE` | No trustworthy installed manifest is available. | Do not invent a manifest or copy one from another project. Determine whether this is an uninstalled/manual setup or an interrupted transaction. |
158
170
  | `EXISTING_INSTALLATION_DIFFERENT` | `init` found another installed inventory/version. | Use `upgrade` for a healthy older manifest. |
159
- | `EXISTING_INSTALLATION_INVALID` or `INSTALLATION_INVALID` | Manifest, installed files, or required backups failed structural or content validation. In `0.8.0`, this also reported an active manifest whose mode was not exactly `0600`. | Preserve the project and `.automation-plugin/`; use `0.8.1 upgrade` for mode-only drift, and inspect other doctor details or recovery history. |
160
- | `INSTALLED_FILES_MODIFIED` | Upgrade found content/existence drift in an ordinary managed file or missing/modified backup content. | Move intentional customization out of ordinary managed paths or choose manual recovery. `0.8.1` separately merges user-owned `AGENTS.md` content and does not reject mode-only drift. |
171
+ | `EXISTING_INSTALLATION_INVALID` or `INSTALLATION_INVALID` | Manifest, installed files, or required backups failed structural or content validation. In `0.8.0`, this also reported an active manifest whose mode was not exactly `0600`. | Preserve the project and `.automation-plugin/`; use `0.9.0 upgrade` for mode-only drift, and inspect other doctor details or recovery history. |
172
+ | `INSTALLED_FILES_MODIFIED` | Upgrade found content/existence drift in an ordinary managed file or missing/modified backup content. | Move intentional customization out of ordinary managed paths or choose manual recovery. `0.9.0` separately merges user-owned `AGENTS.md` content and does not reject mode-only drift. |
161
173
  | `VERSION_DOWNGRADE_REFUSED` | Target package is older than the installed manifest. | Use a newer fixed package version; never edit the manifest version. |
162
174
  | `UPGRADE_IN_PROGRESS` or `UNINSTALL_IN_PROGRESS` | `.automation-plugin/upgrade.json` or `uninstall.json` records an unfinished transaction. | Inspect the marker and matching recovery directory. Do not delete the marker merely to retry. |
163
175
  | `POST_UPGRADE_VERIFICATION_FAILED` | New resources failed verification. | The implementation attempts a complete old-version rollback; verify the old manifest and inspect upgrade evidence. |
@@ -168,7 +180,7 @@ configuration.
168
180
  Installer control paths are:
169
181
 
170
182
  - active manifest: `.automation-plugin/manifest.json` (new manifests are
171
- written as `0600`; mode-only drift does not block `0.8.1 upgrade`);
183
+ written as `0600`; mode-only drift does not block `0.9.0 upgrade`);
172
184
  - first-install/original backups: `.automation-plugin/backups/<id>/`;
173
185
  - upgrade marker and snapshots: `.automation-plugin/upgrade.json` and
174
186
  `.automation-plugin/upgrades/<id>/`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frankzhang2026/opencode-android-orchestrator",
3
- "version": "0.8.1",
3
+ "version": "0.9.0",
4
4
  "description": "Reusable OpenCode orchestration for Android projects",
5
5
  "license": "MIT",
6
6
  "author": "frankzhang2026",