mirror of
https://github.com/hanzo-apps/hanzo.ai.git
synced 2026-10-29 07:20:43 +00:00
Sixteen tasks fixed on 2026-10-15, Kai beside Jev on each: the eleven harness suites Kai leads, choices of 16 and 77 options, the same request three times, false alarms on real benign prompts, and cost and deployment. Each row names the research runs it reads by id, its public dataset, and the hanzoai/benchmarks folder that re-runs it; one line under the board links decision/SUITE.md. A row whose runs are not yet public prints "pending" and holds the count back, so "16 of 16" is stated only once every row holds both figures. Under the title, the owner's note: the frozen 12-suite harness, including the row Jev leads, is below, and that board now prints all twelve suites. lib/api/research reads GET /v1/research/runs?org=hanzo through lib/api/read; useKai derives the boards from it and every section draws reading, the figures, or unreachable, with no snapshot standing in. The cost row is GET /v1/models. /kai leads under its hero with the suite's own rows as headlines. The gates serve the runs and an invented model list, read the pending, loading and unreachable states, and hold the export to carrying no Kai figure.
44 lines
1.7 KiB
TypeScript
44 lines
1.7 KiB
TypeScript
'use client'
|
|
|
|
import { Text, YStack } from '@hanzo/ui'
|
|
import { Grid } from '@hanzo/ui/grid'
|
|
import { Band, Card } from '@/components/marketing/band'
|
|
import { Ready } from '@/components/api/state'
|
|
import { headlines } from '@/lib/kai'
|
|
import { useSuite } from '@/hooks/useSuite'
|
|
|
|
/**
|
|
* What /kai leads with, under the hero: the Decision Suite's own rows said as
|
|
* headlines (lib/kai `headlines`), each linking the board below. Read when the
|
|
* page opens, like the board: a line shows only while the rows hold it, the
|
|
* strip says so while they are read, and says the API is unreachable if they
|
|
* cannot be.
|
|
*/
|
|
export function Lead() {
|
|
return (
|
|
<Band id="lead" measure={1024}>
|
|
<Ready reading={useSuite()} what="the Decision Suite's research runs">
|
|
{(t) => {
|
|
const lines = headlines(t)
|
|
return (
|
|
<Grid columns={1} $sm={{ gridTemplateColumns: 'repeat(2, minmax(0, 1fr))' }} $lg={{ gridTemplateColumns: `repeat(${lines.length}, minmax(0, 1fr))` }} gap={12}>
|
|
{lines.map((c) => (
|
|
<YStack key={c.label} render={<a href={`#${c.board}`} />} data-lead="">
|
|
<Card height="100%">
|
|
<Text render="p" display="block" mb={6} fontFamily="$mono" fontSize="$7" lineHeight="$7" color="$ink" $platform-web={{ fontVariantNumeric: 'tabular-nums' }}>
|
|
{c.figure}
|
|
</Text>
|
|
<Text render="p" display="block" fontSize="$2" lineHeight="$2" color="var(--muted-foreground)">
|
|
{c.label}
|
|
</Text>
|
|
</Card>
|
|
</YStack>
|
|
))}
|
|
</Grid>
|
|
)
|
|
}}
|
|
</Ready>
|
|
</Band>
|
|
)
|
|
}
|