v6.0 — rename to Open Visualization Engine (AVA→OVE) + footer version stamp

This commit is contained in:
Z User 2026-10-26 21:19:50 +00:00
parent df39d16b61
commit 1538e83222
7 changed files with 79 additions and 15 deletions

View file

@ -2,6 +2,7 @@ import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css";
import { Toaster } from "@/components/ui/toaster";
import { APP_NAME, APP_SHORT, APP_VERSION } from "@/lib/version";
const geistSans = Geist({
variable: "--font-geist-sans",
@ -14,10 +15,10 @@ const geistMono = Geist_Mono({
});
export const metadata: Metadata = {
title: "AVA — Advanced Visualization Agent",
title: `${APP_SHORT} — ${APP_NAME} (v${APP_VERSION})`,
description:
"Audio-reactive visualization agent for clubs: 3-band spectrum detection, predictive beat tracking and AVS-style visualization scripting.",
keywords: ["AVA", "visualization", "VJ", "audio-reactive", "beat detection", "AVS", "Winamp"],
"Open Visualization Engine: audio-reactive visuals for clubs — 3-band spectrum detection, predictive beat tracking and AVS-style visualization scripting.",
keywords: ["OVE", "visualization", "VJ", "audio-reactive", "beat detection", "AVS", "Winamp"],
icons: {
icon: "/logo.svg",
},

View file

@ -1,8 +1,9 @@
// AVA — sticky footer status bar: micro-stats + engine health.
// OVE — sticky footer status bar: micro-stats + version stamp + engine health.
'use client'
import { useAvaStore } from '@/lib/store'
import { APP_NAME, APP_VERSION } from '@/lib/version'
import { cn } from '@/lib/utils'
export function FooterBar() {
@ -45,16 +46,25 @@ export function FooterBar() {
SCRIPT: <span className="ml-1 truncate text-zinc-300">{scriptName}</span>
</span>
<span className={cn('ml-auto flex shrink-0 items-center gap-1.5', error ? 'text-rose-400' : 'text-emerald-400')}>
{/* version stamp (left of the engine-health dot) + engine health */}
<div className="ml-auto flex shrink-0 items-center gap-3 sm:gap-4">
<span
className={cn(
'size-1.5 rounded-full',
error ? 'animate-pulse bg-rose-400 shadow-[0_0_8px_rgba(251,113,133,0.8)]' : 'bg-emerald-400 shadow-[0_0_8px_rgba(52,211,153,0.8)]',
)}
aria-hidden
/>
<span className="text-zinc-400">{error ? 'script error' : 'engine ok'}</span>
</span>
className="text-zinc-600"
title={`${APP_NAME} — version ${APP_VERSION}`}
>
version {APP_VERSION}
</span>
<span className={cn('flex items-center gap-1.5', error ? 'text-rose-400' : 'text-emerald-400')}>
<span
className={cn(
'size-1.5 rounded-full',
error ? 'animate-pulse bg-rose-400 shadow-[0_0_8px_rgba(251,113,133,0.8)]' : 'bg-emerald-400 shadow-[0_0_8px_rgba(52,211,153,0.8)]',
)}
aria-hidden
/>
<span className="text-zinc-400">{error ? 'script error' : 'engine ok'}</span>
</span>
</div>
</div>
</footer>
)

View file

@ -12,6 +12,7 @@ import { BeatDot } from '@/components/ava/beat-dot'
import { LinkDialog } from '@/components/ava/link-dialog'
import { tapBeat, useAudioSource } from '@/components/ava/audio-source'
import { useAvaStore } from '@/lib/store'
import { APP_NAME, APP_SHORT } from '@/lib/version'
import { cn } from '@/lib/utils'
function SourceSegmentButton({
@ -149,9 +150,9 @@ export function AppHeader() {
<AudioWaveform className="size-5 text-zinc-950" aria-hidden />
</div>
<div>
<h1 className="text-base font-bold leading-none tracking-wide">AVA</h1>
<h1 className="text-base font-bold leading-none tracking-wide">{APP_SHORT}</h1>
<p className="mt-1 hidden text-[10px] leading-none tracking-[0.14em] text-zinc-500 sm:block">
ADVANCED VISUALIZATION AGENT
{APP_NAME.toUpperCase()}
</p>
</div>
</div>

16
src/lib/version.ts Normal file
View file

@ -0,0 +1,16 @@
// OVE — app identity + version stamp.
//
// Single source of truth for the product name and version shown in the UI
// (header, footer, document title). Bump APP_VERSION whenever we ship a
// large change so the running build can always be identified at a glance —
// useful both for the z.ai Version History and for naming local backups
// (v6.0 = rename to Open Visualization Engine + version indicator).
//
// History:
// 6.0 — renamed to "Open Visualization Engine" + footer version stamp
// 5.0 — folder-tree Presets page (Task 9–11 state, restored in Task 12)
// 4.0 — link audio source (yt-dlp resolve + stream proxy)
export const APP_NAME = 'Open Visualization Engine'
export const APP_SHORT = 'OVE'
export const APP_VERSION = '6.0'

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

View file

@ -728,3 +728,39 @@ Stage Summary:
now matches the archive's HEAD (2a23db4) on top of the current workspace.
- NOTE for the future: commit snapshots are the source of truth when an
environment rebuild is suspected — compare git log before re-implementing.
---
Task ID: 13
Agent: main (Z.ai Code)
Task: v6.0 — rename to "Open Visualization Engine" (AVA → OVE) + footer
version indicator (establishes the versioning convention)
Work Log:
- New src/lib/version.ts — single source of truth: APP_NAME
"Open Visualization Engine", APP_SHORT "OVE", APP_VERSION "6.0" + a
short version-history comment (6.0 rename+stamp, 5.0 folder-tree, 4.0
link source) so future bumps are a one-line change.
- src/app/layout.tsx — document title now "OVE — Open Visualization Engine
(v6.0)" (built from the constants); description + keywords updated
(AVA→OVE, "agent"→"engine").
- src/components/ava/header.tsx — logo block h1 "AVA" → "OVE" (APP_SHORT),
subtitle "ADVANCED VISUALIZATION AGENT" → "OPEN VISUALIZATION ENGINE"
(APP_NAME.toUpperCase()), both imported from version.ts.
- src/components/ava/footer-bar.tsx — right cluster is now a ml-auto wrapper
holding: "version 6.0" stamp (text-zinc-600, tooltip "Open Visualization
Engine — version 6.0") immediately LEFT of the engine-ok dot + label,
exactly as requested. Stamp is visible on mobile too (fits: no horizontal
scroll at 390px).
- Internal code identifiers (ava store/lib/component paths, ava-agent rust
crate) intentionally left unchanged — the rename is user-facing only.
- VERIFIED in agent-browser: title "OVE — Open Visualization Engine (v6.0)";
header logo/subtitle; footer text "...version 6.0\nengine ok" with the
stamp on the same row, right of the stats, left of the dot; mobile 390×844
no horizontal scroll + stamp visible; zero console/page errors; lint clean.
- Committed as "v6.0 — rename to Open Visualization Engine + version stamp".
Stage Summary:
- Versioning convention established: bump APP_VERSION in src/lib/version.ts
on every large change; the stamp renders bottom-right of the footer and the
document title carries it too. Users can name local backups by the stamp
(e.g. "OVE v6.0") and cross-check against z.ai Version History.