feat(jira): pick the project, issue type and priority from the site (1.3.0)
create_issue and edit_issue declare options_from on project_key, issue_type_name and priority, and link_issues on link_type, so the playbook editor lists the Jira site's own values. Three read commands feed them: list_projects, list_issue_types (per project) and list_priorities. The README documents enum and options_from. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WhDQSYZd1mFtRsXK4ixtyB
This commit is contained in:
@@ -113,6 +113,32 @@ A command is **request-based** when it has a `request:` block, or
|
||||
**script-based** when a matching `scripts/<command-id>.py` exists. Prefer
|
||||
request-based commands: they need no sandbox and are easier to audit.
|
||||
|
||||
### Inputs with a list of values
|
||||
|
||||
An input can offer its values in the playbook editor instead of a free-text box.
|
||||
|
||||
- **A fixed list** — `enum:`, when the values are the vendor's own and the same
|
||||
everywhere (a verdict, a status). The editor shows a drop-down, and the
|
||||
command bar refuses a value outside it.
|
||||
- **A list read from the tenant** — `options_from:`, when the values belong to
|
||||
each customer's tool (projects, issue types, priorities). The editor runs the
|
||||
named command on the instance and lists what it returns; a typed value or an
|
||||
expression is still accepted.
|
||||
|
||||
```yaml
|
||||
issue_type_name:
|
||||
type: string
|
||||
options_from:
|
||||
command: list_issue_types # a command of this integration, risk: read only
|
||||
path: issue_types # where the rows are in its output (empty: the output itself)
|
||||
value: name # row field written into the input
|
||||
label: name # row field shown in the list (defaults to value)
|
||||
depends_on: [project_key] # sibling inputs passed to the command, when filled with a literal
|
||||
```
|
||||
|
||||
Riposte refuses an `options_from` command that is not `risk: read`: opening a
|
||||
field must never change anything in the customer's tool.
|
||||
|
||||
### `risk:` — the agent approval gate
|
||||
|
||||
Every command declares a tier. It is what Riposte's agent approval gate reads:
|
||||
|
||||
Reference in New Issue
Block a user