refactor(templates): unify naming, single-source metadata, honest AI copy#76
Merged
Merged
Conversation
…ake AI copy honest Marketplace/catalog cleanup across the 9 templates. Naming - Drop the "AI" prefix from displayNames (AI Helpdesk -> Helpdesk, AI Project Management -> Project Management); AI stays in descriptions/field labels. Applied across manifest displayName, config manifest.name, app nav labels, and every locale translation so the catalog card and the installed-app name finally agree. - Reconcile hr app-name drift (config manifest.name "HR" -> "Human Resources"). Single source of truth - Remove the dead objectstack.marketplace block from every package.json. The publish path (scripts/publish-template.mjs) reads objectstack.manifest.json only; the package.json copies were unread and still carried the stale category:"starter" that #73 removed from the manifests. project keeps objectstack.port. Honesty - Templates that ship AI as a scaffold no longer market it as delivered. helpdesk (deterministic triage baseline) and project (stubbed forecasting, illustrative seed values) reworded in manifest/config/README; project's ai_* field group relabelled "AI Predictions (scaffolded)". - Add docs/ROADMAP.md capturing the AI implementation plan (route AI through the platform model registry instead of raw api.openai.com, degrade honestly when no model is configured, finish one flagship) plus the other findings (content over-charter, todo/project overlap, category facet casing). Category slugs left as-is: the visible facet-casing inconsistency is a marketplace-UI label-map gap, and changing the hr slug would regress the UI's existing hr -> "Human Resources" mapping. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
xuyushun441-sys
added a commit
that referenced
this pull request
Jun 23, 2026
These three templates had bundle changes in #76 (display name / app nav label / config manifest.name / project's ai_* field group) that only reach the marketplace as a new sys_package_version. The other six templates are unchanged (the #76 package.json edits removed a block the publish path never reads), so they stay at their current versions and 409 no-op on republish. Also adds the #76 CHANGELOG entry. Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
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.
What & why
Marketplace/catalog cleanup across the 9 templates — prompted by inconsistent naming on the marketplace cards and AI copy that oversold scaffolded features.
Naming
manifest.jsondisplayName,config.tsmanifest.name,*.app.tsnav label, and every locale translation. (e.g. project'spm.app.tsalready said "Project Management" but the en/zh translations overrode it back to "AI …" — the translation wins at runtime.)config.tsmanifest.name"HR" → "Human Resources").Single source of truth
objectstack.marketplaceblock from all 9package.jsonfiles. The publish path (scripts/publish-template.mjs) readsobjectstack.manifest.jsononly; these copies were unread and still carried the stalecategory:"starter"that fix(templates): replace invalidcategory: "starter"with valid domain categories #73 removed from the manifests.projectkeepsobjectstack.port.Honesty
ai_summary = description.slice(0, 280)), not a model.STUB;ai_*seed values are illustrative. Field group relabelled "AI Predictions (scaffolded)".docs/ROADMAP.mdcapturing the AI implementation plan (route AI through the platform model registry instead of rawapi.openai.com, degrade honestly when no model is configured, finish one flagship) plus other findings (content over-charter, todo/project overlap, category facet casing).Not changed
hrslug would regress the UI's existinghr → "Human Resources"mapping (noted in the roadmap).Verification
tsc --noEmitpasses for the two packages with.tschanges (helpdesk, project).package.jsonparse as valid JSON.display_nameupdates on the next publish run (upserted on every publish, not gated by the version number).🤖 Generated with Claude Code