Files
lda-wf/docs/runbooks/defense-speech-and-claim-audit.md
T

27 KiB
Raw Blame History

Defense speech and claim audit

This runbook gives you the must-say 9:27 defense speech, a 1:15 navigation buffer, and a prioritized 12-minute question period. It also marks claims that require qualification so the presentation stays aligned with the thesis and current implementation. The typed catalog at web/apps/console/src/presentation/presenter/presenter-notes.ts is the source for the must-say text.

Timing and evidence rules

Use these evidence labels while rehearsing. Do not read the labels aloud.

  • Supported: stated in the thesis and backed by repository evidence
  • Implementation extension: implemented after or beyond the thesis case study; identify it as a separate demonstration
  • Qualify: accurate only within an explicit boundary
  • Do not claim: unsupported, untested, or excluded from scope

Target 9:27 for the must-say speech. Keep 1:15 for navigation or demo delay; the complete deck target is 10:42. The question period then has 12 minutes.

Segment Target
Scenes 1-2: goal and problem 1:00
Scenes 3-6: positioning, model, and architecture 2:23
Scenes 7-11: prepared demonstration 2:49
Scene 12: evaluation 2:00
Scene 13: limits and conclusion 1:15
Must-say speech 9:27
Navigation buffer 1:15
Complete deck target 10:42

Main speech

Scene 1: State the ambition and the submitted contribution

Route: thesis/title then thesis/substrate
Time: 0:00-0:30 Evidence: Supported

Beat: thesis/title Goal: Separate the AI-agent ambition from the implemented contribution. Anchor terms: AI-agent goal; platform underneath

Beat: thesis/substrate Goal: State what the platform lets its users do. Anchor terms: agents and humans; build, run, inspect

Say:

The title describes the original goal: an AI agent for workspace automation. My contribution is the platform underneath that agent.

It lets agents and humans build workflows, run them, and inspect what happened.

Keep the boundary explicit. The thesis states this distinction in the Abstract and Introduction (thesis lines 109-121 and lines 145-181).

Scene 2: Explain why direct tool use is insufficient

Route: problem/direct-actions then problem/missing-contracts
Time: 0:30-1:00 Evidence: Supported

Beat: problem/direct-actions Goal: Show why one successful chat is not yet automation. Anchor terms: tool calls; not reusable

Beat: problem/missing-contracts Goal: Name the minimum durable properties reusable automation needs. Anchor terms: saved definition; validation; execution records

Say:

Like the chat example, an agent can call tools and finish one task. But that conversation is not yet a reusable workflow.

Reusable automation needs a saved definition, validation, execution records, and a clear way to pause and continue.

Do not claim that direct tool use or generated scripts are inherently bad. The thesis argues that reusable operation needs additional lifecycle contracts (lines 214-277).

Scene 3: Position the work without claiming superiority

Route: positioning/landscape then positioning/lda-position
Time: 1:00-1:35 Evidence: Supported, with qualification

Beat: positioning/landscape Goal: Place the work beside familiar adjacent systems. Anchor terms: Python / n8n / Zapier; LangGraph; MCP

Beat: positioning/lda-position Goal: State the platform's narrow position without a superiority claim. Anchor terms: provider-neutral; workflow layer; not a replacement

Say:

Existing systems solve different parts of this problem: Python scripts, n8n, Zapier, LangGraph, and MCP.

My platform does not replace them. It provides a provider-neutral workflow layer that agents and humans can operate.

Qualify provider neutrality as demonstrated for the three implemented source families. Do not present compatibility with arbitrary future providers as measured evidence (lines 460-521).

Scene 4: Draw the planner and runtime boundary

Route: planner-runtime/planner, planner-runtime/runtime, then planner-runtime/boundary
Time: 1:35-2:15 Evidence: Supported, with qualification

Beat: planner-runtime/planner Goal: Assign workflow decisions to an external planner. Anchor terms: human or AI planner

Beat: planner-runtime/runtime Goal: Assign execution and recording to the runtime. Anchor terms: validation; step-by-step execution; state and traces

Beat: planner-runtime/boundary Goal: Introduce the public seam between clients and runtime. Anchor terms: Workflow API; CLI; JSON-RPC

Say:

A human or AI planner decides what workflow to build.

The runtime validates the graph, executes it step by step, records state and traces, and pauses at declared boundaries.

Both sides communicate through the Workflow API. Today, clients reach it through the CLI or JSON-RPC without accessing runtime internals directly.

Say “deterministic core semantics for fixed definitions and handler results,” not “all execution is deterministic.” Remote calls, provider code, resource reads, and external side effects may be nondeterministic (lines 808-821).

Scene 5: Define the lifecycle vocabulary

Route: lifecycle/draft, lifecycle/artifact, lifecycle/deployment, then lifecycle/run
Time: 2:15-2:51 Evidence: Supported

Beat: lifecycle/draft Goal: Introduce the editable lifecycle state. Anchor terms: Draft; being built

Beat: lifecycle/artifact Goal: Introduce the immutable saved definition. Anchor terms: Artifact; immutable version

Beat: lifecycle/deployment Goal: Connect a saved definition to a runnable environment. Anchor terms: Deployment; sources; ready

Beat: lifecycle/run Goal: Introduce one persisted execution record. Anchor terms: Run; status; output and trace

Say:

A workflow moves through four lifecycle stages. Draft means the workflow is still being built.

Artifact is a saved, immutable version.

Deployment connects that version to the sources it needs and checks whether it is ready.

Run is one recorded execution, including its status, output, and trace.

Keep Scene 5 conceptual. Scene 8 applies this vocabulary to the prepared example. Also note that raw plans can create artifacts without passing through Draft (lines 629-660).

Scene 6: Zoom through the implemented architecture

Route: architecture/overview, architecture/client, architecture/api, then architecture/runtime
Time: 2:51-3:23 Evidence: Supported

Beat: architecture/overview Goal: Show how the implementation realizes the earlier concepts. Anchor terms: architecture spine

Beat: architecture/client Goal: Show that humans and agents share one public surface. Anchor terms: shared operations

Beat: architecture/api Goal: Identify the system's public front door. Anchor terms: Workflow API; public boundary

Beat: architecture/runtime Goal: Explain what the server composes behind the API. Anchor terms: WorkflowServer; records and capabilities; execution core

Say:

Now I will show how those concepts map to the implementation.

At the top, humans and agents use the same public workflow operations.

Those operations enter through the Workflow API, the public boundary that keeps clients out of runtime internals.

Behind that boundary, the workflow server brings together stored records, available capabilities, and the execution core.

The optional NodeUse deep dive remains available through the architecture focus route and Q&A; it is not part of the timed forward sequence.

Scene 7: Introduce the prepared demonstration honestly

Route: agent-handoff/request
Time: 3:23-3:35 Evidence: Implementation extension

Beat: agent-handoff/request Goal: Disclose the prepared demonstration before it begins. Anchor terms: prepared example; not an autonomous planner

Say:

This is a prepared example, not a live autonomous AI agent. It shows how an agent could use the platform to build and run a workflow.

If replay is active, say: “This is the reviewed recording, not a live model planning this workflow.”

Scene 8: Show the prepared lifecycle

Route: all six prepared-lifecycle/* beats Time: 3:35-4:17 Evidence: Implementation extension; supported with qualification

Beat: prepared-lifecycle/discover Goal: Show that authoring starts with interface discovery. Anchor terms: sources; capabilities

Beat: prepared-lifecycle/draft Goal: Show mutable workflow authoring. Anchor terms: Draft; editable workflow

Beat: prepared-lifecycle/diagnose Goal: Show a concrete structured validation failure. Anchor terms: validation; missing_outcome_edge

Beat: prepared-lifecycle/repair Goal: Show the exact focused correction and revalidation. Anchor terms: set-route; validation passes

Beat: prepared-lifecycle/artifact Goal: Show the transition to an immutable saved version. Anchor terms: Artifact; immutable

Beat: prepared-lifecycle/deployment Goal: Show source binding and readiness before execution. Anchor terms: Deployment; three local sources

Say:

First, the agent checks which sources and operations are available.

Then it builds an editable workflow draft.

Validation finds that the analyze step has no route for its ok outcome.

The agent adds that route, and validation passes.

The valid workflow is saved as an immutable artifact.

Finally, a deployment connects it to the three local sources it needs.

This later issue-review example is richer than the thesis case study; do not present its issue-board output as thesis output. Diagnostics support a repair loop but do not guarantee automatic repair.

Scene 9: Start the prepared workflow

Route: run-from-deployment/input, run-from-deployment/operation, then run-from-deployment/graph
Time: 4:17-4:52 Evidence: Implementation extension; live-capable

Beat: run-from-deployment/input Goal: Show the concrete inputs supplied before execution. Anchor terms: run input; selected documents

Beat: run-from-deployment/operation Goal: Show that one public operation creates a persisted execution. Anchor terms: workflow.runs.start; persisted Run

Beat: run-from-deployment/graph Goal: Show the reusable workflow executing beyond the chat conversation. Anchor terms: workflow graph; declared interrupt

Say:

The deployment receives selected local documents and an issue-board path. The public workflow.runs.start operation validates the deployment and input, creates a persisted Run, and begins the reusable graph. The graph reads documents, analyzes them, builds a report, drafts proposed issues, and pauses at a declared review interrupt before issue-board changes.

If live execution has not been completed during rehearsal, say: “The operation view is replay-backed evidence of the prepared path. I am not presenting this as a newly completed live run.”

Scene 10: Present a typed interrupt, not a production approval system

Route: typed-human-boundary/interrupt then typed-human-boundary/approval
Time: 4:52-5:22 Evidence: Implementation extension; qualify

Beat: typed-human-boundary/interrupt Goal: Show what the paused workflow asks from the operator. Anchor terms: issue_review; interrupt payload; resume schema

Beat: typed-human-boundary/approval Goal: Show that the operator chooses a declared continuation. Anchor terms: submitted; revision-requested; typed resume

Say:

Execution pauses at a typed issue_review interrupt exposing request data, allowed outcomes, request schema, and resume schema. The operator can Submit or Request revision. Both continue through declared workflow branches; this typed resume contract is not a production approval system.

Do not call the negative path “deny without resuming.” Both outcomes resume execution through different workflow branches. Do not imply that the prepared revision recording preserves the submitted branchs run identity.

Scene 11: Show output and inspectable evidence

Route: resume-output-evidence/resume, resume-output-evidence/output, then resume-output-evidence/trace
Time: 5:22-6:12 Evidence: Implementation extension; replay continuity differs by branch

Beat: resume-output-evidence/resume Goal: Show continuation of the same recorded run. Anchor terms: workflow.runs.resume; same Run

Beat: resume-output-evidence/output Goal: Show the persisted terminal results of the submitted path. Anchor terms: report output; issue-board changes

Beat: resume-output-evidence/trace Goal: Show that execution evidence remains inspectable after completion. Anchor terms: trace frames; protocol evidence

Say:

On the submitted path, workflow.runs.resume continues the recorded interrupted Run. The workflow creates the report and issue-board changes, then records terminal output. Trace frames and protocol evidence remain inspectable; this is declared-boundary resumability, not arbitrary crash recovery or exactly-once execution.

Scene 12: Explain what the evaluation proves

Route: evaluation/cohort, evaluation/validity, then evaluation/findings
Time: 6:12-8:12 Evidence: Supported, with strict qualification

Beat: evaluation/cohort Goal: Describe the external-agent evaluation design. Anchor terms: 36 trials; two challenges; three profiles

Beat: evaluation/validity Goal: Separate audited valid evidence from contaminated samples. Anchor terms: 27 pass; 8 invalid; 1 fail

Beat: evaluation/findings Goal: State what the evaluation supports and what it cannot prove. Anchor terms: product evolved; not a benchmark

Say:

The evaluation combines conformance tests, deterministic case studies, and a manually audited external-agent campaign. Each model, under each instruction profile, attempted each challenge three times, for 36 trials in total. The author audit then classified 27 trials as clean product-path passes, eight as invalid samples, and one as a failure. Invalid samples included contamination such as reading implementation files, prior artifacts, adjacent attempts, or evaluator state. But the prompts, product, and hosted conditions changed during the campaign. These results show what we learned while improving the product. They expose authoring and diagnostic gaps; they are not a benchmark of model success, token reduction, retry reduction, or superiority.

The product and prompts evolved during the campaign. Say that the results show what was learned while improving the product; do not call them a controlled benchmark (lines 1287-1339).

Scene 13: Close on the bounded contribution

Route: conclusion/limits, conclusion/future, conclusion/conclusion, then conclusion/questions
Time: 8:12-9:27 Evidence: Supported

Beat: conclusion/limits Goal: Bound the prototype claims before the final contribution statement. Anchor terms: prototype; not production security

Beat: conclusion/future Goal: Name the surrounding layers left as future work. Anchor terms: live agent; scheduling; controlled evaluation

Beat: conclusion/conclusion Goal: Restate the implemented contribution and planner-runtime boundary. Anchor terms: planner proposes; platform executes

Beat: conclusion/questions Goal: Open structured examiner discussion without introducing new claims. Anchor terms: defense questions; evidence

Say:

The prototype uses trusted in-process Python and file-backed stores; it does not provide production authentication, RBAC, sandboxing, scheduling, arbitrary crash recovery, or a bundled autonomous planner. A live agent interface, transactional storage, richer debugging, security hardening, scheduling, and controlled comparative evaluation remain future work. The contribution is architectural and implemented: external planners can propose workflows while a typed platform validates, binds, executes, persists, interrupts, resumes, and inspects them through public operations. That boundary is the claim I will defend: reusable agent-operated automation is inspectable because planning and execution have explicit contracts. I welcome questions.

Live and replay fallback wording

Use one sentence and continue. Do not apologize or debug during the timed defense.

  • Replay selected: “This is the reviewed recording of the deterministic path, not a fresh model or live-server result.”
  • Live target unavailable: “The live target is unavailable, so I am switching to the recorded operation evidence used for rehearsal.”
  • Run state is unexpected: “I will use the recorded branch so the lifecycle and evidence remain inspectable.”
  • Trace is unavailable: “The live trace did not load. The prepared trace route shows the reviewed frames; automated tests separately verify trace retrieval.”
  • Revision branch shown: “This is a separate prepared branch recording, so I am not claiming run-ID continuity with the submitted recording.”

Prioritized 12-minute Q&A

Start with the short answer. Expand only when the examiner continues.

1. Where is the AI agent, and does the title overclaim?

Short answer: The autonomous planner is external. The submitted contribution is the typed workflow substrate that an agent operates.

Expanded answer: The original product ambition was an AI agent for workspace automation. The thesis narrowed the technical contribution to the infrastructure beneath that agent: schemas, lifecycle records, source bindings, validation, execution, traces, and explicit resume contracts. A chat or planner graph can use the wf operations as tools, but the thesis does not claim a new planning algorithm.

2. What is novel about the work?

Short answer: The contribution is the combination of an agent-operable lifecycle, provider-neutral capabilities, structured repair surfaces, and persisted execution boundaries.

Expanded answer: Individual concepts exist elsewhere. The thesis contribution is their integration around external agents as workflow authors and operators: Draft, Artifact, Deployment, and Run records; provider projection outside the core; diagnostics and next actions; and CLI/JSON-RPC access without runtime imports. The thesis claims architectural feasibility, not invention of workflow graphs.

3. Why not use scripts, LangGraph, n8n, Zapier, Temporal, or MCP?

Short answer: They solve adjacent problems. The thesis does not claim global superiority.

Expanded answer: Scripts package code but leave lifecycle and inspection to custom conventions. LangGraph focuses on agent graphs. Temporal emphasizes durable distributed execution. n8n and Zapier provide mature hosted automation. MCP exposes capabilities. lda.chat focuses on typed workflow lifecycle and repair surfaces designed for external-agent operation, with MCP and Python behind one provider boundary.

4. What do the 36 trials prove?

Short answer: They provide bounded engineering evidence about operability and failure modes, not a model benchmark.

Expanded answer: The campaign used two challenges, two hosted models, and three profiles. Each model under each profile attempted each challenge three times. The author manually audited product-path validity. Because prompts, product snapshots, and hosted conditions changed, the results support feasibility and product learning, not stable model comparison or general success rates.

5. Is the prepared replay honest?

Short answer: Yes, if it is labeled as recorded presentation evidence rather than fresh live planning.

Expanded answer: Replay demonstrates the same prepared operation sequence without depending on network or model latency. Automated tests and repository examples verify underlying behavior separately. It would be misleading only if presented as a new autonomous-agent result or as proof that the full live path was rehearsed.

6. Is the system production-ready or secure?

Short answer: No. It is a systems prototype with explicit non-goals.

Expanded answer: Python sources are trusted and unsandboxed. Stores are file-backed. Production credentials, role-based authorization, tenant isolation, secret management, policy enforcement, and operational monitoring remain future work. Provider and deployment boundaries create places for those controls, but they do not implement them.

7. Why separate Artifact and Deployment?

Short answer: An Artifact preserves what the workflow is; a Deployment records where and with which sources it can run.

Expanded answer: The separation keeps a workflow definition immutable while allowing environment-specific bindings and validation. Deployment validation can detect missing capabilities or source drift without rewriting the artifact.

8. What does resumability mean here?

Short answer: The runtime persists and resumes explicit stopped or interrupted boundaries.

Expanded answer: Resume validates a declared payload and outcome, restores persisted state, and follows the selected route. The thesis does not claim arbitrary mid-node checkpointing, exactly-once side effects, or general crash recovery.

9. Does the typed decision implement human approval?

Short answer: It implements a typed interrupt and decision contract, not a production approval system.

Expanded answer: The workflow declares request and resume schemas plus allowed outcomes. The demo renders an operator decision from that contract. Roles, authorization, policy, multi-user review, and approval governance are not implemented.

10. Why use JSON-RPC?

Short answer: It exposes the same workflow API to long-lived external clients without moving domain behavior into transport code.

Expanded answer: The CLI can target the JSON-RPC server, and the web console uses the same protocol boundary. JSON-RPC is an implementation choice, not the thesis contribution; the protocol-neutral workflow API is the architectural seam.

11. What is the strongest evidence in the thesis?

Short answer: The strongest evidence is the combination of conformance tests, deterministic case studies, and bounded audited agent trials.

Expanded answer: Tests verify lifecycle operations, deployment validation, source providers, interrupt/resume, and transport behavior. Case studies demonstrate controlled end-to-end paths. The agent campaign then exposes whether external clients can use the public surface without bypassing it.

12. What would you do next?

Short answer: First harden operations and evaluation, then add the surrounding live agent interface.

Expanded answer: Priorities are transactional storage, provider lifecycle management, production auth and secret handling, sandboxing, richer run debugging, and stable controlled evaluation. A live chat or planner loop can then call the existing operations without changing the core runtime boundary.

Claim audit summary

Presentation claim Status Safe wording
lda.chat is an autonomous AI agent Do not claim It is the workflow substrate operated by an external planner
Runtime execution is deterministic Qualify Core routing and state transitions are deterministic for fixed handler results
Draft, Artifact, Deployment, and Run are distinct records Supported State the four responsibilities directly
Built-in, MCP, and Python prove provider neutrality Qualify Demonstrated across these three controlled source families
Repair hints make workflows valid Qualify Diagnostics and hints support repair; they do not guarantee success
The demo is the thesis case study Do not claim It is a later issue-review demonstration built on the same platform
Issue-board changes are thesis case-study output Do not claim They belong to the later prepared example implementation
The decision surface is a production approval gate Do not claim It is a typed interrupt and resume contract
Submitted replay resumes the same run Supported Valid for the submitted recording
Revision replay uses the same run Do not claim It is a separate prepared branch recording
Resume provides arbitrary crash recovery Do not claim Resume works at explicit stopped or interrupted boundaries
The 36 trials estimate model success Do not claim They are bounded evidence collected while the product evolved
The campaign measured token or retry reduction Do not claim These remain unmeasured design hypotheses
The system is production-secure or scheduled Do not claim Security hardening and scheduling remain future work

Evidence anchors

Presentation defects to resolve or avoid

  • The thesiss deterministic report case study has three workflow nodes. The later presentation example has eleven plan nodes, while its simplified graph intentionally omits the terminal end_cancelled marker. Avoid quoting a graph-node count unless the distinction is relevant.
  • The live health probe does not establish a completed live Scene 9-11 rehearsal. Label replay-backed output and trace evidence as recorded.
  • The revision replay has a separate run ID. Never use the submitted branchs “same persisted run” wording for that branch.