Prompt file imported from samuellealb/bluelist (
.github/prompts/review-conventions.prompt.md). Copyright stays with the author.
Review the current changes against Bluelist conventions and report findings.
- Inspect the diff (e.g.
git --no-pager diffandgit --no-pager diff --staged). - Check for convention violations:
- Bluesky logic goes through
AtpService(no directnew AtpAgent) and lives insrc/lib/bskyService.ts. - Services guard
authStore.isLoggedInand handle'Token has expired' → handleSessionExpired(). - Read functions return
{ displayData: DataObject, ...JSON }and sync the store. - New
DataObjecttypes have a matchingDataCard.vuebranch and updated union. - Pinia stores use the options API; cross-store access happens inside actions.
- Server secrets stay in
runtimeConfig(never client-exposed). - Components:
<script setup>, typed props, BEM CSS, per-component CSS import. - Conventional Commit message.
- Bluesky logic goes through
- Flag security concerns (leaked secrets, unsanitized HTML — note
dompurifyis available) and anyanytypes under strict TypeScript. - Report issues grouped by severity with file/line references and concrete
fixes. Do not modify code unless asked; suggest running
yarn lint.