qlogicagent 2.11.2 → 2.11.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.
Files changed (68) hide show
  1. package/dist/cli.js +278 -270
  2. package/dist/index.js +277 -269
  3. package/dist/pet-contracts.js +1 -1
  4. package/dist/protocol.js +1 -1
  5. package/dist/types/cli/handlers/session-handler.d.ts +3 -3
  6. package/dist/types/cli/media-runtime-facade.d.ts +8 -0
  7. package/dist/types/cli/permission-bootstrap.d.ts +7 -0
  8. package/dist/types/cli/pet-runtime.d.ts +1 -3
  9. package/dist/types/cli/session-coordinator.d.ts +9 -0
  10. package/dist/types/cli/session-query-service.d.ts +1 -0
  11. package/dist/types/cli/tool-bootstrap.d.ts +31 -2
  12. package/dist/types/cli/turn-permission-sync.d.ts +1 -2
  13. package/dist/types/protocol/wire/acp-protocol.d.ts +7 -0
  14. package/dist/types/protocol/wire/chat-types.d.ts +6 -0
  15. package/dist/types/protocol/wire/gateway-rpc.d.ts +1 -0
  16. package/dist/types/protocol/wire/notification-payloads.d.ts +12 -0
  17. package/dist/types/protocol/wire/pet-contracts.d.ts +3 -2
  18. package/dist/types/runtime/infra/acp-detector.d.ts +21 -0
  19. package/dist/types/runtime/infra/default-path-service.d.ts +3 -0
  20. package/dist/types/runtime/infra/project-store.d.ts +1 -0
  21. package/dist/types/runtime/permission-model.d.ts +19 -0
  22. package/dist/types/runtime/pet/hatch-pet-runner.d.ts +18 -0
  23. package/dist/types/runtime/pet/index.d.ts +12 -5
  24. package/dist/types/runtime/pet/pet-file-loader.d.ts +1 -1
  25. package/dist/types/runtime/pet/pet-growth-engine.d.ts +2 -58
  26. package/dist/types/runtime/pet/pet-profile-service.d.ts +5 -7
  27. package/dist/types/runtime/pet/pet-reaction-engine.d.ts +11 -0
  28. package/dist/types/runtime/pet/pet-soul-service.d.ts +2 -2
  29. package/dist/types/runtime/pet/pet-types.d.ts +1 -32
  30. package/dist/types/runtime/pet/petdex-asset.d.ts +3 -109
  31. package/dist/types/runtime/pet/petdex-forge-service.d.ts +3 -94
  32. package/dist/types/runtime/ports/path-service.d.ts +10 -0
  33. package/dist/types/runtime/ports/permission-contracts.d.ts +20 -3
  34. package/dist/types/runtime/ports/tool-contracts.d.ts +3 -0
  35. package/dist/types/runtime/ports/tool-risk.d.ts +7 -0
  36. package/dist/types/runtime/prompt/fresh-workspace-evidence.d.ts +1 -0
  37. package/dist/types/runtime/session/session-locator.d.ts +2 -0
  38. package/dist/types/runtime/session/session-persistence.d.ts +17 -3
  39. package/dist/types/skills/permissions/hook-runner.d.ts +3 -0
  40. package/dist/types/skills/permissions/operation-classifier.d.ts +36 -0
  41. package/dist/types/skills/permissions/rule-engine.d.ts +19 -14
  42. package/dist/types/skills/portable-tool.d.ts +18 -0
  43. package/dist/types/skills/tools/exec-tool.d.ts +7 -0
  44. package/dist/types/skills/tools/patch-tool.d.ts +7 -0
  45. package/dist/types/skills/tools/petdex-create-tool.d.ts +2 -16
  46. package/dist/types/skills/tools/shell/sandbox/helper-resolver.d.ts +7 -0
  47. package/dist/types/skills/tools/shell/sandbox/landlock-argv.d.ts +6 -0
  48. package/dist/types/skills/tools/shell/sandbox/platform.d.ts +3 -0
  49. package/dist/types/skills/tools/shell/sandbox/sandbox-launcher.d.ts +15 -0
  50. package/dist/types/skills/tools/shell/sandbox/sandbox-scope.d.ts +6 -0
  51. package/dist/types/skills/tools/shell/sandbox/sandbox-types.d.ts +47 -0
  52. package/dist/types/skills/tools/shell/sandbox/seatbelt-profile.d.ts +6 -0
  53. package/dist/types/skills/tools/shell/shell-exec.d.ts +3 -0
  54. package/dist/vendor/hatch-pet/LICENSE.txt +201 -0
  55. package/dist/vendor/hatch-pet/NOTICE.md +25 -0
  56. package/dist/vendor/hatch-pet/references/animation-rows.md +29 -0
  57. package/dist/vendor/hatch-pet/references/codex-pet-contract.md +35 -0
  58. package/dist/vendor/hatch-pet/references/qa-rubric.md +66 -0
  59. package/dist/vendor/hatch-pet/scripts/compose_atlas.py +169 -0
  60. package/dist/vendor/hatch-pet/scripts/derive_running_left_from_running_right.py +150 -0
  61. package/dist/vendor/hatch-pet/scripts/extract_strip_frames.py +408 -0
  62. package/dist/vendor/hatch-pet/scripts/inspect_frames.py +256 -0
  63. package/dist/vendor/hatch-pet/scripts/make_contact_sheet.py +96 -0
  64. package/dist/vendor/hatch-pet/scripts/prepare_pet_run.py +830 -0
  65. package/dist/vendor/hatch-pet/scripts/render_animation_previews.py +78 -0
  66. package/dist/vendor/hatch-pet/scripts/validate_atlas.py +157 -0
  67. package/package.json +5 -3
  68. package/dist/types/runtime/pet/pet-reaction-service.d.ts +0 -33
@@ -0,0 +1,96 @@
1
+ #!/usr/bin/env python3
2
+ """Create a labeled contact sheet from a Codex pet atlas."""
3
+
4
+ from __future__ import annotations
5
+
6
+ import argparse
7
+ from pathlib import Path
8
+
9
+ from PIL import Image, ImageDraw, ImageFont
10
+
11
+ COLUMNS = 8
12
+ ROWS = 9
13
+ CELL_WIDTH = 192
14
+ CELL_HEIGHT = 208
15
+ LABEL_HEIGHT = 22
16
+ ROW_NAMES = [
17
+ "idle",
18
+ "running-right",
19
+ "running-left",
20
+ "waving",
21
+ "jumping",
22
+ "failed",
23
+ "waiting",
24
+ "running",
25
+ "review",
26
+ ]
27
+ USED_COUNTS = [6, 8, 8, 4, 5, 8, 6, 6, 6]
28
+
29
+
30
+ def checker(size: tuple[int, int], square: int = 16) -> Image.Image:
31
+ image = Image.new("RGB", size, "#ffffff")
32
+ draw = ImageDraw.Draw(image)
33
+ for y in range(0, size[1], square):
34
+ for x in range(0, size[0], square):
35
+ if (x // square + y // square) % 2:
36
+ draw.rectangle((x, y, x + square - 1, y + square - 1), fill="#e8e8e8")
37
+ return image
38
+
39
+
40
+ def main() -> None:
41
+ parser = argparse.ArgumentParser(description=__doc__)
42
+ parser.add_argument("atlas")
43
+ parser.add_argument("--output", required=True)
44
+ parser.add_argument("--scale", type=float, default=0.5)
45
+ args = parser.parse_args()
46
+
47
+ with Image.open(Path(args.atlas).expanduser().resolve()) as opened:
48
+ atlas = opened.convert("RGBA")
49
+
50
+ cell_w = max(1, round(CELL_WIDTH * args.scale))
51
+ cell_h = max(1, round(CELL_HEIGHT * args.scale))
52
+ width = COLUMNS * cell_w
53
+ height = ROWS * (cell_h + LABEL_HEIGHT)
54
+ sheet = Image.new("RGB", (width, height), "#f7f7f7")
55
+ draw = ImageDraw.Draw(sheet)
56
+ font = ImageFont.load_default()
57
+
58
+ for row in range(ROWS):
59
+ y = row * (cell_h + LABEL_HEIGHT)
60
+ draw.rectangle((0, y, width, y + LABEL_HEIGHT - 1), fill="#111111")
61
+ draw.text((6, y + 5), f"row {row}: {ROW_NAMES[row]}", fill="#ffffff", font=font)
62
+ draw.text(
63
+ (width - 92, y + 5),
64
+ f"{USED_COUNTS[row]} frames",
65
+ fill="#ffffff",
66
+ font=font,
67
+ )
68
+ for column in range(COLUMNS):
69
+ crop = atlas.crop(
70
+ (
71
+ column * CELL_WIDTH,
72
+ row * CELL_HEIGHT,
73
+ (column + 1) * CELL_WIDTH,
74
+ (row + 1) * CELL_HEIGHT,
75
+ )
76
+ )
77
+ crop = crop.resize((cell_w, cell_h), Image.Resampling.LANCZOS)
78
+ bg = checker((cell_w, cell_h))
79
+ bg.paste(crop, (0, 0), crop)
80
+ x = column * cell_w
81
+ sheet.paste(bg, (x, y + LABEL_HEIGHT))
82
+ outline = "#18a058" if column < USED_COUNTS[row] else "#cc3344"
83
+ draw.rectangle(
84
+ (x, y + LABEL_HEIGHT, x + cell_w - 1, y + LABEL_HEIGHT + cell_h - 1),
85
+ outline=outline,
86
+ )
87
+ draw.text((x + 4, y + LABEL_HEIGHT + 4), str(column), fill="#111111", font=font)
88
+
89
+ output = Path(args.output).expanduser().resolve()
90
+ output.parent.mkdir(parents=True, exist_ok=True)
91
+ sheet.save(output)
92
+ print(f"wrote {output}")
93
+
94
+
95
+ if __name__ == "__main__":
96
+ main()