Skip to content

PDA Platform Worked Example #18

@antnewman

Description

@antnewman

Summary

Proposing a LOGIC.md worked example drawn from a real UK-government AI-assurance workflow (the PDA Platform — 122 MCP tools across 18 modules, AssuranceStore, confidence-extraction, outlier-mining). Would serve as:

  1. A canonical regulated-domain example — something the README can point at when the "where is this actually used?" question comes up.
  2. A real-world stress-test of the spec — likely to surface scope gaps where current §2-§10 doesn't quite cover what an assurance workflow needs.
  3. A reciprocal adoption signal — PDA Platform would adopt LOGIC.md for the workflow's orchestration layer if the fit is good.

Filing as an issue first (not a PR) to scope shape before I write 300 lines of YAML that may not match what you want.

Proposed example

A LOGIC.md spec for the PDA Platform risk-register assurance workflow — ~8 steps including:

  • ingest_artefact — parse an uploaded project-delivery artefact (PDF, spreadsheet, or MCP feed)
  • extract_risks — use an LLM to extract risk items with confidence scores
  • outlier_scan — compare extracted risks against historical patterns (AssuranceStore lookup)
  • triage — per-risk decision: auto-approve / flag for human review / escalate
  • human_review_gate (quality gate) — if triage.flags.length > threshold, wait for human sign-off
  • persist — write to AssuranceStore with provenance metadata
  • emit_report — structured report for the project manager

With the features LOGIC.md is strongest at:

  • Contracts between every step (typed artefacts flowing through a DAG)
  • Quality gates — confidence thresholds, human-review escalation, invariants
  • Fallback policies — what happens when confidence is too low or the LLM disagrees with the outlier scan
  • Per-step tool permissions — ingest can read artefacts, persist can write to store, extract_risks can do neither
  • Self-verification — rubric-based check that the output contains required fields before persistence

Why this is useful to LOGIC.md

  1. Fills the "public regulated-domain case study" gap the README currently points at SingleSourceStudios/modular9 for — which isn't yet a public reference.
  2. Tests features that conformance fixtures cover in isolation but not in combination (per-step tool permissions + quality gates + fallback + multi-agent handoff).
  3. Gives implementers building a LOGIC.md runtime a non-trivial real-world spec to test against.
  4. Likely surfaces small spec gaps, which is valuable signal.

Why this is useful to PDA

The PDA Platform workflows are currently orchestrated in imperative Python. Moving the orchestration layer to LOGIC.md specs would:

  1. Make the assurance reasoning itself auditable (Cabinet Office / GDS compliance has an interest in this).
  2. Survive framework changes — we've been considering LangGraph / DSPy / plain MCP, can't commit.
  3. Allow non-Python runtimes (the procurement path sometimes requires .NET).

What I'd like from you

Not a PR yet. A short response to any of these:

  1. Is this the right shape of example for you? Public-sector regulated-domain vs. a simpler commercial case. Either works, but I want to confirm before investing.
  2. Would you want it under examples/ (like the existing examples/research-synthesizer.logic.md) or as a first-class "case studies" section?
  3. Any features you specifically want it to exercise that the current fixtures/templates don't?
  4. Scope preference — full 8-step workflow, or a reduced 3-4 step cut that still lands the point?

What I'm offering

To draft the spec + a short markdown narrative (examples/pda-risk-register-assurance.md or similar) once we've agreed the shape. ~2-3 hours of work. I'd produce it on a branch you can iterate on before merge.

Broader context

This is part of a wider set of adjacent declarative-spec projects in the same space (the UDS dashboard spec at Tortoise-AI/uds-spec, the PDA Platform itself) where LOGIC.md's shape has natural adjacency. Nothing to action here — mentioning in case it affects how you think about the worked example's framing.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions