@follenfang/wowdata 0.0.7 → 0.0.9

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/dist/SHA256SUMS CHANGED
@@ -1,5 +1,5 @@
1
- be9f43ffcfa3e8f6a9d8445dbecb751c6415e29cb60c2ae5f061d46ac04847fc dist/wowdata-darwin-amd64
2
- 222a41577ec0aaa4eca40daf80b5060f137fb27307807776afc033e51baf4cd3 dist/wowdata-darwin-arm64
3
- 07cf15fd8557874ff8bfb07fbacf1e3bad1a96f06b723be6177218a2a5494c2e dist/wowdata-linux-amd64
4
- 5abfca08e784aa6b446cb4a30ca6abf08a5da47090c20909d046a9329274c065 dist/wowdata-linux-arm64
5
- bec422d1757822dc1bd44077688d04a99840cdad73f0ba5fb91a13ae4c4f1fe4 dist/wowdata-windows-amd64.exe
1
+ 937292c68e9b0a3a9d11d5e83f6b5b80a78fb45b6081b800182c4a6b9874db34 dist/wowdata-darwin-amd64
2
+ d21671f64a7454865e00f8b8b881dc7b4f5a498af3acc45f899e89bbbe81e1b0 dist/wowdata-darwin-arm64
3
+ 013fec3565bc2f0955b1195658a4630efd85edff842f83615a38ceb8b369bbc3 dist/wowdata-linux-amd64
4
+ c7bca437a75214ba974446370dd9eda36739c787fd92073d6024a185f1d65473 dist/wowdata-linux-arm64
5
+ 91b22133b9601be94daea11a77375fb5f86d177e34aed215dcfa53222e3c6d1a dist/wowdata-windows-amd64.exe
Binary file
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@follenfang/wowdata",
3
- "version": "0.0.7",
3
+ "version": "0.0.9",
4
4
  "description": "Auditable CLI for querying World of Warcraft CASC and DB2 data",
5
5
  "license": "AGPL-3.0-or-later",
6
6
  "type": "commonjs",
@@ -18,8 +18,8 @@ Use the `wowdata` executable from `PATH`. This Skill is CLI-only: do not search
18
18
  Resolve the target before reading CASC or DB2 data.
19
19
 
20
20
  1. If the user gives a Profile, pass only `--profile <name>`; do not combine it with target flags.
21
- 2. Resolve product from the user's words or conversation context. Read [clients.yaml](references/clients.yaml) for names: every name in that file is resolved by the CLI, so it may be passed straight to `--product`, and the CDN product ID is accepted too. Product has no default; if it remains ambiguous, ask one short product question before running a data command. Treat “硬核服” as a server rule and resolve its actual product from context.
22
- 3. A product ID names a reusable slot, not a fixed game: `wow_classic_beta` held the MoP Classic beta (5.5.x) before and holds WoW Forever (1.60.x) now, and a region may not list it at all. Never infer content from the product ID alone — read the label from `casc products --source remote --region <region>` and pin the Build when the result must stay reproducible. The `flavorAliases` (`forever`, `classic-plus`) name a game rather than a slot, so the CLI verifies the resolved build's flavor and fails with `product_alias_mismatch` once the slot moves on; follow the label instead of forcing the product.
21
+ 2. Resolve product from the user's words or conversation context. Read [clients.yaml](references/clients.yaml) for the friendly names and the CDN product each one means. The CLI accepts CDN product IDs only and does not resolve those names, so translate the user's wording yourself before calling `--product`. Product has no default; if it remains ambiguous, ask one short product question before running a data command. Treat “硬核服” as a server rule and resolve its actual product from context.
22
+ 3. A product ID names a reusable slot, not a fixed game: `wow_classic_beta` held the MoP Classic beta (5.5.x) and holds WoW Forever (1.60.x) now, and a region may not list it at all. Never infer content from the product ID alone — read the label and version from `casc products --source remote --region <region>`, confirm they match what the user asked for, and state the product and version you used. Pin the Build when the result must stay reproducible.
23
23
  4. Preserve every explicit source, path, region, product, Build, and locale. Read [locales.yaml](references/locales.yaml) for locale aliases.
24
24
  5. If no source or local path is stated, use remote CDN. For an otherwise unspecified remote target, pass `--source remote --region cn --build latest --locale zhCN` plus the resolved product.
25
25
  6. For `--source local`, require `--path <client>` and complete the remaining target fields explicitly; never guess missing local-client facts.
@@ -1 +1 @@
1
- 0.0.7
1
+ 0.0.9
@@ -1,14 +1,15 @@
1
1
  schema: wowdata.clients.v1
2
- # Friendly names for the CDN product the user means. Every name in this file is
3
- # resolved by the CLI itself, so it may be passed straight to --product; the value on
4
- # the right is the CDN product ID and is also accepted directly.
2
+ # Friendly names a user may say, and the CDN product to pass to --product.
3
+ #
4
+ # The CLI accepts CDN product IDs only: it does not resolve these names, and a name
5
+ # passed to --product fails as an unknown product. Translate the user's wording to the
6
+ # product on the right yourself, pass that value, and state which product and version
7
+ # you actually used.
5
8
  #
6
9
  # A product ID names a reusable slot, not a fixed game. wow_classic_beta carried the
7
- # Mists of Pandaria Classic beta (5.5.x) before and carries WoW Forever (1.60.x) now.
8
- # Names under flavorAliases claim a specific game rather than a slot, so the CLI checks
9
- # the resolved build's flavor and fails with product_alias_mismatch instead of
10
- # answering for a slot that has moved on. Names that only label a slot (classic-beta)
11
- # accept whatever it currently holds.
10
+ # Mists of Pandaria Classic beta (5.5.x) and carries WoW Forever (1.60.x) now, so never
11
+ # infer content from the ID alone: read the label and version from
12
+ # `casc products --source remote --region <region>` and confirm before reporting.
12
13
  clients:
13
14
  retail: wow
14
15
  ptr: wowt
@@ -21,6 +22,9 @@ clients:
21
22
  classic-ptr: wow_classic_ptr
22
23
  "怀旧服 PTR": wow_classic_ptr
23
24
  怀旧服测试服: wow_classic_ptr
25
+ # WoW Forever runs on the classic beta slot as of 1.60.x.
26
+ forever: wow_classic_beta
27
+ classic-plus: wow_classic_beta
24
28
  classic-beta: wow_classic_beta
25
29
  classic-era: wow_classic_era
26
30
  怀中怀: wow_classic_era
@@ -32,12 +36,14 @@ clients:
32
36
  泰坦服: wow_classic_titan
33
37
  泰坦重铸: wow_classic_titan
34
38
  时光服: wow_classic_titan
35
- flavorAliases:
36
- # These name a game rather than a slot, so the resolved build's flavor is verified.
37
- # A region may not carry the slot at all; check `casc products --source remote
38
- # --region <region>` before concluding the data is missing.
39
- forever: wow_classic_beta
40
- classic-plus: wow_classic_beta
39
+ regionalNotes:
40
+ # Not naming rules, but they explain failures that otherwise look like bad data.
41
+ wow_classic_titan:
42
+ regions: [cn]
43
+ instruction: Listed for cn only. WoWDBDefs has no structure for its Build either, so a DB2 read fails with "no DBD structure for table <table>"; report that as missing definitions, not as missing data.
44
+ wow_classic_beta:
45
+ regions: [us]
46
+ instruction: Not listed for cn. Use --region us, or report that the region does not carry the slot.
41
47
  contextualAliases:
42
48
  硬核服:
43
49
  type: realm-rule
@@ -16,7 +16,7 @@ or a complete target:
16
16
 
17
17
  Use `--source local --path <client>` plus explicit region, product, Build, and locale for a local client.
18
18
 
19
- `--product` takes either the CDN product ID (for example `wow_classic_beta`) or any friendly name from [clients.yaml](clients.yaml) (for example `retail`, `classic-era`, `forever`), which the CLI resolves itself. Because a product ID names a slot rather than a fixed game, the names listed under `flavorAliases` are verified against the flavor of the build that actually resolves; if the slot has moved on, the CLI fails with `product_alias_mismatch` instead of returning another game's data. When that happens, run `casc products` for the region and pick the product whose label matches the flavor the user asked for.
19
+ `--product` takes the CDN product ID (for example `wow_classic_beta`). The CLI does not resolve friendly names, so translate the user's wording with [clients.yaml](clients.yaml) first. Because a product ID names a slot rather than a fixed game, confirm what the slot currently carries from `casc products` before reporting data.
20
20
 
21
21
  A remote target is only valid for the region that lists it. Confirm with `casc products --source remote --region <region>` before concluding that data is missing.
22
22