Conversation
Documentation build overview
16 files changed ·
|
Documentation build overview
16 files changed ·
|
| "complete": complete, | ||
| "sha256": hashlib.sha256(content.encode()).hexdigest(), | ||
| } | ||
| with (self._output_dir / "memory_reads.jsonl").open("a") as handle: |
There was a problem hiding this comment.
when --output-dir is reused, this appends to the previous run's read audit, while finalize_cell_result() credits every complete event in the file. a rerun that reads nothing can therefore be marked valid, and switching to task-only can invalidate a complete run because the old global read remains. could the audit be initialized per run?
There was a problem hiding this comment.
Fixed in 4753e89. A new RoboCasa memory manager clears the prior read audit and writes the current selection before accepting reads; its in-memory read set also starts empty. The finalizer marks missing or malformed evidence invalid. Regression tests cover a second run with no reads, partial reads, both policy-switch directions, and corrupt/missing audits. The updated branch passes 611 unit tests (3 optional-dependency skips).
| str(_get(event, "method", "")) != "turn/completed" | ||
| and not limit_reached | ||
| and recorder.finish_result is None | ||
| and recorder.turns >= recorder.max_turns |
There was a problem hiding this comment.
recorder.turns only increments for nonempty agentMessage items, so reasoning/tool-only iterations never reach this new limit. with max_turns=1, five reasoning + MCP tool cycles complete with turns_used=0 and no interrupt
There was a problem hiding this comment.
Confirmed. I removed the incomplete planner change from this PR and submitted the shared fix separately in #201 . It counts completed model responses using deduplicated cumulative SDK usage updates, including reasoning/tool-only responses, and applies the same budget in CLI and Dashboard. The new regression tests cover the five-cycle case at budgets 1 and 2, multiple items within one response, duplicate updates, finish preservation and cleanup.
| .. note:: | ||
|
|
||
| 公开的 Target50 协议固定在 ``robots/robocasa/eval/target50.json`` 中。 | ||
| 公开的 Target50 协议固定在 ``robots/robocasa/eval/target50_v2.json`` 中。 |
There was a problem hiding this comment.
is the target50.json unused?
There was a problem hiding this comment.
It is still used for explicit validation of historical v1 records with --manifest robots/robocasa/eval/target50.json. Current runs and the default validator use v2. The paired guides now explain this distinction, and regression coverage verifies that v1 records require the legacy manifest. Updated in 4753e89.
| memory/robocasa/results/<Task>_s0.json | ||
| memory/robocasa/results/recipe_<Task>_s0.jsonl | ||
| memory/robocasa/results/<Task>.md # 可选 | ||
| 新版严格采用 PR #130 交付包的 103 份记忆:43 份 seed-0 audit JSON、43 份 |
| --memory-profile local \ | ||
| --memory-dir ./target50-memory/robocasa | ||
| python -m robots.robocasa.migrate_memory \ | ||
| --source /path/to/package/changed_tree/robocasa-memory-hf-staging-20260829/robocasa/memory \ |
There was a problem hiding this comment.
Is there any way to use a custom hf url and path directly? And where is this folder changed_tree/robocasa-memory-hf-staging-20260829/ from?
There was a problem hiding this comment.
Is the migrate_memory for migrate the explorations?
There was a problem hiding this comment.
The guides now document RPENT_MEMORY_HF_REPO=<owner>/<dataset> for another dataset with the same RoboCasa subtree. For a custom path or branch, use hf download and point --memory-profile local --memory-dir at the downloaded subtree. The environment variable accepts a repository ID, not a browser URL.
The old changed_tree/... path came from a local delivery package. The migration script only repackaged those supplied files; it was not required for exploration. I removed the script and package-specific instructions, addressing the follow-up question as well. Updated in 4753e89.
| 上的规范复现清单。它固定 ``target`` 环境 split、依赖 revision、memory 边界、 | ||
| task/seed 矩阵、cell 时限、成功来源与重试规则;协议 ID 为 | ||
| ``robocasa-harness-vla-v1``: | ||
| ``robocasa-harness-vla-v2``: |
There was a problem hiding this comment.
The protocol ID identifies the result format and evaluation rules so the validator can distinguish historical v1 records from current v2 records. It does not select or pin the memory data version. Both guides now state this directly (4753e89).
| ``<output_dir>/vla_server.log``。 | ||
|
|
||
| 已发布的 Target50 结果 | ||
| 历史 task-only v1 结果 |
There was a problem hiding this comment.
a simple description for the old result is enough. for fully table of the old version, give a url to the specific commit.
There was a problem hiding this comment.
Done. Both guides now retain only a short historical-results summary and link to the full table at a specific, verified code commit. They also distinguish those historical task-only aggregates from the current task-global policy. Updated in 4753e89.
| @@ -0,0 +1,2257 @@ | |||
| { | |||
There was a problem hiding this comment.
clean the files in this folder
There was a problem hiding this comment.
Removed the one-off JSON/Markdown validation reports and migration utility in 4753e89. The evaluation folder retains runtime result handling, reusable validation code, and the current/historical protocol resources. New validation traces and data-version records remain local rather than being committed.
| @@ -16,7 +16,7 @@ launcher. | |||
| ## Runtime Flow | |||
There was a problem hiding this comment.
if the content is included in the .rst, this file can be removed.
There was a problem hiding this comment.
Done. The duplicate robot README is removed, matching current main. Setup and runtime instructions live in the English/Chinese RST guides; the root README entries and HF dataset READMEs now explain the task/global layout. Updated in 4753e89.
| remote_repo=robot_spec.memory_repo_id, | ||
| **( | ||
| { | ||
| "revision": getattr(args, "memory_revision", None) |
There was a problem hiding this comment.
is there a --memory-revision args in the main.py?
There was a problem hiding this comment.
The original flag was registered by the RoboCasa robot extension, rather than directly in main.py. It is now removed along with revision forwarding: memory uses the standard unpinned HF sync in both CLI and Dashboard. Tests cover both entry points and memory policies. Updated in 4753e89.
| #: extensions can opt into exploration with their own reset semantics. | ||
| supports_exploration: bool = False | ||
| memory_repo_id: str = "RLinf/RPent-memory" | ||
| memory_revision: str | None = None |
There was a problem hiding this comment.
the memory_revision is too redundant
There was a problem hiding this comment.
Agreed; the added RobotSpec.memory_revision field and RoboCasa-specific revision plumbing are removed. The shared RobotSpec, CLI/Dashboard sync and memory manager match current main; mutable HF/local memory sources use the existing interfaces. Updated in 4753e89.
|
|
||
| def execute_tool(self, name: str, input_dict: dict[str, Any]) -> ToolResult: | ||
| """Require selected memory reads before robot motion or completion.""" | ||
| motion_tools = { |
There was a problem hiding this comment.
Do we need to include reset in this gate?
| ) | ||
| policy = "task-global" | ||
| else: | ||
| selection = memory_from_variables(variables) |
There was a problem hiding this comment.
when a dashboard task has a missing global file or a half pair, get_toolkit() validates memory only after init_runtime() has started the env/vla daemons.
|
Do RoboCasa Target50 runs need a strict reproducibility branch or a pinned HF revision for this memory, or is following the mutable main branch intentional? if strict reproduction is required, could we record the resolved revision or content hash in the result metadata? |
Behavior
RoboCasa defaults to
--memory-policy task-global: read the current task's JSON, recipe, optional Markdown andglobal/GLOBAL_MEMORY.mdcompletely before robot actions.task-onlyuses the same task files with global disabled in both the prompt and RPent file tools. Cross-task reads remain denied. Live task language and observations take precedence over memory; no-reset and Target50's 40/999/8 settings are unchanged.Files are discovered from the standard
task_only/andglobal/directories. NoCORPUS.json, pinned memory revision, extraRobotSpec.memory_revision, or--memory-revisionflag is required. A half-present JSON/recipe pair fails early; missing optional task layers are reported, and task-global requires its global file.Review fixes and documentation
target50.jsononly for explicit historical v1 result validation. Current runs use v2; the protocol ID distinguishes result formats and evaluation rules, not memory data versions. Replace duplicated historical score tables in the guides with a brief summary and a link to the historical code commit.Companion data PRs
reproduce/memory, replacing the oldresults/layout. Other benchmark subtrees are unchanged.Memory follows the selected mutable branch. Data PRs require maintainer merge; local validation traces and version records are not committed.
Validation
pytest tests/unit_tests -v -rs: 611 passed, 3 skipped (optional RoboTwin/LeRobot dependencies).pre-commit run --all-files: passed.