mirror of
https://github.com/temetro/temetro.git
synced 2026-07-26 11:58:14 +00:00
8ba7256105
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>
55 lines
3.0 KiB
Markdown
55 lines
3.0 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to temetro are recorded here. The format is loosely based on
|
|
[Keep a Changelog](https://keepachangelog.com/), and the project follows
|
|
[Semantic Versioning](https://semver.org/). See [RELEASING.md](./RELEASING.md)
|
|
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
|
|
update is available.
|
|
- **LAN access.** The frontend now resolves the backend URL from the host the
|
|
browser is using, so other departments can reach temetro at
|
|
`http://<server-LAN-IP>:3000` with no rebuild. A Settings panel surfaces the
|
|
shareable network address. `GET /api/network` reports detected LAN addresses.
|
|
- **Prebuilt Docker images** published to Docker Hub (`khalidxv/temetro-backend`,
|
|
`khalidxv/temetro-frontend`) via a tag-triggered GitHub Actions release workflow.
|
|
- **Voice dictation** on the AI chat input (Web Speech API), with graceful
|
|
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
|
|
API (Better Auth, multi-tenant clinics, org-scoped patient records), the patient
|
|
wallet encrypted-share flow, and Dockerised local run.
|