Skip to content

Fix: add A5 early-resolve task hint API#1407

Closed
Little-oil wants to merge 1 commit into
hw-native-sys:mainfrom
Little-oil:fix/a5-allow-early-resolve
Closed

Fix: add A5 early-resolve task hint API#1407
Little-oil wants to merge 1 commit into
hw-native-sys:mainfrom
Little-oil:fix/a5-allow-early-resolve

Conversation

@Little-oil

Copy link
Copy Markdown
Contributor

Summary

  • Add the allow_early_resolve hint API to A5 L0TaskArgs
  • Expose the API through L0TaskArgsWithDeps and reset it when arguments are recycled
  • Keep A5 dispatch behavior unchanged while accepting cross-architecture generated orchestration

This unblocks the A5 orchestration compilation failure in hw-native-sys/pypto-lib#801.

Testing

  • C++ unit tests (61 passed)
  • A5sim runtime rebuild via editable install
  • A5sim tensormap_and_ringbuffer coverage (71 passed, 2 skipped)
  • Pre-commit hooks
  • A5 hardware tests (not run: local DCMI initialization fails with -8005)

The two hardware-only async-notify demos selected by the simulator-wide command were not counted as simulator coverage. They hard-code a2a3/a5 and fail locally at rtSetDevice because no usable device is available.

- Add the generated-code-compatible hint to A5 task arguments
  without enabling A2/A3 early-dispatch behavior
- Expose the hint through dependency-owning arguments and cover its
  reset semantics
@coderabbitai

coderabbitai Bot commented Jul 20, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 7f23cc48-754f-4465-a552-ab80da5f36f4

📥 Commits

Reviewing files that changed from the base of the PR and between ee40a7f and 6c85427.

📒 Files selected for processing (4)
  • src/a5/runtime/tensormap_and_ringbuffer/orchestration/pto_arg_with_deps.h
  • src/a5/runtime/tensormap_and_ringbuffer/runtime/pto_types.h
  • tests/ut/cpp/CMakeLists.txt
  • tests/ut/cpp/a5/test_task_args.cpp

📝 Walkthrough

Walkthrough

Adds the allow_early_resolve task hint to A5 arguments, forwards it through dependent-task arguments, resets it during argument clearing, and adds unit-test coverage.

Changes

Early Resolve Task Hint

Layer / File(s) Summary
Task hint storage and lifecycle
src/a5/runtime/tensormap_and_ringbuffer/runtime/pto_types.h
Arg stores allow_early_resolve_, exposes setter/getter methods, and resets the hint to false during clear().
Wrapper exposure and tests
src/a5/runtime/tensormap_and_ringbuffer/orchestration/pto_arg_with_deps.h, tests/ut/cpp/CMakeLists.txt, tests/ut/cpp/a5/test_task_args.cpp
L0TaskArgsWithDeps forwards the hint accessors, and registered tests verify round-trip and reset behavior for both argument types.

Estimated code review effort: 2 (Simple) | ~10 minutes

Poem

A rabbit found a hint so bright,
“Resolve early,” it said just right.
It hopped through args, then cleared the slate,
With tests to guard its tiny state.
Oops! Ears up—the build is great!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: adding the A5 early-resolve task hint API.
Description check ✅ Passed The description matches the change set and describes the API addition, reset behavior, and testing.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces the allow_early_resolve task hint to L0TaskArgs and exposes it in L0TaskArgsWithDeps. It also adds corresponding unit tests to verify that the hint is correctly set, reset, and exposed. There are no review comments, so I have no feedback to provide.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

@Little-oil Little-oil closed this Jul 21, 2026
@Little-oil
Little-oil deleted the fix/a5-allow-early-resolve branch July 21, 2026 00:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant