kangwonlee / kangwonlee/gemini-python-tutor

Before the Marketplace

Aperta
#1 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Python
Stelle
1
Fork
2
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

## 1. Enhance Documentation

* [ ] README.md:
* [ ] More detailed usage examples: Provide various workflow examples (e.g., different `report-files` configurations, using wildcards in `student-files`).
* [ ] Troubleshooting: Add a section for common issues and how to resolve them.
* [ ] Contribution guidelines: Encourage community contributions by explaining how to contribute code, bug reports, or feature requests.
* [ ] Security best practices: Mention how you handle sensitive data (API keys) and any security measures you've implemented.
* [ ] Badges: Add badges for code quality (e.g., from CodeFactor), test coverage (e.g., from Codecov), and license.
* [ ] Action Metadata (action.yml):
* [ ] Improve descriptions: Make the descriptions of inputs and outputs more informative and user-friendly.

## 2. Improve Code Quality

* [ ] Error Handling:
* [ ] In `entrypoint.py`, `get_path_tuple` could provide more informative error messages when no valid paths are found. Consider using custom exceptions for specific error cases.
* [ ] In `ai_tutor.py`, `ask_gemini` could raise exceptions instead of just logging errors, allowing for more robust error handling in calling functions.
* [ ] Logging:
* [ ] Use different log levels (e.g., `debug`, `warning`, `error`) more effectively to provide useful information.
* [ ] Consider using a logging framework like `structlog` for more structured and informative logs.
* [ ] Type Hints:
* [ ] Add type hints to function arguments and return values for better code readability and maintainability.
* [ ] Code Style:
* [ ] Use a code linter (e.g., `flake8`, `pylint`) to enforce consistent code style and identify potential issues.

## 3. Enhance Functionality
* [ ] Input Validation:
* [ ] Add validation for input values (e.g., check if `report-files` are valid JSON files, validate the format of `student-files`).
* [ ] Flexibility:
* [ ] Consider adding an option to specify the model to use (e.g., allow users to choose between different Gemini versions).
* [ ] Allow users to customize the prompt or provide their own template.
* [ ] Output Options:
* [ ] Provide different output formats (e.g., markdown, plain text).
* [x] International Support [1febde8](https://github.com/kangwonlee/gemini-python-tutor/commit/1febde88a86b0512aadc9dacd5097491de0163e4)

## 4. Testing
* [x] Unit Tests:
* [x] Add unit tests for the functions in `ai_tutor.py` and `entrypoint.py`.
* [x] Integration Tests:
* [x] Create integration tests that run the action in a realistic environment (e.g., using `act`).
## 5. Publishing
* [x] Versioning:
* [x] Use semantic versioning (e.g., v1.0.0) to indicate changes in your action.
* [ ] GitHub Marketplace:
* [ ] Publish your action on the GitHub Marketplace for better discoverability.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

The requested work spans README.md, action.yml, entrypoint.py, and ai_tutor.py, with additional testing and publishing tasks. Start by choosing one unchecked checklist item and inspecting the named file and existing tests. Done should mean that the selected item is implemented and its relevant documentation or tests are updated.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
github-actions, python
Ambito
backend, devops, documentation, release, testing
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.