regenerate hanzo.yaml for red-review fixes

merge.py: 68 services -> 1800 paths, 1036 schemas. hanzo.yaml 3802 $refs, 0
dangling. Coverage 871/954 write ops (classify-event now GET).
This commit is contained in:
2026-07-26 19:32:48 -07:00
parent 4bfb0fc785
commit 436b1eb8e9
2 changed files with 97 additions and 17 deletions
+10 -7
View File
@@ -89,13 +89,16 @@ fabricated:
auth-logout/verify/sso + website-reset (Umami, no upstream in tree); paas
doks-upgrade-ha, container-deploy (served by platform tRPC, not cloud).
Review notes: `world/classify-event` is declared POST but the handler is GET
(query `title`) — left as a flagged method mismatch, no body added. The
`cloud`/`nexus` `object.File`/`object.Connection` (and `File`/`Connection`)
components referenced by the new file/connection bodies appear stale vs the
current `hanzoai/ai` Go structs; regenerating those two specs from the ai Beego
swagger is the durable re-sync. `hanzo.yaml` + `CAPABILITIES.md` regenerated via
`merge.py`.
Red-review fixes (fix-then-ship): `world/classify-event` corrected from POST to
GET with `title` (required) + `variant` query params, matching the handler
(`internal/world/handlers_ai.go:167`). The `cloud`/`nexus` `add-file`/`delete-file`
bodies now reference a dedicated request schema (`object.FileInput` / `FileInput`,
`owner`+`name` required) built from the real `ai/object/file.go` struct — instead
of the stale UI-tree response component `object.File`/`File`, which lacked
`owner`/`name`/`filename`/`store` and would have handed clients a wrong contract.
`delete-connection`'s `object.Connection`/`Connection` was verified correct against
`ai/object/connection.go` and left unchanged. `hanzo.yaml` + `CAPABILITIES.md`
regenerated via `merge.py` (3802 `$refs`, 0 dangling).
### 2026-07-11 — git: SSH transport, client-less push, ZAP note, sshUrl
+87 -10
View File
@@ -13381,11 +13381,11 @@ paths:
operationId: cloud_ApiController.AddFile
requestBody:
required: true
description: The file object to register (handler binds object.File; owner and name identify it).
description: The file object to register. owner and name are required and identify the file.
content:
application/json:
schema:
$ref: '#/components/schemas/cloud_object.File'
$ref: '#/components/schemas/cloud_object.FileInput'
parameters:
- in: query
name: store
@@ -13954,11 +13954,11 @@ paths:
operationId: cloud_ApiController.DeleteFile
requestBody:
required: true
description: The file to delete (handler binds object.File; owner and name identify it).
description: The file to delete. owner and name are required and identify the file.
content:
application/json:
schema:
$ref: '#/components/schemas/cloud_object.File'
$ref: '#/components/schemas/cloud_object.FileInput'
parameters:
- in: query
name: store
@@ -42630,11 +42630,11 @@ paths:
operationId: nexus_addFile
requestBody:
required: true
description: The file object to register (handler binds the File object; owner and name identify it).
description: The file object to register. owner and name are required and identify the file.
content:
application/json:
schema:
$ref: '#/components/schemas/nexus_File'
$ref: '#/components/schemas/nexus_FileInput'
parameters:
- in: query
name: store
@@ -43224,11 +43224,11 @@ paths:
operationId: nexus_deleteFile
requestBody:
required: true
description: The file to delete (handler binds the File object; owner and name identify it).
description: The file to delete. owner and name are required and identify the file.
content:
application/json:
schema:
$ref: '#/components/schemas/nexus_File'
$ref: '#/components/schemas/nexus_FileInput'
parameters:
- in: query
name: store
@@ -57816,11 +57816,24 @@ paths:
'401':
description: Missing/invalid IAM token
/v1/world/classify-event:
post:
get:
tags:
- AI
summary: Single event classification (per-user IAM token)
operationId: world_world_classify_event
parameters:
- name: title
in: query
required: true
schema:
type: string
description: Headline to classify.
- name: variant
in: query
required: false
schema:
type: string
description: Only 'tech' is special-cased.
responses:
'200':
description: OK
@@ -63407,7 +63420,7 @@ components:
properties:
abortKey:
type: string
description: The run abort key (format "<thread>:<run>"); split by the handler.
description: The run abort key (format "conversationId:latestMessageId"); split by the handler.
endpoint:
type: string
description: The endpoint whose run is being aborted (routes control flow via isAssistantsEndpoint).
@@ -64485,6 +64498,38 @@ components:
type: string
url:
type: string
cloud_object.FileInput:
title: FileInput
type: object
description: Request body for add-file / delete-file, matching the object.File struct the handler binds (ai/object/file.go).
owner and name are the required identity; the rest describe the stored blob.
properties:
owner:
type: string
name:
type: string
createdTime:
type: string
filename:
type: string
size:
type: integer
format: int64
store:
type: string
storageProvider:
type: string
url:
type: string
tokenCount:
type: integer
status:
type: string
errorText:
type: string
required:
- owner
- name
cloud_object.Form:
title: Form
type: object
@@ -76141,6 +76186,38 @@ components:
type: string
url:
type: string
nexus_FileInput:
title: FileInput
type: object
description: Request body for add-file / delete-file, matching the File struct the handler binds (ai/object/file.go).
owner and name are the required identity; the rest describe the stored blob.
properties:
owner:
type: string
name:
type: string
createdTime:
type: string
filename:
type: string
size:
type: integer
format: int64
store:
type: string
storageProvider:
type: string
url:
type: string
tokenCount:
type: integer
status:
type: string
errorText:
type: string
required:
- owner
- name
nexus_Form:
title: Form
type: object