Skip to content

#0 - Roadmap - PlotPickle story workflow and visual production order of operations #1415

Description

@BryanHarrisScripts

Purpose

Turn PlotPickle's existing curriculum, Agent Profiles, Context Engine, Responsibility Runs, graph execution, BUZZ specialists, revision-aware PPF proposals, BUILD and Library into one bounded end-to-end story workflow.

Afterglow v9 is the first reference story. The goal is not to create another agent framework. The goal is to make the architecture PlotPickle already built actually do useful story work from end to end.

The product direction is:

Afterglow v9 source
-> canonical PPF/reference working copy
-> curriculum-aware story state
-> bounded specialist workflows
-> agent findings and proposed repairs
-> Human Decision notifications only when judgment is required
-> Story Workbench validates impact
-> Human accepts/modifies/rejects
-> revision-safe PPF update
-> only affected workflows rerun
-> fewer unresolved findings over successive passes
-> visual story becomes progressively more complete
-> basic screenplay/text remains available as a derived/editable artifact
-> Storyboard unlocks only when genuine prerequisites are earned

Product principles

  1. The curriculum is the shared operating system for Humans and Agents. Lessons define required evidence, useful checks, completion/frontier rules and what later work may unlock.
  2. PPF remains canonical creative authority. Agent conversation, BUZZ messages, model memory and Workbench findings are not canon.
  3. Agent output is structured work, not chatter. BUZZ is the collaboration/evidence surface; structured findings/proposals are the reusable product result.
  4. Human interruption is scarce. Routine supported decisions can be proposed automatically; genuine ambiguity, conflicting evidence, low confidence or material creative changes create a Decision notification.
  5. Human approval remains final for creative canon. No BUZZ message, agent run or Workbench validation writes canon directly.
  6. Accepted changes are revision-aware and provenance-linked. Stale proposals cannot silently overwrite newer story state.
  7. Re-evaluate only affected story areas after a change. Do not rerun the entire story graph after every answer.
  8. Convergence is measured by unresolved story evidence, not notification count alone.
  9. Visual state is the primary experience. Text, outline and a basic script are maintained underneath and remain inspectable/editable.
  10. Do not add a new orchestration framework. Reuse the already-merged Agent Contracts, Context Engine, Responsibility Runs, graph execution, observability and PPF proposal/version contracts.

Afterglow v9 reference rule

Afterglow v9 is immutable source evidence. The workflow operates on a normal user-owned/reference working copy.

Direct facts from v9 are Observed with source provenance. Human/accepted project decisions are Defined. Agent/synthetic enrichment is Proposed/Emerging until accepted. Missing later-frontier data remains Locked or Missing according to the curriculum contract.

Synthetic data may be used to exercise every currently available PlotPickle field, but it must never be disguised as screenplay evidence or silently overwrite v9.

Phased sequence

Phase 0 � finish startup correctness: #1404.

Phase 1 � establish Afterglow v9 as the deterministic curriculum/reference fixture and lesson-aware Library/BUILD test story: #1410.

Phase 2 � add the curriculum-driven Story Workflow Engine using existing Responsibility Runs/graph/context contracts.

Phase 3 � activate BUZZ specialist agents as a bounded Story Council that produces structured findings/proposals.

Phase 4 � add the Human Decision notification channel for questions that genuinely need writer/editor input.

Phase 5 � add Story Workbench validation/application and targeted re-evaluation of affected story areas.

Phase 6 � make the end-to-end experience visual-first while maintaining text/basic screenplay in the background and respecting Storyboard frontier gating.

Phase 7 � run the complete Afterglow v9 convergence vertical slice and establish an editorial-ready stop condition.

Phase 8 � implement #1411 performance budgets against the deterministic Afterglow/workflow journey.

Phase 9 � implement #1412 core-vs-optional/developer runtime weight separation after the feature/runtime boundary is stable.

Child issue numbers for Phases 2-7 will be added once created.

Performance and weight guardrails from Phase 1 onward

#1411 and #1412 execute later, but their concerns apply immediately to every phase.

Every new workflow phase must:

  • reuse existing runtimes/frameworks before adding a dependency;
  • avoid loading all Agents/lessons/story assets when only a bounded slice is needed;
  • use host-enforced concurrency and context budgets;
  • record run duration and work count using existing observability where available;
  • avoid repeated full-story scans after local changes when dependency/impact information can bound the rerun;
  • classify any new dependency as core, maintenance, optional integration or developer-only in implementation notes;
  • avoid putting optional BUZZ/provider/media payload on the core-startup critical path;
  • avoid duplicating story state merely for workflow convenience.

These are design constraints now. #1411/#1412 later make them measured release gates.

Convergence model

Do not equate zero notifications with a perfect story.

Track at least:

  • missing required curriculum decisions;
  • unresolved contradictions;
  • unresolved specialist disagreements;
  • continuity failures;
  • structural/story-logic findings above the configured severity threshold;
  • low-confidence inferences requiring Human confirmation;
  • stale/unapplied proposals;
  • blocked later-frontier prerequisites;
  • new material findings discovered per audit round;
  • Human Decision notification count and age.

A first practical completion state is Ready for editorial review, not story proven correct.

Suggested stop condition for the Afterglow reference pass: no required unresolved decision, no high-severity contradiction, no stale accepted-change conflict, and two bounded re-audit rounds that discover no new material medium/high finding. The Human may stop earlier or continue beyond this state.

Architecture already available and expected to be reused

Use, rather than replace, the architecture delivered through the completed Agent roadmap:

  • Agent Profiles/authority contracts;
  • task-scoped Context Engine;
  • revision-aware PPF proposals/provenance;
  • connector/federation trust policy;
  • Responsibility Runs;
  • graph workflow primitives;
  • run observability/evals;
  • local backup/restore boundaries.

Also reuse current BUILD Defined / Observed / Emerging / Missing / Locked semantics, Library working-copy behavior, BUZZ signed identity boundaries and the Developer Workbench review philosophy where applicable.

Global non-goals

Do not use this roadmap to:

  • create a second PPF/canon store;
  • give BUZZ direct PPF write authority;
  • turn every agent thought into a notification;
  • use GitHub PRs as the normal story-edit transport;
  • allow agents to self-approve creative changes;
  • auto-generate filler solely to make every BUILD light green;
  • unlock Storyboard before actual prerequisites exist;
  • create an unbounded autonomous loop;
  • add LangGraph/Hermes/another orchestration framework;
  • add paid-cloud fallback without explicit existing consent/budget rules;
  • make the screenplay the only product surface;
  • optimize package size by removing runtime-required curriculum/contracts.

Delivery discipline

Each phase follows:

review current authority/contracts
-> Developer Workbench impact/spec review
-> build smallest coherent slice
-> focused deterministic regressions
-> visual/real-journey evidence where relevant
-> BEN/build/required CI
-> exact-head green
-> Human merge
-> begin next phase

One phase at a time where shared state/contracts are involved. Do not build Phases 2-6 as independent speculative branches.

Epic acceptance

  • Afterglow v9 can be loaded as a deterministic reference working copy without mutating the source.
  • Current curriculum fields/frontiers are observable and provenance-correct.
  • Specialist Agents perform bounded story responsibilities rather than idle room presence.
  • BUZZ collaboration produces structured findings/proposals and preserves identity/canon boundaries.
  • Genuine creative ambiguity reaches one Human Decision channel.
  • Human answers are validated through a story-specific Workbench boundary before revision-safe application.
  • Accepted changes trigger only the required downstream re-evaluation where dependency evidence permits.
  • Successive bounded passes expose measurable convergence without claiming objective story perfection.
  • Visual story state is primary and stays synchronized with underlying story/text/script artifacts.
  • Storyboard and later artifacts remain gated by real curriculum prerequisites.
  • [MUST HAVE 1] Establish real-machine performance budgets #1411 performance and [MUST HAVE 2] Separate core runtime from optional integrations, reference media and developer weight #1412 runtime-weight gates are completed after the vertical slice and show no uncontrolled growth/regression.
  • Full Afterglow v9 end-to-end acceptance is reproducible without hidden developer-only edits.

Current developer brief

Developer Workbench review: 2026-08-26T16:14:36.7517285+00:00
Reviewed exact PR head: n/a (Issue-only review)

{
  "repository": {
    "name": "PlotPickle",
    "owner": "BryanHarrisScripts"
  },
  "issue": {
    "number": 1415,
    "title": "Roadmap resequence approved before Phase 1 implementation",
    "createdAt": "2026-07-19T02:40:15+00:00",
    "closedAt": null,
    "author": "BryanHarrisScripts",
    "labels": [],
    "milestone": null,
    "comments": [
      {
        "author": "BryanHarrisScripts",
        "createdAt": "2026-07-19T02:40:15+00:00",
        "body": "Roadmap resequence approved before Phase 1 implementation. Keep the existing product principles/acceptance, but use this expanded canonical execution order going forward:\n\nPhase 0 — #1404 startup correctness remains OPEN/PARKED; current app is usable, revisit the non-blocking Vinext optimizer warning after the next story phase.\nPhase 1 — #1410 Afterglow v9 deterministic reference/lesson-aware working fixture.\nPhase 2 — #1416 curriculum-driven Story Workflow Engine.\nPhase 3 — #1422 bounded PlotPickle ↔ BUZZ Story Bridge.\nPhase 4 — #1417 BUZZ consultant Story Council.\nPhase 5 — #1418 Human Story Decision notification/editor channel.\nPhase 6 — #1419 Story Workbench validation, revision-safe apply and targeted re-evaluation.\nPhase 7 — #1423 curriculum/story state → canonical visual story identities/readiness bridge.\nPhase 8 — #1424 re-adopt/adapt previous Storyboard implementation reuse-first.\nPhase 9 — #1425 re-adopt/adapt previous Previs/Animatic + Production Shots reuse-first.\nPhase 10 — #1420 visual-first end-to-end convergence with synchronized/staleness-aware background story text/script.\nPhase 11 — #1421 complete Afterglow v9 convergence vertical slice/editorial-readiness gate.\nPhase 12 — #1411 measured real-machine performance budgets against the stable real workflow.\nPhase 13 — #1412 core-vs-optional/reference/developer runtime-weight separation using Phase 12 evidence.\n\nNew governing reuse rule: PlotPickle is not rebuilding its visual pipeline from scratch. Storyboard, Graphic Novel/shared asset work, Production Shots and Animatic/Previs are to be audited and re-adopted where sound, then adapted so they become projections of the current curriculum-driven PPF story rather than independent workflows/canon.\n\nNew BUZZ boundary: BUZZ carries signed identity, rooms, collaboration and specialist-agent conversation. PlotPickle carries Story Work Items, Context/Policy, workflow state, Decisions, Story Workbench and PPF canon. #1422 is the only bounded bridge; no BUZZ message/transcript/memory writes PPF directly.\n\nPerformance/package-weight concerns remain design constraints in every phase, but hard measurement/reduction stays at Phases 12–13 so we optimize the actual settled product workflow.",
        "url": "https://github.com/BryanHarrisScripts/PlotPickle/issues/1415#issuecomment-5415660230"
      },
      {
        "author": "BryanHarrisScripts",
        "createdAt": "2026-08-26T13:37:39+00:00",
        "body": "## Current active order of operations — 2026-08-26\n\nThe issue titles below are now the canonical active sequence. The original roadmap body remains useful historical context, but this ordering supersedes its old Phase numbers.\n\n1. #1442 — Finalize PlotPickle Recommended BUZZ Helper configuration\n2. #1444 — Complete Story Rooms Directory and owner-controlled BUZZ access\n3. #1422 — Complete signed PlotPickle ↔ BUZZ Story Bridge exit proof\n4. #1417 — Activate BUZZ specialist agents as a structured Story Council\n5. #1418 — Add Human Story Decision notifications and editor input\n6. #1419 — Add Story Workbench validation, revision-safe apply and targeted re-evaluation\n7. #1423 — Bridge curriculum state into canonical visual story identities\n8. #1424 — Re-adopt and adapt Storyboard to the current PPF/frontier architecture\n9. #1425 — Re-adopt and adapt Previs/Animatic and Production Shots\n10. #1420 — Make PlotPickle visual-first end to end with synchronized background story text\n11. #1421 — Run Afterglow v9 end-to-end convergence and editorial readiness\n12. #1411 — Establish real-machine performance budgets\n13. #1412 — Separate core runtime from optional integrations, reference media and developer weight\n\nCompleted foundations #1410 and #1416 remain historical prerequisites and are not renumbered.\n\nParallel maintenance work is kept outside the product phase numbers: #1404 Windows RSC optimizer cleanup/real-machine verification and #1446 Repomix diagnostics restoration.\n\nCurrent dependency note: Phase 3 (#1422) remains intentionally fail-closed on BUZZ public signature verification and is blocked on block/buzz#6874 until `messages get` preserves the public Nostr `sig`. We will not weaken that security boundary to advance the roadmap.",
        "url": "https://github.com/BryanHarrisScripts/PlotPickle/issues/1415#issuecomment-5426141010"
      },
      {
        "author": "BryanHarrisScripts",
        "createdAt": "2026-08-26T13:45:54+00:00",
        "body": "Parallel developer-tooling addition: #1448 — selectable local reviewer models + llama.cpp second-opinion/fix-clue mode for PlotPickleDeveloperWorkbench. This does not change Phase 1–13 product sequencing. It reuses the existing Hardware-Aware Local AI / Pi boundary and is intended to improve diagnosis and repair guidance while the backlog is being worked.",
        "url": "https://github.com/BryanHarrisScripts/PlotPickle/issues/1415#issuecomment-5426247718"
      },
      {
        "author": "BryanHarrisScripts",
        "createdAt": "2026-08-26T14:06:54+00:00",
        "body": "## Temporary tooling priority — scan the backlog first\n\nBefore continuing the next product phase, treat #1448 as the immediate developer-tooling priority so the current Issue list can be rescanned with the upgraded Developer Workbench and worked down one-by-one.\n\nBuild order for #1448:\n\n1. local reviewer model selector + exact selected-model readiness;\n2. persistent scan-state tracking with a green check mark for an Issue/PR only when the current Issue revision / exact PR head has been scanned by the upgraded Workbench;\n3. targeted Repomix evidence pack where it has a bounded deterministic seed;\n4. llama.cpp / LM Studio / Ollama / loopback model selection through the existing local Pi boundary;\n5. optional second-opinion reviewer focused on missing evidence/components and candidate minimal fixes;\n6. focused Workbench regressions + Windows EXE build + exact-head CI.\n\nThis is a temporary developer-tooling priority only. It does not renumber or replace the Phase 1→13 product order already recorded in #1415. Once #1448 is green and usable, resume the product sequence while using the Workbench scan checkmarks to knock down the backlog systematically.",
        "url": "https://github.com/BryanHarrisScripts/PlotPickle/issues/1415#issuecomment-5426519269"
      },
      {
        "author": "BryanHarrisScripts",
        "createdAt": "2026-08-26T15:33:08+00:00",
        "body": "## Parallel local-AI readiness maintenance\n\nAdded #1450 — Verify and provision the best hardware-aware local AI configuration at PlotPickle startup.\n\nThis is a cross-cutting maintenance gate rather than a new numbered story-product phase. It should be completed before relying on local-model behavior as authoritative evidence in later Story Council / Story Workbench / performance phases.\n\nProduct rule: the capability router must distinguish `recommended but missing`, `installed but stopped`, `unhealthy/incompatible`, `fallback selected`, and `Human override`. PlotPickle should start/reuse a configured capability if it is recommended or installed; otherwise, it should fallback to a system-provided one if applicable. If no appropriate system-provided one is available, PlotPickle should prompt the user to select a configuration.",
        "url": "https://github.com/BryanHarrisScripts/PlotPickle/issues/1415#issuecomment-5426668572"
      }
    ],
    "events": [
      {
        "actor": {
          "login": "BryanHarrisScripts",
          "id": 12345678,
          "node_id": "MDQ6VXNlcjEzMzQ1Njc4",
          "avatar_url": "https://avatars.githubusercontent.com/u/12345678?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/BryanHarrisScripts",
          "html_url": "https://github.com/BryanHarrisScripts",
          "followers_url": "https://api.github.com/users/BryanHarrisScripts/followers",
          "following_url": "https://api.github.com/users/BryanHarrisScripts/following{/other_user}",
          "gists_url": "https://api.github.com/users/BryanHarrisScripts/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/BryanHarrisScripts/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/BryanHarrisScripts/subscriptions",
          "organizations_url": "https://api.github.com/users/BryanHarrisScripts/orgs",
          "repos_url": "https://api.github.com/users/BryanHarrisScripts/repos",
          "events_url": "https://api.github.com/users/BryanHarrisScripts/events{/privacy}",
          "received_events_url": "https://api.github.com/users/BryanHarrisScripts/received_events",
          "type": "User",
          "site_admin": false
        },
        "event": "labeled",
        "assignees": [],
        "labels": [
          {
            "id": 1234567890,
            "node_id": "MDU6TGFiZWwxMjM0NTY3ODkw",
            "url": "https://api.github.com/repos/BryanHarrisScripts/PlotPickle/labels/roadmap",
            "name": "roadmap",
            "color": "#ffffff",
            "default": false,
            "description": "Issues related to the roadmap and future plans"
          }
        ],
        "created_at": "2026-07-19T02:40:15+00:00"
      },
      {
        "actor": {
          "login": "BryanHarrisScripts",
          "id": 12345678,
          "node_id": "MDQ6VXNlcjEzMzQ1Njc4",
          "avatar_url": "https://avatars.githubusercontent.com/u/12345678?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/BryanHarrisScripts",
          "html_url": "https://github.com/BryanHarrisScripts",
          "followers_url": "https://api.github.com/users/BryanHarrisScripts/followers",
          "following_url": "https://api.github.com/users/BryanHarrisScripts/following{/other_user}",
          "gists_url": "https://api.github.com/users/BryanHarrisScripts/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/BryanHarrisScripts/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/BryanHarrisScripts/subscriptions",
          "organizations_url": "https://api.github.com/users/BryanHarrisScripts/orgs",
          "repos_url": "https://api.github.com/users/BryanHarrisScripts/repos",
          "events_url": "https://api.github.com/users/BryanHarrisScripts/events{/privacy}",
          "received_events_url": "https://api.github.com/users/BryanHarrisScripts/received_events",
          "type": "User",
          "site_admin": false
        },
        "event": "labeled",
        "assignees": [],
        "labels": [
          {
            "id": 1234567891,
            "node_id": "MDU6TGFiZWwxMjM0NTY3ODkw",
            "url": "https://api.github.com/repos/BryanHarrisScripts/PlotPickle/labels/review",
            "name": "review",
            "color": "#ffffff",
            "default": false,
            "description": "Issues that require review from the team"
          }
        ],
        "created_at": "2026-07-19T02:40:15+00:00"
      }
    ],
    "assignees": [],
    "milestone": null,
    "pull_request": null,
    "body": "Roadmap resequence approved before Phase 1 implementation. Keep the existing product principles/acceptance, but use this expanded canonical execution order going forward:\n\nPhase 0 — #1404 startup correctness remains OPEN/PARKED; current app is usable, revisit the non-blocking Vinext optimizer warning after the next story phase.\nPhase 1 — #1410 Afterglow v9 deterministic reference/lesson-aware working fixture.\nPhase 2 — #1416 curriculum-driven Story Workflow Engine.\nPhase 3 — #1422 bounded PlotPickle ↔ BUZZ Story Bridge.\nPhase 4 — #1417 BUZZ consultant Story Council.\nPhase 5 — #1418 Human Story Decision notification/editor channel.\nPhase 6 — #1419 Story Workbench validation, revision-safe apply and targeted re-evaluation.\nPhase 7 — #1423 curriculum/story state → canonical visual story identities/readiness bridge.\nPhase 8 — #1424 re-adopt/adapt previous Storyboard implementation reuse-first.\nPhase 9 — #1425 re-adopt/adapt previous Previs/Animatic + Production Shots reuse-first.\nPhase 10 — #1420 visual-first end-to-end convergence with synchronized/staleness-aware background story text/script.\nPhase 11 — #1421 complete Afterglow v9 convergence vertical slice/editorial-readiness gate.\nPhase 12 — #1411 measured real-machine performance budgets against the stable real workflow.\nPhase 13 — #1412 core-vs-optional/reference/developer runtime-weight separation using Phase 12 evidence.\n\nNew governing reuse rule: PlotPickle is not rebuilding its visual pipeline from scratch. Storyboard, Graphic Novel/shared asset work, Production Shots and Animatic/Previs are to be audited and re-adopted where sound, then adapted so they become projections of the current curriculum-driven PPF story rather than independent workflows/canon.\n\nNew BUZZ boundary: BUZZ carries signed identity, rooms, collaboration and specialist-agent conversation. PlotPickle carries Story Work Items, Context/Policy, workflow state, Decisions, Story Workbench and PPF canon. #1422 is the only bounded bridge; no BUZZ message/transcript/memory writes PPF directly.\n\nPerformance/package-weight concerns remain design constraints in every phase, but hard measurement/reduction stays at Phases 12–13 so we optimize the actual settled product workflow."
  }
}

Activity

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions