toga-ai 1.0.702 → 1.0.703

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.
@@ -314,16 +314,21 @@ Parameters are stored **per client DB** but accessed **through the TOGa2 API**,
314
314
  checkbox `custbody_stocking_order`, read by `App_Api_Toga2::isTransferOrder()`/`isStockingOrder()`
315
315
  — **not** a dollar/hold heuristic. Full mechanics, PO bridges, and origin-location resolution:
316
316
  [NYCHH NetSuite → TransferOrders import](../../../clients/nychh/features/netsuite-transfer-order-import.md).
317
- - **Transfer-order integration clients (beyond NYCHH's stocking-flag routing).** GroWrk, Adyen, and Elite
318
- run transfer-order integration (wrapper toggle reported as `IS_ENABLED_INTEGRATION_TRANSFER_ORDERS=true`)
319
- and are the clients exercised by the shared `syncTransferOrderFromNetsuite` / `getTransferOrderItemsByUuid`
320
- fixes (2026-08-30 above). These orders **masquerade as NetSuite sales orders** ($0, `holdInvoice` for
321
- GroWrk) and are split into `TransferOrders` vs `SalesOrders` by `App_Api_Toga2::isTransferOrder()`.
322
- The **routing SIGNAL is per-client**: NYCHH routes by the `custbody_stocking_order` stocking flag (above),
323
- while GroWrk's own signal is `holdInvoice + total === 0` — do **not** assume one universal rule.
324
- (⚠ Confirm the exact enable-flag name for GroWrk/Adyen/Elite against the wrappers: the stocking-flag const
325
- `IS_ENABLED_TRANSFER_ORDER_STOCKING_FLAG_ROUTING` is documented as NYCHH-only, so
326
- `IS_ENABLED_INTEGRATION_TRANSFER_ORDERS` is either a distinct toggle or a loose name for it.)
317
+ - **Transfer-order integration is governed by TWO DISTINCT wrapper flags — a master enable switch and a
318
+ NYCHH-only classification-mode switch (do not conflate them).**
319
+ - **`IS_ENABLED_INTEGRATION_TRANSFER_ORDERS`** — the master "do transfer-order integration at all"
320
+ switch, defined in every `sync_togasupply_*.php` launcher. `true` for **GroWrk, Adyen, Elite, and
321
+ NYCHH**; `false` for the rest. These are the clients exercised by the shared
322
+ `syncTransferOrderFromNetsuite` / `getTransferOrderItemsByUuid` fixes (2026-08-30 above).
323
+ - **`IS_ENABLED_TRANSFER_ORDER_STOCKING_FLAG_ROUTING`** — a **separate classification-mode** switch,
324
+ **NYCHH-only** (`sync_togasupply_hh.php`), that makes `App_Api_Toga2::isTransferOrder()` classify by
325
+ the NetSuite `custbody_stocking_order` checkbox instead of the legacy rule.
326
+
327
+ These orders **masquerade as NetSuite sales orders** and are split into `TransferOrders` vs
328
+ `SalesOrders` by `isTransferOrder()`. The classification **SIGNAL is per-client**: **NYCHH** routes by
329
+ the `custbody_stocking_order` stocking flag (above); **GroWrk / Elite / Adyen** use the **legacy rule**
330
+ (`holdInvoice AND total === 0`). Do **not** assume one universal signal — the master enable is shared,
331
+ the classification mode is not.
327
332
  - `isParentCustomer` — `true` walks NetSuite child customers (`listChildCustomers`); `false`
328
333
  syncs the single customer. Prudential-EDI and the live Quad wrapper use `false`.
329
334
  - The original combined-array entries used `App_Api_Toga2::CLIENT_UUID_*` consts for Quad and
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "toga-ai",
3
- "version": "1.0.702",
3
+ "version": "1.0.703",
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",