feat(queue): agent_presence-schema + presence-versdrempel (IDEA-194) #58
No reviewers
Labels
No labels
severity/s4
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
janpeter/scrum4me-shared!58
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/idea194-agent-presence"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fase A van IDEA-194 (presence per queue-adres), plan v6 Task 1 / spec rev 5 §4.
Wat
lib/queue-identity.ts:PRESENCE_FRESH_SECONDS = 45— de vers-drempel voor de watcher-hartslag (drie herpoll-ticks van 15 s). Eén waarheid voor CLI én MCP; de s4m-queue-CLI krijgt in Task 4 een bewuste tweelingkopie insrc/types.tsmet een vocab-drift-gate die de twee vergelijkt.prisma/schema.prisma: modelAgentPresence(@@map("agent_presence")), PK(server, model)— nooit per pid. Watcher-kolommen, sessie-kolommen ensession_expected_byvoor de poll-route.__tests__/queue-identity.test.ts: test die de 45 vastlegt.Wat er bewust níet in zit
Geen status-kolom en geen SQL-view: "vers", "bezig", "beschikbaar" en "onbemand" zijn leesregels (spec §6.1), afgeleid in identieke twin-implementaties in s4m-queue en scrum4me-mcp. Geen
busy_since. Stale rijen blijven staan — geen cleanup, geen DELETE-grant.Verificatie
npm run verify(verify-no-deps + typecheck + vitest): 274/274 groen, 26 test-bestanden.scripts/gen-consumer-schema.sh→ prisma 7.8.0validate→ The schema is valid.Opvolging (niet in deze PR)
gen-consumer-schema.shemit nogurl/directUrlin hetdatasource-blok; Prisma 7 weigert die. De ingecheckteprisma/schema.prismavan Scrum4Me heeft ze er met de hand uit. Die drift hoort thuis bij Task 2 (submodule-bump +gen-schema.sh), niet hier.Vervolg: Task 2 bumpt de submodule in Scrum4Me en schrijft de migratie
20260912120000_agent_presence.🤖 Generated with Claude Code
APPROVED
Geen gekoppeld plan gevonden — beoordeeld op codekwaliteit + product-standaarden.
Findings
Review-notities
lib/queue-identity.ts:55exporteertPRESENCE_FRESH_SECONDS = 45als pure shared constante zonder extra runtime-dependencies; dit past bij de@scrum4me/sharedarchitectuur als canonieke pure TS-bron.prisma/schema.prisma:1465voegtAgentPresencetoe aan het canonieke shared Prisma-schema. Volgens de productdocs hoort de schemawijziging hier te starten; migraties draaien later uitsluitend in deScrum4Medesignated migrator-consumer, dus het ontbreken van een migratie in deze PR is hier conform.__tests__/queue-identity.test.ts:156dekt de geëxporteerde presence-versdrempel af. De modelschemawijziging zelf is declaratief; ik zie in de diff geen consumer-code die daardoor direct extra unitcoverage nodig heeft.