{
  "name": "flink-rest-checkpoint-summary-codex-flow",
  "purpose": "Show how K2 collections, agents, a Knowledge Feed, and a Pipeline Spec change a Codex development workflow.",
  "task": "Add a Flink REST endpoint that exposes checkpoint summary information for a running job.",
  "baseline_codex": {
    "available_context": [
      "local repository search",
      "model memory"
    ],
    "prompt_goal": "Ask Codex to plan the endpoint without K2 or MCP.",
    "expected_weaknesses": [
      "may search for the wrong Java web pattern",
      "does not start from Confluence-style guardrails",
      "may miss version-pinned docs or neighboring tests unless it searches perfectly"
    ]
  },
  "k2_assisted_codex": {
    "available_context": [
      "K2 MCP server",
      "flink-docs-2.2 collection",
      "flink-code-2.2 collection",
      "java-rd-guides collection",
      "K2 Agents",
      "Flink REST Guide Feed",
      "Java Customer Demo Pipeline"
    ],
    "retrieval_order": [
      "java_rd_guides_agent",
      "flink_docs_agent",
      "flink_code_agent",
      "java_architect_agent"
    ],
    "metadata_filters": {
      "framework": "flink",
      "framework_version": "2.2.0",
      "api_surface": [
        "rest",
        "checkpointing"
      ],
      "source_kind": [
        "guide",
        "docs",
        "code",
        "test"
      ]
    },
    "expected_strengths": [
      "starts from guardrails before implementation",
      "uses version-pinned docs for REST and checkpointing behavior",
      "routes implementation questions to Java source and tests",
      "keeps repeated findings durable through the Knowledge Feed"
    ]
  },
  "evidence_examples": [
    {
      "development_decision": "Do not implement the endpoint as Spring MVC, servlet, or JAX-RS.",
      "asset": "java-rd-guides collection",
      "agent": "Java R&D Guides Agent",
      "source_uri": "generated://guides/flink/confluence-rest-handler-guardrails.md"
    },
    {
      "development_decision": "Use MessageHeaders, request/response message classes, AbstractRestHandler, and WebMonitorEndpoint registration.",
      "asset": "java-rd-guides collection",
      "agent": "Java R&D Guides Agent",
      "source_uri": "generated://guides/flink/confluence-rest-handler-guardrails.md"
    },
    {
      "development_decision": "Identify request path, headers, body classes, and neighboring handler tests before editing production code.",
      "asset": "flink-docs-2.2 collection",
      "agent": "Flink Docs Agent",
      "source_uri": "https://nightlies.apache.org/flink/flink-docs-release-2.2/docs/ops/rest_api/"
    },
    {
      "development_decision": "Look at DispatcherRestEndpoint.initializeHandlers(...) for dispatcher-specific handler registration.",
      "asset": "flink-code-2.2 collection",
      "agent": "Flink Code Agent",
      "source_uri": "repo://apache/flink@release-2.2.0/flink-runtime/src/main/java/org/apache/flink/runtime/dispatcher/DispatcherRestEndpoint.java"
    },
    {
      "development_decision": "Use current Flink 2.2 checkpointing APIs and call out migration risk.",
      "asset": "flink-docs-2.2 and java-rd-guides collections",
      "agent": "Java R&D Architect Agent",
      "source_uri": "generated://guides/flink/confluence-checkpoint-upgrade-guardrails.md"
    }
  ],
  "live_commands": {
    "inventory": "PYTHONPATH=src python -m k2_java_rd_demo.cli inspect-live-k2 --project-id <project-id>",
    "transcript": "PYTHONPATH=src python -m k2_java_rd_demo.cli run-customer-demo-flow --execute --project-id <project-id> --flink-docs-agent-id <docs-agent-id> --flink-code-agent-id <code-agent-id> --java-rd-guides-agent-id <guides-agent-id> --java-architect-agent-id <architect-agent-id> --flink-rest-guides-feed-id <feed-id> --pipeline-spec-id <pipeline-spec-id> --top-k 6"
  },
  "success_criteria": [
    "Codex cites guide, docs, code, and test evidence before proposing edits.",
    "Codex identifies Flink REST endpoint patterns instead of generic Java controller patterns.",
    "Codex names files and tests to inspect or update.",
    "The K2 transcript shows Agents, Knowledge Feed, and Pipeline Spec dry-run evidence."
  ]
}
