Update mobile app template references - #485
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the mobile-apps plugin documentation and guidance to stop referencing the obsolete pa-wrap-tools / pa-wrap-tools-1 template sources and instead point at the in-repo mobile app template under plugins/mobile-apps/template (and the degit source string used in the README).
Changes:
- Replaces old template/source references across mobile-app skills and agent docs with the new template path /
degitidentifier. - Updates comments and user-facing validator/error messages to reflect the new template source.
- Adjusts design-system preset documentation to remove/replace outdated template provenance references.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| plugins/mobile-apps/skills/setup-offline-profile/SKILL.md | Updates offline-profile workaround commentary to reference the new template source. |
| plugins/mobile-apps/skills/design-system/SKILL.md | Updates design preset sourcing reference to the new template location. |
| plugins/mobile-apps/skills/design-system/references/vibe/direction-polished-inspection.md | Updates “polished-inspection” preset reference/provenance to the new template source. |
| plugins/mobile-apps/skills/create-mobile-app/SKILL.md | Updates the documented degit template source for fresh-template working-dir mode. |
| plugins/mobile-apps/skills/add-native/add-camera/SKILL.md | Updates camera skill’s assumptions/error text to reference the new template source. |
| plugins/mobile-apps/hooks/validate-protected-paths.js | Updates protected-path validator messaging to reference the new template source. |
| plugins/mobile-apps/agents/native-app-planner.md | Updates planner agent’s “fresh template” step to use the new degit source. |
| plugins/mobile-apps/AGENTS.md | Updates plugin-level template source documentation to reflect the new canonical template location. |
Suppressed comments (4)
plugins/mobile-apps/skills/create-mobile-app/SKILL.md:88
- This sentence references a “fresh
plugins/mobile-apps/templatetemplate”, which is an internal repo path and inconsistent with the earlierdegitsource string used elsewhere in this skill.
**Do not silently copy a bundled template over the user's folder.** A fresh `plugins/mobile-apps/template` template may contain placeholder `power.config.json` with an empty `environmentId`; Step 5 removes that placeholder immediately before Step 6 runs `npx power-apps init`.
plugins/mobile-apps/skills/add-native/add-camera/SKILL.md:53
- The error message says to “file an issue at the template repo (plugins/mobile-apps/template)”, but that’s not an issue-tracker/repo address. Provide an actionable URL so users can actually report missing modules.
node -e "const p = require('./package.json'); const need = ['expo-camera','expo-image-picker']; const missing = need.filter(m => !p.dependencies?.[m]); if (missing.length) { console.error('MISSING from package.json: ' + missing.join(', ') + '. The upstream template must ship these for /add-native camera to run. Do NOT install them yourself — file an issue at the template repo (plugins/mobile-apps/template) instead.'); process.exit(1); } console.log('OK: both modules present');"
plugins/mobile-apps/skills/setup-offline-profile/SKILL.md:582
- Same issue as above: this comment uses
plugins/mobile-apps/templateas if it were an external tracker/source. Align to the canonical template identifier to avoid confusion.
// upstream — tracked separately in plugins/mobile-apps/template and PowerApps-Client).
plugins/mobile-apps/skills/setup-offline-profile/SKILL.md:610
- This table row says “Tracked upstream in plugins/mobile-apps/template”, which is ambiguous and inconsistent with the
degitsource string used elsewhere. Use the canonical template identifier so readers know what to check.
| `appConfig.instanceUrl` | **OFFLINE-CONFIG-WORKAROUND** | Enables offline cold-start by giving the SDK a static org name without needing an `api.powerplatform.com` round-trip while offline. Value is the same `<envUrl>` captured in Step 1 (e.g. `https://orgXXX.crm.dynamics.com`). Was previously written into `power.config.json.databaseReferences[*].databaseDetails.linkedEnvironmentMetadata.instanceUrl`; runtime now reads from `appConfig.instanceUrl` here. Tracked upstream in plugins/mobile-apps/template. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.
Suppressed comments (5)
plugins/mobile-apps/skills/design-system/references/vibe/direction-polished-inspection.md:49
- The provenance bullets cite
plugins/mobile-apps/templateline numbers as the source for these colors, but those strings/colors don't currently exist anywhere underplugins/mobile-apps/template/(no#007d48matches). This makes the provenance inaccurate and hard to validate. Consider removing the file/line claims or updating them to point at a real, stable source in-repo.
- **Brand color `#007d48`** — pulled directly from `plugins/mobile-apps/template` line 7 ("Active — success green"). Identical to / adjacent to Microsoft Power Platform green family. Production-validated.
- **Danger color `#d30005`** — same source, line 9 ("Out of Service — danger red"). Production-validated.
- **Muted text `#707072`** — same source, line 8 ("Retired — muted").
- **Icon-only `#9e9ea0`** — same source, line 70 (chevron-forward color).
plugins/mobile-apps/skills/design-system/SKILL.md:185
- This line claims the
#007d48accent is sourced fromplugins/mobile-apps/template, but there are currently no#007d48occurrences under the template directory. Dropping the sourcing claim (or replacing it with a verifiable file/link) would keep the guidance accurate.
3. **Else (true "all defaults" path) → load [`${CLAUDE_SKILL_DIR}/references/vibe/direction-polished-inspection.md`](./references/vibe/direction-polished-inspection.md) as the canonical `polished-inspection` preset** — white surface, Power-Platform green `#007d48` accent (Power Platform–aligned default), status-stripe cards, soft-tinted status pills, large tap targets. This is the polished MVP default that fits any inspection / field-ops / asset-tracking app (~70% of mobile-app traffic) AND demos cleanly to enterprise stakeholders. The previous `signature` preset (slate dark + safety orange, sourced from `uber-design.md`) is now opt-in via `--direction inspection` for true outdoor-only field apps.
plugins/mobile-apps/skills/add-native/add-camera/SKILL.md:53
- The failure message instructs users to "file an issue at the template repo (plugins/mobile-apps/template)", but that path is not an issue tracker/repo by itself. Pointing to the actual GitHub issues URL (and optionally naming the template path) makes the instruction actionable.
node -e "const p = require('./package.json'); const need = ['expo-camera','expo-image-picker']; const missing = need.filter(m => !p.dependencies?.[m]); if (missing.length) { console.error('MISSING from package.json: ' + missing.join(', ') + '. The upstream template must ship these for /add-native camera to run. Do NOT install them yourself — file an issue at the template repo (plugins/mobile-apps/template) instead.'); process.exit(1); } console.log('OK: both modules present');"
plugins/mobile-apps/hooks/validate-protected-paths.js:9
- The comment references
plugins/mobile-apps/template, which is a path inside this repo but not the degit source users are told to use elsewhere (microsoft/power-platform-skills/plugins/mobile-apps/template#main). Using the same fully-qualified template reference here avoids confusion.
* - any `vendor/<name>.tgz` (sourced from plugins/mobile-apps/template)
plugins/mobile-apps/hooks/validate-protected-paths.js:37
- The protected-path error text points to
plugins/mobile-apps/template, which isn't a standalone location a user can "update" from outside this repo. Using the same fully-qualified template source (microsoft/power-platform-skills/plugins/mobile-apps/template#main) makes the guidance actionable and consistent with the rest of the plugin docs.
rx: /(^|\/)vendor\/[^/]+\.tgz$/,
reason:
'`vendor/*.tgz` files are sourced from https://github.com/microsoft/power-platform-skills/tree/main/plugins/mobile-apps/template. Update them there, not by editing in-project.',
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.
Suppressed comments (3)
plugins/mobile-apps/skills/design-system/references/vibe/direction-polished-inspection.md:49
- The provenance bullets claim these colors were "pulled directly from
plugins/mobile-apps/template" at specific line numbers, but the currentplugins/mobile-apps/templatesnapshot contains no#007d48/#d30005occurrences. This makes the documentation inaccurate and hard to verify.
Consider rewording these bullets to describe the intent (Power Platform–aligned defaults) without citing non-existent file/line sources, or update them to a real in-repo file/path that actually contains the referenced values.
- **Brand color `#007d48`** — pulled directly from `plugins/mobile-apps/template` line 7 ("Active — success green"). Identical to / adjacent to Microsoft Power Platform green family. Production-validated.
- **Danger color `#d30005`** — same source, line 9 ("Out of Service — danger red"). Production-validated.
- **Muted text `#707072`** — same source, line 8 ("Retired — muted").
- **Icon-only `#9e9ea0`** — same source, line 70 (chevron-forward color).
plugins/mobile-apps/skills/add-native/add-camera/SKILL.md:53
- This inline error message refers to "the template repo (plugins/mobile-apps/template)", but that string is not a repo identifier and is ambiguous for users following the instructions. Using the same canonical GitHub URL you use elsewhere (or the same
degitsource string) makes the guidance actionable.
node -e "const p = require('./package.json'); const need = ['expo-camera','expo-image-picker']; const missing = need.filter(m => !p.dependencies?.[m]); if (missing.length) { console.error('MISSING from package.json: ' + missing.join(', ') + '. The upstream template must ship these for /add-native camera to run. Do NOT install them yourself — file an issue at the template repo (plugins/mobile-apps/template) instead.'); process.exit(1); } console.log('OK: both modules present');"
plugins/mobile-apps/skills/setup-offline-profile/SKILL.md:582
- This comment uses the shorthand
plugins/mobile-apps/template, while the surrounding guidance uses the canonicaldegitsourcemicrosoft/power-platform-skills/plugins/mobile-apps/template#main. Keeping the same format avoids ambiguity about whether this is a local path vs a repository reference.
// upstream — tracked separately in plugins/mobile-apps/template and PowerApps-Client).
Summary
pa-wrap-toolsandpa-wrap-tools-1references with the mobile-app plugin template pathdegitsource references withmicrosoft/power-platform-skills/plugins/mobile-apps/template#mainfrom the READMEValidation
pa-wrap-toolsreferences remain underplugins/mobile-apps