matrix-bot: Remove __pycache__ dir and fix changelog room

This commit is contained in:
Luis Hebendanz 2024-07-03 18:38:21 +02:00
parent ad07fec05f
commit aa5e6c7c7c
14 changed files with 17 additions and 9 deletions

View File

@ -1,2 +1,3 @@
*.json
**/data
**/__pycache__

View File

@ -119,6 +119,9 @@ def create_parser(prog: str | None = None) -> argparse.ArgumentParser:
def matrix_password() -> str:
matrix_password = environ.get("MATRIX_PASSWORD")
if matrix_password is not None:
return matrix_password
matrix_password_file = environ.get("MATRIX_PASSWORD_FILE", default=None)
if matrix_password_file is None:
raise Exception("MATRIX_PASSWORD_FILE environment variable is not set")

View File

@ -133,7 +133,7 @@ async def changelog_bot(
return
# If you made a new room and haven't joined as that user, you can use
room: JoinResponse = await client.join(matrix.review_room)
room: JoinResponse = await client.join(matrix.changelog_room)
if not room.transport_response.ok:
log.error("This can happen if the room doesn't exist or the bot isn't invited")
@ -160,17 +160,17 @@ async def changelog_bot(
log.info(f"Generating changelog from {fromdate} to {todate}")
system_prompt = f"""
Generate a concise changelog for the past week from {fromdate} to {todate},
focusing only on new features and summarizing bug fixes into a single entry.
Ensure the following:
Create a concise changelog for the past week from {fromdate} to {todate}, focusing on new features and summarizing bug fixes into a single entry. Follow these guidelines:
- Deduplicate entries
- Discard duplicate entries
- Discard uninteresting changes
- Keep the summary as brief as possible
- Use present tense
- Our commit messages are in the format: "scope: message". For example: "changelog: Add a new feature"
- Only ever mention the same feature once
The changelog is as follows:
- Keep the summary brief
- Follow commit message format: "scope: message (#number)"
- Link pull requests as: '{gitea.url}/{gitea.owner}/{gitea.repo}/pull/<number>'
- Mention each feature only once
Changelog:
---
"""

View File

@ -12,6 +12,10 @@ url: str = "https://api.openai.com/v1/chat/completions"
def api_key() -> str:
openapi_key = environ.get("OPENAI_API_KEY")
if openapi_key is not None:
return openapi_key
openai_key_file = environ.get("OPENAI_API_KEY_FILE", default=None)
if openai_key_file is None:
raise Exception("OPENAI_API_KEY_FILE environment variable is not set")