Auto note

This commit is contained in:
lelemm
2026-02-09 10:34:35 -03:00
parent 266e7f9cac
commit e6d63f620e
3 changed files with 21 additions and 18 deletions

View File

@@ -28,7 +28,7 @@ try {
}
const data = JSON.stringify({
model: 'gpt-4o-mini',
model: 'gpt-4.1-mini',
messages: [
{
role: 'system',
@@ -71,30 +71,22 @@ try {
const rawContent = response.choices[0].message.content.trim();
console.log('Raw content from OpenAI:', rawContent);
let category;
try {
category = JSON.parse(rawContent);
console.log('Parsed category:', category);
} catch (parseError) {
console.log(
'JSON parse error, using raw content:',
parseError.message,
);
category = rawContent;
}
//CHANGED HOW IT READS THE CATEGORY TO AVOID ERRORS WHEN LLM DOESNT ANSWER A JSON
// Validate the category response
const validCategories = [
'Features',
'Bugfixes',
'Enhancements',
'Maintenance',
];
if (validCategories.includes(category)) {
const category = validCategories.find(cat =>
rawContent.includes(cat),
);
if (category) {
console.log('OpenAI categorized as:', category);
setOutput('result', category);
} else {
console.log('Invalid category from OpenAI:', category);
console.log('No valid category found in OpenAI response:', rawContent);
console.log('Valid categories are:', validCategories);
setOutput('result', 'null');
}

View File

@@ -28,7 +28,7 @@ try {
console.log('CodeRabbit comment body:', commentBody);
const data = JSON.stringify({
model: 'gpt-4o-mini',
model: 'gpt-4.1-mini',
messages: [
{
role: 'system',

View File

@@ -83,11 +83,22 @@ jobs:
PR_DETAILS: ${{ steps.pr-details.outputs.result }}
SUMMARY_DATA: ${{ steps.generate-summary.outputs.result }}
#INTERNAL BOT DOESN'T TRIGGER WORKFLOWS ON COKMMIT. CHANGING TO ACTUAL BOT APP
- name: Generate GitHub App token
if: steps.check-first-comment.outputs.result == 'true' && steps.check-release-notes-exists.outputs.result == 'false' && steps.generate-summary.outputs.result != 'null' && steps.determine-category.outputs.result != 'null' && steps.determine-category.outputs.result != ''
id: app-token
uses: actions/create-github-app-token@v2
with:
app-id: ${{ vars.ACTUAL_BOT_APP_ID }}
private-key: ${{ secrets.ACTUAL_BOT_PRIVATE_KEY }}
owner: actualbudget
repositories: actual
- name: Create and commit release notes file via GitHub API
if: steps.check-first-comment.outputs.result == 'true' && steps.check-release-notes-exists.outputs.result == 'false' && steps.generate-summary.outputs.result != 'null' && steps.determine-category.outputs.result != 'null' && steps.determine-category.outputs.result != ''
run: node .github/actions/ai-generated-release-notes/create-release-notes-file.js
env:
GITHUB_TOKEN: ${{ secrets.ACTIONS_UPDATE_TOKEN }}
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
GITHUB_REPOSITORY: ${{ github.repository }}
GITHUB_EVENT_ISSUE_NUMBER: ${{ github.event.issue.number }}
SUMMARY_DATA: ${{ steps.generate-summary.outputs.result }}
@@ -97,7 +108,7 @@ jobs:
if: steps.check-first-comment.outputs.result == 'true' && steps.check-release-notes-exists.outputs.result == 'false' && steps.generate-summary.outputs.result != 'null' && steps.determine-category.outputs.result != 'null' && steps.determine-category.outputs.result != ''
run: node .github/actions/ai-generated-release-notes/comment-on-pr.js
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
GITHUB_REPOSITORY: ${{ github.repository }}
GITHUB_EVENT_ISSUE_NUMBER: ${{ github.event.issue.number }}
SUMMARY_DATA: ${{ steps.generate-summary.outputs.result }}