Single-commit clean baseline after security scrub of niche-tells, project codenames, internal jargon, and contributor-email leaks. Contents: - 100 Rust crates (_primitives/_rust/) - 37 agent manifests (_manifests/) + generated specs (_generated/) - 67 user-invocable skills (skills/) - 33 hooks (hooks/) - Composition blocks (_blocks/) - Documentation (docs/, README.md) - TS adapter packages (_ts_packages/) - Assembler (_assembler/) - Roles (_roles/) - Templates (_templates/) - Forgejo CI (.forgejo/) Author: Denis Parfionovich <info@greendragon.info> License: see LICENSE.
73 lines
1.9 KiB
Markdown
73 lines
1.9 KiB
Markdown
---
|
|
atom: kei-task::create
|
|
kind: command
|
|
version: "0.1.0"
|
|
|
|
input:
|
|
schema: schemas/create-input.json
|
|
required: [title]
|
|
example: { title: "Fix auth bug", priority: "high" }
|
|
|
|
output:
|
|
schema: schemas/create-output.json
|
|
example: { id: 42, created_at: 1714000000 }
|
|
|
|
errors:
|
|
- code: InvalidPriority
|
|
http_analog: 400
|
|
description: "Priority must be one of: critical, high, medium, low"
|
|
- code: InvalidTitle
|
|
http_analog: 400
|
|
description: "Title must be non-empty"
|
|
- code: StoreError
|
|
http_analog: 500
|
|
description: "Underlying SQLite store failed to insert the task"
|
|
|
|
side_effects:
|
|
- { op: write, domain: kei-task-db }
|
|
idempotent: false
|
|
timeout_ms: 5000
|
|
|
|
deprecated: null
|
|
stability: stable
|
|
|
|
keywords: [task, todo, create, dag, planning]
|
|
related:
|
|
- "[[kei-task::add-dependency]]"
|
|
- "[[kei-task::search]]"
|
|
---
|
|
|
|
# kei-task::create
|
|
|
|
Creates a new task row in the kei-task SQLite DAG. Returns the inserted
|
|
row id and the `created_at` unix timestamp. Also indexes title +
|
|
description into the FTS table used by `kei-task::search`.
|
|
|
|
## Example
|
|
|
|
kei-task create "Fix auth bug" --priority high --description "Token rotation fails on leap second"
|
|
|
|
Returns the new task id on stdout:
|
|
|
|
42
|
|
|
|
Programmatic callers (runtime invocation) receive:
|
|
|
|
{ "id": 42, "created_at": 1714000000 }
|
|
|
|
## Gotchas
|
|
|
|
- `priority` defaults to `"medium"` if omitted. Case sensitive —
|
|
`High` returns `InvalidPriority`.
|
|
- `description` defaults to empty string; blank descriptions are still
|
|
indexed by FTS but yield no search hits until populated.
|
|
- `milestone_id` in the input schema is reserved for future use; the
|
|
current CLI does NOT accept it — link via `kei-task link-milestone`
|
|
after creation.
|
|
- Title uniqueness is NOT enforced at DB level; duplicate titles are
|
|
allowed and will all be returned by `kei-task::search`.
|
|
|
|
## Related
|
|
|
|
- [[kei-task::add-dependency]] — wire the new task into the DAG
|
|
- [[kei-task::search]] — look up by title / description
|