Skip to content

audit: "Valid Parentheses" (#20) to Public Release #18

Description

@Rowrow620

First Timers Only

This issue is reserved for developers who are new to AlgoBuddy or open-source contributing. We know that submitting a first pull request can feel intimidating. The goal of this issue is to guide you step-by-step through making your first contribution to the AlgoBuddy repository.

Description of the Issue

The visualizer for Valid Parentheses (LeetCode #20) is currently in Developer Mode ([EXP]). We need to audit its step generator, verify active line highlighting, add an automated unit test, and promote it to Public Release status (AuditStatus::Audited).

Implementation Steps

  1. Launch AlgoBuddy in Developer Mode: cargo run -- --dev
  2. Select Valid Parentheses (audit: "3Sum" (#15) to Public Release #20) and scrub through the timeline steps to verify:
    • Variable snapshots and LIFO stack visualizations are accurate.
    • Source code line highlighting (code_line) matches the active execution step.
  3. Open src/app.rs under #[cfg(test)] mod tests and add a unit test asserting step output for valid string "()[]{}" and invalid string "(]".
  4. Open src/model/problem.rs and update audit_status(&self) to include Problem::ValidParentheses:
    match self {
        Problem::ContainsDuplicate | Problem::TwoSum | Problem::ValidAnagram | Problem::ValidParentheses => {
            AuditStatus::Audited
        }
        _ => AuditStatus::Unaudited,
    }

Acceptance Criteria

To merge a pull request for this issue:

  • Code Formatting: cargo fmt --all -- --check completes without warnings.
  • All Tests Pass: cargo test passes 100% of unit tests.
  • Issue Solved: Valid Parentheses visualizer appears in Public Release Mode without requiring --dev.
  • Clean Git Branch: Changes are committed to a feature branch targeting dev.

Step-by-Step Contribution Guide

  • Claim this issue: Comment below that you are working on this issue to receive assignment.
  • Fork and Branch: Create a new branch off dev named audit-valid-parentheses.
  • Make and Test Changes: Run cargo fmt --all and cargo test locally to verify build health.
  • Submit PR: Push your branch to GitHub and create a Pull Request targeting the dev branch.

Additional Information

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions