mirror of
https://github.com/temetro/temetro.git
synced 2026-07-26 11:58:14 +00:00
chore: require release-after-push in CLAUDE.md; update changelog
Document that finishing a unit of work and pushing must always be followed by a version bump (root + backend + frontend package.json) and a Docker Hub image publish — temetro ships as prebuilt images, so an un-released change never reaches a self-hosted clinic. Record this session's changes in CHANGELOG.md. (The two stray root logo PNGs were removed in an earlier commit this session.) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -8,6 +8,15 @@ for how releases are cut and published.
|
||||
## [Unreleased]
|
||||
|
||||
### Added
|
||||
- **Patients table pagination.** The Patients list now paginates at 10 rows per
|
||||
page (COSS `Pagination`), so large clinics no longer scroll endlessly.
|
||||
- **Per-patient record history.** The patient detail sheet shows an audit
|
||||
timeline of every add/change on that chart. `GET /api/activity/patient/:fileNumber`.
|
||||
- **Patient summary PDF.** A **Download summary** action on the patient sheet
|
||||
produces a clean, printable one-page clinical summary (browser "Save as PDF").
|
||||
- **AI setup notice.** A single, dismissible heads-up appears above the chat
|
||||
input on a fresh chat when no AI provider (API key or local Ollama) is
|
||||
configured; it clears itself once you send a message.
|
||||
- **Version & update awareness.** `GET /api/version` reports the running version
|
||||
and checks GitHub Releases for a newer one; Settings → **About & updates** shows
|
||||
the current/latest version, and an optional, dismissible banner appears when an
|
||||
@@ -22,9 +31,22 @@ for how releases are cut and published.
|
||||
fallback where the browser doesn't support it.
|
||||
|
||||
### Changed
|
||||
- **Messages thread** rebuilt on the shadcn `Message` / `Bubble` / `Attachment`
|
||||
components (COSS colour tokens preserved) for a cleaner conversation surface.
|
||||
- **Patient status badges** now use semantic colours (active → success,
|
||||
inpatient → info) instead of a flat secondary badge.
|
||||
- `docker-compose.yml` references the published images (with a build fallback) and
|
||||
no longer bakes a fixed API URL into the frontend.
|
||||
|
||||
### Fixed
|
||||
- **AI import approval card.** `previewImport` now declares a concrete record
|
||||
schema so Google Gemini emits a real tool call (and the approval card renders)
|
||||
instead of dumping a `tool_code`/JSON wall as text. The system prompt also
|
||||
forbids printing tool calls and re-listing fields.
|
||||
- **Settings network address** no longer shows a bogus container IP / "Error"
|
||||
under Docker — the `/api/network` endpoint now skips container-internal
|
||||
interfaces, and the panel falls back to the helpful LAN hint.
|
||||
|
||||
## [0.1.0] — 2026-06-26
|
||||
|
||||
Initial baseline: clinician AI-chat UI wired to the TypeScript/Express/Postgres
|
||||
|
||||
@@ -106,6 +106,22 @@ with the area when useful (e.g. `frontend:` / `backend:`). End commit messages w
|
||||
|
||||
`.env` files are git-ignored (only `.env.example` is tracked) — never commit real secrets.
|
||||
|
||||
### Always release after pushing
|
||||
|
||||
When you finish a unit of work and **push to `main`**, you must **also cut a release** — temetro
|
||||
ships as prebuilt Docker images, so an un-released change never reaches a self-hosted clinic. After
|
||||
the push:
|
||||
|
||||
1. **Bump the version** to the new `X.Y.Z` in **all three** `package.json` files (root,
|
||||
`backend/`, `frontend/`) — they must stay in sync (`GET /api/version` reports it).
|
||||
2. **Update `CHANGELOG.md`** (move `Unreleased` notes under a dated `## [X.Y.Z]` heading).
|
||||
3. **Publish the images to Docker Hub** as `khalidxv/temetro-backend` and
|
||||
`khalidxv/temetro-frontend`, tagged `X.Y.Z` **and** `latest`. The tag-triggered
|
||||
`release` workflow does this automatically (`git tag vX.Y.Z && git push origin main --tags`).
|
||||
|
||||
See [`RELEASING.md`](./RELEASING.md) for the full checklist. **Never** consider work "done and
|
||||
pushed" without the version bump + image publish.
|
||||
|
||||
## Customized Next.js (frontend)
|
||||
|
||||
The `frontend/` app runs a **customized Next.js 16** whose APIs/conventions differ from public docs.
|
||||
|
||||
Reference in New Issue
Block a user