wowdump 0.2.1 → 0.3.1

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.
Files changed (47) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +56 -118
  3. package/dist/agent.js +5 -8
  4. package/dist/cli.js +497 -0
  5. package/dist/discovery.js +1 -12
  6. package/dist/dry-run.js +0 -2
  7. package/dist/focused-session.js +61 -1329
  8. package/dist/frida-runtime.js +51 -73
  9. package/dist/frida-worker.js +100 -0
  10. package/dist/ghidra.js +769 -0
  11. package/dist/main.js +66 -0
  12. package/dist/processes.js +2 -5
  13. package/dist/reader-broker.js +460 -0
  14. package/dist/reader-client.js +1 -0
  15. package/dist/reader-main.js +67 -0
  16. package/dist/session.js +17 -120
  17. package/dist/toolchain.js +594 -0
  18. package/dist/windows-launcher.js +207 -0
  19. package/dist/windows-reader.js +102 -0
  20. package/dist/wow-analysis.js +211 -236
  21. package/package.json +18 -35
  22. package/skills/wowdump/SKILL.md +15 -0
  23. package/skills/wowdump/commands.md +44 -0
  24. package/dist/analysis-path.js +0 -38
  25. package/dist/analysis-process-log.js +0 -146
  26. package/dist/broker-client.js +0 -411
  27. package/dist/broker-codec.js +0 -148
  28. package/dist/broker-core.js +0 -1045
  29. package/dist/broker-gateway.js +0 -447
  30. package/dist/broker-ledger.js +0 -196
  31. package/dist/broker-main.js +0 -291
  32. package/dist/broker-protocol.js +0 -119
  33. package/dist/broker-runtime.js +0 -1283
  34. package/dist/broker-server.js +0 -466
  35. package/dist/build-bundle-loader.js +0 -183
  36. package/dist/build-bundle.js +0 -11
  37. package/dist/focus-errors.js +0 -63
  38. package/dist/focus-service.js +0 -1855
  39. package/dist/mcp-main.js +0 -51
  40. package/dist/mcp.js +0 -924
  41. package/dist/process-log-lock.js +0 -195
  42. package/dist/runtime-config.js +0 -399
  43. package/resources/builds/retail/12.0.7.68974/build-profile.json +0 -290
  44. package/resources/builds/retail/12.0.7.68974/data-sources.json +0 -1633
  45. package/resources/builds/retail/12.0.7.68974/lua-targets.jsonl +0 -5130
  46. package/resources/builds/retail/12.0.7.68974/manifest.json +0 -63
  47. package/resources/builds/retail/12.0.7.68974/signatures.json +0 -260
@@ -1,63 +0,0 @@
1
- export class FocusRequestError extends Error {
2
- code;
3
- details;
4
- constructor(code, message, details) {
5
- super(message);
6
- this.name = "FocusRequestError";
7
- this.code = code;
8
- this.details = details;
9
- }
10
- }
11
- export function asSelectorRequestError(error) {
12
- if (error instanceof FocusRequestError)
13
- return error;
14
- const message = error instanceof Error ? error.message : String(error);
15
- if (/exceeding maxTargets|TARGETS_OVER_LIMIT/i.test(message)) {
16
- return new FocusRequestError("TARGETS_OVER_LIMIT", message);
17
- }
18
- if (/must identify a target|requires (?:rvas|dataSourceIds|objectIds|ranges)|SELECTOR_EMPTY/i.test(message)) {
19
- return new FocusRequestError("SELECTOR_EMPTY", message);
20
- }
21
- return new FocusRequestError("SELECTOR_INVALID", message);
22
- }
23
- const ATTACHMENT_FATAL_CODES = new Set([
24
- "ATTACHMENT_FATAL",
25
- "PROCESS_NOT_FOUND",
26
- "PROCESS_TERMINATED",
27
- "SESSION_DETACHED",
28
- "SCRIPT_DESTROYED",
29
- "TRANSPORT_CLOSED",
30
- ]);
31
- const ATTACHMENT_FATAL_NAMES = new Set([
32
- "ProcessNotFoundError",
33
- "ProcessTerminatedError",
34
- "SessionDetachedError",
35
- "ScriptDestroyedError",
36
- ]);
37
- /** Classifies only failures that unambiguously mean the Frida target attachment is gone. */
38
- export function isAttachmentFatalError(error) {
39
- const visited = new Set();
40
- let current = error;
41
- while (current !== null && current !== undefined && !visited.has(current)) {
42
- visited.add(current);
43
- if (typeof current === "object") {
44
- const value = current;
45
- if (typeof value.code === "string" && ATTACHMENT_FATAL_CODES.has(value.code.toUpperCase()))
46
- return true;
47
- if (typeof value.name === "string" && ATTACHMENT_FATAL_NAMES.has(value.name))
48
- return true;
49
- if (typeof value.message === "string" && isAttachmentFatalMessage(value.message))
50
- return true;
51
- current = value.cause;
52
- continue;
53
- }
54
- return typeof current === "string" && isAttachmentFatalMessage(current);
55
- }
56
- return false;
57
- }
58
- function isAttachmentFatalMessage(message) {
59
- return /\bscript is destroyed\b/i.test(message)
60
- || /\bprocess (?:was |has been )?terminated\b/i.test(message)
61
- || /\btarget process (?:exited|terminated)\b/i.test(message)
62
- || /\bsession is detached\b/i.test(message);
63
- }