@wowok/skills 3.2.3 → 3.2.4

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wowok/skills",
3
- "version": "3.2.3",
3
+ "version": "3.2.4",
4
4
  "description": "WoWok AI Skills for Claude Code, Codex, Gemini CLI, Qwen Code, Grok Build, OpenCode, Google Antigravity, Cursor, Devin Desktop (formerly Windsurf), Trae, CodeBuddy, WorkBuddy, Qoder, Cline, Kilo Code and GitHub Copilot - dialogue orchestration layer on top of the WoWok MCP server (rules/reference knowledge is served by MCP directly since v2.0.0)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: wowok-order
3
- description: "WoWok Buyer Guide — TWO lifecycles in one skill: 1. PROSPECT (prospect due diligence, pre-purchase): E1-E11 due diligence + consensus building + trust-score synthesis, ending in a buy/no-buy decision. 2. CUSTOMER (in-order fulfillment, post-order): order creation, progress advancement, fund management, and arbitration. For suppliers presenting to Demands, see wowok-supplier. For process operators executing workflow forwards, see wowok-collaborator. Use when: User is a potential buyer evaluating a service BEFORE purchasing (prospect); User is a customer/buyer placing or managing orders (customer); User wants to evaluate services, WIP, guards, allocations, arbitration; User needs to communicate with sellers via Messenger; User asks about order progress, payments, or refunds; User wants to file disputes or arbitration claims; User mentions \"buy\", \"order\", \"purchase\", \"refund\", \"dispute\", \"arbitration\", \"due diligence\"."
3
+ description: "WoWok Buyer Guide — TWO lifecycles in one skill: 1. PROSPECT (prospect due diligence, pre-purchase): E1-E11 due diligence + consensus building + graph-evaluation synthesis, ending in a buy/no-buy decision. 2. CUSTOMER (in-order fulfillment, post-order): order creation, progress advancement, fund management, and arbitration. For suppliers presenting to Demands, see wowok-supplier. For process operators executing workflow forwards, see wowok-collaborator. Use when: User is a potential buyer evaluating a service BEFORE purchasing (prospect); User is a customer/buyer placing or managing orders (customer); User wants to evaluate services, WIP, guards, allocations, arbitration; User needs to communicate with sellers via Messenger; User asks about order progress, payments, or refunds; User wants to file disputes or arbitration claims; User mentions \"buy\", \"order\", \"purchase\", \"refund\", \"dispute\", \"arbitration\", \"due diligence\"."
4
4
  metadata:
5
5
  version: "2.1.0"
6
6
  role: customer
@@ -22,7 +22,7 @@ metadata:
22
22
  | **Prospect** | You have NOT ordered yet | Phase 1 (E1–E11) + Phase 2 | buy / no-buy decision |
23
23
  | **Customer** | You are the Order `builder` | Phase 3–6 + Fund Management | funds withdrawn / dispute resolved |
24
24
 
25
- Prospect analysis is computed by MCP `trust_score` (`depth: "preorder"`) + `evaluation_operation`; this skill only keeps the dialogue flow and the user-facing gates. The customer lifecycle is on-chain (Order/Progress/Allocation/Arb).
25
+ Prospect analysis is computed by MCP `query_toolkit` (`query_type: "onchain_topology"`, the graph evaluation) + `evaluation_operation`; this skill only keeps the dialogue flow and the user-facing gates. The customer lifecycle is on-chain (Order/Progress/Allocation/Arb).
26
26
 
27
27
  ## Ground Rules (apply to every phase)
28
28
 
@@ -43,7 +43,7 @@ Prospect analysis is computed by MCP `trust_score` (`depth: "preorder"`) + `eval
43
43
  `query_toolkit` → `onchain_objects` for the service; save `bPublished`, `bPaused`, `sales`, `machine`, `buy_guard`, `customer_required`, `arbitrations`, `compensation_fund`, `compensation_lock_duration`, `order_allocators`, `um`.
44
44
  - `bPublished === false` or `bPaused === true` → 🔴 ABORT.
45
45
 
46
- Fast pre-screen: `trust_score` with default `depth: "evaluate"`; 🔴 `risk_score < 50` → offer early abort, skip E2–E10.
46
+ Fast pre-screen: `query_toolkit` `{ query_type: "onchain_topology", focus: "<service_id>" }`; 🔴 `evaluation.risk.total < 50` → offer early abort, skip E2–E10.
47
47
 
48
48
  ### E2 — Product / WIP
49
49
  From E1 `sales[]`, skip `suspension === true`. When `wip_hash` is non-empty it is a buy-side MUST: verify with `wip_file` `{type:"verify", wipFilePath, hash_equal}` before purchase.
@@ -83,9 +83,9 @@ From E1: `compensation_fund`, `compensation_lock_duration`. Balance below planne
83
83
  `onchain_objects` for E1 `um`: `um === null` → 🔴 ABORT; `ims[]` empty → 🔴 no Messenger; active IMs → proceed.
84
84
 
85
85
  ### E9 — Chain reputation
86
- The aggregate view is already computed inside `trust_score` (reviews dimension) and `query_toolkit relationship_profile` (derived relationships) — present those rather than hand-aggregating.
86
+ The aggregate view is already computed inside the `onchain_topology` graph evaluation (trust dimension) and `query_toolkit relationship_profile` (derived relationships) — present those rather than hand-aggregating.
87
87
  Only when raw evidence is needed (all reads batched, ≤50/batch): `onchain_table_data` `onchain_table_item_entity_linker` (provider address → `votes[]` {who, like, dislike, favor}) + `onchain_table_data` `onchain_table_item_object_linker_tx` (Service address → recent binding Orders, FIFO 0xaaf window — lossy) → dispute rate / repeat-buyer ratio; >10% dispute → ⚠️.
88
- Presenter history (merchant active on Demands): aggregate `onchain_events` `DemandFeedbackEvent` filtered by the merchant's Service, or `onchain_table_data` `onchain_table_item_demand_presenter` per Demand (row carries `acceptance_score`, null = unrated); pass as `presenter_history` to `evaluation_operation` (`service_risk` / `demand_match`). Omit when no presenter activity (neutral without history).
88
+ Presenter history (merchant active on Demands): aggregate `onchain_events` `DemandFeedbackEvent` filtered by the merchant's Service, or `onchain_table_data` `onchain_table_item_demand_presenter` per Demand (row carries `acceptance_score`, null = unrated); pass as `presenter_history` to `evaluation_operation` (`demand_match`). Omit when no presenter activity (neutral without history).
89
89
 
90
90
  ### E10 — Privacy matching (LocalInfo)
91
91
  From E1 `customer_required[]` (e.g. name/phone/shipping_address):
@@ -94,11 +94,11 @@ From E1 `customer_required[]` (e.g. name/phone/shipping_address):
94
94
  3. Persist new values with `local_info_operation` `add` (100% local, never on-chain).
95
95
  > ⛔ Never transmit any private item without explicit per-item confirmation. Transmission is Messenger only (Phase 2).
96
96
 
97
- ### E11 — Trust-score synthesis
98
- `trust_score` `{ service, depth: "preorder", order_amount }` → score + per-dimension risks + preorder advice (confidence, game strategies, preference match, industry risks, `blocking_reminders`). Non-empty `blocking_reminders` → ⛔ resolve with the user before Phase 2. Compare candidates with `compare_with` (1–9, same depth): a `comparison` block with per-metric bests, **no overall ranking**.
97
+ ### E11 — Graph evaluation synthesis
98
+ `query_toolkit` `{ query_type: "onchain_topology", focus: "<service_id>" }` → `evaluation` = `trust` + `risk` (each a 0-100 `total` with `level`/`breakdown`/`red_flags`/`blocked`), `completeness`, `coverage` slots, and `unverified` rules (data gaps are never scored as low). ⛔ `evaluation.risk.blocked` (critical red flags) → resolve with the user before Phase 2. Compare candidates by running the same query per service: present per-metric bests, **no overall ranking**.
99
99
 
100
100
  ### Pre-purchase gate
101
- 🔴 Abort: E1 unpublished/paused · E8 `um=null` · E3 no-refund + E6 no-arb · E4 ambiguous Guards (user review) · E11 unresolved `blocking_reminders`. Every ⚠️ = explain and wait. All clear → Phase 2.
101
+ 🔴 Abort: E1 unpublished/paused · E8 `um=null` · E3 no-refund + E6 no-arb · E4 ambiguous Guards (user review) · E11 `evaluation.risk.blocked` unresolved. Every ⚠️ = explain and wait. All clear → Phase 2.
102
102
 
103
103
  **Dependency**: E1 first; E2/E8/E10/E7/E6 parallel after E1; E3→E4→E5 strict chain; E9 follows E3; E11 last (aggregates everything).
104
104
 
@@ -167,4 +167,4 @@ When `customer_intelligence` is ON (default), order/query responses carry `seman
167
167
  - Red lines: no arb + no refund path, OR `compensation_ratio < 0.5`. Post-purchase: monitor refund triggers, WIP hash mismatch, merchant unreachable (>3d warn → >7d arb), evidence ≥3 items.
168
168
  - Runtime toggle: `config_operation` `action:"toggle" service:"order_monitor"` (default OFF; enable when active orders exist).
169
169
 
170
- Plug-in `evaluation_operation` (read-only; read results, don't recompute): `service_risk` (4-dimension risk, inject `requirements`/`overrides`), `demand_match` / `service_match` (rank vs capability vector), `capability_gap`, `compose_service`, `node_game` / `arb_game` (best-move + payoff; pair with `query_toolkit participation_radar` output). The role decides and acts.
170
+ Plug-in `evaluation_operation` (read-only; read results, don't recompute): `demand_match` / `service_match` (rank vs capability vector), `capability_gap`, `compose_service`, `node_game` / `arb_game` (best-move + payoff; pair with `query_toolkit participation_radar` output). The role decides and acts.
@@ -22,6 +22,7 @@ Post-process every WoWok tool response before showing it: resolve addresses, for
22
22
 
23
23
  Both environments:
24
24
  - **NEVER hand-truncate with `…`** (`0x00f6…a5839` is forbidden — not resolvable, not copyable). SHORTID is the only compact form.
25
+ - **Copy addresses VERBATIM from the tool result — never retype from memory.** A silently dropped/duplicated hex char (observed failure: 64→62 hex, the address still LOOKS complete) makes the value unresolvable and pointing at nothing. Self-check before emitting: every address you write is `0x` + exactly 64 hex chars.
25
26
  - The full address is always present in the tool result in context, so a name/SHORTID display loses nothing.
26
27
  - Named → name ONLY, never `name 10EF-A11` and never append an id.
27
28
  - **Hash ≠ address** (first-byte discipline): only 32-byte hex whose first byte is `0x00` (user), `0x10`–`0x24` (typed objects) or `0xf1` (regular objects) can exist on-chain. Merkle roots, plaintext/file hashes and other digests have a random first byte — they are NOT addresses: never name-resolve or SHORTID them as if they were. ALWAYS emit hashes as `` `hash:0x…` `` (inline code, literal `hash:` prefix, no space) — NEVER bare hex: the client renders the marked form as raw text (no chip, no icon) and copy strips the marker back to the bare hex.
@@ -19,7 +19,7 @@ metadata:
19
19
  Do not re-derive any of this — consume the tool output:
20
20
 
21
21
  - **Discovery → present-path bridge**: `evaluation_operation` action=`demand_present` enumerates Demands, matches THIS service, and returns each match with a `next` block — `operation` (`demand.present_service` vs `demand.present_service_with_passport`), `preconditions` checklist, and rationale. Read-only; the write still needs user consent.
22
- - **Ad-hoc ranking**: `demand_match` (one Demand vs candidate Services), `service_match` (one Service vs candidate Demands), `service_risk`. All accept an optional `presenter_history` (see reputation below).
22
+ - **Ad-hoc ranking**: `demand_match` (one Demand vs candidate Services) and `service_match` (one Service vs candidate Demands). Both accept an optional `presenter_history` (see reputation below).
23
23
  - **Execution routing**: `query_toolkit` query_type=`participation_radar` returns `operable[].recommended_call` (tool/path/reason) for every forward the account can execute. Never hand-pick `order.progress` vs `progress.operate` yourself — no `recommended_call` means the forward is not yours to execute.
24
24
  - **Own-interest analysis**: the radar derives role `supplier` and attaches `supplier-interest` (fund_flow / responsibility / leverage / stakes). Present it neutrally; the supplier decides.
25
25