Skip to content

Conversation

@jiaxinnns
Copy link

Exercise Review

Exercise Discussion

Fixes #65

Checklist

  • If you require a new remote repository on the Git-Mastery organization, have you created a request for it?
  • Have you written unit tests using repo-smith to validate the exercise grading scheme?
  • Have you tested the download script using test-download.sh?
  • Have you verified that this exercise does not already exist or is not currently in review?
  • Did you introduce a new grading mechanism that should belong to git-autograder?
  • Did you introduce a new dependency that should belong to app?

@woojiahao woojiahao self-requested a review November 30, 2025 12:32
@woojiahao woojiahao added the exercise review Review a proposed exercise label Nov 30, 2025
Copy link
Member

@woojiahao woojiahao left a comment

Choose a reason for hiding this comment

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

Some preliminary comments

initialization:
steps:
- type: bash
runs: echo "It was a dark and stormy night." > story.txt
Copy link
Member

Choose a reason for hiding this comment

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

Note for all repo-smith spec files, but please use the semantic types provided rather than reaching for bash every time.

  • echo -> new-file
  • git checkout -> checkout

Copy link
Author

Choose a reason for hiding this comment

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

a7ae7b8

Left the checkout commands as they are for now due to the need for the HEAD~1 parameter

empty: false
- type: bash
runs: |
git checkout -b visitor-line HEAD~1
Copy link
Member

Choose a reason for hiding this comment

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

For these types of commits, can you explain why you need to base them off of HEAD~1?

Copy link
Member

Choose a reason for hiding this comment

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

Okay I see the point. I will include an additional parameter to repo-smith to support this

)


def get_commit_from_message(exercise: GitAutograderExercise, message: str) -> Optional[GitAutograderCommit]:
Copy link
Contributor

@jovnc jovnc Dec 4, 2025

Choose a reason for hiding this comment

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

This is similar to what I implemented, maybe I can extract this out to exercise_utils so that you can reuse it, but will need to wait and see which one gets merged first. Need to check first whether exercise_utils can be used under verify.py first, as it might not be loaded into the namespace.

#91

Update: verify.py cannot use util functions from exercise_utils, thus we can stick with this implemetation.

- type: commit
message: Mention noise
empty: false
- type: bash
Copy link
Contributor

Choose a reason for hiding this comment

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

I have also implemented the support for start-point in repo-smith, so we can wait for it to get merged.

git-mastery/repo-smith#4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

exercise review Review a proposed exercise

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Exercise Discussion] T6L1/branch-previous

3 participants