traverse-framework / traverse-framework/registry

CREATIVE: Publish core.sla-outcome-classify (multi-signal SLA outcome classifier)

Open
#506 0 comments 0 reactions 0 assignees View on GitHub
enhancement help wanted no-spec-needed
Dominant language
Rust
Stars
1
Forks
1
Avg merge
1h 17m
Merged PRs (30d)
217

Description

## Why (creative vignette)

`support.ticket-sla-breached` is a narrow ticket due_at + priority grace check. Creative ask: a **general SLA outcome classifier** from structured multi-signal inputs (latency_ms, error_rate, backlog_depth, window) into closed outcomes (`met` | `at_risk` | `breached`) with explainable thresholds — for agent ops governance.

## Guardrails (required)

- Machine-readable contract
- Deterministic thresholds; fail closed on missing required signals — **no silent LLM invent**
- Tests + publish checklist
- Not a thin LLM wrapper / generic util
- Distinct from `support.ticket-sla-breached` in description

## One-PR ask

Publish **`core.sla-outcome-classify@1.0.0`**:

**Suggested contract:**
- Inputs: frozen small v1 `signals` set (e.g. latency_p99_ms, error_rate, backlog_depth); versioned `thresholds`; `policy_version`
- Outputs: `outcome` (`met|at_risk|breached`), `violations[]`, `policy_version`, `ok`, `reason_code`
- Precedence documented (any breach signal → breached; else at_risk rules; else met)

Creative freedom: choose the ops domain vignette (API availability, support backlog, fulfillment SLA) within the closed outcome set.

Follow [`CONTRIBUTING.md`](https://github.com/traverse-framework/registry/blob/main/CONTRIBUTING.md) and [`capabilities/README.md`](https://github.com/traverse-framework/registry/blob/main/capabilities/README.md) publish checklist.

- Include `capability-src/` with real Rust tests meeting registry coverage gates (`functions` 100%, lines/regions ≥ 95%)
- Use `traverse-cli capability publish` (or the documented scaffold) so `artifact.digest` / `artifact.url` survive
- Declare `authoring.method` (`human` or `llm-assisted`)
- Ensure every `use_cases[].persona_ref` resolves (scaffold personas if needed)
- Run `bash scripts/ci/pre_pr_check.sh ` before opening
- One capability per PR; branch from `origin/main`, not another `publish/*` branch

**Apps are not ready — publish the capability only.** No app wiring, no demo product surface.

## Out of scope

- Emitting support events / replacing `support.ticket-sla-breached`
- Time-series DBs or Prometheus connectors (caller aggregates signals)
- Narrative RCA essays

## Done when

- CI green; published in next index
- Tests for met / at_risk / breached + missing signal fail closed
- Explicit distinguish-from note vs `support.ticket-sla-breached`

## Host / deps notes

**Pure WASM.** No connector. Caller pre-aggregates signals.

## Labels

`help wanted` · `enhancement` · `no-spec-needed`

Contributor guide

Open the contributing guide

Research direction

Read CONTRIBUTING.md and capabilities/README.md for the publish checklist, then inspect the documented scaffold and existing capability-src Rust tests. Define the frozen signals, thresholds, precedence, and distinguish-from note, implement the pure WASM capability, and run traverse-cli capability publish plus bash scripts/ci/pre_pr_check.sh . Done means coverage gates pass, required outcomes and fail-closed behavior are tested, and CI publishes the artifact.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, wasm
Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.