Skip to content

[flows-tinyflows] Catalog surface: serve workflow definitions, revisions and the CatalogStorage port (slice 2) #145

Closed as not planned

Description

@senamakel

Serve the Catalog surface (crates/tinyflows-bus/src/catalog.rs, skeleton v1) from tinyflows-module, over the host's document port (CatalogStorage: DocGet/DocPut/DocDelete/DocQuery), backed by tinyflows-drivers::catalog::FlowCatalogDocuments.

Gaps found in the OpenHuman audit (host flows/store.rs, ops/definitions.rs, ops/updates.rs):

  • PutWorkflow must distinguish create / update / duplicate, take expected_version, and return the FlowUpdateError conflict shape; report born-disabled / forced-approval flags.
  • SetEnabled; revisions ListRevisions/GetRevision (history + rollback).
  • WorkflowSummary adds enabled, require_approval, last_status, trigger kind, node count, updated_at; list reports skipped rows.
  • Scope is the agent id bound by the host on the callback object.

Bump the Catalog contract version; wire tests for every type. Follow migrate-to-submodule (OpenHuman .claude/skills/): upstream PR → patch release → OpenHuman gitlink bump + registry digest re-pin. Design reference: docs/tinyflows-bus-design.md.

Done when: merged in tinyhumansai/tinyflows with wire tests for every new or changed contract type, released (patch), and the contract version bumped where a served shape changed. Gates: cargo fmt --all -- --check, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features in tinyhumansai/tinyflows. OpenHuman adoption is a separate leaf of the epic.

Agent brief

  • Files to consider (paths in tinyhumansai/tinyflows): crates/tinyflows-bus/src/catalog.rs, crates/tinyflows-module/src/, crates/tinyflows-drivers/src/catalog/
  • Research: Host callers listed above; module-boundaries.json.
  • Workflow: an implementing-an-epic step; follow migrate-to-submodule (upstream PR → patch release → OpenHuman gitlink bump + digest re-pin).
  • Subagent: tdd-implementer.
  • Dependencies: none.

Parent: tinyhumansai/openhuman#8055

Activity

  1. added
    enhancementNew feature or request
    rustPull requests that update rust code
    on Oct 16, 2026
  2. added
    priority: p3Whenever. Cosmetic, a nicety, or a cleanup with no user visible effect.
    on Oct 16, 2026
  3. tinysweeper commented on Oct 16, 2026

    @tinysweeper

    Slice 2 of the flows-tinyflows Catalog surface work: serve the Catalog contract (create/update/duplicate distinction, SetEnabled, revisions, richer WorkflowSummary, agent-id scoping) from tinyflows-module over the host's CatalogStorage port, with contract version bump, wire tests, and a patch release following the migrate-to-submodule workflow. This is planned, epic-linked implementation work with no reported defect and no specific urgency, so task/p3. No candidate duplicates or fixes were provided, so both prior-art fields are null.

    Labelled priority: p3.

  4. added theissue type on Oct 16, 2026
  5. senamakel commented on Oct 16, 2026

    @senamakel
    MemberAuthor

    Moved to senamakel#1, where it is now tracked under tinyhumansai/openhuman#8055.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpriority: p3Whenever. Cosmetic, a nicety, or a cleanup with no user visible effect.rustPull requests that update rust code

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions