Skip to content

Conversation

weinbe58
Copy link
Member

No description provided.

@Copilot Copilot AI review requested due to automatic review settings September 24, 2025 17:53
@weinbe58 weinbe58 marked this pull request as draft September 24, 2025 17:53
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR implements AOD (Acousto-Optic Deflector) tracking analysis functionality by adding a new tracking dialect and associated infrastructure. The changes enable system state tracking through quantum operations and provide analysis capabilities for AOD positioning.

Key changes:

  • Adds a new tracking dialect with system state management operations
  • Implements AOD analysis framework with lattice-based state tracking
  • Refactors TraceInterpreter constructor to use keyword-only architecture specification
  • Moves ActionTracer from taskgen to its own module for better separation of concerns

Reviewed Changes

Copilot reviewed 22 out of 22 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/bloqade/shuttle/dialects/tracking/* New tracking dialect with types, statements, and AOD analysis
src/bloqade/shuttle/passes/path2tracking.py Pass to convert path operations to tracking operations
src/bloqade/shuttle/analysis/aod/* AOD analysis framework with lattice-based state tracking
src/bloqade/shuttle/codegen/taskgen.py Refactored TraceInterpreter constructor and moved ActionTracer
src/bloqade/shuttle/dialects/action/trace.py New dedicated module for ActionTracer
src/bloqade/shuttle/arch.py Added AOD tone limits and made arch_spec keyword-only
src/bloqade/shuttle/dialects/measure/* Updated to use squin dialect's MeasurementResult
test/unit/codegen/test_taskgen.py Updated TraceInterpreter calls to use keyword arguments
test/codegen/test_taskgen.py Updated TraceInterpreter calls to use keyword arguments
Comments suppressed due to low confidence (1)

src/bloqade/shuttle/arch.py:124

  • The hash method doesn't include the new max_x_tones and max_y_tones fields, which could lead to incorrect hash behavior when these values differ between instances.
    def __hash__(self):
        return hash(
            (
                self.layout,
                frozenset(self.float_constants.items()),
                frozenset(self.int_constants.items()),
            )
        )

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.


# path = _interp.get_const_value(Path, stmt.path)
# for action in path.path:
# match
Copy link
Preview

Copilot AI Sep 24, 2025

Choose a reason for hiding this comment

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

Incomplete match statement syntax. This line ends abruptly and will cause a SyntaxError.

Suggested change
# match
# match action:
# # TODO: implement cases for action
# pass

Copilot uses AI. Check for mistakes.

Copy link
Contributor

github-actions bot commented Sep 24, 2025

PR Preview Action v1.6.2

🚀 View preview at
https://QuEraComputing.github.io/bloqade-shuttle/pr-preview/pr-80/

Built to branch gh-pages at 2025-09-25 18:55 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

Copy link

codecov bot commented Sep 24, 2025

Copy link
Contributor

github-actions bot commented Sep 24, 2025

☂️ Python Coverage

current status: ✅

Overall Coverage

Lines Covered Coverage Threshold Status
1664 1434 86% 0% 🟢

New Files

File Coverage Status
src/bloqade/shuttle/dialects/action/trace.py 95% 🟢
TOTAL 95% 🟢

Modified Files

File Coverage Status
src/bloqade/shuttle/analysis/runtime.py 99% 🟢
src/bloqade/shuttle/arch.py 73% 🟢
src/bloqade/shuttle/codegen/taskgen.py 94% 🟢
src/bloqade/shuttle/dialects/action/_init_.py 100% 🟢
src/bloqade/shuttle/dialects/gate/runtime.py 100% 🟢
src/bloqade/shuttle/dialects/init/runtime.py 100% 🟢
src/bloqade/shuttle/dialects/measure/_init_.py 100% 🟢
src/bloqade/shuttle/dialects/measure/runtime.py 100% 🟢
src/bloqade/shuttle/dialects/measure/stmts.py 97% 🟢
src/bloqade/shuttle/dialects/measure/types.py 89% 🟢
src/bloqade/shuttle/dialects/path/concrete.py 33% 🟢
src/bloqade/shuttle/dialects/path/constprop.py 40% 🟢
src/bloqade/shuttle/dialects/path/runtime.py 100% 🟢
src/bloqade/shuttle/dialects/path/spec_interp.py 39% 🟢
src/bloqade/shuttle/dialects/spec/stmts.py 100% 🟢
TOTAL 84% 🟢

updated for commit: f7a5d08 by action🐍

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