statewire 0.4.1__tar.gz → 0.4.2__tar.gz

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 (34) hide show
  1. {statewire-0.4.1 → statewire-0.4.2}/PKG-INFO +1 -1
  2. {statewire-0.4.1 → statewire-0.4.2}/pyproject.toml +1 -1
  3. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/assistant_transport.py +2 -2
  4. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/legacy.py +1 -8
  5. {statewire-0.4.1 → statewire-0.4.2}/tests/test_assistant_transport.py +1 -2
  6. {statewire-0.4.1 → statewire-0.4.2}/tests/test_legacy.py +1 -3
  7. {statewire-0.4.1 → statewire-0.4.2}/.gitignore +0 -0
  8. {statewire-0.4.1 → statewire-0.4.2}/README.md +0 -0
  9. {statewire-0.4.1 → statewire-0.4.2}/examples/__init__.py +0 -0
  10. {statewire-0.4.1 → statewire-0.4.2}/examples/demo_app.py +0 -0
  11. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/__init__.py +0 -0
  12. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/api.py +0 -0
  13. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/assistant_transport_client.py +0 -0
  14. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/client.py +0 -0
  15. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/langgraph.py +0 -0
  16. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/ops.py +0 -0
  17. {statewire-0.4.1 → statewire-0.4.2}/src/statewire/state.py +0 -0
  18. {statewire-0.4.1 → statewire-0.4.2}/tests/client_helpers.py +0 -0
  19. {statewire-0.4.1 → statewire-0.4.2}/tests/statewire_helpers.py +0 -0
  20. {statewire-0.4.1 → statewire-0.4.2}/tests/test_assistant_transport_client.py +0 -0
  21. {statewire-0.4.1 → statewire-0.4.2}/tests/test_assistant_transport_facade.py +0 -0
  22. {statewire-0.4.1 → statewire-0.4.2}/tests/test_authorize.py +0 -0
  23. {statewire-0.4.1 → statewire-0.4.2}/tests/test_client.py +0 -0
  24. {statewire-0.4.1 → statewire-0.4.2}/tests/test_client_ws.py +0 -0
  25. {statewire-0.4.1 → statewire-0.4.2}/tests/test_commands.py +0 -0
  26. {statewire-0.4.1 → statewire-0.4.2}/tests/test_context.py +0 -0
  27. {statewire-0.4.1 → statewire-0.4.2}/tests/test_langgraph.py +0 -0
  28. {statewire-0.4.1 → statewire-0.4.2}/tests/test_lifespan.py +0 -0
  29. {statewire-0.4.1 → statewire-0.4.2}/tests/test_meta.py +0 -0
  30. {statewire-0.4.1 → statewire-0.4.2}/tests/test_state_proxy.py +0 -0
  31. {statewire-0.4.1 → statewire-0.4.2}/tests/test_statewire_hostable.py +0 -0
  32. {statewire-0.4.1 → statewire-0.4.2}/tests/test_stream.py +0 -0
  33. {statewire-0.4.1 → statewire-0.4.2}/tests/test_writer_lease.py +0 -0
  34. {statewire-0.4.1 → statewire-0.4.2}/tests/test_ws.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: statewire
3
- Version: 0.4.1
3
+ Version: 0.4.2
4
4
  Summary: Replicate one JSON object over an SSE op stream + a command endpoint
5
5
  Project-URL: Repository, https://github.com/assistant-ui/harness-sdk
6
6
  License-Expression: MIT
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "statewire"
3
- version = "0.4.1"
3
+ version = "0.4.2"
4
4
  description = "Replicate one JSON object over an SSE op stream + a command endpoint"
5
5
  readme = "README.md"
6
6
  license = "MIT"
@@ -32,8 +32,8 @@ the command whole):
32
32
  unanswered tool-call request in ``state["inputRequests"]`` (None rejects),
33
33
  and a ``modelContent`` field rejects (unsupported in ``run/input``).
34
34
  - A body with a ``parentId`` and no commands is the legacy reload: it becomes
35
- ``run/reload`` with ``{"sourceId": <child>, "messageId": <fresh legacy_
36
- id>}`` via ``get_message_child_id`` (None rejects).
35
+ ``run/reload`` with ``{"sourceId": <child>}`` via ``get_message_child_id``
36
+ (None rejects).
37
37
 
38
38
  A host without the target ``run/*`` handler rejects the batch via the
39
39
  ordinary unknown-command path. The response streams state changes as legacy
@@ -89,14 +89,7 @@ async def upgrade_legacy_commands(
89
89
  source_id = await resolve_child(parent_id)
90
90
  if source_id is None:
91
91
  raise ValueError(f"reload: no child message for parentId {parent_id!r}")
92
- return [
93
- {
94
- "method": "run/reload",
95
- "params": [
96
- {"sourceId": source_id, "messageId": f"legacy_{uuid4().hex}"}
97
- ],
98
- }
99
- ]
92
+ return [{"method": "run/reload", "params": [{"sourceId": source_id}]}]
100
93
  members = []
101
94
  for command in commands:
102
95
  kind = command.get("type")
@@ -1096,8 +1096,7 @@ async def test_parent_id_without_commands_is_normalized_to_run_reload():
1096
1096
  assert all(prefix == "aui-state" for prefix, _ in frames)
1097
1097
  instance = (await app.state.pinned_host.directory.get("t1")).instance
1098
1098
  [params] = instance.reloaded
1099
- assert params["sourceId"] == "m2"
1100
- assert params["messageId"].startswith("legacy_")
1099
+ assert params == {"sourceId": "m2"}
1101
1100
 
1102
1101
 
1103
1102
  async def test_reload_without_a_resolvable_child_is_an_error_frame():
@@ -91,9 +91,7 @@ async def test_parent_id_without_commands_is_reload():
91
91
  [], parent_id="m1", get_message_child_id=child_of
92
92
  )
93
93
  assert member["method"] == "run/reload"
94
- params = member["params"][0]
95
- assert params["sourceId"] == "m2"
96
- assert params["messageId"].startswith("legacy_")
94
+ assert member["params"] == [{"sourceId": "m2"}]
97
95
 
98
96
 
99
97
  async def test_reload_without_child_raises():
File without changes
File without changes
File without changes
File without changes