feat: add PDD Connect observability dashboard - #2402
Draft
agarwal-ishaan wants to merge 19 commits into
Draft
Conversation
…t regeneration
pdd generate had an asymmetry: `_verify_public_surface_regression` only
ast.parse()s generated Python when existing_code is present (i.e. only
when regenerating a mature module). A brand-new file has no existing
code to compare against, so that gate is skipped entirely -- a prompt
whose content doesn't match its declared `_<language>` filename suffix
(e.g. `game_python.prompt` whose content actually describes an HTML
page) can silently write unparseable content into a freshly created
`.py` file with no error at all.
Add `_verify_generated_syntax`, called unconditionally alongside the
existing `_verify_architecture_conformance` check (which already runs
on every generation, first-time included). It ast.parse()s the output
against its declared language and raises ArchitectureConformanceError
on mismatch, reusing the same error type/UX the codebase already has
for conformance failures. Respects PDD_SKIP_CONFORMANCE. Tolerates a
surface markdown code fence (some response paths intentionally leave
one un-stripped) so it validates the real code rather than tripping on
cosmetic ``` wrapping.
Also updates a handful of existing incremental-generation tests whose
mock "generated code" fixtures were plain English placeholder strings
("Updated code", "Base-ref updated code", etc.) rather than valid
Python -- harmless before this fix since nothing validated first-time
output, but now correctly caught by the new check. Replaced with
trivial valid-Python snippets; the tests' actual assertions (control
flow, kwargs passed, cost/model returned) are unchanged.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…k their prompt The repair_directive already told an agentic repair loop to check the prompt against its declared language, but the actual user-facing message (what a human sees on the CLI) didn't. Add an explicit, plain-language prompt to double-check the requested content matches the declared language suffix, since that's the most common real cause of this error (verified via manual end-to-end testing against a real prompt/response pair). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
_verify_generated_syntax was added directly to code_generator_main.py (17048b3, 72afd9f) without updating its source-of-truth prompt. Add section 5a1 to code_generator_main_python.prompt spelling out the gate exactly as implemented, so the prompt and code stay in sync. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
… to check their prompt" This reverts commit 72afd9f.
… not just regeneration" This reverts commit 17048b3.
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:08 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:16 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:17 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:18 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:19 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:20 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:24 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:28 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:40 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:42 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:44 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:45 — with
GitHub Actions
Inactive
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 14:46 — with
GitHub Actions
Inactive
Adding the observability module and its router factory to pdd/server/routes/__init__.py left test_routes_module_exports asserting a stale expected_all, so the test failed on this branch. Project-scoped routers are exported as factories rather than module-level router objects, so create_observability_router belongs in __all__ alongside the module itself.
agarwal-ishaan
temporarily deployed
to
pdd-cloud-read
August 14, 2026 18:18 — with
GitHub Actions
Inactive
agarwal-ishaan
marked this pull request as draft
August 14, 2026 19:47
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Validation
Notes
The dashboard is read-only and intentionally uses no cloud telemetry.