Files
ODIAN_Launcher/src/lib/mock-notes.ts
T
Kelorastus b7f3061be3 ODIAN Launcher: hub, installer, local stack and remembered sign-in (M2)
- Tauri 2 + Svelte 5 hub in ODIAN dark: patch notes and roadmap, install and
  update progress, local stack status, settings with DHP and MCP addresses.
- crates/odian-packs: Rust installer for pack format v1 (signed manifests,
  resumable verified downloads from a DHP or an ODIAN drive), byte-compatible
  with ODIAN_MCP_Server's Python odian_packs.
- Local stack on 127.0.0.1: Postgres -> Engine API -> tile server -> Odian.exe,
  one Job Object, clean shutdown; database snapshot restore on a fresh PC only.
- Keycloak sign-in through the DHP's MCP, remembered until Sign out with a
  launcher session that renews the Engine token silently.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-15 15:23:17 +02:00

76 lines
2.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// Sample patch notes for the browser mock. They deliberately contain markup
// that must NOT survive sanitizing (a script, an event handler, a javascript:
// link): if any of it shows up or runs, the sanitizer is broken.
export type NotesVariant = "full" | "no-roadmap";
const PROBES = `
<script>alert("patch notes are untrusted")</script>
<img src="x" onerror="alert('patch notes are untrusted')">
`;
const ROADMAP = `
## Roadmap
### Next — 0.53
- Globally unique IDs across DHPs, the groundwork for merging offline edits.
- ODIAN assistant in the Chat panel, answering from the ontology.
- Pattern-of-life (Habits) summary available to the assistant by hex ID.
### Later
- Merge offline edits back into the DHP database, git-style.
- Search across entity documents from the map.
- NATO MIM governance workflow for exported data.
`;
const NOTES: Record<string, string> = {
"0.52.0": `
# ODIAN 0.52.0
Released 2026-09-12 · required update for all operators on this DHP.
## Highlights
- **Mission assignment** — target → aircraft tasking now proposes a ranked list. The pick you make is recorded with the solve.
- **Habits panel** — a pattern-of-life summary for each aircraft, one click from the track card.
- **Offline map tiles** — the dark basemap \`protomaps_20260423\` ships with the install, so panning and zooming never need the network.
## Improvements
- Track trails draw about 3× faster above 5,000 live contacts.
- NATO MIM export validates against the SHACL shapes before it writes anything.
- The Chat panel keeps its scroll position while new messages arrive.
- Install and update resume from the last verified file.
## Fixes
- Fixed a crash when a vessel report had no MMSI.
- Vessel positions no longer freeze after an AIS feed outage.
- The replay time slider no longer skips the final minute.
${PROBES}
## Known issues
- The first launch after an install can take up to 60 s while Postgres warms its cache.
> Report problems from **Help → Send diagnostics** inside ODIAN, or read the [operator guide](https://docs.example.invalid/odian/0.52) and [this link](javascript:alert(1)).
`,
"0.51.0": `
# ODIAN 0.51.0
Released 2026-08-04.
## Highlights
- **Airspace layers** — restricted and danger areas draw from the DHP's AIXM import.
- **Track history** — scrub up to 72 h of recorded positions per contact.
## Improvements
- Startup is 40% faster on machines with a local database.
- Layer panel remembers which groups you collapsed.
## Fixes
- Fixed tooltips lingering after the map was dragged.
- Fixed a rare deadlock when two operators edited the same annotation.
`,
};
export function mockNotes(version: string, variant: NotesVariant): string {
const body = NOTES[version] ?? `# ODIAN ${version}\n\nNo notes were published for this version.\n`;
return variant === "full" ? `${body}${ROADMAP}` : body;
}