## Summary
- Migrate hello baseline from Python to Node.js 22 / TypeScript / npm
- Bootstrap Spec Kit (`cursor-agent`), Constitution 1.0.1, and Cursor skills/rules for Plane-backed SDD
- Add SQLite migrate, LiteLLM env example, and OTEL/Grafana/Tempo/Loki/Prometheus local stack
- Publish LCOV in Sonar CI so the Quality Gate can evaluate new coverage
## Notes
- Target base: `develop` (Gitflow). PR #5 into `main` was closed as incorrect.
- Keep `.cursor/mcp.json` and `.env` out of the PR.
## Test plan
- [ ] `npm ci && npm run typecheck && npm test`
- [ ] `npm run test:coverage` produces `coverage/lcov.info`
- [ ] `npm run migrate` creates SQLite schema
- [ ] `docker compose up -d` then `npm start`; Grafana demo at http://localhost:3001/d/ticketlab-demo
- [ ] SonarQube Quality Gate passes on this PR
Enable local workshop readiness with executable SQLite migrations, OpenTelemetry hello signals, and a provisioned Grafana demo dashboard over Tempo/Loki/Prometheus.
Co-authored-by: Cursor <cursoragent@cursor.com>
andreferraro
changed title from feat: bootstrap Spec Kit SDD workflow and TicketLab constitution to feat: migrate to TypeScript, Spec Kit SDD, and lab observability stack2026-08-11 15:03:47 -03:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
cursor-agent), Constitution 1.0.1, and Cursor skills/rules for Plane-backed SDDNotes
develop(Gitflow). PR #5 intomainwas closed as incorrect..cursor/mcp.jsonand.envout of the PR.Test plan
npm ci && npm run typecheck && npm testnpm run test:coverageproducescoverage/lcov.infonpm run migratecreates SQLite schemadocker compose up -dthennpm start; Grafana demo at http://localhost:3001/d/ticketlab-demoFailed to generate code suggestions for PR
feat: bootstrap Spec Kit SDD workflow and TicketLab constitutionto feat: migrate to TypeScript, Spec Kit SDD, and lab observability stack