Entscheidungen

Entscheidungsarten und Optionsaktionen, wo Sie Entscheidungen beantworten, und wie Ihre Werkzeuge sie über die REST-API auflisten, lesen und beantworten.

Entscheidungen sind alles, wofür kanman einen Menschen braucht: Plan-Freigaben, Ausnahmen von der Richtlinie, Rückfragen, Budgetstopps und fehlgeschlagene Prüfungen. Jede Entscheidung, die auf Sie wartet, kommt mit einer Empfehlung von kanman und 2 bis 4 Optionen. Das Konzept beschreibt Entscheidungen. Entscheidungen beantworten Sie in der App, in Slack oder über die REST-API.

Eine Entscheidung beantworten

Wo Wie
App Entscheidungen (/<workspace>/decisions), Reiter Offen und Entschieden, oder die Entscheidungsseite /<workspace>/decisions/<entscheidungsschlüssel>. Zustimmende Optionen brauchen einen Klick; Ablehnen, Änderungen anfordern, Antworten, Abbrechen und Ablehnen eines Vorschlags öffnen vorher eine kurze Notiz.
Slack Die Buttons unter der Entscheidungsnachricht im Kanal des Teams, oder eine Antwort an kanman im Thread, zum Beispiel „approve“ oder „reject dec-4h2k“. Siehe Entscheidungen in Slack beantworten.
Aufnahme Eine Antwort in der Aufnahme des Teams, die die Entscheidung nennt, zum Beispiel „approve dec-4h2k“.
REST-API POST /v1/decisions/<decision-key>/resolve mit einem Token mit der Berechtigung write. Siehe unten.

Die erste Antwort gilt. Wer als Zweites antwortet, erfährt, dass die Entscheidung schon getroffen ist. Jede Antwort schreibt einen Audit-Eintrag decision_resolved mit Person und Kanal; die Entscheidung zeigt, ob sie über die App, Slack, den MCP-Server oder die API getroffen wurde.

Arten

Art Entsteht, wenn
plan_approval Die Richtlinie für diese Story eine Plan-Freigabe verlangt.
policy_exception Die Story etwas braucht, das die Richtlinie nicht erlaubt, zum Beispiel einen gesperrten Pfad.
clarification Der Coding-Agent über request_human_input eine Frage gestellt hat.
budget_stop Der Run sein Budget erreicht hat.
verification_failed Die Prüfung nach dem automatischen Nacharbeitsversuch gescheitert ist.
gate_failure Für die Story keine funktionierende Akzeptanz-Spec geschrieben werden konnte.
diff_guard Die Umsetzung die Akzeptanz-Spec verändert hat.
repeated_gate_failure Ein Gate öfter gescheitert ist, als gate_failure_budget erlaubt.
merge_approval Eine geprüfte Änderung größer ist, als die Richtlinie automatisch mergen lässt.
revert_approval Ein Merge von kanman den Hauptbranch gebrochen hat und kanman einen Revert vorschlägt.
main_red_incident Der Hauptbranch rot ist; Merges werden zurückgehalten.
maintenance_proposal Der Wartungsmodus etwas gefunden hat, das eine Story wert ist.
strategy_proposal kanman auf Grundlage der Strategienotizen Ihres Repositorys ein Feature vorschlägt.
scope_change Die Story gut umzusetzen hieße, ihren Umfang zu ändern.

Optionsaktionen

Aktion Wirkung
approve_plan Der Plan ist freigegeben; die Umsetzung beginnt.
request_changes Der Run läuft mit Ihrer Notiz als Vorgabe weiter.
allow_once Die Ausnahme gilt nur für diesen Run.
reject Der Run endet, und die Story geht mit Ihrer Notiz zurück ins Backlog.
raise_budget Das Run-Budget wird erhöht, standardmäßig auf das Doppelte, und der Run läuft weiter.
abandon Der Run endet, und die Story geht zurück ins Backlog.
revert_spec_and_retry kanman stellt die Akzeptanz-Spec wieder her und startet einen neuen Versuch.
retry Ein neuer Versuch startet, mit Ihrer Notiz als Hinweis.
answer Ihre Antwort geht an den Coding-Agenten, und der Run läuft weiter.
merge Der Pull Request wird gemergt.
open_revert kanman öffnet einen Revert-Pull-Request.
accept_proposal Der Vorschlag wird als Story angelegt oder geht in die Aufnahme.
decline_proposal Der Vorschlag wird abgelehnt und gemerkt.

REST-API

Entscheidungen auflisten

GET /v1/decisions liefert die Entscheidungen des Workspaces, die neuesten zuerst, seitenweise. Filtern Sie mit status (pending, resolved, expired, cancelled, superseded), team (Team-Slug) und run (Run-Schlüssel).

curl "https://api.kanman.ai/functions/v1/api-gateway/v1/decisions?status=pending" --header "Authorization: Bearer $KANMAN_API_KEY"
Feld Beschreibung
key, kind, authority, title, body Die Entscheidung; body enthält kanmans Begründung als Markdown.
status, recommendation Der Zustand und die ID der Option, die kanman empfiehlt.
options id, label, action und recommended pro Option.
team, story, runKey Wozu die Entscheidung gehört.
resolution, resolvedVia, resolvedAt Die Antwort (optionId, note) und ihr Kanal, sobald beantwortet.
expiresAt, createdAt Zeitstempel.

GET /v1/decisions/{decision-key} liefert eine Entscheidung in derselben Form.

Eine Entscheidung über die API beantworten

POST /v1/decisions/{decision-key}/resolve braucht ein Token mit der Berechtigung write. Die Antwort wird mit der Person, der das Token gehört, als Antwortender und api als Kanal festgehalten und wirkt genauso wie eine Antwort in der App.

curl -X POST https://api.kanman.ai/functions/v1/api-gateway/v1/decisions/dec-4h2k/resolve \
  --header "Authorization: Bearer $KANMAN_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{"optionId": "approve", "note": "Looks good"}'
Feld im Body Beschreibung
optionId Pflicht. Die id einer der Optionen der Entscheidung.
note Optional, bis zu 4.000 Zeichen. Wird wie eine Notiz in der App weitergegeben.

Die Antwort ist die aktualisierte Entscheidung plus effects, die Schritte, die kanman ausgeführt hat. 400 bedeutet, dass es die Option nicht gibt, 404, dass die Entscheidung nicht im Workspace des Tokens liegt, 409, dass sie schon beantwortet ist (die erste Antwort gilt).

Zuletzt aktualisiert: January 1, 0001

kanman öffnen