rainbow-rb-flow-manager 0.1.2.dev4__tar.gz → 0.1.4.dev1__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.
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/PKG-INFO +7 -7
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/pyproject.toml +8 -8
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/executor.py +12 -3
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow_rb_flow_manager.egg-info/PKG-INFO +7 -7
- rainbow_rb_flow_manager-0.1.4.dev1/src/rainbow_rb_flow_manager.egg-info/requires.txt +6 -0
- rainbow_rb_flow_manager-0.1.2.dev4/src/rainbow_rb_flow_manager.egg-info/requires.txt +0 -6
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/README.md +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/setup.cfg +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/.claude/skills/pyfm/SKILL.md +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/.claude/skills/pyfm/references/internals.md +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/.claude/skills/pyfm/references/testing.md +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/__init__.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/context.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/controller/base_controller.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/controller/zenoh_controller.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/examples/01_multiple_tasks.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/examples/02_single_task.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/examples/03_post_tree.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/examples/04_sub_task.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/examples/05_event_task.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/examples/README.md +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/examples/subtasks/gripper_subtask.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/exception.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/global_resolver.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/py.typed +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/schema.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/step.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow/rb_flow_manager/utils.py +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow_rb_flow_manager.egg-info/SOURCES.txt +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow_rb_flow_manager.egg-info/dependency_links.txt +0 -0
- {rainbow_rb_flow_manager-0.1.2.dev4 → rainbow_rb_flow_manager-0.1.4.dev1}/src/rainbow_rb_flow_manager.egg-info/top_level.txt +0 -0
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rainbow-rb-flow-manager
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.4.dev1
|
|
4
4
|
Summary: Rainbow Python Flow Manager
|
|
5
5
|
Author-email: Derek <dfd1123@rainbow-robotics.com>
|
|
6
6
|
Requires-Python: <3.14,>=3.11
|
|
7
7
|
Description-Content-Type: text/markdown
|
|
8
|
-
Requires-Dist: rainbow-rb-utils==0.1.
|
|
9
|
-
Requires-Dist: rainbow-rb-zenoh==0.1.
|
|
10
|
-
Requires-Dist: rainbow-rb-flat-buffers==0.1.
|
|
11
|
-
Requires-Dist: rainbow-rb-schemas==0.1.
|
|
12
|
-
Requires-Dist: rainbow-rb-sdk==0.1.
|
|
13
|
-
Requires-Dist: rainbow-rb-log==0.1.
|
|
8
|
+
Requires-Dist: rainbow-rb-utils==0.1.4.dev1
|
|
9
|
+
Requires-Dist: rainbow-rb-zenoh==0.1.4.dev1
|
|
10
|
+
Requires-Dist: rainbow-rb-flat-buffers==0.1.4.dev1
|
|
11
|
+
Requires-Dist: rainbow-rb-schemas==0.1.4.dev1
|
|
12
|
+
Requires-Dist: rainbow-rb-sdk==0.1.4.dev1
|
|
13
|
+
Requires-Dist: rainbow-rb-log==0.1.4.dev1
|
|
14
14
|
|
|
15
15
|
# rb_flow_manager 사용 설명서
|
|
16
16
|
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "rainbow-rb-flow-manager"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.4.dev1"
|
|
8
8
|
requires-python = ">=3.11,<3.14"
|
|
9
9
|
description = "Rainbow Python Flow Manager"
|
|
10
10
|
authors = [
|
|
@@ -13,12 +13,12 @@ authors = [
|
|
|
13
13
|
readme = "README.md"
|
|
14
14
|
|
|
15
15
|
dependencies = [
|
|
16
|
-
"rainbow-rb-utils==0.1.
|
|
17
|
-
"rainbow-rb-zenoh==0.1.
|
|
18
|
-
"rainbow-rb-flat-buffers==0.1.
|
|
19
|
-
"rainbow-rb-schemas==0.1.
|
|
20
|
-
"rainbow-rb-sdk==0.1.
|
|
21
|
-
"rainbow-rb-log==0.1.
|
|
16
|
+
"rainbow-rb-utils==0.1.4.dev1",
|
|
17
|
+
"rainbow-rb-zenoh==0.1.4.dev1",
|
|
18
|
+
"rainbow-rb-flat-buffers==0.1.4.dev1",
|
|
19
|
+
"rainbow-rb-schemas==0.1.4.dev1",
|
|
20
|
+
"rainbow-rb-sdk==0.1.4.dev1",
|
|
21
|
+
"rainbow-rb-log==0.1.4.dev1",
|
|
22
22
|
]
|
|
23
23
|
|
|
24
24
|
[tool.setuptools]
|
|
@@ -30,5 +30,5 @@ where = ["src"]
|
|
|
30
30
|
include = ["rainbow.rb_flow_manager*"]
|
|
31
31
|
|
|
32
32
|
[tool.setuptools.package-data]
|
|
33
|
-
"*" = ["py.typed", "*.pyi", "*.so", "*.pyd"]
|
|
33
|
+
"*" = ["py.typed", "*.pyi", "*.so", "*.pyd", "rb_sdk_cpp/**/*.pyi"]
|
|
34
34
|
"rainbow.rb_flow_manager" = ["examples/**", "examples/**/*", ".claude/**", ".claude/**/*"]
|
|
@@ -144,7 +144,7 @@ def _init_runtime_state_for_tree(
|
|
|
144
144
|
state_dict["step"] = step.to_dict()
|
|
145
145
|
state_dict["current_step_id"] = step.step_id
|
|
146
146
|
state_dict["current_step_name"] = step.name
|
|
147
|
-
state_dict["total_repeat"] = "infinity" if repeat_count
|
|
147
|
+
state_dict["total_repeat"] = "infinity" if repeat_count < 0 else repeat_count
|
|
148
148
|
state_dict["sub_task_list"] = []
|
|
149
149
|
state_dict["current_repeat"] = 0
|
|
150
150
|
state_dict["cancel_post"] = False # 이전 실행의 취소 플래그가 새 실행에 남으면 안 된다
|
|
@@ -217,7 +217,7 @@ def _execute_tree_in_process(
|
|
|
217
217
|
|
|
218
218
|
- pre_step이 있으면 메인 트리보다 먼저 1회 실행. 완료 시 pre_done_event를 set 한다
|
|
219
219
|
- 부모의 pre_step이 끝날 때까지(parent_pre_done_event) 메인 트리 진입을 보류
|
|
220
|
-
- step(메인 트리)을 repeat_count 만큼 실행 (
|
|
220
|
+
- step(메인 트리)을 repeat_count 만큼 실행 (-1이면 무한 반복)
|
|
221
221
|
- 실행 중 Jump/Stop/SubTask 변경 등의 예외를 처리
|
|
222
222
|
- 마지막에 post_step가 있으면 후처리 트리 실행
|
|
223
223
|
- 종료 시 completion_event.set() 보장
|
|
@@ -1600,7 +1600,8 @@ class ScriptExecutor:
|
|
|
1600
1600
|
"""개별 프로세스 생성"""
|
|
1601
1601
|
process_id = args.get("process_id")
|
|
1602
1602
|
step = args.get("step")
|
|
1603
|
-
repeat_count =
|
|
1603
|
+
repeat_count = args.get("repeat_count")
|
|
1604
|
+
repeat_count = 1 if repeat_count is None else int(repeat_count)
|
|
1604
1605
|
robot_model = args.get("robot_model")
|
|
1605
1606
|
category = args.get("category")
|
|
1606
1607
|
step_mode = args.get("step_mode")
|
|
@@ -1787,6 +1788,14 @@ class ScriptExecutor:
|
|
|
1787
1788
|
batch: list[MakeProcessArgs] = args if isinstance(args, list) else [args]
|
|
1788
1789
|
is_batch = len(batch) > 1
|
|
1789
1790
|
|
|
1791
|
+
# 자식은 repeat_count 를 1로 고정하므로 main 만 검사. 상태를 만들기 전에 거부한다.
|
|
1792
|
+
for arg in batch:
|
|
1793
|
+
rc = arg.get("repeat_count")
|
|
1794
|
+
if arg.get("parent_process_id") is None and rc is not None and (int(rc) == 0 or int(rc) < -1):
|
|
1795
|
+
raise ValueError(
|
|
1796
|
+
f"invalid repeat_count={rc} for {arg.get('process_id')} (>=1, or -1 for infinite)"
|
|
1797
|
+
)
|
|
1798
|
+
|
|
1790
1799
|
print(f"is Batch!! :: >> {is_batch}", flush=True)
|
|
1791
1800
|
|
|
1792
1801
|
self._ensure_manager()
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rainbow-rb-flow-manager
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.4.dev1
|
|
4
4
|
Summary: Rainbow Python Flow Manager
|
|
5
5
|
Author-email: Derek <dfd1123@rainbow-robotics.com>
|
|
6
6
|
Requires-Python: <3.14,>=3.11
|
|
7
7
|
Description-Content-Type: text/markdown
|
|
8
|
-
Requires-Dist: rainbow-rb-utils==0.1.
|
|
9
|
-
Requires-Dist: rainbow-rb-zenoh==0.1.
|
|
10
|
-
Requires-Dist: rainbow-rb-flat-buffers==0.1.
|
|
11
|
-
Requires-Dist: rainbow-rb-schemas==0.1.
|
|
12
|
-
Requires-Dist: rainbow-rb-sdk==0.1.
|
|
13
|
-
Requires-Dist: rainbow-rb-log==0.1.
|
|
8
|
+
Requires-Dist: rainbow-rb-utils==0.1.4.dev1
|
|
9
|
+
Requires-Dist: rainbow-rb-zenoh==0.1.4.dev1
|
|
10
|
+
Requires-Dist: rainbow-rb-flat-buffers==0.1.4.dev1
|
|
11
|
+
Requires-Dist: rainbow-rb-schemas==0.1.4.dev1
|
|
12
|
+
Requires-Dist: rainbow-rb-sdk==0.1.4.dev1
|
|
13
|
+
Requires-Dist: rainbow-rb-log==0.1.4.dev1
|
|
14
14
|
|
|
15
15
|
# rb_flow_manager 사용 설명서
|
|
16
16
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|