provided current project context

This commit is contained in:
2026-01-31 19:10:27 +00:00
parent 9ffa02076d
commit e4a585aee8

View File

@@ -34,18 +34,19 @@ export const buildContext = async (orgId: number, projectId: number, user: UserR
<current_context> <current_context>
<user id="${user.id}" name="${user.name}" username="${user.username}" /> <user id="${user.id}" name="${user.name}" username="${user.username}" />
<organisation name="${organisation.name}" slug="${organisation.slug}"> <current_organisation name="${organisation.name}" slug="${organisation.slug}">
<statuses> <statuses>
${Object.entries(organisation.statuses) ${Object.entries(organisation.statuses)
.map(([name, color]) => ` <status name="${name}" color="${color}" />`) .map(([name, color]) => ` <status name="${name}" color="${color}" />`)
.join("\n")} .join("\n")}
</statuses> </statuses>
</organisation> </current_organisation>
<projects> <organisation_projects id="${organisation.id}_projects" name="Projects for ${organisation.name}" count="${projects.length}">
${projects.map((p) => ` <project key="${p.Project.key}" name="${p.Project.name}" />`).join("\n")} ${projects.map((p) => ` <project key="${p.Project.key}" name="${p.Project.name}" />`).join("\n")}
</projects> </organisation_projects>
<current_project key="${project.key}" name="${project.name}">
<sprints> <sprints>
${sprints.map((s) => ` <sprint id="${s.id}" name="${s.name}" start="${s.startDate.toUTCString()?.split("T")[0]}" end="${s.endDate?.toUTCString().split("T")[0]}" />`).join("\n")} ${sprints.map((s) => ` <sprint id="${s.id}" name="${s.name}" start="${s.startDate.toUTCString()?.split("T")[0]}" end="${s.endDate?.toUTCString().split("T")[0]}" />`).join("\n")}
</sprints> </sprints>
@@ -54,7 +55,6 @@ ${sprints.map((s) => ` <sprint id="${s.id}" name="${s.name}" start="${s.start
${issues.map((i) => ` <issue id="${i.Issue.id}" number="${i.Issue.number}" type="${i.Issue.type}" status="${i.Issue.status}" title="${i.Issue.title.replace(/"/g, "&quot;")}" sprint="${sprints.find((s) => s.id === i.Issue.sprintId)?.name || "Unassigned"}" />`).join("\n")} ${issues.map((i) => ` <issue id="${i.Issue.id}" number="${i.Issue.number}" type="${i.Issue.type}" status="${i.Issue.status}" title="${i.Issue.title.replace(/"/g, "&quot;")}" sprint="${sprints.find((s) => s.id === i.Issue.sprintId)?.name || "Unassigned"}" />`).join("\n")}
</all_issues> </all_issues>
<my_issues count="${assignedIssues.length}"> <my_issues count="${assignedIssues.length}">
${assignedIssues.map((i) => ` <issue id="${i.Issue.id}" number="${i.Issue.number}" type="${i.Issue.type}" status="${i.Issue.status}" title="${i.Issue.title.replace(/"/g, "&quot;")}" sprint="${sprints.find((s) => s.id === i.Issue.sprintId)?.name || "Unassigned"}" />`).join("\n")} ${assignedIssues.map((i) => ` <issue id="${i.Issue.id}" number="${i.Issue.number}" type="${i.Issue.type}" status="${i.Issue.status}" title="${i.Issue.title.replace(/"/g, "&quot;")}" sprint="${sprints.find((s) => s.id === i.Issue.sprintId)?.name || "Unassigned"}" />`).join("\n")}
</my_issues> </my_issues>
@@ -99,5 +99,6 @@ ${assignedIssues
) )
.join("\n")} .join("\n")}
</issue_details> </issue_details>
</current_project>
</current_context>`; </current_context>`;
}; };