toga-ai 1.0.423 → 1.0.424

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.
@@ -6,8 +6,8 @@ project: TOGa Blox
6
6
  client: shared
7
7
  type: workflow
8
8
  status: active
9
- updated: 2026-07-21
10
- owners: [jcardinal]
9
+ updated: 2026-07-23
10
+ owners: [jcardinal, apeterson]
11
11
  files:
12
12
  - toga-blox/.github/workflows/publish.yml
13
13
  - toga-blox/src/utils/getFontAwesomeIcon.tsx
@@ -35,6 +35,26 @@ resolve in a consuming app's build, or touching `publish.yml`.
35
35
  - **Every** branch (including `_production`) publishes a **prerelease** version
36
36
  `X.Y.Z-<mode>.<run>` under dist-tag `<mode>`. There is no longer a production special case.
37
37
  Verified live: `production:1.0.315-production.96`, `sandbox-client:1.0.315-sandbox-client.97`.
38
+ Observed 2026-07-23: `sandbox-client:1.0.317-sandbox-client.101`, `sandbox-dev:1.0.316-sandbox-dev.102`.
39
+
40
+ ### Version derivation (CI owns the suffix; dev owns only the base)
41
+
42
+ - CI reads `version` from `package.json`, **strips any `-<suffix>`**, does **`patch + 1`**, then
43
+ appends `-<mode>.<GITHUB_RUN_NUMBER>`. So base `1.0.317` on `_sandbox-client` run 104 publishes
44
+ `1.0.318-sandbox-client.104` under dist-tag `sandbox-client`.
45
+ - **The developer controls only the BASE version** committed in `package.json` on the feature
46
+ branch. **Never hand-write the `-<mode>.N` prerelease suffix** — CI generates it. There is no
47
+ manual `npm publish`; CI is the only publisher.
48
+
49
+ ### Deploy procedure (e.g. `_sandbox-client`)
50
+
51
+ 1. Ensure a clean tree; optionally bump the base version in `package.json` on the feature branch.
52
+ 2. Merge the feature branch into `_sandbox-client`, then push (this triggers the CI publish).
53
+ 3. Monitor with `gh run watch`; verify with `npm dist-tag ls @agilant/toga-blox`.
54
+ 4. Consuming apps (e.g. `toga25-supply` on `_sandbox-client`) install from the `sandbox-client`
55
+ dist-tag or a pinned `1.0.x-sandbox-client.N` version and must **re-install** to pick up a new
56
+ build. The `deploy-sandbox-client` project skill (`.claude/skills/` in this repo) drives this
57
+ procedure end-to-end.
38
58
 
39
59
  ### What was removed (and why it's safe)
40
60
 
@@ -66,6 +86,12 @@ environment needs its own maintained `_<mode>` branch in `toga-blox-npm`.
66
86
  - **Publish before build.** `npm install @agilant/toga-blox@<mode>` fails `ETARGET No matching
67
87
  version` in the app build until this repo has published that channel. GitHub Actions runs the
68
88
  workflow version *on the pushed branch*, so the branch must carry the current `publish.yml`.
89
+ - **`publish.yml` has diverged across branches (2026-07-23).** The dynamic `_*` wildcard trigger
90
+ lives on `_sandbox-client`, but older/feature branches (e.g. `feature-new-table`) still carry the
91
+ *old* `publish.yml` that triggers only on `_production/_gamma/_beta`. Because Actions runs the
92
+ copy on the pushed branch, a new `_<mode>` channel will **not** publish unless the branch you push
93
+ carries the wildcard-trigger version. When standing up a new channel, merge from a branch that has
94
+ the dynamic `publish.yml` (or update it first).
69
95
  - **FontAwesome v7 `style`-prop TS2322** (fixed 2026-07-21 in `getFontAwesomeIcon.tsx`, and a
70
96
  reusable pattern for any consumer). FA v7 types the `FontAwesomeIcon` `style` prop as
71
97
  `CSSProperties & CSSVariables`, where `CSSVariables` requires a `--fa-*` custom-property index
@@ -78,6 +104,11 @@ environment needs its own maintained `_<mode>` branch in `toga-blox-npm`.
78
104
  the pattern the consuming apps should follow (see the commerce workflow's secret-hygiene note).
79
105
 
80
106
  ## Change history
107
+ - 2026-07-23 — Documented CI version derivation (strip suffix → patch+1 → append `-<mode>.<run>`;
108
+ dev owns only the base version, never the suffix) and the `_sandbox-client` deploy procedure now
109
+ driven by the `deploy-sandbox-client` project skill. Recorded that `publish.yml` has diverged
110
+ across branches: the dynamic `_*` trigger is on `_sandbox-client` while older/feature branches
111
+ still trigger only on `_production/_gamma/_beta`. (apeterson)
81
112
  - 2026-07-21 — Made `publish.yml` fully dynamic: trigger `_*`, branch→dist-tag by stripping the
82
113
  leading underscore (mode == channel 1:1), every branch (incl. `_production`) publishes a
83
114
  `X.Y.Z-<mode>.<run>` prerelease; removed the `_production`→`latest` special case (workflow no
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "toga-ai",
3
- "version": "1.0.423",
3
+ "version": "1.0.424",
4
4
  "description": "TOGA Technology Team Claude Knowledge System — shared AI coding harness with skills, knowledge base CLI, and project installer for Claude Code.",
5
5
  "keywords": [
6
6
  "claude",