ADFA-5598 | Addons fixes: product name, AI Code Suggestions rename, AI Core statements - #94
Merged
Merged
Conversation
The product name appeared as CodeOnTheGo, CoGo, and several capitalization variants of "Code on the Go". Normalize every occurrence to "Code On The Go", the form tools/addons check.py demands on a published gallery page. Repository URLs, checkout paths (../CodeOnTheGo, .cache/CodeOnTheGo/, <path-to-CodeOnTheGo>), and the literal GitHub Action name "Update libs from CodeOnTheGo" keep the old spelling: they name a repository or a workflow, not the product. Directories on tools/addons/skip.txt are untouched, so that the pull requests in flight against the AI addons do not conflict. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
The addon needs AI Core for inference, so the name now says so. The directory name drives the slug (ai-code-suggestions) and the display name (AI Code Suggestions); rootProject.name, pluginName, plugin.name, the gallery page filename, its title and heading, and the README table row all follow. Add it to tools/addons/skip.txt: AI Core is held back for the pull requests in flight against it, so the pair must reach the gallery together. The Java package, applicationId, plugin.id and plugin.main_class do not change. Every install is keyed on plugin.id, and a new id orphans the installs that already exist. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
… Core need Rename the Java package to com.itsaky.androidide.plugins.aicodesuggestions and follow it through namespace, applicationId, plugin.id and plugin.main_class. getTooltipCategory() moves with plugin.id: the host derives the same string to resolve a lookup, so a category that lags behind the id renders "n/a" at runtime while the build stays green. This changes plugin.id, so an existing install of the old id does not upgrade to this one. The addon is on skip.txt and has never reached the gallery, so there is nothing published to orphan. State the AI Core requirement at the top of the README and the gallery page. The plugin holds no model; it asks AI Core for every completion and shows nothing until AI Core is installed and a model is selected. Correct the build instructions: the addon carries its own Gradle wrapper, so the commands are ./gradlew from plugins/AI-Code-Suggestions, and plugin-api.jar resolves from ../../libs/. Verified: ./gradlew assemblePlugin succeeds and packages both icons and assets/docs/index.html. Not verified on a device. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
The README said "Requires the AI Core plugin." three lines below a blockquote that said the opposite, and the architecture diagram, the feature list, and addon.json all call AI Core optional. The code agrees with them: when LlmInferenceService is absent, handleTranscript falls back to the raw transcript so speech is never dropped. Delete the false line and lead with what the plugin does with AI Core and without it. Correct the build instructions as well: the addon carries its own Gradle wrapper, so the commands are ./gradlew from plugins/Speech-to-Text, and plugin-api.jar resolves from ../../libs/. Documentation only. The name, the slug, plugin.id and the gallery status do not change, so existing installs still upgrade in place. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
…mmary summary is the only addon.json text a browsing user reads: the gallery card renders it and nothing else in prose. Someone who installs from the card without opening the details page is exactly the person who ends up with a plugin that appears to do nothing, so the card has to carry the requirement. 64 of the 120 characters the schema allows. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
There was a problem hiding this comment.
Claude Code Review
This repository is configured for manual code reviews. Comment @claude review for a one-time review, or @claude review always to subscribe this PR to a review on every future push.
Tip: disable this comment in your organization's Code Review settings.
The earlier commits on this branch used "Code On The Go". That form is wrong. The app itself writes "Code on the Go" -- the About entry, the terminal banner, and the editor's own help text all use it. Correct every file this branch touched. Also rename the strings the plugin shows at runtime. The tooltip summary, the tooltip detail and the Tier 3 button still said "Code Suggestions" after the addon was renamed; the on-device Tooltips table showed the stale text. Verified on emulator-5554 against Code on the Go C-r-0908-1128: the plugin installs, the Extensions Manager lists it as "AI Code Suggestions", it stays enabled across a restart, and the documentation.db row now reads plugin_com.itsaky.androidide.plugins.aicodesuggestions with the corrected summary -- so the tooltip category tracks the new plugin.id. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
…tooling The app writes "Code on the Go". Correct every remaining occurrence under plugins/ -- READMEs, gallery pages, in-app help, addon.json, manifests and Kotlin sources alike -- plus: * check.py, whose own message told contributors to write the wrong form, so the lint taught the error it exists to catch. * The gallery site's title, meta description and page-template title. Their body links already said "Code on the Go", so each page contradicted itself. * The README that tarball.py generates into every published source tarball, and its test. * model.py's docstring, the last one left in that package. Verified: 88 tests pass and addons check is clean. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
…scripts Finish the sweep. The plugin-review skill and its rubric mattered most: they are the live instructions a review follows, so they would have kept putting "Code On The Go" into every new plugin. The design records are corrected at the source of the error too. The addon distribution plan states the naming rule in rule 6, and it stated the rule in the wrong form, which is where this branch first took it from. The rest are comments in .githooks/pre-push and scripts/check-toolchain.sh, plus two operator messages the toolchain script prints. Verified: both shell files parse, and the 88 addons tests still pass. Claude-Session: https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes ADFA-5598.
Write "Code on the Go" in full (647630f)
The product name appeared as
CodeOnTheGo,CoGo, and several capitalizations of "Code on the Go" across 14 READMEs. All now say Code on the Go, the formtools/addons/src/addons/check.pydemands on a published gallery page.Repository URLs, checkout paths (
../CodeOnTheGo,.cache/CodeOnTheGo/,<path-to-CodeOnTheGo>), and the literal GitHub Action name Update libs from CodeOnTheGo keep the old spelling — they name a repository or a workflow, not the product.Every directory on
tools/addons/skip.txtis untouched, so the pull requests in flight against the AI addons do not conflict.Rename Code Suggestions to AI Code Suggestions (d0f19c4, 92bfaa2)
The addon needs AI Core for inference, so the name says so.
plugins/Code-Suggestions→plugins/AI-Code-Suggestions, which drives the slugai-code-suggestionsand the display nameAI Code Suggestions.rootProject.name,pluginName,plugin.name,android:label, the gallery page filename, its<title>and<h1>, the in-app help, and the README table row all follow.The Java package moves to
com.itsaky.androidide.plugins.aicodesuggestions, along withnamespace,applicationId,plugin.idandplugin.main_class.getTooltipCategory()moves withplugin.id: the host derives the same string when resolving a lookup, so a category that lags behind rendersn/aat runtime while the build stays green.Added to
skip.txt— AI Core is held back for the pull requests in flight against it, so the pair must reach the gallery together.plugin.idchanged. An existing install of the old id will not upgrade; it would sit alongside as a separate plugin. The addon has never reached the gallery, so nothing published is orphaned. Anyone carrying a hand-built.cgpshould uninstall the old one first.State the AI Core relationship (92bfaa2, 48f4d0e, 54158c0)
AI Code Suggestions requires AI Core. It holds no model and shows nothing until AI Core is installed and a model is selected. Said at the top of the README, in a note under the gallery page heading, and in
addon.json'ssummary— the onlyaddon.jsontext the gallery card renders, and so the one a person reads before deciding to install.Speech to Text does not require AI Core. Its README claimed
Requires the AI Core plugin.three lines below a blockquote saying the opposite, and the architecture diagram, feature list,addon.json, gallery page and in-app help all called it optional. The code agrees with them: whenLlmInferenceServiceis absent,handleTranscriptfalls back to the raw transcript so speech is never dropped. The false line is gone; the README now leads with what the plugin does with AI Core and without it. Name, slug,plugin.idand gallery status unchanged, so existing installs upgrade in place.Build instructions
Both addons carry their own Gradle wrapper, so
../gradlewresolved toplugins/gradlew, which does not exist. Corrected to./gradlewfrom the addon directory, andplugin-api.jarfrom../../libs/.Verification
./gradlew assemblePluginsucceeds for AI Code Suggestions after the package rename; the.cgpcarriesclasses.dex, both icons, andassets/docs/index.html.addons checkpasses.check_namesre-run with the skip list bypassed confirms AI Code Suggestions would also pass if it were unskipped.Not done, on purpose
addon.json'sdescriptionfor AI Code Suggestions still says the model is "on-device", andspeech-to-text.html:96says the same. AI Core also offers Gemini and OpenAI backends, so neither is accurate. Left alone at the reporter's request — AI Core is in flux and this is expected to change again.https://claude.ai/code/session_01WTwoSBqWoqAmb8vSGjodHD