toga-ai 1.0.151 → 1.0.152

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.
@@ -40,8 +40,10 @@ _Auto-generated by `knowledge.js index`. Do not hand-edit._
40
40
  - **Elite** (`elite`) → [clients/elite/INDEX.md](clients/elite/INDEX.md)
41
41
  - **GroWrk** (`growrk`) → [clients/growrk/INDEX.md](clients/growrk/INDEX.md)
42
42
  - **New York City Department of Education** (`nycdoe`) → [clients/nycdoe/INDEX.md](clients/nycdoe/INDEX.md)
43
+ - **NYC Health & Hospitals** (`nychh`) → [clients/nychh/INDEX.md](clients/nychh/INDEX.md)
43
44
  - **Office Depot** (`office-depot`) → [clients/office-depot/INDEX.md](clients/office-depot/INDEX.md)
44
45
  - **Prudential Financial** (`prudential`) → [clients/prudential/INDEX.md](clients/prudential/INDEX.md)
46
+ - **Quad Graphics** (`quad`) → [clients/quad/INDEX.md](clients/quad/INDEX.md)
45
47
  - **Rate** (`rate`) → [clients/rate/INDEX.md](clients/rate/INDEX.md)
46
48
  - **Tow Foundation** (`tow-foundation`) → [clients/tow-foundation/INDEX.md](clients/tow-foundation/INDEX.md)
47
49
 
@@ -0,0 +1,5 @@
1
+ # Client: NYC Health & Hospitals `nychh`
2
+
3
+ | Doc | Framework | Summary | Files |
4
+ |-----|-----------|---------|-------|
5
+ | [NYC Health & Hospitals](profile.md) | 2.0 | NYC Health & Hospitals (NYCHH) is a TOGA 2.0 client on the `_underscore` platform, prod schema `Client_Nychh`. | |
@@ -0,0 +1,40 @@
1
+ ---
2
+ title: "NYC Health & Hospitals"
3
+ framework: "2.0"
4
+ apps:
5
+ - _underscore
6
+ - api2
7
+ - toga2-supply
8
+ - dbchanges2
9
+ project: _Underscore
10
+ client: nychh
11
+ type: profile
12
+ status: active
13
+ updated: 2026-06-19
14
+ owners: ["jcardinal"]
15
+ files: []
16
+ related:
17
+ - ../../2.0/apps/_underscore/features/tracking-number-bridges.md
18
+ ---
19
+
20
+ ## Summary
21
+ NYC Health & Hospitals (NYCHH) is a TOGA 2.0 client on the `_underscore` platform, prod schema
22
+ `Client_Nychh`. Their supply-chain / fulfillment data drives the TOGa Supply item-fulfillment
23
+ table views. Client-specific DB change-sets live in `dbchanges2/Client_Nychh/`.
24
+
25
+ ## Platforms & data
26
+ - **2.0:** `_underscore` backend, prod schema `Client_Nychh`. Item fulfillments, units, and
27
+ tracking numbers follow the shared tracking-number bridge model.
28
+
29
+ ## Key features (this client)
30
+ - Item-fulfillment table views (`item-fulfillments-for-sales-orders`,
31
+ `item-fulfillments-for-sales-order-items`) rebuilt 2026-06-19 to mirror the Compass fix —
32
+ re-rooted at `ItemFulfillmentItems` with item-level (record 318) tracking. See
33
+ [Tracking-Number Bridge Migration](../../2.0/apps/_underscore/features/tracking-number-bridges.md)
34
+ (Client variations + the TableView portability gotcha).
35
+
36
+ ## Notes
37
+ - Tracking data: record 318 (item-level) is currently empty for this client; their tracking
38
+ populates the IF/shipment level (record 317). The rebuilt views use 318 (per the Compass
39
+ pattern) and will show tracking once item-level tracking is backfilled.
40
+ - This profile is a starting point; expand as more NYCHH-specific behavior is captured.
@@ -0,0 +1,5 @@
1
+ # Client: Quad Graphics `quad`
2
+
3
+ | Doc | Framework | Summary | Files |
4
+ |-----|-----------|---------|-------|
5
+ | [Quad Graphics](profile.md) | 2.0 | Quad Graphics is a TOGA 2.0 client on the `_underscore` platform, prod schema `Client_Quad`. | |
@@ -0,0 +1,46 @@
1
+ ---
2
+ title: "Quad Graphics"
3
+ framework: "2.0"
4
+ apps:
5
+ - _underscore
6
+ - api2
7
+ - toga2-supply
8
+ - dbchanges2
9
+ project: _Underscore
10
+ client: quad
11
+ type: profile
12
+ status: active
13
+ updated: 2026-06-19
14
+ owners: ["jcardinal"]
15
+ files: []
16
+ related:
17
+ - ../../2.0/apps/_underscore/features/tracking-number-bridges.md
18
+ ---
19
+
20
+ ## Summary
21
+ Quad Graphics is a TOGA 2.0 client on the `_underscore` platform, prod schema `Client_Quad`.
22
+ Their supply-chain / fulfillment data drives the TOGa Supply item-fulfillment table views.
23
+ Client-specific DB change-sets live in `dbchanges2/Client_Quad/`.
24
+
25
+ ## Platforms & data
26
+ - **2.0:** `_underscore` backend, prod schema `Client_Quad`. Item fulfillments, units, and
27
+ tracking numbers follow the shared tracking-number bridge model.
28
+ - **NetSuite TOGa Supply sync:** the per-client worker cron exercises the IF/IR tracking-number
29
+ bridge routes (see the bridge-migration doc's ACL-gap notes — Quad hit the 403 EZ-1 gap in prod).
30
+
31
+ ## Key features (this client)
32
+ - **Unit-level custom fields** on the item-fulfillment views: `c_hostIdentifier`
33
+ (CustomRecordFields id 1), `c_pkIdentifier` (id 2), and `macAddress` (RecordField 1432) —
34
+ all defined on the Units record (31).
35
+ - Item-fulfillment table views (`item-fulfillments-for-sales-orders`,
36
+ `item-fulfillments-for-sales-order-items`) rebuilt 2026-06-19 to mirror the Compass fix —
37
+ re-rooted at `ItemFulfillmentItems` with item-level (record 318) tracking, preserving the
38
+ three Units-level custom columns. See
39
+ [Tracking-Number Bridge Migration](../../2.0/apps/_underscore/features/tracking-number-bridges.md).
40
+
41
+ ## Notes
42
+ - Tracking data: record 318 (item-level) is currently empty for this client; their tracking
43
+ populates the IF/shipment level (record 317, ~98% coverage) and unit level (record 319). The
44
+ rebuilt views use 318 (per the Compass pattern) and will show tracking once item-level
45
+ tracking is backfilled.
46
+ - This profile is a starting point; expand as more Quad-specific behavior is captured.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "toga-ai",
3
- "version": "1.0.151",
3
+ "version": "1.0.152",
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",
@@ -103,6 +103,35 @@ not just one. Always include `AUTHOR_USERNAME`, and treat the field as cumulativ
103
103
  - If the repo is **not registered**, run **New-repo onboarding** (below) — ask everything.
104
104
  - If you cannot confidently determine the repo/framework/project/client, **ask**.
105
105
 
106
+ ## Step 2c — Detect new & modified clients (automatic — never wait to be asked)
107
+
108
+ Client coverage is **your** responsibility, not the developer's. They will mention clients in
109
+ passing ("for the NYCHH client", "Client_Quad", "Compass and also Rate") and **expect the KB to
110
+ end up correct without being told to add anything.** On every capture, before Step 3:
111
+
112
+ 1. **Scan the whole conversation** for every client referenced in any form — formal name
113
+ ("NYC Health & Hospitals"), short name ("NYCHH", "Quad"), slug (`nychh`), or database name
114
+ (`Client_Nychh` / `Logs_Nychh` / `Archive_Nychh` → tenant `Nychh` → slug `nychh`). Build the
115
+ full set; there may be **several** new clients in one session — handle **all** of them.
116
+ 2. **Resolve each** to a slug and check `knowledge/clients/<slug>/`. Cross-check the manifest
117
+ (`knowledge.js manifest`) so a client that exists under a different slug spelling isn't
118
+ duplicated.
119
+ 3. **For each client with no folder → run New-client onboarding automatically** (below). Do
120
+ **not** wait for the developer to say "add this client." Capture the **formal name** from
121
+ what the developer already wrote in the conversation; **only ASK if the formal name was never
122
+ stated** (you may ask once, listing all unknown clients together: "What are the formal names
123
+ for <slug-a>, <slug-b>?"). Create `clients/<slug>/profile.md`, seed `apps` from the repos this
124
+ session touched for that client.
125
+ 4. **For each existing client whose behavior this session changed** (a new client-specific
126
+ override, a corrected workflow, a new client-scoped migration, an `apps` repo now in play) →
127
+ **UPDATE that client's profile / client-feature / workflow automatically** (and its `apps` per
128
+ Step 5b). Modifications to an existing client are captured without being asked, same as
129
+ additions.
130
+
131
+ This step is **mandatory and auto-applied** (it is ordinary non-elevated client-doc work per
132
+ Step 4) — the only permitted interruption is asking for a formal name you genuinely cannot find
133
+ in the conversation. Report every client added or modified in the Step 7 summary.
134
+
106
135
  ## Step 3 — Match against existing knowledge
107
136
 
108
137
  For each distinct thing worked on, search for a doc that already covers it:
@@ -382,8 +411,9 @@ Append the entry to `registry.json`, then continue. `validate` will confirm cons
382
411
 
383
412
  ## New-client onboarding (client has no `knowledge/clients/<slug>/` folder yet)
384
413
 
385
- When this session's work is for a client with no `clients/<slug>/` folder, before writing
386
- any client docs:
414
+ **Triggered automatically by Step 2c** for every new client detected in the conversation run
415
+ it for **each** one without being asked, however many there are. When a referenced client has no
416
+ `clients/<slug>/` folder, before writing any client docs:
387
417
 
388
418
  1. **Slug** — confirm the folder slug (lowercase, hyphenated, e.g. `compass-usa`). The slug
389
419
  is used only for the folder name.