bankai/types

bankai core types. See docs/adrs/0001-hybrid-content-addressing.md.

NOTE: content_hash uses gleamunison/identity.Hash — the REAL opaque type. It is NOT a String and NOT the fictional ast.Hash from the original spec (Hash lives in gleamunison/identity, not gleamunison/ast).

Types

pub type RelationType {
  Blocks
  RelatesTo
  Duplicates
  Supersedes
  RepliesTo
  ParentChild
  WaitsFor
  DiscoveredFrom
  Tracks
  CausedBy
  Validates
  ConditionalBlocks
}

Constructors

  • Blocks
  • RelatesTo
  • Duplicates
  • Supersedes
  • RepliesTo
  • ParentChild
  • WaitsFor
  • DiscoveredFrom
  • Tracks
  • CausedBy
  • Validates
  • ConditionalBlocks

A single directed edge from the owning task to target_id.

pub type Relationship {
  Relationship(target_id: String, relation: RelationType)
}

Constructors

A task in the dependency graph. content_hash is the SHA-256 of the task’s canonical byte encoding (which deliberately EXCLUDES content_hash itself — a hash cannot include itself). Mutations recompute it; id stays stable.

parent_id is explicit parent linkage, separate from hierarchical display IDs (bk-XXXX.N). Set via create --parent <id>. A ParentChild relation is also created in relationships.

pub type Task {
  Task(
    id: String,
    title: String,
    description: String,
    status: TaskStatus,
    assignee: option.Option(String),
    priority: Int,
    created_at: Int,
    updated_at: Int,
    relationships: List(Relationship),
    labels: List(String),
    content_hash: identity.Hash,
    parent_id: option.Option(String),
    kind: TaskKind,
    defer_until: option.Option(Int),
    closure_reason: option.Option(String),
    gate_due: option.Option(Int),
    gate_satisfied: Bool,
  )
}

Constructors

pub type TaskKind {
  DefaultTask
  Bug
  Feature
  Epic
  Decision
  Chore
  Gate
  Wisp
}

Constructors

  • DefaultTask
  • Bug
  • Feature
  • Epic
  • Decision
  • Chore
  • Gate
  • Wisp
pub type TaskStatus {
  Open
  InProgress
  Blocked
  Completed
  Closed
}

Constructors

  • Open
  • InProgress
  • Blocked
  • Completed
  • Closed
Search Document