refactor(coding-agent): remove OMO product coupling - #798
Conversation
|
Independent review found one remaining engine reference to the removed updater state directory in brand-state migration. Commit |
|
@code-yeongyu This is ready for maintainer review and merge; all latest checks are green. I cannot enable auto-merge or merge in the upstream repository from the fork account. |
|
Late boundary review is now addressed in 2f3d9b1: the guard scans every package/crate source root, forbids downstream package namespaces, repository/config paths, updater/detector identifiers, and OMO-owned prompt markers; production prompt/provenance/tip text is now Senpi-owned or implementation-neutral. Generic brand profiles and external .omo rules compatibility remain supported. Verification: focused Vitest 20/20; root npm run check passed. The only /Claude global_verify failures remain unrelated pre-existing weekly pipeline/scheduled-job state. |
Summary
Why
OMO Native owns OMO packaging and update behavior. Senpi should expose generic package and branded-update contracts without knowing a downstream product's repository, package names, branch, or build layout.
Observed behavior
senpi update --omo-local-update-workernow follows normal unknown-option handlingVerification
npx vitest run test/product-boundary.test.ts test/package-command-paths.test.ts -t 'Senpi product boundary|rejects the removed OMO local-update worker option'npx vitest run test/package-command-paths.test.ts -t 'refreshes only model catalogs|allows explicit self-update checks|uses saved project trust during update'npm run checknode .agents/skills/senpi-qa/scripts/lib/common.mjs --self-checknode .agents/skills/senpi-qa/scripts/cli-smoke.mjs --self-testQA evidence was captured locally under the repository-required ignored evidence directory. Harness self-check passed 9/9, CLI smoke passed 8/8, and the real auth file remained unchanged.
Residual risk
The removed updater served local source-checkout plugin installs only. Published
omo-aialready owns its branded npm update channel; local OMO development updates must be handled from the OMO repository rather than Senpi core.Summary by cubic
Decouples Senpi from OMO by removing the OMO-specific local updater and scrubbing downstream product identifiers.
senpi updatenow runs only generic self/package/model updates, and a repo-wide guard prevents OMO coupling from returning.Refactors
--omo-local-update-worker; removedSENPI_OMO_LOCAL_UPDATE.omo-local-updatein brand-dir migration..omopaths, and updater hooks.Migration
omo-ai; branded updates stay in the product channel.--omo-local-update-workerin scripts.Written for commit 2f3d9b1. Summary will update on new commits.